Previous Topic: EXEC Processing Subroutine for JCLNeatNext Topic: EOS Processing Subroutine for JCLNeat


DD Processing Subroutine for JCLNeat

The DD processing subroutine checks for anything that is related only to DD statement processing. You can still reference the JOB and EXEC statement variables as needed. Only one DD statement is active at any one time.

     /********************************************************************/
     /*  Data Definition Processing Logic                                	*/
     /********************************************************************/
     /*  The value of all DD variables is maintained across one DD.      */
     /*  IE: The next DD JCL statement causes the values to change.      */
     /********************************************************************/
  A   DD_PROCESSING:
  B    If SUBSTR(DD.DISP_STATUS,1,3) = 'NEW' then
       Do
       Call $CAJCL_ERROR,
        'I' 'Blocksize reset for system determined value and UNIT nullified';
        DD.DCB_BLKSIZE = '0'
        DD.UNIT        = ''
       End
  C     IF SUBSTR(DD.UNIT,1,5) = 'BOGUS' then
       Do
        Call $CAJCL_ERROR,
        'W' 'An obsolete UNIT name was coded and was removed from the JCL';
        dd.unit = ''
       End
  D     If DD.DSN.0 > 0 then
       Do
        Say 'DSN='||DD.DSN
        Say 'NODES='||DD.DSN.0
        Do I = 1 TO DD.DSN.0
        SAY 'NODE'||I||'='DD.DSN.I 
       End
  E   Return
A

Defines the name of this subroutine to the DO WHILE loop.

B

IF statement that sets up the checking criteria so that if the data set disposition equals NEW, the CALL statement issues an informational message indicating that the DCB block size and UNIT parameters have been reset.

C

IF statement that sets up the checking criteria so that if the UNIT value contains the characters BOGUS, the CALL statement issues a warning message that an invalid UNIT name is coded and removed from the JCL.

Note: To set up the criteria for these IF statements, only use the variables specified in the JOB, EXEC, and DD processing subroutines from the variables list. For information about the variables list, see Variable List for JCLNeat.

D

IF statement that sets up the checking criteria so that if there is a data set name, the parsed data set name nodes are displayed.

E

Causes control to return to the main DO WHILE loop.