DML Precompiler-Directive Statements

This section presents syntax for precompiler-directive statements.
idmscu
This section presents syntax for precompiler-directive statements.
Function of Precompiler Directives
To use DML statements that request CA IDMS/DB and DC/UCF services, you must include precompiler-directive statements in your application program. Precompiler-directive statements:
  • Ensure that the assembler performs the proper expansion of DML statements into calling sequences appropriate to the CA IDMS environment
  • Identify the dictionary resources (subschema and/or maps) required by the program
  • Cause predefined source modules to be copied into the program from the dictionary
  • Generate source data description code
Summary of Statements
The DML precompiler-directive statements are summarized below:
  • @MODE
    initializes all global SET symbols that control the expansion of subsequent macros and DML commands into calling sequences appropriate to the CA IDMS/DB environment. You must code the @MODE directive before all procedural statements in the program, including DML commands for CA IDMS/DB and DC/UCF requests.
  • @INVOKE
    identifies all dictionary resources used by the application program. The @INVOKE statement must precede all procedural statements in the program, including DML commands for CA IDMS/DB and DC/UCF requests. This statement will generate non-executable source code when the MAP= operand is used for a map with multiple occurring fields.
  • @COPY IDMS
    copies the source data description code associated with CA IDMS/DB database records, the IDMS communications block, map records, and the map request block, as well as other predefined source modules and records, into the program from the dictionary at the location of the @COPY IDMS statement.
  • #MRB
    establishes a map request block (MRB), which is required for the mapping mode of terminal I/O operations. The MRB is a variable storage area in the application program and is used for communications between the program and the mapping compiler during a mapping I/O request.
  • #MAPBIND
    initializes the MRB for mapping requests issued by the application program. #MAPBIND generates executable code.
  • @SSCTRL
    generates the source data description code associated with the IDMS communications block in the program.
  • @SSLRCTL
    generates the source data description code associated with the LRC block in the program.