In this example, a load library is distributed (by copying it)
to devices whose maximum block size differs from that on which the
original load library resides. The library is first reblocked to a
maximum block size that is compatible with each of the devices to
which the library will be copied. Then, the library is copied to those
devices.
This example illustrates how load libraries can be developed on
one type of direct access device and then distributed to other types
of direct access devices.
//RBLKCOPY JOB ...
//REBLOCK EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=A
//TESTED DD DSN=TESTED.MASTER.LOADLIB,DISP=SHR
//STDSIZE DD DSN=PROGRAM.MASTER.LOADLIB,DISP=(OLD,KEEP),
// UNIT=3390,VOL=SER=PROG01,DCB=(BLKSIZE=23470)
//SYSIN DD *
COPYMOD OUTDD=STDSIZE,INDD=TESTED,MAXBLK=13030
/*
//DISTRIB EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=A
//STDSIZE DD DSN=PROGRAM.MASTER.LOADLIB,DISP=SHR
//LIB3350 DD DSN=PROGRAM.LIB3380.LOADLIB,DISP=(OLD,KEEP),
// UNIT=3380,VOL=SER=PACK01,DCB=(BLKSIZE=19069)
//LIB3330 DD DSN=PROGRAM.LIB3380.LOADLIB,DISP=(OLD,KEEP),
// UNIT=3380,VOL=SER=PACK02,DCB=(BLKSIZE=13030)
//SYSIN DD *
COPY OUTDD=LIB3380,INDD=STDSIZE
COPY OUTDD=LIB3380,INDD=STDSIZE
/*
The control statements are discussed below:
- The REBLOCK EXEC statement begins the reblocking step.
- TESTED DD defines the cataloged load library TESTED.MASTER.LOADLIB.
- STDSIZE DD defines an existing data set, PROGRAM.MASTER.LOADLIB,
which resides on a 3390 direct access device and has a block size
of 23470.
- The COPYMOD statement in the SYSIN data set specifies that TESTED.MASTER.LOADLIB
is to be merged into PROGRAM.MASTER.LOADLIB. It also specifies that
PROGRAM.MASTER.LOADLIB is to be reblocked with a maximum block size
of 13030. This block size is chosen because it is small enough to
fit on both 3380 and 3390 direct access devices.
- The DISTRIB EXEC statement begins the distribution step, where
the reblocked data set is copied to devices with different maximum
block sizes.
- STDSIZE DD defines the same data set that was reblocked in the
previous step.
- LIB3380 DD defines the data set PROGRAM.LIB3380.LOADLIB, which
resides on a 3380 direct access device.
- The COPY statements in the SYSIN data set specify that the data
set PROGRAM.MASTER.LOADLIB is to be copied to the output data sets
without being reblocked. If PROGRAM.MASTER.LOADLIB had not been reblocked
to the smaller block size, this step would end unsuccessfully.