Should the personal.ucf configuration file load prior to the _USTN_ORGANIZATION configuration? If not, the ..\Organization\standards.cfg will not pick up any configuration variables defined in the personal.ucf file.
Currently the msconfig.cfg has _USTN_ORGANIZATION loading prior to the personal.ucf...
#---------------------------------------------------------------------- # Include the Organization specific configuration files. # The configuration files in the _USTN_ORGANIZATION directory are intended to # set configuration variables that point to organization-wide standards # such as level libraries, cell libraries, etc. Those settings can be # augmented or overridden at the WorkSpace or WorkSet level. #---------------------------------------------------------------------- %if exists ($(_USTN_ORGANIZATION)*.cfg) % include $(_USTN_ORGANIZATION)*.cfg level Organization %endif #---------------------------------------------------------------------- # Include the personal.ucf configuration file. _USTN_USERCFG is predefined # It is included here because it may contain definitions for _USTN_WORKSPACENAME # and _USTN_WORKSETNAME. We need those before we try to include the # WorkSpace and WorkSet configuration files. #---------------------------------------------------------------------- %if exists ($(_USTN_USERCFG)) % include $(_USTN_USERCFG) level User %else % error Exiting, $(_USTN_USERCFG) not found %endif
If this is the case, using the following example in the ...\Organization\standards.cfg, the _USTN_ROLECFG configuration variable will never be defined using the user's personal configuration file method.
#------------------------------------------------------------------------------------------------------------------------------------------------------------------------- # This is an example of how the Role level could be applied. # We do not define USER_ROLE by default.This variable may be defined many # different ways. For example, it may be defined in a user’s personal # configuration file, from Bentley CONNECT, or within a system logon script. # If the system environment variable USER_ROLE is defined in a logon script, # then it is applied by looking for a .CFG file named after the USER_ROLE # and defining _USTN_ROLECFG to that file. #------------------------------------------------------------------------------------------------------------------------------------------------------------------------- %if defined (USER_ROLE) %if exists ($(_USTN_ORGANIZATION)$(USER_ROLE)/$(USER_ROLE).cfg) _USTN_ROLECFG = $(_USTN_ORGANIZATION)$(USER_ROLE)/$(USER_ROLE).cfg %endif %endif
In the following conditions, the _USTN_ROLECFG is defined...
1. If defining the USER_ROLE at the System Environment Variable Level.
2. If I move the relevant content in the \Organization\standards.cfg to the _USTN_WORDSPACECFG.
If msconfig.cfg is behaving as intended, then is the statement "...may be defined in a user’s personal configuration file a correct or statement? or is the location of this content in the correct configuration file?
Note: This behavior is the same in ORD Update 2.
I use _USTN_ROLECFG and it's defined at the Windows System Level for my login. I use it to set/override some MicroStation definitions so I can "tweak" the configuration without affecting other users.
Thanks Bruce
Ir works for me when I define the USER_ROLE at the System level. It does not work when I define the USER_ROLE in the personal.ucf file as stated in the default comments of the standards.cfg. The Oeganization is loaded prior to the personal ucf so the USER_ROLE is not defined when the condition is checked in the default standards.cfg. I am alright with this behavior.