Using FileMaker® Plug-Ins

This text will give you a brief overview of using FileMaker and FileMaker Server plug-ins.
 

About Plug-Ins

What is a FileMaker Plug-In?
A FileMaker plug-in is a piece of software that extends the capabilities of FileMaker Pro by adding new functions, and/or modifying the functions already built into FileMaker Pro.

Why Do I Need Plug-Ins?
FileMaker Pro gives you the ability to quickly build elegant, easy-to-use, and easy-to-customize information management solutions. However, since it is targeted to a large variety of users, several specific functions are either not included, or too generic. By extending FileMaker Pro with plug-ins specific to your needs, you can solve your specific issues much more easily, effectively, and spend much less time and money than if you would have to reinvent the wheel by using strictly the FileMaker Pro's built-in functionality.

What Plug-Ins Should I Choose?
Using a plug-in is not always better than living without it. Before you buy a plug-in, make sure it is cross-platform, as you never know when you will need to move to another platform. Also make sure that the plug-in's vendor can offer quality future support for their plug-ins. At last (but not least), make sure the plug-in will actually make your work easier, not more difficult.

Note: All FileMaker plug-ins from 24U Software are cross-platform, easy to learn, and easy to implement. 24U Software keeps developing new versions and new plug-ins since our first cross-platform plug-in was released in May 2001. Technical support by e-mail is available for free to all registered users.
 

Using Plug-Ins

Where Do I Install Plug-Ins?
For a plug-in to be recognized by FileMaker Pro, you have to put it in Extensions folder. Its standard path is:


Installing the plug-in into the user home does not require administrator privileges. Each required plug-in must be installed on every client (every computer running FileMaker Pro and connecting to FileMaker Server) calling its functions. FileMaker Server cannot host a plug-in to a client machine.

Where Do I Install Plug-Ins on Server?
FileMaker Server plug-ins must be placed in following folders:


If you want to enable your web publishing solution (XML, PHP, and FileMaker WebDirect) to use the plug-in, place an extra copy to:

Where Do I Install Plug-Ins on FileMaker Cloud Server?
Please find detailed installation instructions in ReadMe document.

Where Do I Install Plug-Ins for Runtime Solutions?
Runtime solutions are in fact copies of a special runtime version of FileMaker Pro with modified database files attached. They work with plug-ins the same way as FileMaker Pro, looking for them in the Extensions folder of the bound solution's root folder. If there is no Extensions folder automatically created for your runtime solution, you can create it manually, and then copy your plug-ins into it.

How Do I Invoke Plug-Ins?
Most plug-ins extend FileMaker Pro's functionality by adding new functions to the list of available functions in the FileMaker Pro's calculation dialogs. These extra functions are called external functions. To see them, choose External functions from the View popup menu in the top right corner of the calculation dialog.

Calculation
External functions in a calculation dialog
 

Calculations can be used in field definitions (calculated fields, auto-entered values, validations), and also in some script steps, such as If, Exit Loop If, or Set Field. Some plug-ins simply implement useful calculation functions, while others implement actions which will perform upon request from within your scripts. You can do this by calling their functions in the mentioned script steps.

Invoking plug-ins
Invoking plug-in action from within a script using the Set Field step
 

How Do I Pass Data to a Plug-In?
Each external function provided by a plug-in could be called with multiple parameters. Some functions may have no parameters, for example 24U SimpleFile Plug-In has _Version function which can be called without parameters:

SFile_Version

To pass field content or variable, write its context and name as a function parameter:

SFile_Copy( MySolution::Field1 ; MySolution::Field2 )
SFile_Copy( $MyVariable1 ; $MyVariable2 )

Number and text constant can be written directly into the function call:

SDialog_ProgressDialog( 0 ; "close" )

Optional parameters are closed curly braces on function definition. This parameter can be omitted when calling the function. For example:

SFile_Version( { versionFormat } )

This can be called without parameter, just SFile_Version or with some parameter SFile_Version( "long" ).

How Do I Get Data Back from a Plug-In?
Each external function provided by a plug-in returns a single value as its result. Some functions simply get the data passed to them as a parameter, process it, and return the result. The failure is indicated by "?". Some functions designed to perform an action, being invoked from within scripts, usually return an error code as a result. By convention, result code 0 indicates success, while anything else means that the requested action has failed. In such cases, the value returned often matches a standard Mac OS X or Windows error code you can use to find out the failure's source.
 

Getting More Help

If you need help with a specific plug-in, you should ask the plug-in's vendor for support. If you need help with a plug-in from 24U Software, start by looking in the documentation accompanied with the plug-in. If the documentation does not answer your question, please go to our product support page.
 

We also offer paid developer level support and custom development services. If your goals go far beyond the basic use of already existing plug-ins and you want to implement something more advanced, or if you just start thinking that something is impossible in FileMaker Pro, please do not hesitate to contact us.
 

24U Software
Copyright © 2003-2020 by 24U Software. All rights reserved.