With FileMaker 17 comes a variety of new features and capabilities. Learn more about the new FMDataMigration command line tool here.
Hello, this is Matt Hintz, Senior Application Developer for Soliant Consulting.
I want to show a new tool that is being introduced in FileMaker 17, called FMDataMigration. It’s a command-line based tool.
Let me first show you how you can issue commands for this process. I am on a Macintosh, so I can launch the command prompt application called Terminal Mac. If you’re on Windows, you can launch Command Prompt or Windows PowerShell. From there, there are a couple different ways that I can run this.
One way is, I can simply drag the executable, this file right here, into my terminal window, and I can simply hit return. I can also type out this full path that I have here. That will also give me the same thing. What this ends up presenting is then the documentation for this tool and all the different options we can apply to this command.
At a minimum, what we need then is a source path, and a path for a clone file. You can see the two options there. That is how that can be done.
But, we at Soliant have decided to put together another tool here. This takes all those commands and those options and puts them into one location for us. That is the FMDataMigration Tool.
Let me show you this file. I just took a FileMaker starter solution. This has a couple of records in it. It’s just the task starter solution. There are four records for four different tasks as you can see here. If I close this file out, and I go ahead and open up my development file, you also see that I have a very similar file.
But there are some pretty distinct differences here. One is that there are some pretty drastic layout changes that I’ve made with colors that will really stand out. This is not something I would normally do, but just to illustrate this, I’ve made a change in this layout. I also made a change up here at the top.
What you’ll also notice is that since I took this development copy and made these changes, the production file also has had some changes that have happened on the data side. If I open up my production file again, you’ll see that there are four records in this task table as opposed to two in my development file.
What we want to be able to do is make changes to my interface here. We can go ahead and make a new table. I’ve made changes in my development file, added a new table, made some layout changes, and don’t have all the records in it.
Let’s say, now I’m ready to move this into a production phase. I would then go to File > Save a Copy As, and create a copy of this, a special type of copy called a clone. Under “Type,” I chose “clone (no records).” Let’s just call it “Tasks Development Clone” to clearly determine which one it is and save that. A very critical step here is to not open this clone file. There is certain information that gets set when a file is first opened and then therefore is not considered a clone by the FMDataMigration tool.
We have my development clone file. We see we have the original development file; it’s not going to be part of this process. But that clone file has all those changes that I’ve made in regard to those layouts and the new tables that I’ve added. Then, we have our production file. I’m going to take the data and the changes that are in this production file and bring them into a new combined copy file that is based off the changes that we made in this clone file UI.
Let’s go ahead and close this out. Let’s walk through this tool, and it will show us how to do this.
First, I’m going to choose the executable file. I have it right here in my demo folder. This, I just need to download then. The file will be inserted, and I hit the “Next” button to continue through this process. I’m going to select my source file. The source file in my scenario is my production file. This is the source of the data that I’m bringing in. So, we can hit insert. I have not changed the default username and password. The username is admin, no password, and I’m not using an encryption address. These are options that are available in the command-line tool. We’re just providing a nice user interface to be able to do this.
I’m going to move on to the next step here. I’m going to select my clone file, making sure I choose the right one. It should be this one. So now, that is going to be the “Clone Path” and same account – nothing has changed there. Then, I have the ability to change some additional settings like maybe the cache size. I, also, have the ability to ignore value lists. This will not bring over the value lists. I can also set it to ignore accounts, but I have all this off just for this purpose.
It’s going to automatically fill in a target path of what my file will be. I’m going to change the name of this to be a little bit easier for us to see it. Let’s just called it “Tasks migrated.”
If I go ahead and click “Run,” you’ll see some action in the background here. A new file is created. We also see the results from that. We’ll see all the information regarding what fields were carried over, and what data was moved over from each field. We also see any other changes, like what accounts were migrated and some other total information.
I’ll go ahead and just close this out and open up my migrated file; we should see all four records - great! We see already one of my UI changes that came from that development file and changes that to this top layout as well. Let’s go and look to make sure that my table is created. There is a new table called “NewTable” as well. No records were in there, no fields, but just showing that I could also make tables as well.
This could extend out further. I could have table occurrences that I’ve added to my graph here. You can see how quick this was too. I can see how easy it was to migrate my data from my production file, or my source file, into a clone copy and merge those into a new migrated file.
This shows the new FileMaker Data Migration tool. Thank you.