Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

GUID

vfrontiers
Advocate
Is it something I'm doing, or is it inherent in the system.

I've got an old part created some years back. Yesterday, I wanted to update it and SAVE as an AC12 object. All works just fine until the next time I open the file.

The old part AND the new part have the SAME GUID... so every instance of the NEW part that I placed (with new features) is now replaced by the OLD part and are missing all the new features.

These particular objects are actually LABELS, so I can't use the REPLACE w/ PARAMETERS feature of regular objects.

Anyone?
Duane

Visual Frontiers

AC25 :|: AC26 :|: AC27
:|: Enscape3.4:|:TwinMotion

DellXPS 4.7ghz i7:|: 8gb GPU 1070ti / Alienware M18 Laptop
37 REPLIES 37
vfrontiers
Advocate
I can tell you that EVERY TIME I close and open this teamwork file, 4 windows change from my own created Window OPENING to W1 Fixed 12. All of sudden, yesterday it changed to W1 CASEMENT 12.

Let me repeat that this happens EVERY TIME... Did I mention that it happens every time?

Each time I have to INDIVIDUALLY select a window, change to my window (fortunately I can transfer A & B) , but the other parameters have to be reset.

Something needs to be done here.
Duane

Visual Frontiers

AC25 :|: AC26 :|: AC27
:|: Enscape3.4:|:TwinMotion

DellXPS 4.7ghz i7:|: 8gb GPU 1070ti / Alienware M18 Laptop
Laszlo Nagy
Community Admin
Community Admin
Duane, what happens if you delete those 4 Windows, save and close the file, open it, then place them anew? Maybe some setting got stuck in the file which will be gone if you delete the element it is linked to. Then a brand new element you just placed will not be affected - that's my reasoning.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac28
Barry Kelly
Moderator
gkmethy wrote:
Barry wrote:

Now I just did a "save as" but did not modify the object so the GUID remained exactly the same.

{103E8D2C-8230-42E1-9597-46F84CCE28C0}-{1237716B-D289-456A-96DF-E82F767D5B0E}

{103E8D2C-8230-42E1-9597-46F84CCE28C0}-{1237716B-D289-456A-96DF-E82F767D5B0E}

They look pretty identical to me.
Barry,

Where do you check the GUID of the library parts? I just tried what happens if you open and "save as" a library part, and it did get a completely new GUID. I used the "open object by subtype" dialog to check the GUID of the parts:

Sorry for the delay in replying - -I've been away for a week.

I can't find a way to "Open object by subtype".
Is it a "special" menu command.

I can list objects by subtype but they don't show the GUID.


I was looking at the GUID with the "Select Subtype" button in the object script editor.


I just tested again and "saved as" with exactly the same name in a different folder of my library.
The object name is exactly the same and the GUID is exactly the same.
I re-loaded the library and there was no duplicate names or GUIDs reported.

I even just chamged the script of an object and "saved as" with a new name.
GUIDs are identical still.

Barry.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Barry Kelly
Moderator
gkmethy wrote:
Barry wrote:

Now I just did a "save as" but did not modify the object so the GUID remained exactly the same.

{103E8D2C-8230-42E1-9597-46F84CCE28C0}-{1237716B-D289-456A-96DF-E82F767D5B0E}

{103E8D2C-8230-42E1-9597-46F84CCE28C0}-{1237716B-D289-456A-96DF-E82F767D5B0E}

They look pretty identical to me.
Barry,

Where do you check the GUID of the library parts? I just tried what happens if you open and "save as" a library part, and it did get a completely new GUID. I used the "open object by subtype" dialog to check the GUID of the parts:
OK I just found the "Open object by subtype" in the work environment.

Interestingly the objects have different GUIDs there.
{85C05AE9-D27A-43DA-A52F-8C91A8FCBD61}-{6FF8DD5C-4B85-46B1-9E61-C9EC8C3984E7}
{4E5DB834-4BCA-4664-85CD-323228FD5A43}-{6F91FBA6-5E0F-4B51-8D82-E4A776A75643}

But these are totally different to the GUID show in the script editor (which is the same for both objects).

{103E8D2C-8230-42E1-9597-46F84CCE28C0}-{1237716B-D289-456A-96DF-E82F767D5B0E}

Barry.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Barry Kelly
Moderator
Just out of interest I thought I would try

xx=REQUEST ("Internal_id", "", id)

TEXT2 0.5, 0.5, id


to see what that gave me.

I just get "0" as the value for id.

Works fine in version 10 where it returns the old 4 digit Internal ID.
Doesn't work in 11 or 12 now that they have a 32 digit GUID.
Is there a Request we can use to get the library part GUID?

I know there is the GLOB_GUID but of course that is for the GUID of the placed intance of a particular library part.

Barry.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Anonymous
Not applicable
Hello,

Global GLOB_INTGUID gives it without request,
but differs from the object dialog GUID
Kuva 1.png
vfrontiers
Advocate
Can I just say...

YIKES!
Duane

Visual Frontiers

AC25 :|: AC26 :|: AC27
:|: Enscape3.4:|:TwinMotion

DellXPS 4.7ghz i7:|: 8gb GPU 1070ti / Alienware M18 Laptop
Rob
Graphisoft
Graphisoft
Just out of interest I thought I would try
xx=REQUEST ("Internal_id", "", id)
TEXT2 0.5, 0.5, id
to see what that gave me.
I just get "0" as the value for id.
Barry,
I believe that the internal ID is discontinued and is being kept in whole AC structure for compatibility reasons.

Regarding GUID - I think that it is a composite structure that is identifying not just an element ID itself but a parent directory (eg. Drawing Title subtype belongs to 'a family' of Drawing Symbols) and possibly other info too. So in other words a GUID of any placed instance will just show 'code hooks' to further (hidden to GDL) structures and therefore it will differ from the GUID shown in the Subtype Hierarchy dialog.
::rk
Barry Kelly
Moderator
Rob wrote:
Just out of interest I thought I would try
xx=REQUEST ("Internal_id", "", id)
TEXT2 0.5, 0.5, id
to see what that gave me.
I just get "0" as the value for id.
Barry,
I believe that the internal ID is discontinued and is being kept in whole AC structure for compatibility reasons.

Regarding GUID - I think that it is a composite structure that is identifying not just an element ID itself but a parent directory (eg. Drawing Title subtype belongs to 'a family' of Drawing Symbols) and possibly other info too. So in other words a GUID of any placed instance will just show 'code hooks' to further (hidden to GDL) structures and therefore it will differ from the GUID shown in the Subtype Hierarchy dialog.
You are right Rob.
As Juha pointed out GLOB_INTGUID is the command to use.
GLOB_INTID was last used in version 10.

But this is the unique GUID for each instance of an object.
It isn't the GUID of the library part.
As far as I can see there is now way to enquire what the GUID of a library part is.

The problem is that the GUID that shows in the library part editor is not the same as the GUID that the library manager users to check for duplicates.
It is not a very important issue as it actually seems to be working fine - just showing the wrong value in the library part editor.


Just been playing as I wrote this and I see the difference now.
The library part editor is only showing the GUID of the subtype group and not the individual library part GUID.

The library manager (or open libray part by subtype) shows the actual library part GUID.

The first image here shows the open library part by subtype dialogue and it lists the individual objects.



Barry.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Barry Kelly
Moderator
This is the library part editor.
Note it only show the DOOR(WALL) subtype group and not the individual object.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11