Previous Topic

Next Topic

Book Contents

Book Index

Rules of Variable Substitution

A User-defined variable name must conform to the following rules. It must

Lowercase characters are not translated to uppercase characters upon resolution.

Variables are substituted sequentially from right to left, until the symbol is assigned a value. For example

%%SMF_TAPE_%%$DAY,

resolves on the third of the month to

%%SMF_TAPE_03,

Control-O then tries to resolve the symbol %%SMF_TAPE_03. Assuming the value of the symbol in the Global environment is EE1022, the result is

EE1022

To concatenate two symbols, separate them with a period. Before AutoEdit variables are concatenated, trailing blanks are eliminated. For example

%%$DAY.%%$MONTH

resolves on the 3rd of December to

0312

Note: %%$DAY%%$MONTH (written without a period) partially resolves to User-defined variable %%$DAY12, which must be fully resolved.

To put a period between two symbols, use two consecutive periods. For example

%%$DAY..%%$MONTH

resolves on the 3rd of December to

03.12

To concatenate a symbol and a constant, use %%. (concatenation symbol). For example

A91%%$DAY%%.UP

resolves on the 3rd of December to

A9103UP

Note: Resolution of A91%%DAYUP would require a search for the %%DAYUP symbol.

When Control-O assigns a value to a variable, Control-O ignores leading and trailing spaces. For example, the statement

DO SET=%%X = FRIDAY RUN

assigns the value "FRIDAY RUN" to the %%X variable, regardless of how many spaces you type before or after "FRIDAY RUN."

To assign a value with leading or trailing spaces, use the %%$BLANK system variable. For example, the statement

DO SET=%%X=%%$BLANK.FRIDAY RUN

assigns the value "FRIDAY RUN" (with a leading space) to the %%X variable. Be sure to include the "." concatenation operator between "%%$BLANK" and "FRIDAY RUN." Without the "." Control-O would look for a variable called "%%$BLANKFRIDAY."

Parent Topic

System Variables