Invoking inline backup

To use inline backup:

  1. Include a step at the correct place in the job to execute a program called ARCINBAK.
  2. Specify the name of the data set to be processed by including a valid DD statement with a DDNAME of BACKxxxx (where xxxx is 1 to 4 characters). Do this for each data set you want backed up.
Note:
  1. Only cataloged data sets are supported for inline backup. If volume and unit information is specified on the DD statement, an uncataloged data set is assumed, and the data set is not processed.
  2. ARCINBAK does not support data sets allocated with any of the following three dynamic allocation options: XTIOT, UCB NOCAPTURE, and DSAB above the line, except when the calling program supplies an open DCB.

Any form of the data set name is acceptable to ARCINBAK. Specification of a relative generation number for a GDG or a reference to a DDname in a previous step is acceptable. A DD statement with a DDNAME of ARCPRINT can be optionally included in the ARCINBAK program job step. This DD statement defines a SYSOUT data set to contain messages about data sets for which a backup was attempted.

The possible messages are as follows:

     BACKUP FOR (DSNAME) SUCCESSFUL
     DDNAME (DDNAME) NOT BACKED UP, UNABLE TO GET ASSOCIATED JFCB
     BACKUP FOR (DSNAME) FAILED, DATA SET NOT CATALOGED
     BACKUP FOR (DSNAME) FAILED, RC = (RETURN CODE), REAS = (REASON CODE)
At the completion of the ARCINBAK program job step, one of the following return codes is displayed:
A DD statement with a DDNAME of ARCSNAP can be included in the ARCINBAK program job step. This DD statement defines a SYSOUT data set for the output from a SNAP macro. The following conditions cause a SNAP dump of storage relating to inline backup:

A job stream example of data sets that can and cannot be backed up by ARCINBAK in a batch environment is shown in Figure 1.

Figure 1. Example of Inline Backup Job Stream
  //JOBNAME  JOB . . . ,USER=USERID,PASSWORD=USERPSWD
  //STEP1    EXEC PGM=USERPGM
  //SYSPRINT DD SYSOUT=A
  //DSET1    DD DSN=USERID.N03.GDG(-1),DISP=OLD
  //DSET2    DD DSN=USERID.N03.PSFB,DISP=OLD
  //DSET3    DD DSN=USERID.N04.PSFB,DISP=OLD
  //DSET4    DD DSN=USERID.N03.KSDS,DISP=OLD
  /*
  //STEP2    EXEC PGM=ARCINBAK, PARM=('TARGET=(TAPE)',
  //                     'CC=(PREFERRED,PHYSICALEND)')
  //ARCPRINT DD  SYSOUT=A
  //ARCSNAP  DD  SYSOUT=A
  //* ----------------------------------------------------------------
  //*        BACKUP OF GDG DATA SET SHOULD BE SUCCESSFUL.
  //* ----------------------------------------------------------------
  //BACK01   DD  DSN=*.STEP1.DSET1,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF NON-VSAM DATA SET SHOULD BE SUCCESSFUL.
  //* ----------------------------------------------------------------
  //BACK02   DD  DSN=*.STEP1.DSET2,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF VSAM DATA SET SHOULD BE SUCCESSFUL.
  //* ----------------------------------------------------------------
  //BACK03   DD  DSN=*.STEP1.DSET4,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF GDG DATA SET SHOULD BE SUCCESSFUL.
  //* ----------------------------------------------------------------
  //BACK04   DD  DSN=USERID.N01.GDG.G0001V00,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF NON-VSAM DATA SET SHOULD BE SUCCESSFUL.
  //* ----------------------------------------------------------------
  //BACK05   DD  DSN=USERID.N01.PSFB,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF UNCATALOGED DATA SET SHOULD FAIL.
  //* ----------------------------------------------------------------
  //BACK06   DD  DSN=USERID.N02.UNCAT,VOL=SER=VOL003,UNIT=3390,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF VSAM DATA SET SHOULD BE SUCCESSFUL.
  //* ----------------------------------------------------------------
  //* ----------------------------------------------------------------
  //BACK07   DD  DSN=USERID.N01.KSDS,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF OPEN IN-USE VSAM DATA SET SHOULD BE SUCCESSFUL.
  //* ----------------------------------------------------------------
  //BACK08   DD  DSN=USERID.N02.KSDS,DISP=SHR
  //* ----------------------------------------------------------------
  //*        BACKUP OF RACF PROTECTED NON-VSAM DATA SET
  //*        BY AN UNAUTHORIZED USER SHOULD FAIL.
  //* ----------------------------------------------------------------
  //BACK09   DD  DSN=USERXX.N02.PSFB,DISP=SHR
  //* ----------------------------------------------------------------
  //*        DDNAME PREFIX OTHER THAN BACK IS NOT PROCESSED.
  //* ----------------------------------------------------------------
  //BAK01    DD  DSN=*.STEP1.DSET3,DISP=SHR
  //* ----------------------------------------------------------------
  //*        DDNAME PREFIX OTHER THAN BACK IS NOT PROCESSED.
  //* ----------------------------------------------------------------
  //BAK02    DD  DSN=USERID.N02.PSFB,DISP=SHR
  /*

The return code from executing the inline backup job stream example of the ARCINBAK program is 12, and the resulting messages for each DDname prefixed with BACK are shown in Figure 2:

Figure 2. Example of Messages Resulting from Inline Backup Job Stream
BACKUP FOR USERID.N03.GDG.G0001V00        SUCCESSFUL
BACKUP FOR USERID.N03.PSFB                SUCCESSFUL
BACKUP FOR USERID.N03.KSDS                SUCCESSFUL
BACKUP FOR USERID.N01.GDG.G0001V00        SUCCESSFUL
BACKUP FOR USERID.N01.PSFB                SUCCESSFUL
BACKUP FOR USERID.N02.UNCAT               FAILED, DATA SET NOT CATALOGED
BACKUP FOR USERID.N01.KSDS                SUCCESSFUL
BACKUP FOR USERID.N02.KSDS                SUCCESSFUL
BACKUP FOR USERXX.N02.PSFB                FAILED, RC = 039, REAS = 008