Copying Data Sets


  • IEBCOPY COPY statement is used to copy a PDS from one volume to another (copy can be full or partial).
  • If the input and output PDS are different, the new PDS can be on the same volume.
  • If the input and output PDS are same, IEBCOPY assumes the request is compressed and considers the SELECT / EXCLUDE statements are not coded.
  • Members are copied in the same physical order as how they exist in the input PDS.

Practical Example -


Scenario - Copy from one PDS to another resides on different volume.

JCL -

----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
//MATEPKC  JOB (123),'MTH',CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),           
//             NOTIFY=&SYSUID                                           
//*****************************************************************     
//* TO COPY PDS DATA SET ANOTHER PDS DATA SET ON DIFFERENT VOLUME       
//*****************************************************************     
//STEP10   EXEC PGM=IEBCOPY                                             
//SYSPRINT DD SYSOUT=*                                                  
//SYSOUT   DD SYSOUT=*                                                  
//SYSDUMP  DD SYSOUT=*                                                  
//SYSUT1   DD DSN=MATEPK.IEBCOPY.INPPDS,DISP=SHR                        
//SYSUT2   DD DSN=MATEPK.IEBCOPY.OUTPDS,                                
//            DISP=(NEW,CATLG,DELETE),                                  
//            SPACE=(TRK,(10,10,10),RLSE),                              
//            UNIT=3390,VOL=SER=DEVHD4,                                 
//            DCB=(DSORG=PO,RECFM=FB,LRECL=80,BLKSIZE=800)              
//SYSIN    DD *                                                         
     COPY INDD=SYSUT1,OUTDD=SYSUT2                                      
/*

Job Status -

COPY Datasets Job Status

Output -

COPY Datasets Output

Explaining Example -

  • SYSUT1 DD DSN=MATEPK.IEBCOPY.INPPDS - Specifies the input PDS and resides on the volume STRVL2.
  • SYSUT2 DD DSN=MATEPK.IEBCOPY.OUTPDS,.. - Specifies the output new PDS and creating on the volume DEVHD4.
  • COPY INDD=SYSUT1,OUTDD=SYSUT2 - Copies all members from SYSUT1 to SYSUT2. Both input and output PDS are on different volumes.