The first thing that struck me about the new version of FileMaker Pro and FileMaker Pro Advanced released Monday is that the file format hasn't changed. In its first dozen years, FileMaker got a new file format every other version. But this new release uses the same format (.fp7) that FileMaker has had for nearly five years now, since the release of FileMaker Pro 7.
Why does this matter? The upgrade from FileMaker Pro 6 to FileMaker Pro 7 was perhaps the most significant upgrade in the program's history, but that great step forward twisted more than a few ankles at the time, and those of us who lived through it aren't eager to do that again just yet.
So I'm pleased that this upgrade offers lots of gain and almost no pain. In fact, at first glance, FileMaker Pro 10 offers so many real benefits to developers and end-users alike that, if you're already using FileMaker, you're going to find it hard to resist the urge to upgrade. And what if you're new to FileMaker Pro? Then you're looking into the database application at a great time.
Here's what to expect from this FileMaker update, based on an initial look at version 10.
Look, ma--no developer!
One thing that makes this a compelling upgrade is the fact that, if you're the developer, you'll be able to pass on significant advantages to end-users with little or no effort. Or to put it differently, if you're an end-user, you may be able to see some of these benefits without needing to call the developer at all.
The most obvious example of this is the application's new Status Toolbar, which replaces both the status area (on the left) and the toolbar (at the top) of previous versions. The status toolbar provides ready access to more tools in an updated location that new users will find familiar from other applications. The status toolbar saves at least do-it-yourself developers some effort by providing a wider array of buttons than previous versions had; it's also somewhat customizable.
A less cosmetic, more substantial improvement in FileMaker 10 is a new saved-and-recent finds feature. Do you define the same finds over and over again--for example, Q4 sales, or unpaid invoices, or your favorite contacts? FileMaker 10 keeps track of your finds and lets you re-execute them without having to switch to find mode and reenter criteria over and over again. The recent finds feature is a bit like the list of recently-opened databases in the File menu or the history feature in your Web browser. And if you want to keep a find around permanently, you can simply save it, the way you might bookmark a favorite Google search.
The saved-and-recent finds feature is user-specific--that is, Larry in accounting can have a different set of saved finds from the ones that Lisa in sales has. And best of all, developers won't have to do a thing to most databases for this feature to be available to end-users.
One quick note to developers: Your end-users won't be able to access saved and recent finds if they don't have access to the Find command and/or if the status toolbar is hidden and locked. That tripped me up at first. Might be time to consider opening up your solutions a bit and taking advantage of what FileMaker gives you in the UI department for free.
Some assembly required
Do-it-yourself developers will be pleased that it's now possible to create a FileMaker database by importing a Bento "library." It's also easier than ever to create a new database from an Excel spreadsheet. And do-it-yourselfers who don't really like to do it themselves will be pleased to know that there are 10 new layout themes as well as 30 starter databases.
This to-do list demonstrates a number of new features in FileMaker Pro 10. By customizing the status toolbar (using a little custom menu work) I'm able to eliminate task buttons on my layout. Note "Saved Finds" and "Send Mail" buttons on the toolbar. The Send Mail script uses my SMTP server to send me a task list directly from the database. The task records stay sorted and grouped even in browse (editing) mode, using dynamic reporting. To highlight the selected record in list view, I use conditional formatting that is activated by a by a script trigger whenever a record is selected.The starter databases cover a variety of business and personal applications, from invoicing to asset management to family medical records--and about half of the starter databases have been significantly rewritten to take better advantage of FileMaker's relational capabilities. The application's online learning center has been beefed up as well.
FileMaker Pro 10 can now talk to your SMTP server directly, without needing a plug-in, so with just a little configuration (similar to setting up a new e-mail client) you can start sending invoices, reports, marketing letters, and other database-generated information via e-mail directly from FileMaker Pro.
Perhaps the best return on time invested in FileMaker 10 is provided by the new dynamic summary reports feature. A summary report lists records and provides subtotals based on the sort order. For example, the report might list sales sorted by sales rep, with a total for each rep. In the past, you could see these totals only by printing the report or entering preview mode. Now, you can see the totals--and edit the data on which they're based at the same time.
The only trick here is that many of us will have to add summary parts to our normal list layouts; in the past I used summary parts only in layouts designed expressly for printing. A related and very useful improvement in this version is the fact that, when you sort records, they stay sorted. Add a record in list view, hit Enter, and watch it pop automatically into its place in the list.
Finally, experienced developers may find that FileMaker Pro 10 offers the most exciting new opportunities they've since since the release of FileMaker Pro 7. There are lots of little things that developers will be grateful for here--a new Set Field by (calculated) Name script step, the elimination of a major headache encountered in the past when you tried to insert a field into the tab order of a layout, and more--but the major news in FileMaker 10 for serious developers is the appearance of script triggers.
FileMaker scripts can be simple macro-like actions that, say, go to a layout and send a report to the printer; or they can be very complicated, multi-part, processes that perform nearly every action that FileMaker Pro is capable of, while being governed by programming logic that allows for user input, looping and branching, error-checking, and other control mechanisms. In short, scripts can be a tremendously powerful element of a database.
Now, in the past, just about the only way to trigger a script was for the user to click on a button. This was okay a lot of the time, but in other database programs like 4D, it's been possible for a long time to trigger scripts automatically in response to various basic actions, like selecting a record, modifying a field, or changing layouts, and FileMaker developers have been praying for something similar. Our prayers have been answered.
If you are a developer who writes scripts, you won't need me to tell you how huge this is. Script triggers in FileMaker Pro 10 can be used to obviate the need for calculation fields; perform record validation; check to see if users have privileges to access particular records or layouts and gracefully respond if they don't; highlight the selected record in a list; perform searches when new records are created to catch accidental duplicate entries; set a value in a field automatically when the user clicks into the field; and on and on. I have discovered that script triggers require careful planning; there's a lot of pretty low-level power here and you can trip yourself up. But with script triggers, your dreams of total world domination, or at least of total control of your databases, will finally come true.
The product line
The FileMaker 10 product line consists of the two end-user products (FileMaker Pro and FileMaker Pro Advanced) and the two server products (FileMaker Server and FileMaker Server Advanced). FileMaker Pro Advanced is simply FileMaker Pro plus a debugger, a database-analysis tool, a utility that helps rename files and create demo versions of databases, and the custom function editor.
The extras in FileMaker Pro Advanced have not changed significantly in this version. And while these are useful tools--in particular I hate having to work without the debugger--nevertheless, the majority of what even full-time developers do daily can be done in a standard copy of FileMaker Pro. The new features mentioned above are all available both in FileMaker Pro and FileMaker Pro Advanced.
FileMaker Server and FileMaker Server Advanced make it possible to serve your databases to local area networks and/or the Internet and new versions of these programs will be available to provide support for the features in FileMaker Pro 10.
Final first impressions
As a user and as a developer, my overall first impression is favorable. It took me a little time to get used to the new status toolbar, but I'm warming up to it finally. Persistent sorting, dynamic summary reports, editable table views--these are improvements I am grateful for as a user. As for script triggers, although I keep insisting to my daughters that I am not a geek, I find script triggers pretty exciting.
I'll have more on the new features in FileMaker Pro 10 as well as a final verdict on the update in my full review of the database application, coming soon to Macworld.com.
[William Porter is a database applications developer and event photographer in Dallas, Texas.]
This story, "First Look: FileMaker Pro 10" was originally published by Macworld.