Shop: Download from the order works

Shop: Download from the order does not work

16. July 2021In General, SupportBy Karsten Risseeuw1 Minute

The problem with downloads from orders was solved just after we had sent a newsletter about it. Downloads should be possible again.

There is currently a problem with product downloads from orders. Many other websites have the same problem. We monitor the information and will implement a solution as quickly as possible.

Update: The problem has now been solved.

Thank you for your understanding
Karsten Risseeuw


Select any file and create a file path for FileMaker

Select any file and create a file path for FileMaker

Insert file and save in a variable. With sample file.

14. July 2021In ExamplesBy Karsten Risseeuw1 Minute

How do you get the path to any file?

For a long time it was not possible to select any file without using a plug-in. Today it’s very easy. To do this, select the «Insert file» script step. The result can be saved in a variable, for example. The path to the file can be extracted very easily from this variable.

Such file paths are required so that the file can be imported, for example.

The following example file shows how to do it. This file was created with Mac. Check the results and settings for any other platform.

File Select

FileSelect zeigt, wie man in FileMaker eine beliebige Datei auswählt, um den Dateipfad dann für Import oder Export nutzen zu können.

FileSelect shows how to select any file in FileMaker and then use the file path for import or export.

Size: 40kb
Version: 1.0
Published: 14. July 2021

Export data from FileMaker

Export data from FileMaker

The example file about FileMaker file paths has been expanded to include export functions

30. June 2021In GeneralBy Karsten Risseeuw1 Minute

How can I import and export data in FileMaker?

If you want to import files into FileMaker or export data from FileMaker as an Excel file, you need file paths. File paths tell FileMaker where a file can be found or in which directory and with what name a file should be saved.

There already was a sample file on this subject. The file has just been updated.

Currently supported are:

  • Import of individual files
  • Import of entire folders with files
  • Export of container fields
  • Export of a text field as a file
  • Generate file paths
  • Extract filenames from container fields
  • Calculate file names for export.

To the download page

How do I extend my download access?

How do I extend my download access?

23. June 2021In SupportBy Karsten Risseeuw2 Minutes

All of our paid products come with free downloads, updates and upgrades for one year. But what happens afterwards, and how can the downloads be reactivated?

One simple license

Kursiv Software has a simple licensing policy: software is bought, not rented. That means: The licensee acquires an unlimited right of use.

Free downloads for one year

After purchase, the buyer has access to downloads and the latest versions for one year. This access expires after one year. In plain language: After a year, no further downloads can be made unless you renew this access.

How do I extend the downloads?

If you want to have the downloads available longer, you have to renew the access. You renew access by buying the product again. There are different discount levels that are automatically recognized by the website when you log in.

What are the discounts?

If you renew the product before the end of the year, you get a 60% discount. If you buy the product in 2nd or 3rd year, you still get 20% discount. Thereafter, the full price applies. The new license is valid from the day of purchase, not after the previous license.

How do I know when the downloads will expire?

Downloads expire automatically 1 year after purchase. Access expires. If you order after July 1, 2021, we will automatically send a few emails to indicate the expiry of the access.

Prices on the website

After logging in, the personally valid prices are displayed on the detail page as well as in the shopping cart and at the checkout.

Better registration emails from FM Registrations

Better registration emails from FM Registrations

Update version 1.60

18. June 2021In FM RegistrationsBy Karsten Risseeuw3 Minutes

The new update for FM Registrations has improvements for the registration emails. As before, license details can be conveniently sent to the customer by email. These emails can now be adapted even better to your own needs.

Improved and simplified

Existing customers (bought last year) can now download the new version 1.60 from their account at The update includes some minor bug fixes, various adjustments and some improvements. In particular, the email template can be set up better, through which the license details are sent to the customer. The template has been improved and working with the template has been simplified. The template shows a FileMaker calculation in which information and text modules can be easily inserted. When using text modules, the template (and thus the email) remains multilingual. Texts can be edited or generated at any time using the “Translations Toolbox”.

How to update your license

Updating from an older version is easy:

  • Download the new version from your account
  • Unzip and open the file – enter your registration data
  • Click on “Update” on the start page (or go to Import / Export)
  • Open your old file next to the new file (this will install the appropriate rights for the update)
  • Import your data from the old file from the new file
  • That’s it!

What is FM Registrations?

