If the file is on FM Server pull it off the server (closing properly of course) set the global and put it back on the server.
Global fields are designed to hold a value for an individual user and session. They are supposed to lose their changed value after exiting.
A Global field will only retain it's value if the file is opened on the local desktop. If it is on a server, when the file is closed and re-opened it will show the last value set when it was opened as a local file before being installed on the server.
The work around for this is to create a table that holds the desired values for all of the global fields and have the startup script for the file use Set Field to insert the desired value in all of the global fields. Another advantage to this is that you can change the value of the value in the table and the next time the file is opened by the user they will get the new value.
Any global which you want to persist between sessions needs to be set as David Z indicated. I prefer to clear globals in the closing script and set them in the startup script. That way you can set them as needed, even dynamically during a session. If you make it a point to clear them at closing (including in a single user unhosted setting before hosting it), you can count on them being blank when you start each session.
There was another thread less than a month ago about numerous ways we can set globals in various hosting conditions which would be worth searching/reading.
Thanks a lot for your tips. I don't use a server. I declared the field as a Global Container with 2 repetitions and insert two picts on it. This was a good and simple way to hold and share same data across the file. The field hold the data in previous version like fm7, fm8.5, fm9, fm11, but in the new fm12 doesn't work. I'll try some of your tips and let you know how I solve my problem