Invoking inline backup
To use inline backup:
- Include a step at the correct place in the job to execute a program called ARCINBAK.
- 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.
- 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.
- 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)
- 0 — All backups are successful.
- 4 — No DDnames prefixed with BACK are found or the JFCB associated with a DDname cannot be found.
- 8 — Backup of an uncataloged data set has been attempted. Uncataloged data sets are not supported by inline backup.
- 12 — Backup of a data set failed. One of the following reason
codes is also displayed:
RC100 : DFSMShsm is not active; request rejected.
RC1–RC99 : For message return codes and reason codes,
see message ARC13XXI, where XX is the return code.
- MWE storage can be dumped when an error occurs in issuing the service call.
- A complete image of the task storage can be dumped when no DDnames or data sets are processed.
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.
//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:
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