FM Registrations is a FileMaker solution that can be used to generate license codes for your own FileMaker projects. Many FileMaker developers want to sell their work multiple times. This requires a strategy. Part of this strategy can be to unlock the same installation file using license codes. This means that a software solution can be distributed “neutrally” and personalized access data can be sent to the customer after the sale.

In addition, the access code can be used to send configuration data, such as an expiry date, the number of users and tags for configuration. Provided that the appropriate scripts take up this information, adjustments can also be made later via code without having to access the installation at the customer’s. Does the customer want access to more employees? All you need to do is send a new code. Should the annual subscription be extended for another year? The customer can activate this extension with a new code.

You can find more information about FM registrations here:

License codes for your FileMaker solutions

Save larger projects as an add-on

Experience report

Save larger projects as an add-on

Tested with FM Starter 2

28. May 2021In Testimonial, TipsBy Karsten Risseeuw9 Minutes

FileMaker add-ons are often touted as small solutions. But what about exporting larger projects with lots of tables, scripts, layouts, etc. as an add-on? Is that possible?

The challenge

All of the FileMaker add-ons I know today are “small” projects. These are functions, simple solutions with relatively few tables, layouts and scripts. Is it possible to generate larger add-ons, and why would you want to do that?

Well, I’ve tested this. More on that in a moment. But why would you want that? Isn’t it enough that you can launch small, specific projects? Well, add-ons are useful, but some tasks are a little more complex, so they require complex or larger add-ons.

For example, you can create a simple but complete address management system as an add-on. This could be a basic module for further development, with all important tables already linked and some functions built in. An invoice module could also be developed as an add-on, with the basic tables for documents, line items, print layouts, etc. already in place. The real question is about complexity: How complex or large can an add-on be?

If it is possible to create larger building blocks, some projects will benefit from it.

FM starter as an add-on

FM Starter is the starter file that we sell as a product. With it, every new FileMaker project can be set up fast and important functions are already integrated. It is a real-life Start-up support for all “new” projects. That’s how we market it too.

However, I regularly have developers on the phone who already have a project running and who like to integrate the functionality of FM Starter. “Can you also integrate FM Starter into an existing project?” is a question I hear regularly. My answer to this is always: Yes, that is possible, but …

FM Starter is almost completely modular. This allows you to transfer FM Starter module by module to another file. It works, even if it is complex. There are no relations (apart from 1 relation for the design page, which allows portals to be displayed). The starting point is good. The file still has a lot of tables, countless scripts, settings and many other things. What makes it more demanding is, that many modules depend on each other. For example, the “Navigation” module uses the “User Management” and “Multilingual text labels” modules.

If you want to integrate the original FM Starter file into another project, it is quite time-consuming. If you can save the entire start file as an add-on, then this paves the way for a smoother integration into other projects. It would be much easier to add the FM Starter Add-on to the file.

Limitations on add-ons

FileMaker add-ons handle tables, layouts, objects, scripts and custom functions. Security settings and accounts, for example, are not applied. However, those two things are an integral part of FM Starter. What happens if you lose these settings?

The test

Before you can turn a protected file like FM Starter into an add-on, you have to open the file with full access rights. Then I selected the file using Add-On Lab FREE and saved it as an add-on package. What happened?

Amazingly, it worked. But it takes time. When saving the file as an add-on, FileMaker was frozen for minutes. However, I saw on the hard drive that data was being written. Once the add-on was saved, FileMaker came back to life. I opened a new, empty file and imported the add-on.

Importing the add-on also takes time. After that, however, FM Starter was available in a new file. I was amazed that it worked right away. Now I had to test the result.

For this test, I did not create any “drag-and-drop” blocks for the add-on. As a result, there was nothing I could drag-and-drop onto the page layout. However, this does not matter, since the entire functionality is already added when the add-on is imported. Check the list of layouts, for example!

A total of 25 tables with their data sets were created.

As expected, the accounts and security settings were not adopted.

With the scripts, on the other hand, the whole list was neatly integrated.

What does not work?

