Example 27: Verify utility conditional execution processing
//JOB0027 JOB ...
//CONDTEST EXEC PGM=IQIBUTIL
//STEPLIB DD DISP=SHR,DSN=IQI.SIQILOAD
//SYSPRINT DD SYSOUT=*
//IN1 DD DISP=SHR,DSN=SYS1.MACLIB
//IN2 DD DISP=SHR,DSN=SYS1.LINKLIB
//IN3 DD DISP=SHR,DSN=SYS1.SAMPLIB
//FMLIST DD SYSOUT=*
//DIRLIST DD SYSOUT=*
//SYSIN DD *
STEP1 FINDMEM INDD=IN1,OUTDD=FMLIST
SELECT MEMBER=READ,WRITE
IF RC=0,LIST=YES
STEP2 FINDMEM INDD=IN2,OUTDD=FMLIST
SELECT MEMBER=XYZ
IF RC=4
STEP3 FINDMEM INDD=IN3,OUTDD=FMLIST
SELECT MEMBER=TEST*
ELSE
STEP4 FINDMEM INDD=IN2,OUTDD=FMLIST
SELECT MEMBER=IEB*
ENDIF
ELSE
STEP5 FINDMEM INDD=IN3,OUTDD=FMLIST
SELECT MEMBER=ABC
ENDIF
STEP6 LISTDIR INDD=IN3,OUTDD=DIRLIST,LIST=NO
SELECT MEMBER=X*
/*
In this example we verify the following expected conditional execution:
- Completion return-code 0
- Completion return-code 4
- Completion return-code 0
- Conditionally skipped
- Conditionally skipped
- Completion return code 0
The expected job completion return-code 4.
Note: Due to "LIST=YES" of the first IF statement, all skipped statements will be listed.