Previous Topic: Assembler DML Coding ConsiderationsNext Topic: Coding Parameters


Coding User-Supplied Operands

User-supplied operands in DML statements can be specified by name, in register notation, or in data field notation.

By Name

Record, set, or area names can be specified explicitly by name. Unless QUOTES=NO has been specified in the @MODE statement, the name must be enclosed in quotation marks; for example:

SUBSCH='DEMOSUBS'

The DML precompiler performs validity checking for explicitly specified names.

Note: z/VSE USERS—A quoted name operand in a logical-record DML statement cannot exceed 6 characters. A program variable can be used for a path status that exceeds 6 characters. An exception is a quoted operand in a WHERE clause, which can be up to 32 characters long.

Note: ASSEMBLER G USERS—A quoted name operand in a logical record DML statement cannot exceed 6 characters unless the maximum variable size is modified by the appropriate Assembler PARM. A maximum variable size of at least 18 characters is recommended. An exception is a quoted operand in a WHERE clause, which can be up to 32 characters long.

Note: ASSEMBLER H USERS—The DML precompiler(IDMSDMLA) supports 32-character names and converts hyphens to underscores.

In Register Notation

A register can contain either the variable value or the variable address. The general register symbol or register reference must be enclosed in parentheses; for example:

#FREESTG STGID=(7)

The DML precompiler does not perform validity checking of operands specified by register notation.

Note: z/VSE USERS—A general register symbol or register reference in a logical record DML statement cannot exceed 6 characters.

Note: ASSEMBLER G USERS—A general register symbol or register reference in a logical record DML statement cannot exceed 6 characters, unless the maximum variable size is modified by the appropriate Assembler PARM. A maximum variable size of at least 18 characters is recommended.

In Data Field Notation

Your program can specify the name of a variable field containing the desired data name; for example:

@OBTAIN CURRENT,REC=RECFLD

The DML precompiler does not perform validity checking of operands specified by data field notation.