Sample JCL job statements

Because IMS HP Change Accumulation Utility runs in a multiple address space environment, it generates additional z/OS® address spaces called SORT address spaces. Each SORT address space represents a CAGROUP.

The JCL to start each SORT address space is placed in the PROCLIB. The names of these procedures in the PROCLIB are generated internally by IMS HP Change Accumulation Utility using the IMS HP Change Accumulation Utility ID as a prefix and appending to it a number starting from 0000.

If the JOBLIB dsname is not present, the SORT procedures will be accessed from the PROCLIB, which is accessible through the JES procedure.

If the JOBLIB dsname is included, then IMS HP Change Accumulation Utility creates additional jobs for each CAGROUP and place them in the JOBLIB data set. These jobs are stored as members that have the same member names as the procedure member names in the PROCLIB.

Each job processes its corresponding procedure. A //JCLLIB statement in the job references the PROCLIB and, therefore, you do not need to have the PROCLIB in the JES concatenation. Each time the GEN (or FAST) command runs, it creates a new set of PROCLIBs and, optionally, a set of JOBLIB members for each of the CAGROUPS selected for CA processing.

In batch mode, the first step of the two-step batch procedure does the same.

A sample of the procedure for a CAGROUP is shown in the following example:
Figure 1. Sample CAGROUP JCL procedure
//hpcaid0001 PROC RGN=3000K,SOUT=*,
//PARM1=
//*
//IEFPROC EXEC PGM=hpcadri1,REGION=&RGN,
//PARM='&PARM1'
//*
//*
//THIS JCL ORIGINATES FROM THE USER'S 'JCLPDS' LIBRARY.
//*KEYWORDS ARE REPLACED BY THE GENJCL FUNCTION OF 
//*THE IMS DATABASE RECOVERY CONTROL FEATURE.
//*
//*JCL FOR CHANGE ACCUMULATION
//*
//STEPLIB   DD DISP=SHR,DSN=IMSSP.IMSB.RESLIB
//SYSPRINT  DD SYSOUT=*
//SYSUDUMP  DD SYSOUT=*
//RECON1    DD DSN=HPCA.IMS.RECON1,DISP=SHR
//RECON2    DD DSN=HPCA.IMS.RECON2,DISP=SHR
//IMS       DD DISP=SHR,DSN=IMSSP.IMSB.DBDLIB
//SYSOUT    DD SYSOUT=*
//SORTLIB   DD DSN=SYS1.SORTLIB,DISP=SHR
//SORTWK01  DD UNIT=3380,SPACE=(CYL,(5),,CONTIG)
//SORTWK02  DD UNIT=3380,SPACE=(CYL,(5),,CONTIG)
//SORTWK03  DD UNIT=3380,SPACE=(CYL,(5),,CONTIG)
//SORTWK04  DD UNIT=3380,SPACE=(CYL,(5),,CONTIG)
//SORTWK05  DD UNIT=3380,SPACE=(CYL,(5),,CONTIG)
//SORTWK06  DD UNIT=3380,SPACE=(CYL,(5),,CONTIG)
//DFSUCUMO  DD DUMMY,DCB=BLKSIZE=100
//DFSUCUMN  DD DSN=imssp.ca.cagrp1.ca134939,
//             DISP=(NEW,CATLG),UNIT=3380,VOL=SER=(******),
//             SPACE=(CYL,(1,1)),LABEL=(1,SL)
//DFSUDD1   DD DUMMY
//DFSULOG  DD  DISP=SHR,
//             HPCA.BATCH.LOG1
//         DD  DISP=SHR,
//         HPCA.BATCH.LOG2

To create a second copy of the new change accumulation data set, define the new data set in your skeletal JCL member for the CAGROUP in the skeletal JCL library.

The following example shows JCL that defines a duplicate new CA data set:
Figure 2. Defining a duplicate CA data set
//ICBUCUMN  DD  DSN=HPCA.SECONDCA.%CANDSN,
//              UNIT=SYSDA,VOL=SER=(ICE000),
//*             SPACE=(TRK,(1,1)),
//*
NOTE! The DD name of the data definition statement must be ICBUCUMN