General system variables are variables that get their value by JVER when the processing begins. The user cannot update them using the SET command. All the system variables begin with %%# to differentiate them from the other variable types.
The system variables are available to all the rules. The system variables and the date system variables are described separately in the following two tables.
Tab.JV.3.3 System variables
Variable |
Description |
---|---|
%%#JCLTYPE |
The type of JCL statement (for example, DD, EXEC, and JOB). |
%%#MEMBER |
The JCL statements member name. |
%%#LIBRARY |
The library name containing the JCL member. |
%%#ENVRN |
The environment specified in the invocation. |
%%#SCHDLIB |
The scheduling library with the job definition (if verifying Control-M job definition). |
%%#SCHDTAB |
The scheduling table name (if verifying Control-M job definition) |
%%#SCHDJOB |
The scheduling job name (if verifying Control-M job definition) it will be equal to %%#MEMBER. |
%%#STATNUM |
The statement number (after the procedures and Control-M cards are added). During INIT the value of %%#STATNUM is set to zero. |
%%#DDJOB |
The number of DD in job. |
%%#STPJOB |
The number of steps in job. |
%%#STPJOBO |
The number of steps in job, not including steps added by the resolved procedures |
%%#LINJOB |
The number of lines/records in job. |
%%#DDSTP |
The number of DDs in step. |
%%#REQUSER |
The user ID of the one who performed the validation, Reformat, or Enforcement process. |
%%#RULENAME |
Name of the rule that is invoked. |
%%#RULETBL |
Name of the rule table that is invoked. |
%%$RC |
The highest return code attained up until the current point in the procedure. The format is: RETURN RC 0000 RS X' 0000 ' |
%%$RS |
The highest reason code attained up until the current point in the procedure. Expressed in HEX code. The format is: |
%%$JCL# |
Under site standard rules: Total number of lines in the member (including in-stream data sets) and the number of lines from the expanded procedures and included JCL. The total number equals the number of lines in the JVER batch output minus all JVER messages. Note: The value of JCL# can change from one execution to the next due to changes in the external procedures or included JCL. Under Enforcement/Reformat rules: Total number of lines in the original JCL. |
%%$JCLn |
Under site standard rules: The nth line in the JVER output, as described above. Up to 72 characters in the record. Note: The value of JCLn can change from one execution to the next due to changes in the external procedures or included JCL. Under Enforcement/Reformat rules: The nth JCL line in the original JCL. |
%%$JCLCURF |
Resolves to the index of the first JCL card of the current JCL statement that corresponds to the current ON for which the current rule has been triggered. Note: Under Enforcement/Reformat rules, only the original JCL cards are included. |
%%$JCLCURL |
Resolves to the index of the last JCL card of the same statement. Note: Under Enforcement/Reformat rules, only the original JCL cards are included. |
%%$MEMTYPE |
Resolves to the JCL type, either PROC or JOB. |
%%#INPNODE |
INPut NODE: The NODE parameter as specified by the user in the parameters provided for the verification/enforcement/reformat request. |
%%#INPSYSTEM |
INPut SYSTEM: The SYSTEM parameter as specified by the user in the parameters provided for the verification/enforcement/reformat request. |
%%#INPIOAENV |
INPut IOAENV: The IOAENV/IOA ENV parameter as specified by the user in the parameters provided for the verification/enforcement/reformat request. |
%%#INPAR |
INPut AR: The AR/AUTO ROUTE parameter as specified by the user in the parameters provided for the verification request. If AR/AUTO ROUTE=D or unspecified then the value that is specified by the CTJPARM AROUTE parameter is used and shown. |
%%#REQIOAENV |
REQuest IOAENV: The QNAME where the verification/enforcement/reformat request was originated. |
%%#REQSYSTEM |
REQuest SYSTEM: The name of the SYSTEM where the verification/enforcement/reformat request was originated. |
%%#REQCTJMON |
REQuest CTJMON: The name of the CTJMON where the verification/enforcement/reformat request was originated. |
%%#SUBIOAENV |
SUBmission IOAENV: The QNAME where the verification/enforcement/reformat request was submitted. |
%%#SUBSYSTEM |
SUBmission SYSTEM: The name of the SYSTEM where the verification/enforcement/reformat request was submitted. |
%%#SUBCTJMON |
SUBmission CTJMON: The name of the CTJMON where the verification/enforcement/reformat request was submitted. |
%%#EXEIOAENV |
EXEcution IOAENV: The QNAME where the verification/enforcement/reformat request was executed. |
%%#EXESYSTEM |
EXEcution SYSTEM: The name of the SYSTEM where the verification/enforcement/reformat request was executed. |
%%#EXECTJMON |
EXEcution CTJMON: The name of the CTJMON where the verification/enforcement/reformat request was executed. |
%%$CMNTn |
Resolves to the comment card of the corresponding number. Available only for ON INIT rules.
%%$CMNTn system variables cannot be changed with a DO ENFORCE command. To change a comment card, use the DO REPCMNT command. |
Example:
Given the following JCL:
//MYJOB JOB
//* THIS IS MY JOB
//S1 EXEC PGM=IEFBR14
//DD1 DD DSN=USER.LIB.CNTL,
// DISP=(NEW,CATLG,DELETE),
// DCB=(RECFM=U,BLKSIZE=6144,DSORG=PO),
// DSNTYPE=LIBRARY,
// UNIT=3390,
// VOL=SER=IFBQ25,
// SPACE=(TRK,(1,,1))
When ON DD is invoked for DD1, the values of the variables will be:
%%$JCLCURF = 4
%%$JCLCURL = 10
Tab.JV.3.4 Date system variables
Variable |
Description |
---|---|
%%$DATE |
The current system date, in the format yymmdd. |
%%$ODATE |
The current ODATE (when invoked from a Control-M interface). The current ODATE (when invoked from a Control-M interface). |
%%$CENT |
The first two digits in the current year |
%%$DAY |
The current system day, in dd format. |
%%$JULDAY |
The current system day, in jjj format. |
%%$MONTH |
The current system month, in mm format. |
%%$RDATE |
The installation current working date, in yymmdd format. |
%%$RDAY |
The installation current working day, in dd format. |
%%$RJULDAY |
The installation current working day of the year, in jjj Julian format. |
%%$RMONTH |
The installation current working month, in mm format. |
%%$RWDAY |
The current working day of the week, in d format, where d is 1 through 6 or 0. For example, 1=Sunday, 2=Monday, ...6=Friday, 0=Saturday. |
%%$RYEAR |
The installation current working year, in yy format. |
%%$TIME |
The time of day, in hhmmss format. |
%%$WDAY |
The current Gregorian day of the week in d format, where d is from 1 through 6 or 0. For example, 1=Sunday, 2=Monday, ...6= Friday, 0=Saturday. |
%%$YEAR |
The current system year, in yy format. |
Parent Topic |