$SET Statements in the Source Code

Use $SET statements if your program is affected by particular circumstances that none of the other programs in an application needs.


$SET directive["parameter"] ... 

where the parameters are:

A Compiler directive whose phase is identified as "syntax check". It cannot be a generate phase directive. Multiple directives must be separated by spaces.
A qualifier to directive. It must appear in one of the following forms:
  • "parameter" - can contain spaces
  • (parameter) - cannot contain spaces

parameter must not be preceded with an equals sign (=)


  • The $ character must be in column 7.
  • $SET statements must not be terminated with a period (.).
  • $SET statements cannot be continued onto a new line, but it can be followed by additional $SET statements.
  • Some directives must be set at the start of the program; these are known as initial $SET statements. They can precede or follow other $SET statements, but must come before any other statements.
  • When a directive is specified on a statement after the initial $SET statements, the directive affects compilation from that point onwards.
  • Dialect-controlling directives must be on an initial $SET statement. Once you have set a dialect, you cannot unset it later in the program.


If your program requires a specific currency symbol that none of your other programs need, start the program with the line:

$set currency-sign"157"