2 weeks ago - last edited 2 weeks ago
Hello,
This message is intended to help who ever needs to convert library parts to a previous version and for my own future reference.
I searched this forum to find an easy solution to make my AC26 library compatible with AC25. My library has several files, including folders with images, macros, etc. and I didn't want to use the embed method to do it, because this organization would probably be lost.
So, I was using lp_xmlconverter instead, but wasn't able to make the -compatibility option work.
I was using the lp_xmlconverter 26 with the options l2x and -compatibility 25. Then I was using the same lp_xmlconverter 26 with the option x2l but the resulting wouldn't turn into Archicad 25 version.
After giving it a lot of thought, and tries, I finally understood what I was doing wrong.
To convert from 26 to 25, I need to do the l2X with lp_xmlconverter 26 with the option -compatibility 25, I believe this will strip any incompatible commands on the new xml files, but the x2l must be done with the lp_xmlconverter 25!
So, you must convert to XML with the current version using -compatibility option with the previous version you want to convert and then use the lp_xmlconverter from the older version.
I hope this helps.
2 weeks ago
Could you write down the step-by-step instructions with the exact commands?
2 weeks ago
Thanks for sharing.
I've had the same issue in the past. I ended up just putting all my objects that I want to convert into the embedded library and then backsaving the whole file.
So that should mean it must be possible to backsave with the LP_XMLConverter as well – since for backsaving Archicad can not assume having the older Archicad actually be installed so the current version can somehow handle the procedure.
Maybe Péter or @Magdolna Marosvari can shed some light on this? This actually happens quite a bit, since you might want or need to code on a newer version but some customers need some .gsm for older versions, too. Maybe even for a version you do not have installed anymore.
I never use XML by the way; I completely stopped using that since the advent of the –imho– superior HSF format.
2 weeks ago
- last edited
2 weeks ago
by
Laszlo Nagy
Hello, @Laszlo Nagy ,
When editing files in XML format, I usually work with 3 folders.
I'll call them "c:/GDL/IN", "c:/GDL/XML" and "c:/GDL/OUT".
Inside c:/GDL/IN I typically place the library with all the folders, images,gsm files, etc that I copy from wherever I am editing in Archicad. This way if I make some mistake on the following steps I still have this unchanged version.
Then I usually convert the library to "c:/GDL/XML" where all the XML files go and where I can freely edit them.
After editing any or all the files, I convert the xml files back to gsm format, to the OUT folder.
In this case, if the aim is just to convert to a previous version there's no XML edition stage.
So, the commands to convert from let's say 26 to 25 would be:
1. Using lp_xmlconverter.exe pack from Archicad 26:
(path to lpxmlconverter26)/lp_xmlconverter l2x -compatibility VV "c:/GDL/IN" "c:/GDL/XML"
Where VV is the previous version (in this case VV would be 25)
This would replicate the library structure inside the "c:/GDL/XML" folder but all files in xml format, and I believe it would strip the code from any GDL command later than the compatibility version.
2. now using lp_xmlconverter.exe pack from Archicad 25
(path to lpxmlconverter25)/lp_xmlconverter x2l "c:/GDL/XML" "c:/GDL/OUT"
This will create the library structure back into gsm format inside de OUT folder.
I suppose it will work with any previous version as long as you use the lp_xmlconverter pack of that previous version.
I hope this helps.
2 weeks ago
Thanks, that is great, I think many users will find these steps useful.
2 weeks ago
I always used 2-Step-Automator Actions on MAC OS for Downgrading GDL-Objects. Just Rightclicking on an object and choose Quick Action.
I add an AI-created advanced example Script which is doing this in one step and creating a backup folder.
2 weeks ago
That is very thorough. Thanks for sharing, Jochen.
I still believe that there must be another way, without carrying all the old installations with you.
If it's only one version down I'm still doing the PLA trick 😄 Too lazy to install an older Archicad just for that.
a week ago
Hello runxel,
In order to use this method, you don't really need to install the older version of Archicad unless you want to test it yourself.
You just need to unzip lp_xmlconverter tool pack (zip) for the current and the previous AC version.
If you are downgrading because you need it yourself, then you will probably already have that older version of Archicad installed, if you are doing it to allow someone else with an older Archicad version to use it, then that person can test it for you. 😉
What I find best on this method is that it keeps all the files and folder structures, images included (if present), and it takes seconds to do. It will also issues warning messages if anything goes wrong or is incompatible.