Hi, I am new to separation model. What things do I have to take care first when I am trying to deploy to my future solution?
Welcome to any comments. Thank you.
Hi, I am new to separation model. What things do I have to take care first when I am trying to deploy to my future solution?
Welcome to any comments. Thank you.
ā¦
Thank you. Is there any reference I have to read before I use this model?
This is a good starter:
https://filemakerhacks.com/tag/separation-model/
Searching the internet for āfilemaker separation modelā will yield further links to useful information.
I would also take into account that you would need an interface and scripting to manage credentials, so when a user is created, or changes password, disable users, etc ā¦applies to all related files.
Whenever possible, always add new fields to the live system data files (preferably when not in use) and bring copies of these back to your development system. If this is not possible, add fields to both systems in exactly the same order. To be safe always check the field ID numbers on both files before progressing (we have a layout dedicated to this).
There is nothing worse than having the new UI file installed and find none of your scripts or layouts recognise these as designed and then trying to trace back how from there.
We know. From (bad) experience (but wouldnāt abandon the separation system, even with recent new tools available to us).
I am adding fields to dev files and move live data into these files with FMT. It handles it quite well, no wrong attributions spotted so far.
Yup, it does work but we feel it is quicker to add a field to the live data file, back it up and copy it to the dev system without interrupting the production system for more than a minute or so.
Also, the dev UI file is already using the same spec data file, so less unhappy surprises after upgrade (which sometimes can be completed in under a minute, unless the FMT is required for account matching)
Just a note on ādonāt change filenamesā.
Provided you are using FMPA, the developer tools allows you to safely rename files. It will rename the file and modify all references to the file in all of the related project files.
Correct. No good idea without dev tools, can be done with dev tools.
Verify the availability of all required files of a solution at start of session
Possible causes of error: file(s) paused or closed on host.
Open File [ Open hidden: On ; āFilenameā ]
Set Variable [ $Error ; Value: List ( $Error ; Get (Last Error) ) ]
// do this for all files except the current (starter) file
If ( not IsEmpty ( FilterValues ( $Error ; 100 ) ) ]
// react, i.g. abort launch
Endif
Close all open files of a solution at end of session
Set Variable [ $FilesOpen ; DatabaseNames ]
If ( not IsEmpty ( FilterValues ( $FilesOpen ; āFilenameā ) ) ]
Close File [ āFilenameā ]
Endif
// do this for all files except the current file
// and last but not least:
Close File [ Current File ]