SeedCode's GoZync facilitates updates.
I think, but can not confirm, that EasySync by Tim D and Mirror Sync by 360 Works all also facilitate updates.
FileMaker itself has also published a SyncGuide written by Katherine Russel that describes in detail how to build a system of your own to do it.
Seems like a crowded market to me... how would your proposed system differentiate from whats already available?
Programmer nerds might baulk at something they could do themselves as a weekend pet-project thing like I did for an in-house db when I morphed it into a separation model. But I can see some organizations might not want to pay a consultant or their own staff to do something they could buy if the price was right.
It is not very difficult to insert a GUI file into a container in the mother file and then Download that for use.
Insert file into container
Export Container field
I use that to bypass iTunes and I also automatically delete all of the storage records and insert 12 new files.
Your updating sequencing would be unique and perhaps worth looking at.
However, I also have a backup script in each file I am working on that only works when I have the file open. Won't work for anyone else. That script creates a clone of the file in the Clone folder, a timestamped backup in the TimeStamp folder, and the lates HotFile in the HotFile folder so I don't have to quit.
I can trigger any of these scripts from the Mother FIle and then insert the HotFile into the Mother FIle and export from any logged in computer.
( I can also script new tables in the Data file...) I can start with a blank file on the server and fill in the tables via script!
I was under the impression that all the solutions you mentioned where aimed at pushing and pulling data too and from FileMaker Go. To aid in the problem of how to deal with Offline data coming 'out of sync' with a master online database.
What I'm doing has nothing to do with data integrity, it only effects UI files that are store locally. UI local, e.g. Desktop, iPad, etc Data File External on a FM Server in the cloud.
As UI files rarely ever have records in them, except maybe for Menu tables, I don't really care about data synchronisation or data coming 'out of sync' with a master data file because I know that the data is always live in the cloud and the UI files are accessing this live file.
What I was proposing was having the ability to push Schema changes in a UI file to client machines. The problem I can see and have experienced working for FileMaker developers is if you have a data separation model where the UI file is local to a clients machine and the Data file is in the cloud. You have to manually upgrade each machine with the new UI.
You as the developer may have to make changes to the UI from time to time and say (this is a real world example I have experienced) your UI files are currently local to over 100 machines, you have to spend a considerable amount of time upgrading everybody to the UI.
This method solves that and saves that time. What I also seen as an advantage is, as a developer, you'd have a sort of github service, allowing you track all the submits you have made to my product. It would also be an offsite back up of a UI file which is handy too.
Thanks for the feedback, I'll need to look into the other solutions you suggest and see if they are doing the same thing.
Yea I'm one of them. I tend to have to try and figure out how something is done. I was thinking of making it a subscription service. Initial thoughts where in the region of £5-10 a month. But I'd have to do some research on the competition and their pricing models.
I'd also need to make sure that the servers in cloud where decent and could handle a lot of imports/exports of container fields.
Steven, I use the separation model as you, when developing as I work most of the time remotely.... data on server and the UI on the clients machine. As the number of users grows, it becomes harder to verify everyone has the most recent version of the UI. Have contemplated putting the UI alongside the Data file on the server and having a "opener" file on the clients' computers that would not change. Open to comments on that approach.
But personally though, I try to avoid having to pay reoccurring charges ...
A client I work for has a database in that form. The UI file is separate from the Data file but they all reside on the same FileMaker server. It works relatively well if you are opening the UI over a LAN. In there case they have a UI file well over 100MB and opens fairly quick using a Launcher file on a LAN.
However this is over the LAN, imaging having to download over 100MB over the WAN each time you launched the database. It would grind to a halt.
In your case, your UI file may be small enough to open over the WAN, it would have to be completely Theme optimised to minimise the amount of CSS in the file. But even with that, every time you add to the UI file, its file size will always increase thus take longer to launch.
Personally I don't like having the UI on the FileMaker Server now with the new Perform Script on Server action. With a well modularised solution you can off load all the network intensive functions to the server and just get the result transmitted over the network. In my system I use this completely where I have a CRUD scripts that I can run. I just send the script a few parameter, it runs off to the server to complete its function and then only returns the result. Without the PSoS function my solution wouldn't be feasible as the Network traffic would be huge over a WAN.
Thanks for your comment on re-occurring charges, the only reason it would be this is because I didn't plan on releasing this as a package for developers to use locally. It would be a service on the net. All you'd have to do is add a few scripts, fields to your UI file and that would be that. Keeping it really simple to be honest, so there would very few points of failure.
I checked the the three products, and looks like they all sync data not UI.
your solution looks interesting. I am right in thinking that it modifies the UI file already installed instead or replacing it ?
Several Sync solutions also have options for deploying updated files as well. EasySync has an option, I think he is calling it EasyDeploy, that you can download and take a look at how he is doing it.
David Head, from FileMaker, covered how to deploy file updates in his DevCon session from 2014 as well. Getting Started with FileMaker Synchronization - David Head, if you have access to it.
It replaces it.
Basically this is how it goes.
I make changes to my UI file, script, layout, theme, UI Database changes, e.g. new globals fields
In the UI file, I have a prepare script. I run this when I want to save a new version. It creates a compact copy of the UI file and uploads it to my 'Updater Solution' file on my FileMaker server with a version number (i.e. vYYYYMM.DD.TTTT).
The next time my business partner opens his UI file. It runs a start up script that queries my Updater Solution to determine if his UI is out of date. If it is, with some FileMaker magic, it downloads the new UI file, removes the old UI and quits filemaker with a message saying restart for the changes to take effect or something along those lines. Keeping filenames the same and saves the new UI to the users desktop.
There is some snags, I'm currently about 23 miles away from my server and it takes around 3mins to upload an 11MB UI. Not good. However my mac mini is getting on a bit, about 3/4 years old now and used for other things. Plus my ISP isn't the best so I can definitely improve on it. Other options would be to have it CDN, with different servers on different continents. But thats probably getting a head of myself just now
Thanks Mike, don't have access to the PDF.
Having a look at EasySync just now to compare notes.
Your research is incorrect.
These are the facts of my previous statement:
GoZync facilitates file updating in addition to data updating.
Quote from page above "Deploy new builds of mobile files to your users."
FM Easy Sync implements EasyDeploy which facilitates file updating.
Does EasySync provide assistance with deploying upgrades?
Yes. EasySync integrates with EasyDeploy, an open source deployment solution. With it, you can easily deploy upgrades of your solution to your mobile users.
The filemaker sync guide can be found here
and clearly describes how to open and close files which is the foundation of file updating
I can't get to the link your provided. I am told access is restricted, even though I am a member of the Community. Do you know to whom it is restricted ?
looks like I read too quick . Sorry.