FileMaker Pro 18 is here!

By May 22, 2019 September 10th, 2019 FileMaker Plug-ins blog

We congratulate FileMaker, Inc. on the release of the new version 18 of the platform today.

Troi Plug-ins for FileMaker Pro 18

We have been working hard to prepare our plug-ins for this new FileMaker version. Please see the FileMaker 18 compatibility page to learn which versions we have tested to work with FileMaker 18.

New plug-in related features in FileMaker Pro 18 Advanced

The release of version 18 of the FileMaker Platform brings a lot of new features and improvements. First we discuss the improvements related to (Troi) plug-ins.

Unsigned plug-in notifications

Using plug-ins got a lot more secure: FileMaker Pro 18 Advanced may now notify you when you attempt to load a plug-in that hasn’t been signed by its developer. All current versions of Troi Plug-ins are code signed, so this should not occur. But if you load older plug-ins or from a developer that has not signed its plug-ins. you will get a dialog box like this:

click the image to enlarge

What happens when loading plug-ins

If a plug-in is enabled, FileMaker Pro 18 Advanced attempts to load it after it is installed and whenever FileMaker Pro Advanced starts. If an enabled plug-in has not been digitally signed by its developer, FileMaker Pro Advanced may notify you that it can’t verify whether the plug-in has been tampered with since the developer created it.

If you see this message, you can do one of the following:

  • To always load the plug-in, select Always load this plug-in, then click Load Plug-in. FileMaker Pro Advanced loads the plug-in and adds it to your permitted list. You will not receive another notification for this plug-in.
  • To load the plug-in without adding it to the permitted list, click Load Plug-in.
  • If you are uncertain whether to permit the plug-in to load, click Cancel and contact the plug-in developer.
  • You can also later remove plug-ins from the permitted list: go to Preferences->Permitted tab, select one or more plug-ins, then press Backspace.

Note that for each operating system account on a computer, the user controls which plug-ins are added to that user’s permitted list. The user’s list applies to all FileMaker Pro Advanced files the user opens.

See also our Code sign information of Troi Plug-ins.

Installing plug-ins with the EasyInstallTroiPlug-ins.fmp12

You can easily install our plug-ins with the EasyInstallTroiPlug-ins.fmp12 example file included with the downloads of the plug-in. In the latest version of this example file we already added scripts steps to show additional error information from Get(LastExternalErrorDetail) when running on FileMaker Pro 18. Get(LastExternalErrorDetail) can now return additional error information that a plug-in is not code signed or is improperly signed. Below you see how that looks with ourEasyInstallTroiPlug-ins.fmp12 example file:

click the image to enlarge

 

Other new features in FileMaker Pro 18

The release of version 18 of the FileMaker Platform brings a lot more new features. Here is an (incomplete) list:

Improved data importing and file conversion

Importing got a lot easier: there is a new Import Field Mapping dialog box! With it you can choose target fields from a list that you can search! You can also choose any record in the source file to use as field names for certain import file types. And you can now specify a custom character that separates field values, choose any record to use as field names, choose which fields to include, and specify a target table name.

Security enhancements

In addition to the checking of code signing of plug-ins there is also a new Manage Security dialog box! With this Manage Security dialog box, you can:

  • work with an account access list filtered by account type, assign privilege sets to users and groups directly in the list, and perform other common tasks in the details pane without leaving the list
  • manage privilege sets, extended privileges, and file access in the Advanced Security Settings dialog box
  • see whether the selected authentication type is supported on the file’s current host

Improved usability

  • Move objects with Shift-Arrow keys – Using the Shift-Arrow keys in Layout mode now moves objects in increments 10 times larger than when using the Arrow keys.
  • Read and write external data files – Create scripts that read, write, and manage external data files – for example, to write log files or export data in a custom format. See “New script steps,” below.
  • Open files with a version-specific URL – You can now use the fmp18 scheme in URLs to open files specifically with FileMaker Pro 18 Advanced or FileMaker Go 18.
  • Open a custom app upon start – You can now use the personalization file during a command-line installation to specify a custom app to open when FileMaker Pro Advanced starts.
  • Save files as XML – You can now save a FileMaker Pro Advanced file in an XML format that represents the schema, layouts, scripts, and other parts of the file. You can use the XML file to document changes in your custom app between versions and use standard text-based tools to compare versions.

