MicroStation CONNECT Edition Help

Flow Directives and Variable Directives

Flow directives control the way that the product processes configuration files. Flow directives always begin with %. The following flow directives are available:

Flow directive Syntax Meaning
%include %include<filespec> Includes one or more configuration files before proceeding with the next line in this configuration file. <filespec> can specify a single file, or can include wildcard characters to include many files. <filespec> can contain a Configuration Variable. For example:

%include $(_USTN_WORKSPACECFG)

%include<filespec> level <levelspec> The %include directive can include a Configuration Variable level at which the assignments in the included file are applied (until another level directive is encountered). For example:

%include $(_USTN_ROLECFG) level Role

%if %if <expression> If <expression> evaluates to true, continue on the next line, otherwise skip to the matching %else, %elif, or %endif statement. See Operators for the syntax of <expression>. For example:

%if $(PHASE)=="Final"

%ifdef %ifdef<cfgvar> If <cfgvar> is defined, continue on the next line, otherwise skip to the matching %else, %elif, or %endif statement. For example:

%ifdef _USTN_ROLECFG

%ifndef %ifndef<cfgvar> If <cfgvar> is not defined, continue on the next line, otherwise skip to the matching %else, %elif, or %endif statement. For example:

%ifndef MS_DEF

%else %else An %if, %ifdef, or %ifndef statement that evaluates to false continues at the line following a matched %else statement, if there is one.
%elif %elif <expression> An %if, %ifdef, or %ifndef statement that evaluates to false continues by evaluating <expression> at the first matched %elif statement, and then either continues processing at the line following if expression evaluates to true, or skips to the next %elif, %else, or %endif statement. For example:

%elif defined (MS_RFDIR)

%endif %endif The statement that indicates the end of the conditional block for an %if, %ifdef, or %ifndef statement.
%echo %echo<message> Shows the contents of <message> in MicroStation's text window and continues processing. For example:

%echo $(MS_DEF)

%error %error<message> Causes processing to stop, reporting the contents of <message> as the error. For example:

%error unexpected value

Variable Directives

The following variable directives are supported:

Variable directive Syntax Definition
%lock %lock<cfgvar> Locks the Configuration Variable <cfgvar> so that it cannot be changed.
%undef %undef<cfgvar> Discards the value of the Configuration Variable and sets it to undefined.
%level %level<newLevel> Specifies the level at which any following Configuration Variable definitions are to be applied. The <newlevel> argument should be one of the following:
  • System
  • Application
  • Organization
  • WorkSpace
  • WorkSet
  • Role
  • User
Note: The above arguments are not case-sensitive.