We develop FileMaker applications because we want a place to store information for the long term. We track events, tasks, contacts, finances—FileMaker can track almost anything. To update information, the application might ingest a spreadsheet. You usually don’t want spreadsheet rows to feed directly into data tables, since you risk calamity should the columns be mismatched with target fields; you bring data into the application, validate it, and (often) massage it before updating regular data. After you process temporary data, you need to get rid of it.
In the past, Delete All Records represented the only option for removing large numbers of records. After a user performed a function such as the import mentioned above, the system would process the imported data, and then a progress bar would appear, informing the user that a (sometimes large) number of records was being deleted. You don’t want a user sitting through a slow process or worrying about losing information.
Removing the Wait and Concern
FileMaker 15 offers a means of reducing wait times and anxiety for users. Enter the new Most Dangerous FileMaker Command for Developers: Truncate Table. The word, “truncate” means to shorten or cut short; Truncate Table deletes all of the records in a table—the current table or one you select. “Remove Table Data” or “Delete All Records And I Mean It This Time” would be a more accurate name. (The name comes from a SQL command.) The only data not removed from the table when Truncate Table executes are values in global fields, with the exception of global container fields, which lose their values. Truncate Table will not delete child records–you still need Delete All Records for that requirement. Users must have full access privileges to run Truncate Table, which also distinguishes the command from Delete All Records.
We found that, when the Truncate Table script step is called either directly from a script or using Perform Script on Server, the user doesn’t see a progress bar or a message about deletion, and doesn’t have to wait—the records disappear right away.
I have a few scripts, including some Facter reporting “facts”, that make heavy use of FileMaker Server’s fmsadmin command. After a 14.0v4 on install on Yosemite I was puzzled to discover that one of the scripts wasn’t working. When run, the script was complaining that the fmsadmin command was missing, yet I could still run the command when I typed it in the Terminal. Puzzled, I eventually found that the shell’s whereis command was returning a different path from what I had in my script’s environment.
It turns out if you are using Mac OS X you can get the same facilities found in Safari to debug your code that’s running in a FileMaker Web Viewer.
FileMaker Pro 14 includes a new feature to add placeholder text to fields on a layout. What is placeholder text? Simply put, it is a way to put text inside a field when it is empty. This feature is useful for mobile, web and desktop users alike.