JCL requirements1
This section describes the JCL requirements for the Online Reorg function.
This JCL shows two steps: the first step allocates an OSAM shadow output data set, and the second step reorganizes the database. The PLUSIN control statement shows the REORG command, the SHARE(YES,UPDATE) keyword, and optional keywords.
Figure 1. Online Reorg function JCL
//********************************************************************
//** ONLINE REORG SAMPLE - REORG JCL USING MXO
//** HIDAM/OSAM DATABASE
//********************************************************************
//*
//MXO EXEC PGM=DFSRRC00,REGION=0M,
// PARM='ULU,DFSURGL0,PRIMEDB,,,,,,,,,,,Y'
//STEPLIB DD DISP=SHR,DSN=bmc.xxx.load
// DD DISP=SHR,DSN=IMSVS.RESLIB
//DFSRESLB DD DISP=SHR,DSN=IMSVS.RESLIB
//DFSURCDS DD DISP=SHR,
// DSN=FROM.DATABASE.PREREORG.STEP
//IMS DD DISP=SHR,DSN=IMSVS.DBDLIB
//AMSOUT DD DISP=SHR,DSN=your.RESTART.INFO.DATASET
//CRFRDER DD DISP=(,CATLG,CATLG),DSN=your.CRFRDER,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//CRFRDER2 DD DISP=(,CATLG,CATLG),DSN=your.CRFRDER2,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//IEFRDER DD DISP=(,CATLG,CATLG),DSN=your.IEFRDER1,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//IEFRDER2 DD DISP=(,CATLG,CATLG),DSN=your.IEFRDER2,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//IDCIN DD DISP=SHR,DSN=YOUR.IDCAMS.DELETE.DEFINES
//IDCOUT DD SYSOUT=*
//*
//* DO NOT SPECIFY THESE SHADOW DD STATEMENTS WHEN DYNALLOC(Y,Y,Z)
//*PRIMEDB DD DISP=SHR,DSN=MXO.OSAM.DATABASE.DATASET.Z
//*PRIMIDX DD DISP=SHR,DSN=MXO.VSAM.DATABASE.DATASET.Z
//*
//* NEVER SPECIFY THE FOLLOWING ORIGINAL DD STATEMENTS WHEN RUNNING MXO/CRF
//*OLDMEDB DD DISP=SHR,DSN=MXO.OSAM.DATABASE.DATASET
//*OLDMIDX DD DISP=SHR,DSN=MXO.VSAM.DATABASE.DATASET
//*
//PLUSIN DD *
REORG SHARE(Y,UPDATE) IDCAMS(IDCIN,IDCOUT) DYNALLOC(Y,Y,Z)
/*
//* IC/AIC Control STATEMENTS ARE REQUIRED FOR ALL RECOV DATABASES
//* VIC(Y) IS ALSO SUPPORTED
//ICPSYSIN DD *
IC DBD(PRIMEDB) DDN(PRIMEDB) IC(IC1)
IC DBD(PRIMIDX) DDN(PRIMIDX) IC(IC2)
/*
//* IMAGE COPY DD STATEMENTS ARE REQUIRED FOR ALL RECOV DATABASES
//* UNLESS YOU DYNAMICALLY ALLOCATE THE OUTPUT IMAGE COPY DATA SETS
//* YOU CANNOT STACK IMAGE COPIES; IF NOT ENOUGH TAPE DRIVES; USE DASD
//IC1 DD DISP=(,CATLG,DELETE),
// DSN=YOUR.PRIMEDB.IC,
// UNIT=SYSALLDA,SPACE=(CYL,(100,10),RLSE)
//*
//IC2 DD DISP=(,CATLG,DELETE),
// DSN=YOUR.PRIMIDX.IC,
// UNIT=SYSALLDA,SPACE=(CYL,(100,10),RLSE)
//*
//BMCTRACE DD SYSOUT=*
//BMCMSG DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//** ONLINE REORG SAMPLE - REORG JCL USING MXO
//** HIDAM/OSAM DATABASE
//********************************************************************
//*
//MXO EXEC PGM=DFSRRC00,REGION=0M,
// PARM='ULU,DFSURGL0,PRIMEDB,,,,,,,,,,,Y'
//STEPLIB DD DISP=SHR,DSN=bmc.xxx.load
// DD DISP=SHR,DSN=IMSVS.RESLIB
//DFSRESLB DD DISP=SHR,DSN=IMSVS.RESLIB
//DFSURCDS DD DISP=SHR,
// DSN=FROM.DATABASE.PREREORG.STEP
//IMS DD DISP=SHR,DSN=IMSVS.DBDLIB
//AMSOUT DD DISP=SHR,DSN=your.RESTART.INFO.DATASET
//CRFRDER DD DISP=(,CATLG,CATLG),DSN=your.CRFRDER,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//CRFRDER2 DD DISP=(,CATLG,CATLG),DSN=your.CRFRDER2,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//IEFRDER DD DISP=(,CATLG,CATLG),DSN=your.IEFRDER1,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//IEFRDER2 DD DISP=(,CATLG,CATLG),DSN=your.IEFRDER2,
// UNIT=SYSDA,SPACE=(CYL,(3,1),RLSE)
//IDCIN DD DISP=SHR,DSN=YOUR.IDCAMS.DELETE.DEFINES
//IDCOUT DD SYSOUT=*
//*
//* DO NOT SPECIFY THESE SHADOW DD STATEMENTS WHEN DYNALLOC(Y,Y,Z)
//*PRIMEDB DD DISP=SHR,DSN=MXO.OSAM.DATABASE.DATASET.Z
//*PRIMIDX DD DISP=SHR,DSN=MXO.VSAM.DATABASE.DATASET.Z
//*
//* NEVER SPECIFY THE FOLLOWING ORIGINAL DD STATEMENTS WHEN RUNNING MXO/CRF
//*OLDMEDB DD DISP=SHR,DSN=MXO.OSAM.DATABASE.DATASET
//*OLDMIDX DD DISP=SHR,DSN=MXO.VSAM.DATABASE.DATASET
//*
//PLUSIN DD *
REORG SHARE(Y,UPDATE) IDCAMS(IDCIN,IDCOUT) DYNALLOC(Y,Y,Z)
/*
//* IC/AIC Control STATEMENTS ARE REQUIRED FOR ALL RECOV DATABASES
//* VIC(Y) IS ALSO SUPPORTED
//ICPSYSIN DD *
IC DBD(PRIMEDB) DDN(PRIMEDB) IC(IC1)
IC DBD(PRIMIDX) DDN(PRIMIDX) IC(IC2)
/*
//* IMAGE COPY DD STATEMENTS ARE REQUIRED FOR ALL RECOV DATABASES
//* UNLESS YOU DYNAMICALLY ALLOCATE THE OUTPUT IMAGE COPY DATA SETS
//* YOU CANNOT STACK IMAGE COPIES; IF NOT ENOUGH TAPE DRIVES; USE DASD
//IC1 DD DISP=(,CATLG,DELETE),
// DSN=YOUR.PRIMEDB.IC,
// UNIT=SYSALLDA,SPACE=(CYL,(100,10),RLSE)
//*
//IC2 DD DISP=(,CATLG,DELETE),
// DSN=YOUR.PRIMIDX.IC,
// UNIT=SYSALLDA,SPACE=(CYL,(100,10),RLSE)
//*
//BMCTRACE DD SYSOUT=*
//BMCMSG DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*