
How to Install Your ACF Functions in a FileMaker Application
When developing ACF functions, they must be installed into the target FileMaker application in order to run. This article describes a few different approaches to accomplish that, depending on your development and deployment setup.
🔹 The Minimal Way
If you compile your functions using the Sublime Text Build feature (and have installed the
ACFcompilercommand-line utility), the resulting.dsCompfile (located next to your ACF source file) can be loaded directly in FileMaker using this script step:Set Variable [$res; ACF_InstallFile( "path to .dsComp file" )]However, this method is not practical in a multi-user environment, since the file must be accessible to all users. A more robust approach is to use a text field in a single-record table (e.g.,
Preferences). Since the.dsCompfile is a base64-encoded binary, it can be stored in a regular text field.The developer uploads the package:
Set Field [Preferences::ACFpack1; ACFU_LoadFile( "path to .dsComp file" )]All users can then install it with:
Set Variable [$res; ACF_Install_base64Text( Preferences::ACFpack1 )]This method is convenient, but it lacks debugging facilities. To inspect console output (such as print statements or errors), you can use:
Set Field [Preferences::console; ACF_GetConsoleOutput]Note: This clears the console each time it’s called.
If your functions do not depend on the target application's data, you can also use the app
new-acf-devtool.fmp12to define your ACF package, load and compile the source, test the functions, and—when you're satisfied—load the resulting binary into your target app using one of the methods above.
🔹 Full Development Environment
If your ACF functions need access to live application data (e.g., using SQL), it’s recommended to embed the development environment inside your FileMaker solution.
Copy/paste components from
new-acf-devtool.fmp12into your solution. This includes:- One table
- A folder of scripts
- Two value lists
- One layout
You can launch the dev layout in a new window from a menu item or button.
For each ACF package, create a record, load the source, and compile.
The
InitACFscript will:- Loop through all saved packages
- Load each binary
- Register your license key (if available)
This method allows for smooth in-app ACF development with full access to your solution’s data.
🔹 Sublime Text Integration
No matter which installation method you choose, it's strongly recommended to install:
- Sublime Text Editor
- The standalone compiler
- The ACF syntax files for Sublime Text
This combination streamlines your development cycle. When the source code compiles successfully in Sublime Text, you can be confident it will also compile inside your FileMaker-based dev tools.
🔹 Windows Users
The stand-alone ACF compiler is currently only available for macOS. However, the ACF plugin itself is fully compatible with Windows, so you can still develop and deploy ACF functions for Windows-based FileMaker solutions.
As a Windows developer, you can compile ACF source code directly within FileMaker using the plugin’s built-in compiler. This allows you to edit your code in FileMaker fields or load it from files, then compile and test it without needing the standalone compiler.
Additionally, Sublime Text is available on Windows, and all syntax highlighting and auto-completion features will work as expected. The only limitation is that the Build feature (which relies on the stand-alone compiler) will not function on Windows until a Windows version of the compiler is released.
