For small workgroups, or mixed PC and Mac offices, FileMaker Pro has dominated the database market for some time now.
Its ease of use, cross-platform nature, and less-than-terrifying learning curve seems to have put its few proprietary rivals out of the running, and with the previous two versions (7.0 and 8.0) most of the remaining bugbears (easy separation of data from interface, poor script editing tools, inflexible menu system, inadequate accounts tools) were put to rest.
So any new version would have to include some seriously useful tools to make upgrading a worthwhile proposition.
The list of new features in FileMaker Pro 8.5 is certainly short; two new script steps, five or so new functions, improvements to multi-lingual sorting, the ability to name specific objects on layouts, an online resource centre, Universal support for Macintosh machines (so it runs natively on the new Intel Macs), oh, and a new layout object called a Web Viewer.
This particular feature which may have been relatively simple to implement, changes the way in which most users will look at their FileMaker databases, and, more importantly, offers a concrete reason for those users still staring at a version 6 or version 7 start-up screen to make the move to 8.5.
A web viewer is a layout control that allows you to view a web page from within your FileMaker layouts. In layout mode, you draw a box, up pops a dialog, you fill in the URL and you’re done. Switch to browse mode, FileMaker attempts to load your URL, and assuming it’s successful, there’s your web content. It’s as simple as that.
There are no obvious controls (although you use a contextual menu to go forward and back), so it doesn’t look “embedded”, but links within the web content itself behave just as you would expect; it’s possible to jump to different sites, download files, submit forms, read PDFs, display image files, and so on.
How do they manage it? For Windows users (who need to be running Win2000 SP4 or XP SP2), FileMaker taps into Explorer’s underpinnings; On a Mac, Apple’s built-in webkit does the work – think of it as FileMaker running Safari in a frame.
It’s clear that the aim of web viewers is to give FileMaker users access to Internet-based services from within their existing FileMaker products. To this end, the setup dialog that appears when you create a web viewer also includes a number of default settings that allow you to set up web viewers that will connect to standard web services: Google Maps, MapQuest, Google, FedEx, and all the flavours of Wiki you could possibly want.
Each setting provides up to 5 site-specific options – which can be linked directly to fields, or can be completed by calculation.
The FedEx default for example offers only one choice – a tracking number. The idea is that you can create a simple layout with just one field and a web viewer, and set it up so that the value in the field is used as the tracking number.
Enter a tracking number, and the FedEx page loads right in the page – so you can see the results without having to leave FileMaker. (Developers can also create their own default settings in XML, so that end users can easily add web viewers for other web services as they become available.)
To complement web viewers, FileMaker have a few behind the scenes features. There’s a new script step that allows developers to interact with web viewers in a few simple ways (reset the web viewer, reload the page, go forward, go back, or go to specific URL), and a new function, GetAsURLEncoded, that makes it easier to create web-compatible links from text field calculations.
The new GetLayoutObjectAttribute function, which lets you interrogate layout objects (fields, buttons, portals), includes the ability to examine the textual content of a web viewer: so once a user has checked the status of their FedEx order, it’s possible for a script to extract the details from the web page (sadly using standard text functions– there’s no native XML parsing yet) and therefore add the status information to the FileMaker database itself.
One minor annoyance is the lack of accessibility of content within the web viewer. If you’ve loaded a web page, then the textual content is there for the asking. But recording visual content is down to you saving a page with an oversized web viewer as a PDF and re-importing it into FileMaker Pro; there is no simple way to grab an image of a page from a web viewer into a container field.
After the web viewer, while end users will certainly experience the benefit, the remaining new features are aimed at the FileMaker developer. The Size palette has been renamed the Object Info palette, allows you to name specific objects on a layout.
Why would you want to? Probably because the other new features require it! Firstly there’s a new script step (Go to Object) that let’s you go to a named object, be it a field, a tab within a tabbed panel, or whatever. If you have a number of named objects on a layout, then the LayoutObjectNames function will provide them for you as a return delimited list.
The new List function can now concatenate a list of values from all the repetitions of a field, all the values from matching related records (whether or not these records appear in a portal), or over several fields. This is similar to the sumText function found in some third-party plug-ins, but programmatically simpler to implement.
More helpful still, the Get (ActiveLayoutObjectName) function will tell you the name of the currently active object. So a script can determine the field or portal that you’re in and react appropriately.
And has already been mentioned, the GetLayoutObjectAttribute function lets you interrogate named objects: you can discover the size and rotation of the object; if it’s a tab panel whether or not it’s the frontmost tab; whether or not it is the active object on the layout; the source of the object – where its content comes from – for fields this gives you the qualified field name, and for web viewers you get the URL; and most importantly, you can get at the content of the object.
For fields and container fields, the content is just the value for the current record. For web viewers, disappointingly, it will only return the source document for any displayed HTML. All this is a field day for FileMaker aficionados: you can now programmatically discover the named object on a layout, which one the user is currently focussed on, and what its properties are – if necessary, you can even move their focus to the object they need to be looking at.
For Mac users it’s a Universal application. As an Apple subsidiary, one imagines Steve Jobs has been breathing down their necks to get this one out. As you’d expect with a native app, the speed improvements are considerable – FileMaker themselves claim a 90 percent increase for the Intel version against the same PowerPC version.
This may have some slight benefit for PC users too, as FileMaker engineers can start to look at more Intel-specific optimisations to the non-GUI code.
Interestingly, for FileMaker Server users, there’s one good bit of news: a compatible version – 8.0v4 – of Server and Server Advanced (offering no new features themselves other than Universality, and support for the new 8.5 client features) are available concurrently – FileMaker are clearly aiming for an end to the “waiting for the server” upgrade excuse. Existing customers can upgrade for £35 for the Universal CD.
Web viewers, and these associated new functions and script steps offer an entirely new jumping off point for FileMaker solutions. Anything you can view in Safari can be viewed in a web viewer, and provided you prepared to a bit of text massage you can automatically pull data off the web, and use it directly within your FileMaker solution.
More than that, thanks to version 8.0’s ability to write text files to disk, it’s now possible to create HTML files on the fly, and then preview the results within the FileMaker layout: so you expect graphs, charts, and beautifully formatted tables to start making appearances within a FileMaker solution near you.
In the past, FileMaker’s version numbering has caused some wry smiles amongst seasoned users. However, despite the brevity of this new feature list, this time what they’ve come up is clearly deserving of the 0.5 increment. Whichever version of FileMaker Pro you’re using, it’s definitely an upgrade investment worth making.