It's one method that works. Here are several other options:
Set up a table of non-global fields for this data. Set up the OnFirstWindow trigger to perform a script that copies the values from the local fields to the global fields. This script will run once each time a user accesses the file.
Use Perform Script On Server to run a script to update the globals.
Use a server schedule to run a script to update the globals.
Don't use globals, set up your table of non global values to be related to the table occurrence of each layout where you need access to these values using the Cartesian Join (X) operator instead of =.
Thanks, I have used the first option and it works fine, very much appreciated.