troi logo-homeproductspurchasesupportnewsaboutliststipslinks-

FAQ Part 1: General plug-in questions

Table of Contents | Part 1 | Part 2 | Part 3 File Plug-in | Part 4 Text Plug-in | Part 5 URL Plug-in

Getting Started

Installing

Hosting

FileMaker Runtimes

Licenses

Registration

FileMaker Pro 9, 8.x and 7New!

FileMaker Pro 6

More information

 

Getting Started

Q. What are FileMaker plug-ins?
FileMaker Pro Plug-Ins provide additional functionality to enhance FileMaker Pro. Plug-ins can add new external functions, making it possible to do things which can not be done with FileMaker Pro alone.

Q. What can you do with FileMaker plug-ins?
FileMaker Plug-ins can add functionality in a lot of areas. With plug-ins it is for example possible to read a file from disk, communicate with a serial port, show special dialogs, encrypt data and much more!

Q. Which operating systems are supported by FileMaker Plug-ins?
Plug-ins can be created for each operating system (or platform) on which FileMaker Pro runs.

FileMaker Pro 8.5 runs on Mac OS X 10.3.9 (or later) for PowerPC-based Macs or Mac OS X 10.4.5 (or later) for Intel-based Macs. FileMaker Pro 8.5 also runs on Windows 2000 (Service Pack 4) or Windows XP (Service Pack 2).
Older versions of FileMaker ran on Mac OS 8.x and 9, Windows 95-98-Me, Windows NT/2000 and Windows XP. But please be aware that not all plug-ins are available on every platform. Developers need to create and test a plug-in for a specific platform. Also it is possible that a specific fucntion can not be created on a specific platform.

Q. How do I start using FileMaker plug-ins?
The best way to start is to download the demo from our web site and take a close look at the included example files.

Q. Which version of FileMaker do I need to be able to use plug-ins?
FileMaker 4.0 introduced a limited way to create plug-ins with the External function API. Plug-in functions for this API look like this:

External( "function name" , "parameter" )

FileMaker Pro 7 introduced a richer way to build plug-ins, this so called FileMaker 7 Native API allowed for more paramaters and Unicode. Plug-in functions for this API look like this:

Function_name( parameter1; parameter2; etc... )

To see with which version of FileMaker Pro a plug-in will work please refer to the specific plug-in web page. For more information on compatibility with FileMaker Pro 7/8/8.5. See the Troi FMP 8.5 compatibility page: <http://www.troi.com/filemaker85.html>.

With FileMaker Advanced 9, FileMaker Advanced 8.x and FileMaker Developer 7 you are able to make standalone runtimes which can also use plug-ins.

Q. Do Troi plug-ins work with files hosted with FileMaker Server?
Yes, they all work with FileMaker Server. The plug-in needs to be installed at the FileMaker Pro client though.

Q. Do your plug-ins work with Citrix MetaFrame (or MS terminal server)?
We expect our plug-ins to function normally on Citrix and on MS Terminal server. Several users have reported good results. However some plug-ins may use system resources, like a serial port or an IP address and/or port, that can not be shared.
See also Sending remote events with Activator.

We ourself have not tested plug-ins on Citrix and if you have information on this please let us know.

Q. Do you have test results from users regarding plug-ins and Citrix MetaFrame (or MS terminal server)?
Yes, Andy Knasinski tested Troi Coding, Troi Dialog, Troi File, Troi Number and Troi Text, and each worked as normal. He also tried Troi Serial on Citrix. He wrote: "When running multiple sessions on the same COM port it came up and said "port in use" as I would have expected."

Thanks Andy!

Back to top

Installing

Q. On which machines do I need to install the plug-ins?
You need to install it for each FileMaker Pro client which is going to make use of the functionality of the plug-in. The files can be single user or shared with others.

Q. Where on the disk do I install plug-ins?
For Filemaker Pro 7 and 8.x: Plug-ins need to be placed in the directory "Extensions" inside the FileMaker Pro directory. This is the same on Mac as on Windows.