Script steps

New script steps

FileMaker Pro 18 adds some (basic) file related script steps. Our Troi File Plug-in can do all FileMaker Pro 18 can do, but much more. See how our Troi File Plug-in compares to the file functions in FileMaker Pro 18.

  • Close Data File – Closes an open data file.
  • Create Data File – Creates an empty, data file.
  • Delete File – Deletes a file.
  • Get Data File Position – Returns the read-write position in an open data file.
  • Get File Exists – Returns 1 (true) if a file exists; otherwise, returns 0 (false).
  • Get File Size – Returns the size, in bytes, of a file.
  • Open Data File – Opens a data file for use with other data file script steps
  • Open Favorites – Opens the Favorites window.
  • Read from Data File – Reads data from an open data file.
  • Rename File – Renames a file.
  • Set Data File Position – Sets the read-write position in an open data file.
  • Set Error Logging – Controls whether errors are logged while the current file’s scripts are running.
  • Write to Data File – Writes data to an open data file.
  • Save a Copy as XML – Saves a copy of the current FileMaker file as an XML representation of the schema, layouts, and scripts.

Changed script steps

  • Open My Apps – This script step is now Open Favorites.
  • Upload to FileMaker Server – This script step is now Open Upload to Host.
  • Insert from URL
    • Supported URL protocols now include smb, smtp, smtps, ldap, and ldaps.
    • Sending email via SMTP is now supported via cURL with the addition of the –mail-auth, –mail-from, and –mail-rcpt options. This includes sending email in HTML format.
    • Requesting uncompressed responses from a server is now supported via the –no-compressed cURL option.
    • When the cURL library returns an error, the returned data is now stored in the target if the target is a text field or a text variable.
  • Open Help – This script step is no longer supported in FileMaker WebDirect, because FileMaker WebDirect no longer includes Help.
  • Insert from Device – This script step now recognizes PDF417, ITF-14, Aztec, and Data Matrix bar code types.
  • Save Records as PDF – This script step now supports the Append to existing PDF option and Security tab options in FileMaker Go.
  • Import Records – This script step now supports the new options available in the Import Field Mapping dialog box.
  • Convert File – For supported file formats, this script step now supports using any row in the source file as field names in the converted file, choosing which fields to import, and specifying a target table name.

Functions

  • Some function groups in the Specify Calculation dialog box and in Help have been reorganized to better reflect their purpose.

New functions

  • While – Repeats logic while the condition is true, then returns the result.
  • SetRecursion – Sets the maximum number of iterations for recursion and loops within an expression.
  • CryptGenerateSignature – Generates the digital signature of the data.
  • CryptVerifySignature – Verifies whether a digital signature is valid for the data.
  • Get(AccountType) – Returns the current account’s authentication type.
  • Get(OpenDataFileInfo) – Returns the file ID and path of each open data file.

Changed functions

  • Get(LastExternalErrorDetail) – This function now returns information when plug-ins don’t install or load.
  • GetLayoutObjectAttribute – In FileMaker WebDirect, this function now returns a result for the content and source attributes when acting on a chart, and for the source attribute when acting on a web viewer.

Changed and removed features

  • Custom functions that use non-tail recursion are now limited to 50,000 rather than 10,000 iterations by default, subject to available call stack space in memory. The limit can be increased or decreased using the SetRecursion function.
  • Support for the Photoshop image format has been restored in macOS.
  • The name of the FileMaker Pro Advanced application now includes the version number. If you use external scripts that rely on the application name, you may need to update them.