This is part two of a two-part article tackling the challenge of converting and consolidating FileMaker Pro .fp3 and.fp5 file types to .fp7 and .fmp12. In part one, we covered the FileMaker Conversion process. In part two, we'll cover the process of Consolidating FileMaker Files.
Start the consolidation process by first putting all the tables into a single file. You do this by importing all the tables from each file into the single .fp7 or .fmp12 file solution (requires FileMaker Advanced to copy/paste tables, use FileMaker 8 Advanced or greater).
One of the new features in FileMaker 7+ is the ability to add timestamp fields for creation and modification. If you like, go ahead and add those fields now. Also, if you want to create a script to import records from the .fp7 or .fmp12 files into the main file, you should do that now, too.
While pasting your tables, an import.log file will be created by FileMaker. Save this log as you will need to fix any errors from lookups to auto-enter calculations that utilize relationships not currently in the solution.
TIP: If you are using a Mac, install 2 copies of FileMaker Pro. Then run one with the consolidated FileMaker file and one with the non consolidated FileMaker files so you can easily copy and paste between them.
Create all Relationships (TOs) from the individual files you are integrating into your new consolidated file, naming the relationships exactly as the individual files relationships are named. Be sure to keep any prior relationship rules (sort, del, cre) present.
TIP: If you used the Hub and Spoke approach where you are consolidating all files into your largest file, then you need to update any existing TOs that are using an external data source. FileMaker makes it easy to identify external TOs by putting them in italics. Double click the TO and change the data source to the current file and the table you created in the single file and verify the relationship is correct.
Add all Value lists used in .fp5 files to the single .fp7 or .fmp12 file.
Tip: Consolidate value lists when possible by giving them the same name in all the files. Do this when you see a value list that is using another file value list. Make sure these value list names are the same name as their source value list. When you paste the layouts in a later step they will all use the same value list.
Note: As of FileMaker 16 you can now copy and paste value lists between files saving you time here.
Review all the fields in the tables. Use the Import.log file to identify the errors and resolve them. The errors come from importing the tables without having the table occurrences present. Errors will be in the Calculation fields, Auto enter calculations of fields, and the Lookups in fields. The calculations will be commented-out from the importing of the tables and the lookups will be broken. You may wish to rewrite the lookups to auto enter calculations here as well.
Create layouts with the exact name of the layout in the individual files you are integrating into the new single file solution. Don’t copy/paste layouts yet. First, name layouts identically to those in your current FileMaker version, remember to set layout type (form or list), and set fixed print margins in pixels to ensure identical layout setups.
Import all Scripts from each file. Look for import errors (they will be saved to the import.log file), typically from identical script names or relationship names not being identical. Rename the scripts as needed, ensure the relationship names are correct and then delete the scripts you imported with errors and repeat the import until absolutely zero errors are present upon import.
Copy and Paste layouts from each file into the appropriate layout. Make sure any buttons on the layout are now linked to the correct scripts and fields are linked to the correct tables/relationships. This is where all the hard work of conversion and consolidation comes together and why it is so critical to ensure unique names for relationships and scripts. The only bad news here is the tab order will have to be reset for these layouts, the good news is now in FileMaker 10 tab orders are much easier to adjust.
Set tab order for each layout that was copied/pasted into the consolidated file(s). Update Date Fields to use drop down calendar.
Consolidate all external script references into the correct file and select the same script name. The Metadata Magic Conversion Issue Report will help you if the system came from FileMaker 6 or prior.
The last thing anyone wants is to have the client or user tell you about a problem that is related to your file consolidation. So take the proactive steps below to make the system bug free.
In consolidating files, the script consolidation rewrites and testing of solutions is 80% of the development (e.g. Print Scripts, consolidating navigation).
Consider using Custom Menus to improve your application and the overall user experience. When you use Custom Menus, you should first (and always) remove the Delete Found Records menu from Records menu set. Next, you should further customize the Records menu set further for each area of your application to help improve the user experience. For example, in the Contacts area of your application, you can rename "New Record" to "New Contact". You can then continue reassigning each layout to their own appropriate custom menu as you see fit.
Run DDRs and tools like Goya's Base Elements or Inspector to fix any errors that exist. For us this is not optional.
FileMaker file consolidation provides the developer an ideal environment that leads to time savings when developing. You can save 15-25% of your time working in a consolidated FileMaker application as you reduce the amount of redundancies in your application and complexity passing variables and data between files. Keep in mind separate files does make sense in some applications, though you must use your judgment as to what makes the most sense for your application. Happy FileMaking!
Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.
Kevin is CEO and Business Project Manager for DB Services. He also a founding member of the FileMaker Partner Council and certified in FileMaker 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, and 8. Kevin is passionate about FileMaker as a custom application platform and is constantly on a mission to improve how he approaches each assignment.