ORD 10.9/10.10: Can we get a variable indicating the schema version used in the application

Now that ORD 10.10 supports dual install with 10.9 (and future versions I assume) I've been looking at what we need to do in our workspaces to support dual installing. It looks like if we need to support both versions for projects from the same client we'll need to be able to to pick a folder (or folders) containing the dgnlibs that support the schema of the currently launched application. It doesn't currently look like their are any variables that define what schema is in use.

Variables I've looked at:

  • _VERSION_10_0 just indicates a CONNECT product is being used.
  • _ENGINENAME is the same for all versions of OpenRoadsDesigner
  • _USTN_PRODUCT_FULLMARKETINGNAME contains the full version but is too specific and too long
    • By too specific I mean there will probably be an ORD with marketing name "OpenRoads Designer CE - 2021 Release 2" that uses the same dgnlib schema as "OpenRoads Designer CE - 2021 Release 1" so i want to load the same dgnlib set for both.
  • New in 10.10:
    • _MSCONFIG_VERSION_MAJOR/MINOR/BUILD - these seem to specifically apply to the configuration system and not necessarily the schema used? If the schema is included in these and we knew that $(_MSCONFIG_VERSION_MAJOR).$(_MSCONFIG_VERSION_MINOR) would be the same for all the 10.10 releases that use the same dgnlibs that would be great.
    • I notice that MicroStation 10.15 has these variables set to the same values so I suspect it's not indicative of schema version.

Basically I'd like to be able to have folders named $(_ENGINENAME)-$(_USTN_PRODUCT_SCHEMAVERSION) or $(_ENGINENAME)/$(_USTN_PRODUCT_SCHEMAVERSION) and then put the dgnlibs required for that version under those folders.

OneConfiguration supports this concept but there isn't a variable i can use in the _USTN_PRODUCT_ONE_* variables to pick folders based on schema.

Currently my solution is most like to be something like below, but it gets cumbersome pretty fast.

%if $(_USTN_PRODUCT_FULLMARKETINGNAME) == "OpenRoads Designer CONNECT Edition - 2020 Release 3"
	SCHEMA_VERSION = $(_ENGINENAME)-10.09
%endif

%if $(_USTN_PRODUCT_FULLMARKETINGNAME) == "OpenRoads Designer CE - 2021 Release 1" || $(_USTN_PRODUCT_FULLMARKETINGNAME) == "OpenRoads Designer CE - 2021 Release 2"
	SCHEMA_VERSION = $(_ENGINENAME)-10.10
%endif

This would also be useful to make sure the correct product is being used for a workset. so in the WorkSet cfg file, if i do the above, I can do:

%if $(_ENGINENAME) == "OpenRoadsDesigner" && $(SCHEMA_VERSION) <> "ORD-10.09"
	%error Incorrect OpenRoads is being used. This project requires ORD 10.10
%endif