In a first comparison of the original file with the add-on, I noticed a few things:

  • File settings are not adopted.
    • The startup script ([OnFirstWindowOpen]) was not assigned.
    • The CloseDown script ([OnLastWindowClose]) was also not assigned.
    • These and other settings can be quickly corrected, provided similar triggers were not already configured in an existing solution. Otherwise, you have to solve this problem.
  • The navigation didn’t work right away
    • This has to do with the startup script first, but then also with missing accounts that are relied upon at startup
    • However, these and other settings can easily be adjusted.
  • Some layouts weren’t rebuilt properly. There was a case where the button bar was not displayed properly. The style had to be reassigned, and the object had to be moved to the correct spot on the layout.
  • Text objects receive the text format settings of the first line across the entire object. Applied text styles in the text are lost and have to be reapplied.

All in all, a remarkable number of things worked right off the bat. Some adjustments that needed to be made were to be expected.

Can more complex add-ons be created?

Right now, you need to experiment. The «FM Starter 2» file was converted to an add-on without any modifications. I rate the fact that this largely succeeded very positively. However, if you want to create a reliable add-on, it would make sense to optimize the original file for this purpose. In addition, documentation is required about which adaptations still have to be made when using the add-on. These adjustments are not necessary if you take the start file as a starting point (instead of the add-on). When using the add-on of this file, some things will not work, unless you implement it (like adding accounts and security settings).

Special attention should therefore be paid to:

  • File settings
  • Accounts and access rights.

This little experience report wants to show that working with add-ons is not witchcraft. The good applications are only just emerging, and I’m looking forward to further developments.

FM Starter 2

FM Starter 2.2 released

FM Starter 2.2 released

The latest update is available now

25. May 2021In FM StarterBy Karsten Risseeuw1 Minute

The “FM Starter” start file has just received a new update. There are various minor bug fixes and a couple of important enhancements.

A short video here below highlights the major changes. In addition, there is now one on the documentation page List of all changes . As before, the details of each change are contained in FM Starter itself.

If you have an active license of FM Starter (purchase within the last year), you can download this latest version directly from the download area of your account.

What is FM Starter?

Renewals are cheaper

Renewals are cheaper

21. May 2021In GeneralBy Karsten Risseeuw1 Minutes

60% discount for a seamless renewal

All commercial FileMaker tools from come with downloads and free upgrades for one year. Access expires automatically. Before it expires, however, you will be notified and can seamlessly renew the service with a substantial discount. We have just increased the discount for this renewal from 40% to 60%.

If you order the extension, you will automatically have access to all updates and upgrades for another year. If you do not extend it seamlessly, the discount expires after a few days. Logical, isn’t it?

The offer on is being expanded step by step. This is made possible by the many FileMaker developers who decide to continue to receive updates. Thank you very much!

Add-on Lab FREE for FileMaker

Add-on Lab FREE for FileMaker

Create FileMaker add-ons in no time

29. April 2021In Add-onsBy Karsten Risseeuw2 Minutes

FileMaker add-ons are an ingenious way to simplify your own development with ready-made building blocks. The concept for add-ons is impressive, because for the first time FileMaker developers can easily create add-ons themselves. The new “Add-On Lab FREE” shows how to do this and summarizes most of the available information about FileMaker Add-ons.

Add-ons are modular building blocks that can be easily imported into FileMaker. It is possible to create items that you place on the page using drag-and-drop. Creating add-ons makes sense, as also you can create building blocks for your next projects. Anyone who has previously got the impression that add-ons always have to do with Javascript and are terribly complicated, fails to recognize the power of the idea. It’s not about Javascript or highly complex solutions, it’s about creating and using building blocks. These can be simple solutions in FileMaker.

You create an add-on from a file. Start a new add-on with a new file. Then you export the file as an add-on and the add-on includes tables, layouts, scripts and custom functions. As an add-on, it can be easily added to any file.

Add-on Lab FREE

The free “Add-On Lab FREE” tool is a FileMaker file and offers two things:

  1. Create add-ons from any file
  2. Summarize almost all information currently available

So far, Claris has hardly released any information about add-ons. Many details are unknown. Valuable information can currently be found on and a few other websites. There the information is explained in various articles. We have summarized the collected information for creating add-ons in this file.

Add-on Lab PRO

Soon there will also be a Pro version, with which additional add-ons can be managed and information adjusted. Whoever downloads the free information will be automatically informed when the Pro version will be available.

Free Download

Please fill out this form. The download link will be sent to you by email.

Use FileMaker scripts for different tasks at the same time

Use FileMaker scripts for different tasks at the same time

How to achieve more with your FileMaker scripts

