When 12d exports an IFC file each object is given a unique GUID. If you export the same data again, the new IFC is created at a different point in time so each object is given a new and unique GUID.
This can create problems for other software, such as Navisworks, as the GUID is always changing whilst the objects themselves may be identical to the previous version.
12d Model solves this problem by saving the GUID as an attribute, IfcGlobalId. So if your data needs a GUID, you can simply export an IFC file.
Important – Shared Data
When Models are shared-in to a project, that data cannot be edited. So when exporting data from a shared-in model to IFC, 12d cannot create the IfcGlobalId attribute. Hence, every time you export the shared-in data it will have a new GUID.
To deal with this, you create the IfcGlobalId attribute on the shared data. And this is as simple as exporting an IFC file. Open the original project with the shared models and just export a “dummy” IFC file. No special settings are needed, and you don’t have to keep the IFC file (just delete it). But, what this will do is create the IfcGlobalId attribute, which will then be used when exporting an IFC from projects with shared-in models.
If the shared data changes, you just need to do the dummy IFC file again.
To help maintain consistency in IFC files, when exporting an IFC 12d produces the GUID and creates an IfcGlobalId attribute on the object.

When exporting the IFC file again, and Use Attributes as IFC GlocalId is ticked on, 12d automatically checks for the IfcGlobalId attribute, and if it exists the same value will be reused for the GUID.
So whilst any GUID for an object used internally by 12d may change, when exporting to IFC the GUID that Navisworks sees will always be the same.

NOTE:
When Use Attributes as IFC GlocalId is un-ticked;
1) The IfcGlobalId Attribute is ignored and 12d will create a new GUID for that IFC export.
2) The new GUID is not saved as an attribute on the object.
Attribute Manipulator – GUID option
The GUID option in the Attribute Manipulator allows users to pre-assign a GUID to objects.

However, to use this GUID in the IFC the Attribute name must be defined correctly on the Write IFC panel…..

…. otherwise two ID attributes with different values will be created in the IFC.

MAJOR WARNINGS:
1) The GUID is a unique ID that is based on the object and a particular moment in time.
2) The GUID will change every time you re-apply the Attribute Manipulator.
3) Leaving Use Attributes as IFC GlocalId as un-ticked results in a new GUID for objects in the IFC file. This new GUID is not saved as an Attribute.
4) The end result is multiple “ID” that may no longer match.