FileMaker 9 added an extra location for (auto-updated) plug-ins: Auto-updated plug-ins from FileMaker Server 9 are downloaded to new locations under the current user's application data folder:

  • Windows XP:
    C:\Document Settings\User Name\Local Settings\Application Data\FileMaker\Extensions
  • Windows Vista:
    C:\Users\User Name\AppData\Local\FileMaker\Extensions
  • Mac OS X:
    Macintosh HD:Users:User Name:Library:Application Support:FileMaker:Extensions

Both FileMaker Pro 9 and FileMaker Pro Advanced 9 will load plug-ins from the Extensions folder in the application folder before loading from the current user's FileMaker Extensions folder.

TIP If you use FileMaker 9, auto-update and install plug-ins manually: it can be a good idea to install all the (3rd party) plug-ins in the same FileMaker\Extensions folder inside the user's application data folder.

For older FileMaker Pro versions 4 to 6:
On Windows Plug-ins need to be placed in the directory "SYSTEM" inside the FileMaker Pro directory. On Mac OS put the plug-in in the folder "FileMaker Extensions" in the FileMaker Pro folder.

Q. Do I need to install Troi plug-ins on the server computer that is running FileMaker Server?
No, at the moment server-side functionality does not work. You can only install the plug-in on a client computer that is running FileMaker Pro.

Q. I've correctly installed the plug-in, but nothing seems different. How do I make the plug-in work?
To make a plug-in do its work you need to add calls to the External functions of that plug-in. For some plug-ins this needs to be done in a script in ScriptMaker and for others in defining a calculation in the Define Field dialog box. See the documentation and examples that come with the download of the plug-in for information on specific External Functions.

Back to top

Hosting

Q. Can I use FileMaker Client to host files that make use of plug-ins?
Yes, but also here you need to install the plug-in on each FileMaker Pro client which is going to make use of the functionality of the plug-in.

Q. I host my database on a Macintosh but have client users on Windows through a network. Will the users on the Windows PCs be able to take advantage of the plug-ins?
Yes, provided you have installed a Windows version of the plug-in on the clients. The reverse situation also works.

Back to top

FileMaker Runtimes

Q. Do plug-ins work with a bound runtime created with the Developer Utilities found in FileMaker Pro Advanced 9, FileMaker Pro Advanced 8.x or FileMaker Developer 7?
Yes, this will work.

Q. Is there a special place that plug-ins need to be to be able to work with a bound runtime?
Yes, the plug-ins need to be placed in a subfolder in the directory of the bound runtime. You might need to create this subfolder: for runtimes created with FileMaker Pro Advanced 9, FileMaker Advanced 8.x or FileMaker Developer 7: create a folder with the name "Extensions".

For earlier runtimes on Mac OS create a folder with the name "FileMaker Extensions", on Windows call it "SYSTEM".

Q. When using the binder from the Developer Utilities found in FileMaker Pro Advanced 9 are the plug-ins really bound?
No, the plug-ins are not bound together with your solution. You still have to add the plug-ins to the appropriate folder.

Q. I have a Developer License for your plug-ins. Can I register the plug-in from within the runtime and get rid of the registration file?
Yes. All the versions of our plug-ins have a 'built-in' registration function. See the folder "For Solution Developers" in the download for more information on this.

Back to top

Licenses

Q. Do I need to buy the plug-ins for the PC to have them work on a hosted file?
Yes.

Q. I'm a developer of solutions. Can I bundle your plug-ins with our solutions?
Yes. We have a special Developer distribution license for solution developers: <http://www.troi.com/devlicense2.html>

Back to top

Registration

Q. I can't seem to get my registration file to work. What am I doing wrong?
After payment we will send you a payment certificate for the platforms you paid for. If you paid for both Windows and Mac you will get 2 different emails with 2 different registration strings.

Pay attention to this:

  • The registration strings are different for Mac and Windows. Always use the Windows version on a Windows computer and the Mac version on the Mac.
  • The names of the files are different for Mac and Windows. On Mac name the registration file "Troi Payment Certificate". On Windows name it "TroiPay.txt". (Do not include the quotes in the file names).
  • Place the registration file in the same directory as your FileMaker Pro application. Do not put it in the same folder as the plug-in, the application folder is one level higher.
  • If you have more than one copy of the FileMaker Pro application on your computer put a copy of the registration file in each folder.


On Mac OS X your folder should look similar to this :

macos x registration

Q. The Troi Payment Certificate works on Windows, but not on Mac OS X? Why?
The problem may be that Mac OS X adds a (hidden) .txt extension to the filename. If that is the case our plug-ins can't find the registration. The filename should be 'Troi Payment Certificate' (without the quotes).

When you remove the .txt (using Show Info) it works again.

Q. Our plug-in registration with the Version function works on Mac OS 9, but not on Mac OS X? Why?
I think you might be bitten by the fact that Status(CurrentPlatform) returns -1 on Mac OS X.

Most people use a ScriptMaker Script like this to register the plug-in:

If[ Status(CurrentPlatform) = 1 ]
# We are on Mac OS
Set Field [gErrorCode , PluginName_Version( "#BEGIN Mac OS registration...") ]
Else
# We are on Windows
Set Field [gErrorCode , PluginName_Version( "#BEGIN Windows registration...") ]
Endif

This won't work on Mac OS X, as it will try to run the Windows registration. Change the first line of the script to:

If[ Abs ( Status(CurrentPlatform) ) = 1 ]

Now it should register correctly.

Back to top

 

FileMaker Pro 9, 8.x and 7

Q. Do you have Universal versions of the Troi plug-ins? New!
Yes, all our current plug-ins are Universal. See the Troi FMP 9 compatibility page for an up to date list: <http://www.troi.com/filemaker9.html>.

Q. Will your plug-ins run with FileMaker Pro 9, 8.x, and 7?New!
In general yes, all plug-ins should run in FileMaker Pro 7, 8.x and 9.

When running FMP9 or FMP8.5 on an intel-based Mac see also below.

Also there might be small issues with some functions of the plug-in. See the page below for more information regarding compatibility of each Troi Plug-in with FileMaker Pro 9, 8.x and 7:
http://www.troi.com/filemaker9.html

Q. Can non-universal plug-ins run on Intel-based Mac?New!
For FileMaker Pro 7 and 8: Yes, the plug-ins should run just fine (under Rosetta).

For FileMaker Pro 9 and 8.5: Normally non-universal plug-ins don't load with FileMaker 8.5 on an Intel-based Mac. However if you specifically turn on the Rosseta environment, it is also possible to load PowerPC only plug-ins.

To run FileMaker Pro 9 or 8.5 under Rosetta: Select the FileMaker application icon in the Finder and Get-Info. Check the "Open using Rosetta" box.

Now you can use all of the new 9 or 8.5 features, as well as your older plug-ins. Please note that applications runs considerably slower under Rosetta.

 

Q. Did FileMaker Pro 7 introduce a different plug-in architecture?New!
Yes, FileMaker Pro 7 introduced an improved plug-in architecture. We refer to the pre-FileMaker 7 architecture as the classic API and the new FileMaker Pro 7 architecture as the native API.

NOTE: the plug-in architecture is the same for FileMaker Pro 8 and 8.5. See the page below for more detailed information on the architecture:

http://www.troi.com/pluginsandfmp7.html

Q. Is there an easy way to find all the old-style function calls so that they can be replaced by the FileMaker 7 Native format?New!
There is no easy way to replace all function calls in one go, but if you are on Mac OS X (10.3 or later) there is a way to find them: print out all the scripts to PDF. Then search for "External" in the PDF.

