yesterday
Hi,
I'd like to make a gdl script able to get me the library path of a used objet in a specific file.
I have some libraries on my bimcloud, some others on my computer or lan and it would be so long to check for each file wich of those libraries I used.
So, if I could know wich variable I must request... The wonderful I-kwow-everything Chatgpt told me about a "libraryinfo lib_name, lib_path" and then admited that "libraryinfo" didn't even exist in gdl...
So, is there a way to get a specific library path thru a gdl script ?
My brain and me thank you so much for trying to get me from madness.
Best regards.
GP
Operating system used: Windows
Solved! Go to Solution.
yesterday
You can only get the name, but not the path – at least I'm not aware of any way to acquire this information.
But may I ask what you want to achieve here? Why would you need the path?
For historical reasons GDL works on a string basis regarding the loaded objects.
Meaning: If you now happen to load two libraries (and the internal library is included in this equation) and there are two or more elemens (actually any file type, not only .gsm) sharing the same name, then you'll get the "duplicated loaded elements" warning in the library manager.
In that list you see all your duplicates – with the path 😉
There is a caveat now: While Archicad still might seem to work flawless, only one of these duplicates will actually be loaded and available in both the object (or other related) tool, and as a macro for other objects to call (macro calls are string based, too).
Archicad will load the first object it encounters, be it unique or not. However: You can not foresee which (it kinda depends on the loading order) that will be.
The rest will be skipped. There is no way to enforce a loading order either (to my best knowledge).
So after all it does not seem to really matter in your case – or maybe I misunderstood you there.
If you want to consolidate your library just download your BIMCloud libraries, put all stuff in one folder; your Explorer/Finder will tell you what is duplicate. Then add the folder to an AC file in the library manager which you then share on the BIMCloud.
yesterday
You can only get the name, but not the path – at least I'm not aware of any way to acquire this information.
But may I ask what you want to achieve here? Why would you need the path?
For historical reasons GDL works on a string basis regarding the loaded objects.
Meaning: If you now happen to load two libraries (and the internal library is included in this equation) and there are two or more elemens (actually any file type, not only .gsm) sharing the same name, then you'll get the "duplicated loaded elements" warning in the library manager.
In that list you see all your duplicates – with the path 😉
There is a caveat now: While Archicad still might seem to work flawless, only one of these duplicates will actually be loaded and available in both the object (or other related) tool, and as a macro for other objects to call (macro calls are string based, too).
Archicad will load the first object it encounters, be it unique or not. However: You can not foresee which (it kinda depends on the loading order) that will be.
The rest will be skipped. There is no way to enforce a loading order either (to my best knowledge).
So after all it does not seem to really matter in your case – or maybe I misunderstood you there.
If you want to consolidate your library just download your BIMCloud libraries, put all stuff in one folder; your Explorer/Finder will tell you what is duplicate. Then add the folder to an AC file in the library manager which you then share on the BIMCloud.
7 hours ago
Hi Runxel,
Thanks a lot for such a detailed answer. Despite of the deception, I would'nt waste time trying to do an impossible thing.
We have older files here, done by some who left us for new horizons, and I thought I'd would be easier to apply a gdl script telling us where are the used libraries. I'd put a warning if they are not in the right place (local rather than bim for example).
Anyway, thanks again for your advices and clear explainations.
Best regards.
GP