JCL examples for API mode


The following figure shows QUICKSTART sample JCL for API mode:

//*      SAMPLE API MODE EXECUTION JCL USING DB2'S TSO ATTACH
//*
//DB2TSO       EXEC PGM=IKJEFT01,REGION=4M,DYNAMNBR=30
//STEPLIB      DD   DSN=DSNT.DSNLOAD,DISP=SHR
//             DD   DSN=QSTART.LOADLIB,DISP=SHR
//ISPMLIB      DD   DSN=SYS1.V2R3M0.ISPMLIB,DISP=SHR
//ISPTLIB      DD   DSN=SYS1.V2R3M0.ISPTLIB,DISP=SHR
//ISPPROF      DD   UNIT=SYSDA,SPACE=(TRK,(9,1,4)),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120)
//SYSPROC      DD   DSN=QMF240.DSQCLSTE,DISP=SHR
//SYSEXEC      DD   DSN=QMF240.DSQEXECE,DISP=SHR
//SYSPRINT     DD   SYSOUT=*
//SYSOUT       DD   SYSOUT=*
//EDT          DD   DSN=&EDIT,UNIT=SYSDA,SPACE=(1688,(40,12))
//UTL          DD   DSN=&SYSUT1,UNIT=SYSDA,SPACE=(1688,(40,12))
//SYSTSPRT     DD   SYSOUT=*
//SYSTSIN DD *
  DSN SYSTEM(DSN)
  RUN PROGRAM(DB2DEMO) PLAN(QSTART) LIB('QSTART.LOADLIB')
  END
//INFILEA DD DSN=my.input.file,DISP=SHR
//OUTFILED DD DSN=my.output.file,DISP=(,CATLG),UNIT=SYSDA,
//     SPACE=(CYL,(10,5)),DCB=my.input.file
//QSTART DD DSN=hlq.anyname.jobname,DISP=(MOD,DELETE,DELETE),
//     SPACE=(TRK,0),UNIT=SYSDA

//*
//*  SAMPLE COMPILE/LINK/BIND USING BATCHCAF.
//*  THE BIND USES A CALLED SUBROUTINE FOR CKPTRTN AND
//*  THE QSSTATS STATISTICS FUNCTION IS INSTALLED.
//*
//J10     EXEC COBCL,MBR=myprog
//COB.SYSLIN  DD DSN=&&OBJLIB,DISP=(,PASS),UNIT=SYSDA,
//          SPACE=(80,(500,100))
//LKED.SYSLIN DD *
  INCLUDE QSTART(BATCHCAF)
  INCLUDE OBJLIB
  ENTRY myprog
  NAME myprog(R)
//LKED.QSTART   DD DSN=QSTART.LOADLIB,DISP=SHR
//LKED.OBJLIB   DD DSN=&&OBJLIB,DISP=OLD
//BIND          EXEC PGM=IKJEFT01,REGION=4M,DYNAMBR=20,COND=(4,LT)
//STEPLIB       DD DSN=DSNT.DSNLOAD,DISP=SHR
//DBRMLIB       DD DSN=your.dbrm.library,DISP=SHR
//SYSTSPRT      DD SYSOUT=*
//SYSTSIN DD *
     DSN   SYSTEM(DSN)
     BIND PLAN(myprog) MEMBER(myprog,CKPTRTN,QSSTATS) ACTION(REPLACE) +
       RETAIN VALIDATE(BIND) ISOLATION(CS) ACQUIRE(USE) RELEASE(COMMIT)
//*


//* SAMPLE API MODE EXECUTION JCL USING BATCHCAF, QUICKSTART’s DB2 CALL ATTACH
FACILITY
//*
//DB2CALL     EXEC PGM=DB2DEMO,REGION=4M
//STEPLIB     DD   DSN=DSNT.DSNLOAD,DISP=SHR
//            DD   DSN=QSTART.LOADLIB,DISP=SHR
//SYSPRINT    DD   SYSOUT=*
//SYSOUT      DD   SYSOUT=*
//INFILEA     DD   DSN=my.input.file,DISP=SHR
//OUTFILED    DD   DSN=my.output.file,DISP=(,CATLG),UNIT=SYSDA,
//            SPACE=(CYL,(10,5)),DCB=my.input.file
//QSTART      DD DSN=hlq.anyname.jobname,DISP=(MOD,DELETE,DELETE),
//            SPACE=(TRK,0),UNIT=SYSDA
//DSNPARMS    DD DSN=hlq.DB2name.Planname.jobname,DISP=(MOD,DELETE,DELETE),
//            SPACE=(TRK,0),UNIT=SYSDA

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*

QUICKSTART for MVS 3.4