Synchronization of service spaces
Service Spaces that are built from the same GDL as their host object are modeled using a separate 3D Space object. When a Service Space is modified in a GDL object, then the corresponding 3D Space object is automatically synchronized. If a Service Space is added to a GDL object, then the corresponding 3D Space is not created automatically. Plant Modeller performs various synchronization operations during different stages to create and remove Service Spaces to make them to be in sync with the GDL of the host object. The behavior of the program depends on the privileges of the current user.
Synchronization with User privileges
During startup
-
All objects that can have this sort of Service Space are scanned and the ones with synchronization issues are marked by assigning a local area attribute to them, as described in Objects with synchronization issues.
-
Objects that have this marking and are checked out by the current design area will be acted upon without user intervention: if a Service Space is missing, then it is created, and if the GDL no longer defines a Service Space but one exists, then that Service Space is removed.
Note: The synchronization that occurs at startup can also be started manually, as described in Update and sync service spaces.
During area update
-
COS change history of GDL objects is obtained and the ones with Service Space status change (now has / no longer have) are registered.
-
As the last step during area update Plant Modeller finds objects that use GDLs that have a state change regarding Service Space.
-
If these objects are checked out in the current design area then they will be acted upon right away (create missing Service Space / remove extra Service Space).
-
Objects that are not checked out are marked not to be in sync with their Service Space. Notice that the marking targets the host object, not the Service Space.
-
A short message is appended to the message pane about actions that were taken.
Synchronization with Project Administrator privileges
During startup
-
All objects that can have this sort of Service Space are scanned and the ones with synchronization issues are marked by assigning a local area attribute to them, as described in Objects with synchronization issues.
-
Objects that have this marking and are checked out by the current design area will be acted upon without user intervention: if a Service Space is missing, then it is created, and if the GDL no longer defines a Service Space but one exists, then that Service Space is removed.
-
For objects that are not checked out but are owned by the current COS server, Plant Modeller prompts the user to accept these objects to be checked out to fix these synchronization issues. If the user gives the permission, then the objects are checked out, new Service Spaces are created, and the ones that are not needed anymore are removed. After this, the area model is saved and new Service Spaces and their hosts are checked in. A lock file in directory Site/pm is used to guarantee that only one session with project administrator privileges can attempt to perform this synchronization at the same time at this site.
Note: The synchronization that occurs at startup can also be started manually, as described in Update and sync service spaces.
During area update
-
If enough time has elapsed since the last check then all objects that can have this sort of Service Space are scanned and the ones with synchronization issues are marked.
-
COS change history of GDL objects is obtained and the ones with Service Space status change (now has / no longer have) are registered.
-
As the last step during Area-Update Plant Modeller finds objects that use GDLs that had a state change regarding Service Space.
-
If these objects are checked out in the current design area then they will be acted upon right away (create missing Service Space / remove extra Service Space).
-
Objects that are not checked out are marked not to be in sync with their Service Space. Notice that the marking targets the host object, not the Service Space.
-
If these GDL changes targeted objects that are not checked out but are owned by the current COS server then operation is the same as described in the last bullet of During Startup.
The Service Space check interval is defined in File > Options, as described in Area Model.
Objects with synchronization issues
Objects with Service Space synchronization issues are marked by having an attribute assigned to them. This attribute is local to the area model, so it can also be assigned to objects that are not checked out.
This information can be found in the Attributes section of the Object properties dialog:
You can use a model query to find host objects that have Service Space issues, as shown here: