I am executing a SQL query through JCL.
//STEP010 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//STEPLIB DD DSN=DB2.DSNLOAD,DISP=SHR
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(*)
RUN PROGRAM(*) PLAN(*) PARM('SQL') -
LIB('*')
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSREC00 DD DSN=TEST.PGM.FILE1,
// DCB=(RECFM=FB,LRECL=80),
// UNIT=SYSDA,DISP=(NEW,CATLG,DELETE)
//SYSPUNCH DD DSN=TEST.RESULTS.FILE,
// UNIT=SYSDA,SPACE=(8000,(1500,1500)),
// DISP=(NEW,DELETE)
//SYSIN DD *
SELECT DISTINCT
SUBSTR(EMP,1,10),
FROM EBET_PND_BILL_NTR
WHERE ENV_IT = '003'
;
/*
//STEPLIB DD DSN=DB2.DSNLOAD,DISP=SHR
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(*)
RUN PROGRAM(*) PLAN(*) PARM('SQL') -
LIB('*')
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSREC00 DD DSN=TEST.PGM.FILE1,
// DCB=(RECFM=FB,LRECL=80),
// UNIT=SYSDA,DISP=(NEW,CATLG,DELETE)
//SYSPUNCH DD DSN=TEST.RESULTS.FILE,
// UNIT=SYSDA,SPACE=(8000,(1500,1500)),
// DISP=(NEW,DELETE)
//SYSIN DD *
SELECT DISTINCT
SUBSTR(EMP,1,10),
FROM EBET_PND_BILL_NTR
WHERE ENV_IT = '003'
;
/*
CODE' d
Even if row is not found for the condition, i.e. SQL 100 i want the row to get written in SYSREC00 with a note NO DATA.
Is this possible within JCL itself?