We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

Collaboration with other software
About model and data exchange with 3rd party solutions: Revit, Solibri, dRofus, Bluebeam, structural analysis solutions, and IFC, BCF and DXF/DWG-based exchange, etc.
SOLVED!

Archicad 22 backwards compatibility

Anonymous
Not applicable
Hello archicad users i have a problem when saving an archicad 22 model in archicad 21 format.
Here it is in archicad 22:

And here it is in archicad 21:

When saving i did check the convert library objects backward yet when i open the file in ac 21 it says it has missing library parts. What am i doing wrong? how can i fix this?
14 REPLIES 14
felcunha
Expert
LaszloNagy wrote:
What do you mean by that?
This is how it worked in previous versions as well (I believe this is how it always worked): only library parts located in the Embedded Library were converted back to the previous version.
Hello Laszlo,

As I remembered I've never had this issue before, but you made me doubt...
I've just made a test from AC21 to AC20 on another project, and all the linked library elements have been correctly converted.
So I think the conversion method has changed in AC22, or it's a bug...
Felipe Ribeiro Cunha

AC 26, macOS Monterey
Solution
Daniel Kovacs
Graphisoft Alumni
Graphisoft Alumni
Hello Everyone,

Actually the general workflow hasn't changed for ARCHICAD 22 either: When you save the project to the earlier version, ARCHICAD will change every object to be their AC21 counterpart, and replace the AC22 library with the AC21 library.

What is special about the ARCHICAD 22 library though, is a new option in the Model View Options Settings (MVO for short). As of AC22 you have the option in most objects to control the Level of Detail (LoD for short) not based on Scale, but also based on MVO! This option didn't exist in the previous versions, you could only control the LoD by manually setting it to a fixed Level or setting it to scale sensitive.

In AC22 the default LoD for library parts is "by MVO". If you try to save an element back with this setting, then we can't possibly save it back to AC21, because this option is missing from the MVO. It's easy to see that if you have two 1:100 views, in one of them the LoD of the object is Simple, and in the other it is Detailed, then there would be no way to make the same two views work in AC21.

When designing the workflow of saving back to earlier versions, we basically had 2 options (of course we had other ideas, but to simplify things, let's say these 2): either set all these library parts to a specific LoD (eg. 'by Scale' or '1:50'), or not saving backwards at all when the LoD is set to 'by MVO'. In the former case, when you saved back your project, you could have got a really messed up views that didn't look anything like what you had in AC22. In the latter case, if you save the project back, you will immediately notice the missing elements, and realize that some setting is wrong there, and if you know that you have to save the project back, you can go about it with that in mind (so you will not control the LoD with the MVO, because that function doesn't exist in the previous version). You actually even get a prompt when saving, telling you that new functions in AC22 might not work as expected in earlier versions.

So these new objects can only work with AC21, if their LoD has a value that was available in AC21 as well (so anything but 'by MVO'). In this case we save the object back to the AC21 version.
In case an object has 'by MVO' set as the LoD, It will not be migrated back, and the object will stay unchanged (so if you look at the object in AC21, it will still say it is 'Chair 22' and not 'Chair 21'). Since the AC22 library doesn't work with AC21, these elements will be missing.

In your case, since you put the library parts into the embedded library, the version of the parts was changed to be compatible, but if you check the settings of an object, it will still say it is a 'Chair 22' instead of 'Chair 21'. Since that object uses functions that doesn't exist in AC21, that can cause issues later on (and it is surprising that it even works). I don't recommend ever doing that with the default ARCHICAD libraries.

So, to sum it up, the solution is that when you know that you will have to save the project back to AC21, make sure that none of the library parts have 'by MVO' set for their 2D or 3D detail level! In your already existing project, just select all object at once, and change this setting for all of them at once (same for doors and windows).

I hope the explanation and the solution was clear. Let me know if something is still not clear about this topic.

Regards,
Daniel Alexander Kovacs

Professional Services Consultant

GRAPHISOFT



For Troubleshooting and useful Tips & Tricks visit
felcunha
Expert
Ahhh ok, it's clear now !
Thank you Daniel !
Felipe Ribeiro Cunha

AC 26, macOS Monterey
Lingwisyer
Guru
Daniel's reply should probably be pinned. Not only does it explain the cause of the missing objects after migration, it also points to the object MVO that I have seen quite a few people run into since the change.



Ling.

AC22-23 AUS 7000Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win10 | R5 2600 | 16GB | GTX1660
Eduardo Rolon
Moderator
Clicking on the checkmark on Daniel's (or anybody else's) marks the post as the answer and it should pin it.
Eduardo Rolón AIA NCARB
AC27 US/INT -> AC08

Macbook Pro M1 Max 64GB ram, OS X 10.XX latest
another Moderator