AnsweredAssumed Answered

Upgrading a client's runtime solution

Question asked by ralvy on Mar 24, 2009
Latest reply on Mar 25, 2009 by ralvy


Upgrading a client's runtime solution


Still very new to FMPA. I created a runtime solution that employs data separation. I have finally come to the point where I need to alter the data file's structure (add a couple of fields to a particular table). So I can no longer just send my client the latest interface file and have them just overwrite the old one with the new one.


I have questions about some things I read in the FMPA Help docs ...


1. I'm told I need to Convert the old file before importing data from it into the new solution data file. Is this only if I'm moving the client from a file format that's older than FP7? The solution (both old and new) was made with FMPA 10. Can't I just import (using a script) without running a convert?


2. I'm told I must use a different 3-character extension for the new solution. Why is this? Can't I just point my import script to the older file with the same name, as long as it's in a different folder? If I'm sending out an upgrade weekly to this client during the beta phase of this solution, I'm going to use up a lot of different extensions if I have to use a new one each time. Also, the Windows registry will get populated with all these useless (abandoned) extensions if I do this.


From my very novice experience with FMPA, it seems like I should really be able to just do the following, assuming the two files my client has are interface.usr and data.usr:


A. Using the same bind key I used to create the old interface.usr and data.usr, bind a new solution to the same .exe I did with the old solution, using the same extension I did before.


B. Create a script that imports records from the old data.usr. This script will point to a subfolder of the new solution called "Old". Attach a button to interface.usr that runs this script.


C. Send the new interface.usr and data.usr files to the client. Tell them to create a subfolder called "Old" and then copy their old data.usr file to that subfolder.


D. Have the client overwrite their old files with the new interface.usr and data.usr files in their home folder.


E. Have the client then run the old rumtime .exe file, which will see the new interface.usr file and load it. Then have them press the upgrade button I created, which imports records from Old/data.usr into data.usr found in the home folder.


Again, none of those steps include running a Convert, and none of them involve using a new extension. Also none of them involve sending the client anything other than the two .usr files (no runtime .exe file, no dll's, etc.). Is this okay?