Parameters

PARM=
Specifies the name of the parameter to check.
VALUE=
Specifies the value set that was set for the parameter identified by PARM=. This value is used to determine whether a value was specified for the parameter identified by PARM=.
REGS=
Specifies which registers are allowed to be used or not allowed to be used in the checked parameter. To specify a list of registers that are allowed to be used, each register should be specified in the REGS parameter. To specify registers 2, 3, 4, and 5 as the only registers allowed for a parameter, code the following:
REGS=(R2,R3,R4,R5)
To specify a list of registers that are not allowed to be used, specify "NOT" as the first subparameter, followed by the list of registers in the subsequent subparameters. To specify registers 0 and 1 as not allowed to be used for a parameter, code the following:
REGS=(NOT,R0,R1)
Note: The REGS parameter assumes that registers are coded in the form PARM=(Rx) and not PARM=(x).
SUBPARM_COUNT=
Specifies the number of subparameters that the parameter must have. A single value or multiple values can be specified. Null subparameters are not allowed. To specify that a parameter must have two, non-null subparameters, code the following:
SUBPARM_COUNT=2
To specify that a parameter must have two or three, non-null subparameters, code the following:
SUBPARM_COUNT=(2,3)
LIST=
Specifies a list of valid values for the parameter. The VALUE you specify on PARM= must be one of these values or an MNOTE is issued.

If LIST= is not specified, the PARM= is not checked for valid values.

REQ=YES | NO
Specifies whether the parameter identified by PARM= is required (YES) or optional (NO).
Note:
  1. If REQ=YES is specified and LIST= is not specified, the macro only checks whether a value was specified.
  2. You cannot specify REQ= if you specify XCHECK_PARM=
  3. If you specify XCHECK_PARM=, JES3 uses the XCHECK_REQ_LIST= and XCHECK_OPT_LIST= parameters to determine when you must specify the parameter identified by PARM=.
Examples Using PARM, VALUE, REQ, and LIST
To make sure that a parameter FUNC is specified without regard to the values that were specified, code the following:
IATZPCHK PARM=FUNC,
      VALUE=&FUNC,;
      REQ=YES
To make sure that a parameter FUNC is specified and is set to one of the following values, code the following:
IATZPCHK PARM=FUNC,
      VALUE=&FUNC,;
      REQ=YES
      LIST=(ADD,DELETE,INIT,TERMINATE)
To make sure that if parameter FUNC is specified, it is set to one of the following values, code the following:
IATZPCHK PARM=FUNC,
      VALUE=&FUNC,;
      REQ=NO
      LIST=(ADD,DELETE,INIT,TERMINATE)
XCHECK_PARM=
Specifies the name of the parameter that is to be cross checked against the PARM= parameter. XCHECK_PARM is used when the parameter identified by PARM=:
  • Can only be specified when XCHECK_PARM is a certain value.
  • Must be specified when XCHECK_PARM is a certain value.

Example 1:

To verify that a parameter, SYSUNITS, is only specified for FUNC=DELETE or FUNC=CHANGE, code the following (assuming that the SYSUNITS parameter is optional for FUNC=DELETE and FUNC=CHANGE):
IATZPCHK PARM=SYSUNITS,
      VALUE=&SYSUNITS,;
      XCHECK_PARM=FUNC,
      XCHECK_VALUE=&FUNC,;
      XCHECK_OPT_LIST=(DELETE,CHANGE),

Example 2:

To verify that a parameter, SYSUNITS, is only specified for FUNC=DELETE or FUNC=CHANGE, code the following (assuming that the SYSUNITS parameter is required for FUNC=DELETE and FUNC=CHANGE):
IATZPCHK PARM=SYSUNITS,
      VALUE=&SYSUNITS,;
      XCHECK_PARM=FUNC,
      XCHECK_VALUE=&FUNC,;
      XCHECK_REQ_LIST=(DELETE,CHANGE),

Example 3:

To verify that a parameter, SYSUNITS, is required for FUNC=DELETE and optional for FUNC=CHANGE: code the following:
IATZPCHK PARM=SYSUNITS,
      VALUE=&SYSUNITS,;
      XCHECK_PARM=FUNC,
      XCHECK_VALUE=&FUNC,;
      XCHECK_REQ_LIST=DELETE,
      XCHECK_OPT_LIST=CHANGE
Note:
  1. XCHECK_PARM= is mutually exclusive with REQ=.
  2. If you code this parameter, XCHECK_VALUE= is required, and you must also specify at least one of XCHECK_REQ_LIST= or XCHECK_OPT_LIST=.
XCHECK_VALUE=
Specifies the XCHECK_PARM value that is to be cross checked against the value associated with the PARM= parameter.

If you code this parameter, XCHECK_PARM= is required, and you must also specify at least one of XCHECK_REQ_LIST= or XCHECK_OPT_LIST=.

XCHECK_REQ_LIST=
Specifies a list of valid values for the parameter represented by XCHECK_PARM. When the parameter represented by XCHECK_PARM is one of the values in this list, then the parameter represented by PARM= must be specified.
For example, to verify that a parameter, INDEX, is specified when FUNC=DIRECT_ACCESS is specified, code the following:
IATZPCHK PARM=INDEX,
      VALUE=&INDEX,;
      XCHECK_PARM=FUNC,
      XCHECK_VALUE=&FUNC,;
      XCHECK_REQ_LIST=DIRECT_ACCESS
XCHECK_OPT_LIST
Specifies a list of valid values for the parameter represented by XCHECK_PARM=. When the parameter represented by XCHECK_PARM= is one of the values in this list, then the parameter represented by PARM= is allowed to be specified but is optional.
For example, to allow a parameter, INDEX, to be optionally specified when FUNC=DIRECT_ACCESS is specified, code the following:
IATZPCHK PARM=INDEX,
      VALUE=&INDEX,;
      XCHECK_PARM=FUNC,
      XCHECK_VALUE=&FUNC,;
      XCHECK_OPT_LIST=DIRECT_ACCESS