Macro Preprocessor Directives This reference provides information on the preprocessor directives that you can use when defining macros. Note: These directives are not case-sensitive. For example, #include is treated the same as #INCLUDE (and other case variations). #; – Creates a single line comment. #def1arg – Defines a macro with only one argument, where that argument can include commas. #define – Defines a macro. #dim – Specifies the intended data type of a local variable and can optionally specify its initial value. #else – Specifies the beginning of the fall-through case in a set of preprocessor conditions. #elseif – Specifies the beginning of a secondary case in a set of preprocessor conditions that begin with #if. #endif – Concludes a set of preprocessor conditions. #execute – Executes a line of ObjectScript at compile time. #if – Begins a block of conditional text. #ifDef – Marks the beginning of a block of conditional code where execution depends on a macro having been defined. #ifNDef – Marks the beginning of a block of conditional code where execution depends on a macro having not been defined. #import – Specifies the schema search path for any subsequent Embedded SQL DML statements. #include – Loads a specified file name that contains preprocessor directives. #noshow – Ends a comment section that is part of an include file. #show – Begins a comment section that is part of an include file. #sqlcompile audit – Specifies whether any subsequent Embedded SQL statements should be audited. #sqlcompile mode – Deprecated. #sqlcompile path – Specifies the schema search path for any subsequent Embedded SQL DML statements. #sqlcompile select – Specifies the data format mode for any subsequent Embedded SQL statements. #undef – Removes the definition for an already-defined macro. ##; – Makes the remaining part of the current line a comment that does not appear in .int code. ##beginquote ... ##EndQuote – Quote the text string they enclose, doubling all quotes within text. ##continue – Continues a macro definition on the next line, to support multiline macro definitions. ##expression – Evaluates an ObjectScript expression at compile time. ##function – Evaluates an ObjectScript function at compile time. ##lit – Preserves the content of its argument in literal form. ##quote – Takes a single argument and returns that argument quoted. ##quoteExp – Takes as an argument an expression that gets evaluated during compilation. This expression can contain nested/recursive MPP functions. ##sql – Invokes a specified Embedded SQL statement at runtime. ##stripq – Takes a single argument and returns that argument with quotes removed. ##unique – Creates a new, unique local variable within a macro definition for use at compile time or runtime.