7. April 2021In TipsBy Karsten Risseeuw8 Minutes

FileMaker Scripts are used to standardize workflows. It is the “programming language” of FileMaker, so to speak. Usually actions are triggered by clicking on a button. A script in the background then performs the task. Workflows can thus be created with great ease. As the application grows, the number of scripts also grows until there may be hundreds of scripts. Something like this quickly becomes confusing. Many scripts often consist of only a few lines. Can this be simplified?

Yes, you can simplify scripts. The following procedures have worked well for me:

  1. Create scripts per layout if possible
  2. Group scripts per table if possible
  3. Combine several smaller scripts into one script.

The basic idea should always be to create smaller units that you can test well, and then combine them to create larger tasks.

Control all scripts with if-requests

As a rule of thumb, I call each script with a script parameter. If you call a script without a script parameter, nothing happens. The functionality is always contained in an if-query. This not only increases security, but also allows one script to be used for multiple tasks.

Many scripts perform only minor tasks. For example, I often have a settings page that I can customize. I can read and write these settings. Both tasks (saving/importing) can be easily accommodated in a single script. For example, like this:

In this screenshot you can see a simplified representation. At the top is the name of the script. You can add more information there if you want. Below there is a list with all script parameters, with which the script can be called. This serves for the clarity and is at the same time something like an index to the script. The script parameters show the sections in the script. Only then follows the actual functionality.

  1. Script name
  2. List of script parameters with which the script can be called
  3. The actual functionality in if-requests

Each section then appears with an if-query. For example, if I want to do the reading and writing of presets in a script, the script might look like this:

If [ Get(ScriptParameter) = “write” ]

If [ Get(ScriptParameter) = “read” ]

This gives me a script with which I can solve various tasks. This reduces the number of scripts. I have scripts that often do up to a dozen smaller tasks. This is not a requirement, but a way to make your job easier.

Use subtasks

With this approach, subtasks can be neatly separated and still be kept together. Instead of using a script with many sub-scripts, perhaps the tasks can be combined into a single script. Each if-query can be a subtask. This keeps the scripts organized and you can call subtasks one after the other or individually.

Subtasks can be activated in two ways:

  1. You call the same script from the script with a different parameter
  2. One adds another parameter to an if-query, which is then picked up further down in the script.

For the second variant, here is an explanation: Of course, script parameters should be set when the script is called for the first time. However, this does not stop you from always specifying the next step in the course of the script – for example, with a variable.

If [ Get(ScriptParameter) = “write” ]
set variable [ $NextStep ; value: “output” ]

Here a variable is set at the end of an if-query with the keyword “output”. This variable should point to the next step named “output”. Insofar as this section is included in another if-query, after the completion of the first section, the second section should now be activated. For example, you can do it like this:

If [ Get ( ScriptParameter ) = “output” or $NextStep = “output” ]

The addition to the if-query is now formulated in such a way that this part can be controlled either with a script parameter or with a local variable from the script. This allows you to “work through” several sections in one run without having to call up the script multiple times.

Does this information make sense? This may not just be a question of programming style, but also has to do with the type of project you are working on. I always start with the question: “How do I keep everything as simple as possible?”.

Why should one use this?

After I posted the text above on social media, the question was asked, “Why use this?”. I realized that I had not yet said anything about the reasons why I came to this structure. Now here are a few words:

First of all, it’s just one (of many) ways to write scripts. There are no guidelines. For me there were various experiences that led to this method:


  1. I had hundreds of scripts in larger databases. Many of them were made up of only a few lines.
  2. Often I had integrated the same function in several places, or I used multiple scripts for the same thing.

“The bigger the solution” now also meant “the more complex”. That’s what I wanted to change.

Optimization requests

  1. Reduce the number of scripts
  2. Avoid redundancies in the functions
  3. Make the structure of all scripts easier
  4. Optimize the possibilities of each individual script.

The ideas of a modular development of FileMaker functions showed me how this could be made possible. The following approaches in particular proved to be helpful:


  1. If possible, group scripts according to table / layout
  2. Ideally, reduce scripts to your “own” tables / layouts
  3. Combine several functions per table / layout in a single script
  4. Each script has several «parts» that can be controlled by a script parameter.

Should this be a rigid rule now? No. However, it has simplified all scripts for me and drastically reduced the number of scripts. This has proven to be a valuable method for me to simplify my code.