Did FileMaker just open the door for developers to create databases that will run on Macs, Windows, iPhones and iPads, all for free?
Runtime + Go = Free Distribution Platform
The recent launch of FileMaker Pro 12 has been getting rave reviews around the web. A big bonus of the new version is that FileMaker Inc. has chosen to make FileMaker Go 12 absolutely free on the iPhone and iPad. This makes database solutions you create on your Mac or PC very easy to deploy on mobile devices.
For a long time now, the company has offered a method of creating free FileMaker Runtimes for Mac and Windows, using FileMaker Pro Advanced. Runtimes are feature-limited copies of the FileMaker software that don’t require the user to purchase FileMaker 12 to run a specifically created database. Note that you can only create Runtimes using FileMaker Pro Advanced, the developer version that sells for $499 — $200 more than the regular version.
What if there were a way to use the same data file that originates from a Runtime version on the iPhone/iPad? The implications would be big right? Free on the desktop and free on an iPhone or iPad. A developer could create a single file that could be used on Macs, Windows, iPhones and iPads, all without any underlying costs beyond the initial purchase of FileMaker Pro Advanced.
Perhaps an example, where budget is a real constraint, would help illustrate this point. Our local music festival has a dedicated internal staff using FileMaker to organize the planning of the festival and coordinate the activies of a large number of volunteers. During the festival the staff balloons to include volunteer coordinators for whom the small non-profit festival cannot afford to purchase FileMaker licenses. Pre-festival the FileMaker database is used to organize volunteers onto various committees, but during the festival the main organizational challenge is to schedule the volunteers. The goal this year is to gather these schedules back from the coordinators so that master lists of volunteer time slots are available at the main gate, to avoid the inevitable questions about ‘What shift was I supposed to show up for?’ from the volunteers. This is the first year office staffers will attempt to centralize this information, and in all probably it will come in, in Excel format. This could work, but as a FileMaker Developer, I bristle at the mention of using Excel for data collection, because I always believe there is probably a better solution involving FileMaker Pro.
Building a FileMaker database would allow several new things to happen, including more consistent data formatting not to mention better looking reports. The data could be in the hands of the coordinators for changes on the fly at the event, available on iPhones, iPads, or laptops. A very useful feature for coordinators would be the ability to work on the file as a Runtime on their home computer pre-event, then upload the database file to their iPhone/iPad to take with them on site. A summary report could be generated with a looping script and emailed in to a central email address. All this could be done without spending any more money on software, beyond building a standard template, generating the Runtimes and distributing copies of these to the committee coordinators.
For those of you new to the process, here is how you can create a FileMaker Pro 12 Runtime database file that runs freely on Macs, Windows, iPhones and iPads. Once the Runtime is created, two methods of getting your database file onto your iPhone or iPad are illustrated.
TL;DNR Version: Turns out there is a method of achieving this dual Runtime/FileMaker Go use and it is fairly straight-forward. When generating a FileMaker Runtime, simply change the Runtime extension to .fmp12, the same extension that regular FileMaker Pro 12 and FileMaker Go 12 use. This simple step allows users to easily use the Runtime database from a Mac or Windows computer on an iOS device running FileMaker Go 12.
Start by creating a Database with layouts for iPhone or iPad
You need to create a database that will run nicely on FileMaker Go for iPhone or iPad. Fortunately, FileMaker has provided a nice refresh of their built-in Templates with FileMaker Pro 12 and many of these template include customized iPhone and iPad layouts. In this case I am using one of the pre-baked starter solutions called ‘Event Management’ included with FileMaker. Interestingly not all solutions have iPhone layouts, so make sure the template you have chosen has the type of layout designed for the device you are planing to deploy it on. A quick way to do this is to generate a template and then click on the layouts popup and see what is listed.
Build a FileMaker Runtime
In FileMaker Pro, the Tools menu only shows up if you are working with FileMaker Pro Advanced, the developer version of FileMaker. This will open the Developer Utilities window
1) Select the database from which to build your Runtime
There are three main steps to creating a Runtime.
1) Select a database to generate a Runtime from
2) Select a folder to save the Runtime to
3) Specify the options for the Runtime
Starting with step 1, click the ‘Add’ button and select a FileMaker database.
2) Set a Folder where you want to save your Runtime files
This is the location where the Runtime will be generated to. In this case I am saving my Runtime to the ever popular ‘foo’ folder on my desktop.
3) Specify the Runtime Solution Options
Click on the “Create Runtime” option at the top of the list. In the next step we will change the File Extension field. Note that the standard runtime Extension is .fmpur
Change the Extension name
This is where the magic happens. Instead of using the default Runtime Extension, change your Runtime file extension to the more standard fmp12.
Click OK to get out of Solution Options dialog box.
Create the Runtime
Click the “Create” button at the bottom right of the Developer Utilities window. This will generate the Runtime according to the options you have selected. You will have selected a File, specified where it will land on your hard drive and specified any Solution Options specific to your requirements. Wait while the Runtime is generated. This can take a while.
Review the FileMaker Runtime Folder on your hard drive
Review the files created in the FileMaker Runtime folder.
- The ‘Event Management.app’ is the Runtime Engine. This is the FileMaker engine that will run your database as a standalone.*
- The actual database file is the one with the .fmp12 extension. This is the file you will be copying to your iPhone or iPad.
- The Extensions folder will contain any required extensions or dictionaries.
- The FMP Acknowledgements is a PDF crediting all the software involved in generating the Runtime.
Repeat this procedure on a Windows machine or in Parallels Desktop with FileMaker Pro Advanced for Windows to create a similar Windows Runtime version of the Runtime file. Unlike some other cross platform app generators, FileMaker still requires you to have both a Mac and Windows version of FileMaker Pro Advanced in order to generate Runtimes for the respective platforms.
You now have a Runtime version of your file that can be run on Mac, Windows, iPhone and iPad. It is also possible to open this file with a client copy of FileMaker Pro 12 or FileMaker Advanced. Once you turn on File Sharing, you could even deploy this file on FileMaker Server. It is a very flexible file, it just cannot be networked while running in the Runtime or on the iPhone/iPad.
*Interestingly the FileMaker Runtime file size has decreased a little bit with this version. The file size for the Runtimes I generated were 154.5 MBs in size, down from 166.2 in FileMaker 11.
Getting the database on your iPhone or iPad
That ends our techie portion for FileMaker Developers. From here down, regular users can move their database back and forth from laptop to iOS device. The rest of this tutorial is about moving the Runtime database file from a Mac or Windows computer onto an iPhone or iPod.
Copy the file (just the file with the .fmp12 extension) to your iPhone or iPad through iTunes or DropBox.
Start by launching iTunes on your computer
1) Click on the Device in the sidebar, on the left hand column of the screen.
2) Click on Apps at the top of the screen. Scroll to the bottom of this layout to reveal the Apps list on the left side.
3) Click on FileMaker Go 12 in the Apps list. If you have FileMaker Go 11 as well, FileMaker Go 12 is the one without the green ‘Go’ in the icon.
4) The list of databases on your iPhone or iPad should show up to the right of the Apps list.
5) a) click the Add… button or b) drag and drop a file from your desktop to the list area.
6) click the Apply button which should turn into a Sync button. Then click the Sync button.
a) Click the ‘Add…’ button at the bottom of the FileMaker Go Documents list.
The Add… button will open a window and you should be able to select your file from your desktop or other location on your hard drive.
b) Drag and Drop the FileMaker 12 file from the Finder on to your Device in iTunes
Another method of getting files onto your device is to drag and drop the file to the Documents area. Perform the same steps as in the previous sequence — Select the Device on the left column, Apps tab at the top, then click the icon for FileMaker Go 12 in the Apps list so that the FileMaker Go Documents list is displayed, then drag and drop to the FileMaker Go Documents list from the Desktop or other location on your hard drive.
Retrieving a file from the iPhone to your computer is simply this procedure in reverse. Click the file and then the “Save to…” button, or drag and drop onto a folder on your computer.
Apply the changes
Then click the Apply button at the bottom of the iTunes screen to get it to sync with your iPhone or iPad. This will change to a ‘Sync’ button. Click that to copy the database over to your iPhone or iPad. This assumes you have turned on over the air syncing. If not, plug in your device using a cable and then click the Sync button. This may not always be necessary, with over the air syncing turned on, it appears that as soon as you drag the file into the FileMaker Go Documents area, it seems to be copying directly to the device.
Runtime database file shows up on the iPhone
If all has gone well, over on your device, you should now have a copy of a database file that originated as a FileMaker Runtime, running on your iPhone or iPad. Tap on the database to launch it and start entering or looking up your data. When you want to take it back to your computer, simply reverse the steps above and move the file back into the Runtime folder, replacing the old version.
Opening the Runtime database file in FileMaker Pro 12
Here is the same Runtime file running in a regular copy of FileMaker Pro 12 on a Mac.
If database networking is required, the user will need to reopen the main Runtime database file using a copy of FileMaker Pro 12, FileMaker Pro Advanced 12 or FileMaker Pro Server. Go under the File Menu, choose the Sharing option and turn on FileMaker Sharing.
The implications of this are big for organizations and FileMaker Developers. They now have an amazing rapid application development environment, in FileMaker Pro Advanced, with which they can create a database app that can be deployed widely on iPhones, iPads, Macs and Windows, with no underlying cost to the end user. The only development cost being a single FileMaker Pro Advanced license ($499) and a savy developer.
There are some significant limitations to FileMaker Runtimes, this note is from FileMaker’s web site:
FileMaker Pro Advanced features are stripped from runtime applications. None of the commands on the File menu > Manage submenu are available in the runtime application. Runtime applications cannot be shared over a network and do not include the ability to Save/Send Records as Adobe PDF files. ODBC import, the Execute SQL script step, and using ODBC data sources in the relationships graph are not supported in runtime application. For a feature comparison of the runtime application with FileMaker Pro, see the FileMaker Pro Advanced Development Guide. (— A full list of the differences between FileMaker Runtime and FileMaker Pro is in Appendix A.)
A runtime database can, however, be opened in either FileMaker Pro or FileMaker Pro Advanced. The full functionality of these applications will be enabled, except if full access privileges have been removed.
Interestingly, the features are not really stripped out from the actual database file, because as soon as you open the file using regular FileMaker Pro or FileMaker Go, the features are still there, (assuming these features are supported on the platform, FileMaker Go has its own limitations) —the functionality is only ignored when running in Runtime mode. For example, I tested the Export to PDF function. It worked fine in both FileMaker Go and running on regular FileMaker Pro, but in the Runtime, nothing happens. Developers will want to script around these issues. (ex. If(Get ( ApplicationVersion )=”Runtime”) Then do something different.)
I can see this technique being a win-win for FileMaker Inc — more people purchasing FileMaker Pro Advanced to get access to creating freely distributable Runtimes for Mac, Windows and iOS devices, free solutions available in the market, exposing an entirely new set of people to the powers of FileMaker Pro.
There is no question in my mind the FileMaker software is the fastest and easiest way to create an iPhone or iPad app. There is no better platform out there today. And now, you can share your work for free on most of the major platforms (Sorry Android fans, no love—not likely to happen either because Apple Inc., owns FileMaker Inc.)
P.S. I tested this technique using FileMaker Pro Advanced 11 and it seems to work the same way. This feature has been there all along, but what is new is that the FileMaker Go app is free on iOS devices.