As programming languages evolved and the world wide web became the dominant platform, open programming languages have thrived. Most programmers work in text editors and with specific file formats such as. These formats make it easy to compare one version of a file to another. They have allowed version control services such as GitHub to flourish. This approach also provides developers with an easy way to deploy their solutions.
You could split a solution into a data and a UI file or write a FileMaker script to import data from the live production file. However, with repetition and experience, you can overcome them to build vertical market solutions in FileMaker. When ready to deploy, you simply replace the UI file in production with some caveats.
When new fields, value lists, tables or table occurrences are created, you need to update the data file in some cases. This is a linear, time-consuming process. You can easily miss steps or perform them out of order, causing problems after deployment. Potential Data Migration With an import script, you can automate a data migration process.
However, this turns into a slow process with large data sets and indexed fields. This process works well in a custom development solution with a single FileMaker file and is generally easy to understand. If the solution uses sequential primary key fields, maintaining and updating those sequences is crucial. Both methods have their drawbacks, but they do allow for deployment on the FileMaker platform. With the release of FileMaker 17, FileMaker solutions still remain as binary files.
However, my team and I see steps toward easing deployment challenges. An Introduction The FMDataMigration executable is a command line tool that can dramatically speed up the data migration process. It provides a text-based command syntax that includes options to meet most deployment needs. You can use this tool to replace or supplement your existing data migration process when deploying changes from a production file.
This extended privilege does not require access to any table, scripts or layouts and thus provides a secure method for migration. Both the source and clone file must have matching account names case insensitive. Non-full access users will only see a summary log upon migration completion. Only full access users have the option for normal or verbose logging. Key Benefits: Speed and Integration The key benefits to this tool are speed and integration. In my testing, it takes about the same amount of time for this tool to process a database with 10 records as it does to process the same database with 10, records.
Your results may vary depending on the number of fields, tables and records, but this tool is fast. This benefits developers working with very large data sets. The FMDataMigration tool presents a huge time saver with an offline production system. Doing so can simplify and structure the deployment process for less experienced developers. FMDataMigration does not create a log file automatically but will output results to standard output via the command line.
If you have experience using the respective command prompts, you can easily redirect the output of FMDataMigration to a log file location. In our demo file, you will see this process used to bring the output log back into FileMaker for review. For instance, developers with little experience with the command line tool may find it intimidating.
Outage Scheduling I must note: Cloning the Target File The target file must also be a clone. This has a specific meaning in FileMaker. You can also create a clone file as part of a server scheduled script from the FileMaker Server Admin Console. Part of what makes a clone file special is the absence of localization configuration and any data.
Once a clone file is opened, localization is set, and the file is no longer considered a clone by FileMaker Pro. Deployment model diagram Setting Migrations There are a few other aspects you should keep in mind with this tool. In addition to moving table data, this tool will also migrate user accounts and privilege sets from the source file to the migrated file.
This means it will override any accounts or privilege sets in the clone file, with those in the source file, by default. External Data Your externally-stored container data is neither converted, copied or moved. You must move the externally stored container folder hierarchy after completing the migration process. Schema changes such as scripts, layouts, field names, tables and table occurrences, are not merged from your production file with your development file.
Take these steps to follow along: Download the executable file Open your command prompt Terminal on the Mac and Command Prompt in Windows Change the current directory to where the executable file is downloaded Type in the name of the executable Hit enter You will see the documentation and version number for this tool: FMDataMigration Migrates all record data from a source FileMaker Pro Advanced file to a copy of a clone file.
The source path points to your original file containing the current production data. The clone path is the blank clone containing your development changes. We also have additional options that we can tag onto this command. We can provide the account name and password, along with an encryption key if we use Encryption at Rest. Additionally, verbose and quiet mode specify varying levels of logging and can help determine the cause of errors. This file provides a graphical user interface to make it easier to try this new tool.
It can provide a framework to integrate into your FileMaker solution. The Soliant tool can help you understand this new FileMaker tool and requires the free BaseElements plugin. It will also save the output of the tool into a text field for your review. Here is some common output you may see in this log file: The internal field id is generated based off creation order by FileMaker. Therefore, if fields are created out of sequence in one file compared to another, this tool will attempt to notify you of this.
If the name of the field differs, as seen in bullet point 2, it will match by id but notate that the field names differ. This may lead to importing data into the wrong field. If the internal id cannot be matched, the data in the source field will not be imported into the target field. If you have created new fields in your target file, you will likely see this in the log file.
It is important to note that you cannot manually choose the field mappings, at this time. Log File Review However, this may not be an issue, since the field does not exist in your source file. I encourage reviewing the log file after each migration to ensure data is not imported in the wrong fields and no other issues occurred during migration. The original source file is not modified, so if the migration process does not complete as expected, you can attempt the conversion again. This tool is ideal for large scale deployments, or for recovering from a last known good backup.
It will provide a path to simplify and speed up the data migration process. Our team welcomes it to our deployment process for FileMaker He is FileMaker 11, 12, 13, 14, 15, 16, and 17 certified developer. When Matt is not working in FileMaker he enjoys taking his dog Zeppelin for walks and playing in a local rock band.
Copyrights ©2019 All rights reserved. Site Map