3 weeks ago
Hello, I am finally getting a good robust selection of custom objects that I've built for our office. I have a project that I am personally working on where I am testing a lot of these objects where I verify they work properly, so I am often reloading our library in that particular project. Let say I'm working on a drawing and I have different objects places, for example there are multiple object As, and object, Bs. I reload my library because I've made changes to object A. Once the library is reloaded all the object Bs have turned into object As.
Our library is stored on our BIMcloud, I have separate files where I do all my GDL work and overwrite the existing library part file on our company server. Then I update the BIMcloud library from the folder on the server. The particular object where this seems to be happening are variations of each other, and I originally started with Object A, then long after did a save as to create Object B. I really would like to figure out what is causing this, so I can let everyone else start using these objects and not worry that I will ruin work by updating the library.
Thanks!
Operating system used: Windows Windows 10
Solved! Go to Solution.
2 weeks ago
- last edited
a week ago
by
Laszlo Nagy
I did some searching and this is the document I was thinking of, but I am still not clear exactly what the second 36 characters are in the 'subtype' of an object.
As you can read in this article, the subtype GUID is not the object GUID...
The object GUID consists of two sets of 36 characters.
The first is the 'main ID' and is what is compared to determine if the scripted object is unique or not (duplicated objects have the same main ID).
The second set is the 'Reference ID' which is unique for every object you place and is not stored in the GDL of the object - it is generated when the object is placed.
Simply 'saving' and object or it seems 'saving as' with the 'create new object' option turned off, will not create a new main ID, therefore resulting in duplicates.
So I am still no wiser as to what the 2 ID sets are for the subtype, as they are both completely different for every subtype, even the child subtypes (subtypes within a main subtype).
Barry.
3 weeks ago
I am not sure if this is the solution or not.
But it sounds to me that your objects all have the same internal GSUID number.
If you 'Save As' to the Embedded Library, you don't seem to have this option.
But if you 'Browse', you will see an option to "Create a new library part".
This will create a new internal ID so you have unique objects.
Maybe that option is off?
Barry.
2 weeks ago
Thanks Barry, I typically uncheck "create new library part" button checked if I'm saving over an existing object.
I must have accidentally left it unchecked when I did my save as for that initial new library part. I opened up a new office template that has the library parts loaded, looked into the subtype hierarchy and they do have matching main IDs, but not revision IDs.
{30FB0F3C-5A70-D24F-8473-258719AC7659}-{5010B05C-8486-1343-9587-123ECA888DCD}
{30FB0F3C-5A70-D24F-8473-258719AC7659}-{E42E717F-3FAF-6146-90C2-B9DC4927FBA9}
To correct this should I just open up one of these objects and do a save as and make sure "create new library part" is checked off? I'll just have to give it a different name but I suppose I can always rename it after I remove the one with the duplicate ID.
2 weeks ago
I must have left the button unchecked when doing my initial save as in order to create that new object.
I used the subtype menu to look at the GUIDs for those two objects and the first half is the same for both of them, but they have different revision numbers, which must be how they weren't showing up as duplicate objects. I guess my only option is to open one of them up and do a save as with "create new library part" checked off? Then once they have proper different IDs I can fix the actual file names of the objects. I'm glad I caught this before it got deployed out to everyone at the office.
Thanks, Barry
2 weeks ago
This post was quarantined, probably because of the IDs.
The second part of that ID is not the object main ID.
Not sure exactly what it is, but it is documented somewhere.
The easy way to get the object main ID is to go into the 'Migration' dialogue, press new and then 'Browse for migrated object'.
Don't save the object with that ID there though.
Barry.
2 weeks ago
- last edited
a week ago
by
Laszlo Nagy
I did some searching and this is the document I was thinking of, but I am still not clear exactly what the second 36 characters are in the 'subtype' of an object.
As you can read in this article, the subtype GUID is not the object GUID...
The object GUID consists of two sets of 36 characters.
The first is the 'main ID' and is what is compared to determine if the scripted object is unique or not (duplicated objects have the same main ID).
The second set is the 'Reference ID' which is unique for every object you place and is not stored in the GDL of the object - it is generated when the object is placed.
Simply 'saving' and object or it seems 'saving as' with the 'create new object' option turned off, will not create a new main ID, therefore resulting in duplicates.
So I am still no wiser as to what the 2 ID sets are for the subtype, as they are both completely different for every subtype, even the child subtypes (subtypes within a main subtype).
Barry.
2 weeks ago
Thanks Barry, that was the article that I found as well. The article is a little confusing at first about the subtype GUID vs the actual object GUID but I did double check and they do have actual duplicate "main IDs".
I did a test with saving as and checking off "create new object" checked off and it no longer has a duplicate ID. It will be a pain to fix but I'm glad I caught this now. Not a mistake I will forget!
2 weeks ago
Also if you duplicate the object file in your operating system file manager and rename it, it will not change the main GSID, so that will create duplicates as well.
I will often re-name an object there in the file manager knowing that all placed instances will update to the new name with a library re-load in Archicad (because the main GSID does not change).
Barry.