This is an update to an older thread about working with Civil 3D files
I have an older Civil 3D file created in Civil 3D 2009. Opening the file in MSCE Update 12 I am given the choice to upgrade the DWG AEC objects to the current version (Civil 3D 2018) or open read-only. When opening and upgrading I would expect that the entire drawing file would be upgraded to the latest version, but that is not the case.
Saving this drawing the base dwg file format is still DWG2007, but the AEC Objects stored in the file are in 2018 format. Opening the drawing in Civil 3D 2016 the base graphics display fine, but the AEC Objects are drawn as proxy graphics as they are a newer format. Only when I open the file in Civil 3D 2018 and save it is everything in the file at the same version.
I did a SaveAs in MSCE Update 12 and saved it as a 2010 format file. Again the DWG was created as 2010, but the AEC Objects remained at 2018.
This is really messed up.
It would be nice to have another option on the MS_OPENDWGAEC variable to automatically upgrade the DWG version to the AEC Objects version so you don't end up with these mis-matched formats. Setting this variable would not allow the user to save this to any DWG format other than the one that matches the AEC Objects.
I'm guessing that since you have the alert dialog you (Bentley) do not have the ability to save the AEC Objects to earlier versions, which would be the option we would really like to have.
As counter intuitive as it seems, DWG version and AEC version are not necessarily related. They are actually two different animals: one is about file format and the other is about object definition. You have just provided such a perfect example that a DWG R2007 file can legitimately contain AEC objects created by its object enabler R2018. The two version numbers are totally unrelated. You are not seeing a file corruption. What you have seen is done by design, though not by Bentley. Someone else who uses ACAD would experience the same behavior and get the same result as you have.
You are not alone in wishing an object enabler to allow you save its objects to a desired version, but I have yet to see one that offers such an option. C3D OE certainly does not have the option. With C3D or other AEC OE's, You can only upgrade an older AEC version to the latest version of the OE currently running on a RealDWG host application like MicroStation or ACAD. So, you are right in that Bentley does not have the ability to save the AEC objects to an earlier version, and neither does ACAD. I almost wonder if C3D as a full product might be able to do that?