DBRC active, accumulate all databases
DB0 statements must be used for each DBD to be accumulated. Log records that are not selected for change accumulation are written to DFSUDD1. The following occurs in the example:
- DBDNUM1 is to have change records for all of its data set groups accumulated.
- DBDNUM2 is to have only change records accumulated for data set groups ddn#1 and ddn#2.
- DBDNUM3 has been recently image copied; therefore, all records prior to 1/15/93 at 11:00 AM must be purged.
//*-------------------------------------------------------
//*DFSUCUM0
//*-------------------------------------------------------
//S01CA EXEC PGM=DFSUCUM0,PARM='CORE=MAX,DBRC=Y',
// REGION=4096K
//STEPLIB DD DSN=IMS.RESLIB,DISP=SHR
//IMS DD DSN=IMS.DBDLIB,DISP=SHR
//SYSPRINT DD SYSOUT=*
//DFSUCUMO DD DSN=IMS.CHANGE.ACUM1,DISP=OLD
//DFSUCUMN DD DSN=IMS.CHANGE.ACUM2,DISP=(,CATLG),UNIT=TAPE
//DFSUDD1 DD DSN=IMS.NEW.LOG,DISP=(,CATLG),UNIT=TAPE
//DFSUDD2 DD DSN=IMS.RBA1F34.SLOG,DISP=(,CATLG),UNIT=TAPE
//DFSULOG DD DSN=IMS.SYSTEM.LOG1,DISP=OLD
// DD DSN=IMS.SYSTEM.LOG2,DISP=OLD
// DD ....etc.
//SYSOUT DD SYSOUT=*
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//SORTWK04 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//*------1----+----2----+----3----+----4----+----5----+----6
//SYSIN DD *
DB0DBDNUM1
DB0DBDNUM2 ddn#1 ddn#2
DB0DBDNUM3 930151100
DB1 *OTHER
/*
//*DFSUCUM0
//*-------------------------------------------------------
//S01CA EXEC PGM=DFSUCUM0,PARM='CORE=MAX,DBRC=Y',
// REGION=4096K
//STEPLIB DD DSN=IMS.RESLIB,DISP=SHR
//IMS DD DSN=IMS.DBDLIB,DISP=SHR
//SYSPRINT DD SYSOUT=*
//DFSUCUMO DD DSN=IMS.CHANGE.ACUM1,DISP=OLD
//DFSUCUMN DD DSN=IMS.CHANGE.ACUM2,DISP=(,CATLG),UNIT=TAPE
//DFSUDD1 DD DSN=IMS.NEW.LOG,DISP=(,CATLG),UNIT=TAPE
//DFSUDD2 DD DSN=IMS.RBA1F34.SLOG,DISP=(,CATLG),UNIT=TAPE
//DFSULOG DD DSN=IMS.SYSTEM.LOG1,DISP=OLD
// DD DSN=IMS.SYSTEM.LOG2,DISP=OLD
// DD ....etc.
//SYSOUT DD SYSOUT=*
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//SORTWK04 DD UNIT=SYSDA,SPACE=(CYL,(100,20))
//*------1----+----2----+----3----+----4----+----5----+----6
//SYSIN DD *
DB0DBDNUM1
DB0DBDNUM2 ddn#1 ddn#2
DB0DBDNUM3 930151100
DB1 *OTHER
/*
The following figure shows an example of BMC Change Accumulation utility JCL for a run corresponding to the DFSUCUM0 run shown in the previous figure. The following occurs in the example:
- DBRC is active. The SORTWK keyword describes the sort work data sets to be dynamically allocated.
- All changes for DBDNUM1 through DBDNUM3 are accumulated. DBDNUM1 through DBDNUM3 are identified with CA control statements.
- The NEWLOG keyword directs non-selected log input to the DFSUDD1 output data set.
//*-------------------------------------------------------
//*BMC CHANGE ACCUMULATION UTILITY
//*-------------------------------------------------------
//S01CA EXEC PGM=CAPUMAIN,REGION=4096K
//STEPLIB DD DSN=product.load,DISP=SHR
// DD DSN=IMS.RESLIB,DISP=SHR
//IMS DD DSN=IMS.DBDLIB,DISP=SHR
//SYSPRINT DD SYSOUT=*
//DFSUCUMO DD DSN=IMS.CHANGE.ACUM1,DISP=OLD
//DFSUCUMN DD DSN=IMS.CHANGE.ACUM2,DISP=(,CATLG),UNIT=TAPE
//DFSUDD1 DD DSN=IMS.NEW.LOG,DISP=(,CATLG),UNIT=TAPE
//DFSULOG DD DSN=IMS.SYSTEM.LOG1,DISP=OLD
// DD DSN=IMS.SYSTEM.LOG2,DISP=OLD
// DD .... etc....
//CAPSYSIN DD *
GLBL DBRC(Y) SORTWK(6,sysda,C,5,1)
GROUP CAGRP(group1)
CA DBD(DBDNUM1) DDN(ddn#11)
CA DBD(DBDNUM2) DDN(ddn#21)
CA DBD(DBDNUM2) DDN(ddn#22)
CA DBD(DBDNUM3) DDN(ddn#31) PURGTIME(930151100)
LOG LOG(DFSULOG) NEWLOG(DFSUDD1)
//*BMC CHANGE ACCUMULATION UTILITY
//*-------------------------------------------------------
//S01CA EXEC PGM=CAPUMAIN,REGION=4096K
//STEPLIB DD DSN=product.load,DISP=SHR
// DD DSN=IMS.RESLIB,DISP=SHR
//IMS DD DSN=IMS.DBDLIB,DISP=SHR
//SYSPRINT DD SYSOUT=*
//DFSUCUMO DD DSN=IMS.CHANGE.ACUM1,DISP=OLD
//DFSUCUMN DD DSN=IMS.CHANGE.ACUM2,DISP=(,CATLG),UNIT=TAPE
//DFSUDD1 DD DSN=IMS.NEW.LOG,DISP=(,CATLG),UNIT=TAPE
//DFSULOG DD DSN=IMS.SYSTEM.LOG1,DISP=OLD
// DD DSN=IMS.SYSTEM.LOG2,DISP=OLD
// DD .... etc....
//CAPSYSIN DD *
GLBL DBRC(Y) SORTWK(6,sysda,C,5,1)
GROUP CAGRP(group1)
CA DBD(DBDNUM1) DDN(ddn#11)
CA DBD(DBDNUM2) DDN(ddn#21)
CA DBD(DBDNUM2) DDN(ddn#22)
CA DBD(DBDNUM3) DDN(ddn#31) PURGTIME(930151100)
LOG LOG(DFSULOG) NEWLOG(DFSUDD1)
Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*