The sample job DSQ3XCTP.Z is shipped with QMF. This job translates, compiles, and link-edits the example PL/I program (DSQUXCTP.Z), which is also shipped with QMF. Use the sample job as a starting point to create JCL that translates, assembles, and link-edits your own edit exit routine.
Ignore weak external references unresolved by the linkage editor, and also the associated messages about unresolved address constants. For more information on installing a program in CICS, see the CICS System Definition Guide.
..* $$ JOB JNM=DSQ3XCTP,DISP=D,CLASS=0 // JOB DSQ3XCTP Sample Job to Install QMF Edit Exit for PL/I * ------------------------------------------------------------------ * Install QMF edit exit (PL/I) * ------------------------------------------------------------------ // SETPARM VOLID=volid *-- update volid for syspch // SETPARM START=rtrk *-- update start track/block // SETPARM SIZE=ntrks *-- update number of tracks/blocks * ------------------------------------------------------------------ // DLBL IJSYSPH,'CICS.TRANSLAT.OUTPUT',0 // EXTENT SYSPCH,,1,0,&START,&SIZE ASSGN SYSPCH,DISK,VOL=&VOLID,SHR * Library search chain must contain the QMF, CICS and PL/I sublibrary // LIBDEF *,SEARCH=(PRD2.PROD,PRD1.BASE,PRD2.CONFIG) // LIBDEF PHASE,CATALOG=PRD2.PROD * ------------------------------------------------------------------ * Step 1: Translate user edit exit program * ------------------------------------------------------------------ // EXEC DFHECP1$,SIZE=256K,PARM='XOPTS(CICS,QUOTE)' ..* $$ SLI MEM=DSQUXCTP.Z,S=PRD2.PROD /* * ------------------------------------------------------------------ * Step 2: Compile translated user edit exit program * ------------------------------------------------------------------ CLOSE SYSPCH,00D // DLBL IJSYSIN,'CICS.TRANSLAT.OUTPUT',0 // EXTENT SYSIPT ASGN SYSIPT,DISK,VOL=&VOLID,SHR // OPTION CATAL PHASE DSQUECIC,*,SVA INCLUDE DFHPLII // EXEC PLIOPT CLOSE SYSIPT,SYSRDR /* * ----------------------------------------------------------------- * Step 3: Link-edit user edit exit program * ----------------------------------------------------------------- // EXEC LNKEDT,PARM='AMODE=31,RMODE=31' /* /& // JOB RESET ASSGN SYSIPT,SYSRDR IF 1A93D, CLOSE SYSIPT,SYSRDR ASSGN SYSPCH,00D IF 1A93D, CLOSE SYSPCH,00D /& ..* $$ EOJ