Version 7 of FileMaker’s popular flagship product, FileMaker Pro, has something for everyone, including end users who have never defined a field or tweaked a layout, managers who make purchasing decisions, and IT types who support networks and care about security and reliability. But developers—whether they’re in-house, independent, or do-it-yourself—will be most excited about this release.
Fewer Worries for IT Professionals
For IT pros, FileMaker Pro 7 offers major improvements in security and multiuser access.
Network administrators will find that configuring access privileges and dealing with passwords is both easier and more flexible than it used to be. For example, it’s now possible to give a single account both edit-only access to existing layouts and create-and-edit privileges with respect to new layouts, so a user can define custom reports.
Discussion of FileMaker Server 7 (for LAN sharing to more than 5 users) and a new product, FileMaker Server 7 Advanced (for LAN and Web both), is outside the scope of this review, but the specifications are impressive. The number of concurrent users on a LAN has doubled to 250. And due to major improvements in the Instant Web Publishing feature, Web access to a database is remarkably similar to LAN access in overall functionality. Web users see the same layouts, click on the same buttons, and (in most cases) benefit from scripts that work the same way.
Something for Ordinary Users, Too
FileMaker Pro 7 also has its share of improvements that ordinary users will appreciate, even if many require that a developer set them up. It’s now possible to configure layouts so that changes made to a record require confirmation before they’re saved; if you discover you’ve edited the wrong record, you can click on the Cancel button and no harm will be done. Text-formatting functions make it easier than ever to do things such as flag invoices that are 60 days past due and show negative calculation results in red. A developer can also assign autoenter calculation formulas to data-field definitions, to format phone numbers and Social Security numbers automatically.
In addition, many old technical limits have been obliterated. Container fields are no longer limited to multimedia files such as photos or QuickTime movies; in fact, each container field can now store virtually any kind of document, even other FileMaker Pro databases as large as 4GB. According to FileMaker, text fields can now hold as much as 2GB of text (up from 64K), and files can grow to 8 terabytes (up from 2GB).
The improvements I’ve already mentioned would be enough for an ordinary upgrade, but this isn’t an ordinary upgrade. Beneath the surface, in fact, it’s a whole new app.
The biggest news in FileMaker Pro 7 is that developers are no longer constrained by the old one-file-equals-one-window-equals-one-data-table rule. In earlier versions of FileMaker Pro, anything more complex than a grocery list required multiple files—one file for each distinct class of data (accounts, invoices, line items, products, suppliers, and so on). In FileMaker Pro 6, tasks such as changing passwords and defining relationships involved opening file after file. Sorting lists of related records in portals in more than one way often required creating multiple copies of the same relationship. And getting data from indirectly related files was, well, a pain in the neck. Amazingly, it all worked pretty well. But looking back on it now, I have to say that the old way was a bit nutty.
Anyway, it’s all changed dramatically for the better with FileMaker Pro 7.
One file, one window? Not anymore. Even in a single-file database, you can open multiple windows, showing different sets of records from the same table, or records from different tables, or simply using different layouts. Users working in simple databases just use the New Window command. Developers can open and name new windows procedurally, define their dimensions, and control their placement. This is a huge step forward.
As for the one-file-one-table rule, it’s gone. Maximum number of tables in a file? According to FileMaker, it’s now one million, up from only one table per file in File-Maker Pro 6. A single database file—say, Library_of_Congress.fp7—can now contain absolutely every element of a complex relational database: dozens of tables, hundreds or thousands of fields, layouts, scripts, value lists, and all the data, to boot.
And you don’t have to put everything in one file. Instead, in FileMaker Pro 7, you can do whatever you think works best for your project: all the tables in one file, or each table in its own file (still possible), or data tables in one file and scripts and layouts in another file that might have no tables at all, or different front-end files for different departments in a company that all access the same back-end data, or any number of other permutations.
Relationships Go GUI
Rich new possibilities require a flexible new interface for developers. You now define relationships between data tables using something called the Relationships Graph. To create a simple relationship between two tables, draw a line between the match fields (see “Striking Up Relationships”). More-complex relationships can be defined using a special dialog box; for example, an account record can quickly be related to all invoice records whose paid-date field is empty and whose invoice-date field is more than 30 days in the past.
Like many innovations, the Relationships Graph solves some problems and creates others. If you need to relate tables X and Y in more than one way (as sometimes happens), you’ll discover that the graph will not tolerate circularity. To avoid this, you have to place a second instance—what FileMaker calls an “occurrence”—of one of the tables on the graph. Even a relatively small number of tables whose basic relationships could be represented in a straightforward ER (entity-relationship) diagram can turn into a rather scary-looking Relationships Graph in FileMaker Pro 7.
Developers I’ve talked to are still debating the best ways to deal with the new relational model, but nobody seems to want to go back to the old one. Managing more than two or three tables takes careful planning, but that’s not a drawback. Careful planning has always been the key to good database design. And the tools in version 7 are an order of magnitude more powerful than those available in earlier versions.
What’s Not to Like?
FileMaker Pro still can’t trigger a script automatically when the user exits a field. And I wish I had more control over the program’s menus. However, it should be noted that both of these limitations can be remedied by third-party plug-ins.
Converting the Old
To use your old databases with FileMaker Pro 7, you’ll need to convert the old files to the new .fp7 file format. You should be able to convert simple databases without a hitch, but converting even moderately complex databases may be somewhat tricky. The good news is that plenty of first-rate technical help is available for free on FileMaker’s Web site at www.filemaker.com/upgrade. Study up before you try to convert. It’s possible (and legal) to run FileMaker Pro 6 and 7 on the same machine at the same time, so you can jump into FileMaker Pro 7 and bring your old files along when you’re ready.
Macworld’s Buying Advice
If you’re happy with the old FileMaker database you’re running now, upgrading to FileMaker Pro 7 may involve some trouble and expense. And even if you’re already using OS X, converting old databases will take some planning. Nonetheless, version 7 offers compelling advantages. It’s the most secure, most reliable, most powerful, and most flexible FileMaker Pro ever, and it’s still every bit as user-friendly as its predecessors. I think you’ll be impressed.Each object on the graph represents an instance of a single data table. To define a simple relationship, draw a line from one match field to another.