2023-12-13 09:08 PM - last edited on 2024-09-26 01:32 PM by Doreena Deng
I edited a GDL object of the AC27 BRA standard library, using AC27 only because of the GDL interface, and it turns out incompatible with AC26 and former versions.
It's a very simple object, made out of AC27 BRA library electric fixture, which is present with no apparent changes in previous versions as well.
When I try to open the PLN with AC26, object is unavailable. If I try drag and drop, or Ctrl+C/Ctrl+V, it gives errors:
Ctrl+C/Ctrl+V, puts out 'Unknown version':
Drag and drop says object is invalid:
As far as I remember, .GSM objects weren't version-dependent until now, am I wrong?
Is there some simple config I might be missing?
(The object does not reference or 'call' any AC27 library object - In AC27 if I remove all libraries it remains intact)
2023-12-13 09:10 PM
Yes you are wrong. You cannot use an object saved with AC27 in previous versions.
2023-12-13 09:23 PM - edited 2023-12-13 09:26 PM
Did that apply to AC26, AC25 and so on? Or is it an AC27 specific thing? I don't remember having that issue before. Maybe because I didn't happen to have the need for such before
2023-12-13 10:52 PM
@pedrocollares wrote:
Did that apply to AC26, AC25 and so on?
It has always been that way. Until we got the new GDL editor, I used to maintain my objects in AC24 so they could be used with any version from 24 onward. For me the new editor is worth not being able to save backwards.
2023-12-13 11:18 PM - edited 2023-12-13 11:29 PM
I've been using AC since 3.x and it has always been this way unfortunately.
But here's what you can do. Open a new, blank AC27 file. place the library part inside of it and it will add it to your embedded library. Then save this file as a AC26 version. Select the option to save backwards compatible library parts. Open it in AC26, go to the Library Manager, then into the embedded library. From there you can extract the embedded part out to a .gsm file that will be AC26 compatible.
2023-12-14 02:14 AM - edited 2023-12-14 02:16 AM
@Rex Maximilian wrote:
I've been using AC since 3.x and it has always been this way unfortunately.
But here's what you can do. Open a new, blank AC27 file. place the library part inside of it and it will add it to your embedded library. Then save this file as a AC26 version. Select the option to save backwards compatible library parts. Open it in AC26, go to the Library Manager, then into the embedded library. From there you can extract the embedded part out to a .gsm file that will be AC26 compatible.
This used to be the case before version 27 and worked very well.
But now I am unsure if this is possible in 27 from reading other posts.
It may not be possible at all or it may not be possible with certain operation systems only.
I have not actually experimented with this myself yet, so I can't say for sure.
See this post ... https://community.graphisoft.com/t5/Installation-update/Save-Archicad-27-to-26/m-p/572701/highlight/...
If you have objects in your embedded library, you may not be able to save back from 27 to 26.
The solution is to remove objects from the embedded library.
Of course this means the objects will not be back saved at all because they are not there.
The post then mentions using the Library Manager to migrate the objects back, but I think this is referring to the loaded libraries which of course you need to change back to 26 and will need to migrate them backwards as well.
You can't migrate back the embedded objects if they are not there (and even then they would have to be scripted to allow backward migration).
I am unsure of the LP_XMLConvertor can help here, I have never mastered using that.
The only (almost) foolproof method I know of is to create a new object in 26 and recreate the parameters in the parameter list.
Then simply cop and paste the other scripts from the 27 object to 26 object.
I say this is 'almost' foolproof because you will have exactly the object you want, but it will have a new internal GSID, so technically it is a different object to the one you have in 27.
However, you can now discard the one in 27 and use the 26 object instead.
But by all means do try saving back from 27 to 26 with the objects in the embedded library to see if that works.
Barry.
2023-12-14 05:53 AM - edited 2023-12-14 05:58 AM
I performed the operation to verify it before posting it.
I created a 27 file from scratch, created an object out of two, criss-crossing walls and saved it in the embedded library. Saved the file "down" to 26. Opened the file in 26. The library part showed correctly in the plan window. I went to the Library Manager and saved out the embedded part as a .gsm to the desktop.
Hopefully it's a function that won't be lost someday.
2023-12-14 06:01 AM
This is the critical step when saving down to 26:
2023-12-14 06:15 AM
I just did it again to be certain and it works 💯
2023-12-14 06:16 AM
@Rex Maximilian wrote:
Hopefully it's a function that won't be lost someday.
This method has always worked in the past & I too hope it will always work in the future.
There must be some other reason in that other post why 27 couldn't be saved back to 26.
Let's hope that @pedrocollares can successfully save back as a 26 file.
Please let us know how you go.
Barry.