The following is an example of JCL that generates a CICS program using the Distributed Generation Server on the Mainframe.
//MFIUSRA JOB (99999999), // 'AMBCICG AMBCICG', // CLASS=A, // MSGCLASS=X, // MSGLEVEL=(2,0) /*NOTIFY MFIUSR //* *** //* START ISPSLIB(AMBJOB ) - $Revision: 1.3 $ //* *** //* *** //* END ISPSLIB(AMBJOB ) - $Revision: 1.3 $ //* *** //* *** //* START ISPSLIB(AMBALLOC) - $REVISION: 1.11 $ //* *** //********************************************************************** //* STEP: AMBALLOC //********************************************************************** //AMBALLOC EXEC PGM=IEFBR14,REGION=1024K //SYSPRINT DD SYSOUT=* //GCOBOL DD DISP=(,CATLG,DELETE), // DSN=MFIUSR.Y040624.H5161267.COBOL, // UNIT=,VOL=SER=,SPACE=(3120,(12,60,20)), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120) //GLOGFILE DD DISP=(,CATLG,DELETE), // DSN=MFIUSR.Y040624.H5161267.LOG, // UNIT=,VOL=SER=,SPACE=(13200,(12,60,20)), // DCB=(RECFM=FB,LRECL=132,BLKSIZE=13200) //* *** //* END ISPSLIB(AMBALLOC) - $REVISION: 1.11 $ //* *** //MFIUSRA JOB (99999999), // 'AMBCICG AMBCICG', // CLASS=A, // MSGCLASS=X, // MSGLEVEL=(2,0) /*NOTIFY MFIUSR //* *** //* START ISPSLIB(AMBJOB ) - $Revision: 1.3 $ //* *** //* *** //* END ISPSLIB(AMBJOB ) - $Revision: 1.3 $ //* *** //* *** //* START ISPSLIB(AMBCICP ) - $Revision: 1.3 $ //* *** //APS2CICS PROC //AMBCOMP EXEC PGM=AMBCOMP,REGION=1024K, // COND=(4,LT) //STEPLIB DD DISP=SHR,DSN=MFIDJM.DGSBUILD.LOADLIB2 // DD DISP=SHR,DSN=CSQ531.SCSQLOAD // DD DISP=SHR,DSN=CEE.SCEERUN //GLOGFILE DD DISP=SHR,DSN=MFIUSR.Y040624.H5161267.LOG(MASTX) //OLOGFILE DD SYSOUT=*,DCB=(RECFM=FB,LRECL=132,BLKSIZE=13200) //SYSPRINT DD SYSOUT=* //********************************************************************** //* STEP: SAVECOB //********************************************************************** //SAVECOB EXEC PGM=IDCAMS,COND=(4,LT) //INDD DD DISP=SHR, // DSN=MFIUSR.Y040624.H5161267.COBOL(MASTX) //OUTDD DD DISP=SHR, // DSN=MFIDJM.MFEEDEMO.COBCICS(MASTX) //SYSPRINT DD SYSOUT=* //* *** //* START ISPSLIB(AMBDB2 ) - $Revision: 1.3 $ //* *** //********************************************************************** //* STEP: DB2XLAT //********************************************************************** //DB2XLAT EXEC PGM=DSNHPC,REGION=4096K, // COND=(4,LT), // PARM=('HOST(COB2),SOURCE,APOST') //STEPLIB DD DISP=SHR,DSN=DSN710.SDSNEXIT // DD DISP=SHR,DSN=DSN710.SDSNLOAD //DBRMLIB DD DISP=(NEW,PASS),DSN=&&DBRMLIB(MASTX), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=6160,DSORG=PO), // UNIT=SYSDA,SPACE=(6160,(30,30,1),RLSE) //SYSLIB DD DISP=SHR,DSN=DSN710.SRCLIB.DATA // DD DISP=SHR,DSN=MFIDJM.MFEEDEMO.COPYLIB //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSUT1 DD SPACE=(800,(500,500)),UNIT=SYSDA //SYSUT2 DD SPACE=(800,(500,500)),UNIT=SYSDA //SYSIN DD DISP=SHR, // DSN=MFIUSR.Y040624.H5161267.COBOL(MASTX) //SYSCIN DD DISP=(NEW,PASS),DSN=&&DB2OUT, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=6160), // UNIT=SYSDA,SPACE=(6160,(30,30),RLSE) //* *** //* END ISPSLIB(AMBDB2 ) - $Revision: 1.3 $ //* *** //* *** //* START ISPSLIB(AMBCICS ) - $REVISION: 1.11 $ //* *** //********************************************************************** //* STEP: CICSXLAT //********************************************************************** //CICSXLAT EXEC PGM=DFHECP1$,REGION=2048K, // COND=(4,LT), // PARM=(COBOL2,NOSOURCE) //STEPLIB DD DISP=SHR,DSN=CICS41.SDFHLOAD //SYSPRINT DD SYSOUT=* //SYSIN DD DISP=(OLD,DELETE,DELETE), // DSN=&&DB2OUT //* *** //SYSPUNCH DD DISP=(NEW,PASS,DELETE),DSN=&&CICSOUT, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=6160), // UNIT=SYSDA,SPACE=(6160,(200,200),RLSE) //* *** //* END ISPSLIB(AMBDB2 ) - $REVISION: 1.11 $ //* *** //* *** //* START ISPSLIB(AMBCOBOL) - $Revision: 1.3 $ //* *** //********************************************************************** //* STEP: COBOL //********************************************************************** //COBOL EXEC PGM=IGYCRCTL,REGION=768K, // COND=(4,LT), // PARM=(TERM,LIB,NUM,NOADV, // NOSEQ, // NOMAP,'DATA(24)',RENT,NOTRUNC, // NODYNAM, // APOST) //STEPLIB DD DISP=SHR,DSN=IGY.V1R2M0.SIGYCOMP //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSIN DD DISP=(OLD,DELETE,DELETE), // DSN=&&CICSOUT //SYSLIB DD DISP=SHR,DSN=MFIDJM.MFEEDEMO.COPYLIB // DD DISP=SHR,DSN=CICS41.SDFHCOB //SYSUT1 DD SPACE=(1024,(400,200)),UNIT=SYSDA //SYSUT2 DD SPACE=(1024,(400,200)),UNIT=SYSDA //SYSUT3 DD SPACE=(1024,(400,200)),UNIT=SYSDA //SYSUT4 DD SPACE=(1024,(400,200)),UNIT=SYSDA //SYSUT5 DD SPACE=(1024,(400,200)),UNIT=SYSDA //SYSUT6 DD SPACE=(1024,(400,200)),UNIT=SYSDA //SYSUT7 DD SPACE=(1024,(400,200)),UNIT=SYSDA //SYSLIN DD DISP=(NEW,PASS,DELETE),DSN=&&OBJECT, // DCB=(LRECL=80,BLKSIZE=3200,RECFM=FB), // UNIT=SYSDA,SPACE=(3200,(30,30)) //* *** //* END ISPSLIB(AMBCOBOL) - $Revision: 1.3 $ //* *** //* *** //* START ISPSLIB(AMBLINK ) - $Revision: 1.3 $ //* *** //********************************************************************** //* STEP: LINK //********************************************************************** //LINK EXEC PGM=IEWL,REGION=512K, // PARM=(LIST, // RENT, // MAP), // COND=(4,LT) //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(30,30)) //SYSLMOD DD DISP=SHR,DSN=MFIDJM.MFEEDEMO.LOADCICS //SYSLIB DD DISP=SHR,DSN=CICS41.SDFHLOAD, // DCB=BLKSIZE=23476 // DD DISP=SHR,DSN=DSN710.SDSNEXIT // DD DISP=SHR,DSN=DSN710.SDSNLOAD // DD DISP=SHR,DSN=CEE.SCEECICS // DD DISP=SHR,DSN=CEE.SCEELKED // DD DISP=SHR,DSN=MFIDJM.MFEEDEMO.LOADCICS // DD DISP=SHR,DSN=APS.APS50GA.LOADLIB2 //SYSLIN DD DISP=SHR,DSN=APS.APS50GA.CNTL(DFHEILIC), // DCB=BLKSIZE=3200 // DD DISP=(OLD,DELETE,DELETE),DSN=&&OBJECT // DD DISP=SHR,DSN=APS.APS50GA.CNTL(DSNCLI) // DD DDNAME=LINKID //* *** //* END ISPSLIB(AMBLINK ) - $Revision: 1.3 $ //* *** //* *** //* START ISPSLIB(AMBDB2X ) - $Revision: 1.3 $ //* *** //********************************************************************** //* STEP: SAVEDBRM //********************************************************************** //SAVEDBRM EXEC PGM=IDCAMS,COND=(4,LT) //INDD DD DISP=(OLD,DELETE), // DSN=&&DBRMLIB(MASTX) //OUTDD DD DISP=SHR, // DSN=MFIDJM.MFEEDEMO.DBRMLIB(MASTX) //SYSPRINT DD SYSOUT=* //* *** //* END ISPSLIB(AMBDB2X ) - $Revision: 1.3 $ //* *** // PEND //********************************************************************** //* STEP: APS2CICS PROC //********************************************************************** //MASTX EXEC APS2CICS //* *** //* END ISPSLIB(AMBCICP ) - $Revision: 1.3 $ //* *** //* *** //* START ISPSLIB(AMBCICSY) - $REVISION: 1.11 $ //* *** //AMBCOMP.SYSIN DD * PARM LOGFILE SYSOUT PARM ENDEVOR PARM FOOTPRINT PARM MQMANAGERNAME CSQ3 PARM MQMAINFRAMEQUEUENAME WILLH.AMBCOMP.MF.Q PARM MQDISTRIBUTEDQUEUENAME WILLH.AMBCOMP.DS.Q PARM MQWAITINTERVAL 1000000 PARM CODEPAGE 1140 PARM DECIMAL PERIOD PARM CURRENCY $ PARM LANGUAGE ENGLISH PARM PROGRAMMANIFEST YES PARM WORKGROUP DEV PARM GENTYPE APSPROG PARM APPLICATION BANKDEMO PARM APSDEBUG YES PARM PROGRAM MASTX PARM PGMNAME LONGMIXED PARM DB VSAM PARM SQL DB2 PARM DC CICS PARM OSVSGEN NO *THIS IS A COMMENT DD GCOBOL MFIUSR.Y040624.H5161267.COBOL DD GPROGSRC "C:\MFUSER\LONG PROJECT\LONG GROUP\DEVELOPMENT\WORK AREA\USER\TEMPX\ -- APXPROG" DD GLOGFILE MFIUSR.Y040624.H5161267.LOG DD GWORKGRP "C:\TMP\FILE\LOCATION\WITH LONG\SPACE NAME" /* //SAVECOB.SYSIN DD * REPRO INFILE(INDD) - OUTFILE(OUTDD) /* //LINK.LINKID DD * IDENTIFY MASTX('MFIDJM.MFEEDEMO.MFIUSR.04.175.15:16') NAME MASTX(R) /* //SAVEDBRM.SYSIN DD * REPRO INFILE(INDD) - OUTFILE(OUTDD) /* //* *** //* END ISPSLIB(AMBCICSY) - $REVISION: 1.11 $ //* *** //* *** //* END ISPSLIB(AMBCICG ) - $REVISION: 1.11 $ //* ***