Wednesday, March 17, 2004

FileMaker 7: separating data and code (Tidbits review)

TidBITS#721/15-Mar-04: "In FileMaker Pro 7, it's possible to put the data in one file, and all the programming resources - layouts, scripts, value lists, summaries - into a separate file. Separating data (and the data structure) from the stuff you do to analyze and display the data brings an enhanced clarity to the development process. It's also a huge boon for any client whose developer is working remotely. When it's time to update that solution with 6 million records, the IT guy takes the solution off line, throws out the old front-end file, puts the new front-end file in its place, and places the solution back online. Downtime: five minutes, tops.

FileMaker developers have been talking about 'The Separation Model' for years, but it was more of a dream than a reality, due to the limitations on the ways in which one file could access, manipulate, and display another file's data. Line-item reports can't be printed effectively from portals, so you usually had to jump to a data file to print line items (like invoices or class rosters). And that usually meant you had to include scripts in the data file to sort the records and display them on a report layout.

But in FileMaker Pro 7, since one file can logically incorporate all the tables in another file and make use of them as if they were stored internally, these impediments to true separation no longer exist. The main remaining obstacles to The Separation Model are the need to deal with unanticipated fields and user modifications to accounts and passwords, but a lot of smart developers are working on these problems. I have a solution on my PowerBook right now that implements The Separation Model completely. It's somewhat modest, but it works.

The Separation Model won't be adopted by every developer. Many developers will be so thrilled to be able to put everything in a single file that they won't want to think about the alternative, at least not for a while. Even those who embrace it may not use it in every solution, in part because it may unnecessarily increase the amount of data that needs to be backed up regularly. But the sky's the limit now as far as file size goes. FileMaker Pro database files can balloon to 8 terabytes (if you have an Xserve RAID to store it on). As FileMaker Pro databases grow ever larger, the advantages of The Separation Model may become more obvious and more compelling."

No comments: