JCL z/OS DFSMS - IEBCOPY Reblock Load Library and Distribute It to Different Device Types



Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

JCL z/OS DFSMS - IEBCOPY Example 12: Reblock Load Library and Distribute It to Different Device Types

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.

Neste exemplo, uma biblioteca de carregamento é distribuída (copiando-a) para dispositivos cujo tamanho máximo de bloco difere daquele em que reside a biblioteca de carregamento original.
A biblioteca é primeiro bloqueada novamente para um tamanho máximo de bloco compatível com cada um dos dispositivos para os quais a biblioteca será copiada.
Em seguida, a biblioteca é copiada para esses dispositivos.

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.
Este exemplo ilustra como as bibliotecas de carga podem ser desenvolvidas em um tipo de dispositivo de acesso direto e, em seguida, distribuídas para outros tipos de dispositivos de acesso direto.

  //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 as follows:
As declarações de controle são as seguintes:

  • 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.

  • A instrução REBLOCK EXEC inicia a etapa de re-bloqueio.
  • TESTED DD define a biblioteca de carregamento catalogada TESTED.MASTER.LOADLIB.
  • STDSIZE DD define um conjunto de dados existente, PROGRAM.MASTER.LOADLIB, que reside em um dispositivo de acesso direto 3390 e tem um tamanho de bloco de 23470.
  • A instrução COPYMOD no conjunto de dados SYSIN especifica que TESTED.MASTER.LOADLIB deve ser mesclado em PROGRAM.MASTER.LOADLIB.
    Ele também especifica que PROGRAM.MASTER.LOADLIB deve ser bloqueado novamente com um tamanho de bloco máximo de 13030.
    Esse tamanho de bloco é escolhido porque é pequeno o suficiente para caber nos dispositivos de acesso direto 3380 e 3390.
  • A instrução DISTRIB EXEC inicia a etapa de distribuição, onde o conjunto de dados rebloqueado é copiado para dispositivos com diferentes tamanhos máximos de bloco.
  • STDSIZE DD define o mesmo conjunto de dados que foi bloqueado novamente na etapa anterior.
  • LIB3380 DD define o conjunto de dados PROGRAM.LIB3380.LOADLIB, que reside em um 3380 dispositivo de acesso direto.
  • As instruções COPY no conjunto de dados SYSIN especificam que o conjunto de dados PROGRAM.MASTER.LOADLIB deve ser copiado para os conjuntos de dados de saída sem ser bloqueado novamente.
    Se PROGRAM.MASTER.LOADLIB não tivesse sido bloqueado novamente para o tamanho de bloco menor, esta etapa terminaria sem sucesso.

Parent topic: IEBCOPY Examples



© Copyright IBM Corp.