To print your scripts to PDF:

  • Go to ScriptMaker.
  • Select all scripts.
  • Click on the Print button.
  • In the Print Dialog click on the "Save as PDF..." button (at the bottom of the dialog).

To search the old style function calls:

  • Open the just created PDF, for example in Preview.
  • Type Apple-F to get the search drawer.
  • Type in "External" as the search term.

All occurrences of the old style function API will be listed.

This is also a good way to check that you have not forgotten any of them, when you are done converting.

Q. FileMaker Pro 7.0v1 (Mac OS X) crashes when I try to enable a disabled plug-in in the plug-in preferences. What can I do to fix this?
This is a bug in FileMaker Pro 7, and happens with all classic plug-ins.

  • To fix this:
  • Quit FileMaker Pro 7 (if you have not already done this).
  • Temporarily remove the plug-in from the Extensions folder.
  • Open FileMaker Pro 7.
  • Go to preferences and go to the Plug-ins tab.
  • Click on the OK button (this will re-save the preferences).
  • Quit FileMaker Pro 7.
  • Move the plug-in back into the Extensions folder.

Now the plug-in should be re-enabled. We have reported the bug to FileMaker Inc.

Miscellaneous

Q. Some FileMaker 6 files use a semicolon as separator in calculations where I'd expect to see a comma. How come?

(Note: This is no longer an issue: Starting with FileMaker Pro 7 all files use semi-colon for separators.)

For FileMaker 6 files: This is due to the fact that international versions of FMP6 use a semicolon instead of the comma as separator. So for example instead of:

   Set Field[ text, Left( text , 2) ]

You'll see:

   Set Field[ text, Left( text ; 2) ]

The separator being used depends on the operating system your computer uses, as well as the one used when the file was created. Some of the Troi sample files were created with a European system, so calculations in these files may use a semicolon. In the future Troi will create all new files with the comma separator.

Q. How can I change a FileMaker 6 file so that it uses the calculation separator I'm used to?
Make a clone of the file on your computer. This clone will use the same separator as a newly created FileMaker file on this computer. You may need to import the data again.

 

Q. Is it possible that FileMaker Pro 6 executes all arguments of an IF or CASE statement?
Yes, in FileMaker Pro 6 or earlier EACH argument in command in a IF or a CASE statement is excuted. This can cause trouble when plug-in functions have side effects, like for example the creation of a file. For example the Set Field step below will create 2 files, no matter what the value of a is:

Set Field [ result , If (a > 0,
    External("TrFile-CreateFile", gFileA),
    External("TrFile-CreateFile", gFileB) )
]


The solution is to not use a CASE or an IF step inside a Set Field step, but to split it up to separate steps, for example like this:

If [ a > 0]
  Set Field [ result , External("TrFile-CreateFile", gFileA)]
Else
  Set Field [ result , External("TrFile-CreateFile", gFileB)]
Endif

NB: In FileMaker Pro 7 or later this is no longer the case.

More information

Q. Is there a list of error codes that a plug-in might return?
Yes, see Troi OSErrrs, a FileMaker file with all known Mac OS and Windows error codes: <http://www.troi.com/software/oserrrs.html>

Back to top

Q. Why don't you add all the features I request?
We do our best, but it is not that simple. Please read this article by Marc Zeedar: Lessons in programming <http://www.macopinion.com/columns/tangible/00/07/12/index.html>

Q. Are Troi plug-ins Year 2000 ready?
Yes. We have tested our plug-ins for year 2000 readiness and have not found any bugs.

Q. Are Troi plug-ins Year 3000 ready?
Sure. =)

 

Back to top

To FAQ part 2: Questions regarding specific plug-ins

Other Questions?

If your question is not answered here, please look in the documentation that comes with the plug-in. We will be adding more to this FAQ. If you have suggestions please .
 
 


www.troi.com/support   © 2008 Troi Automatisering, all rights reserved.