The information presented explains the procedures for correcting uncatalogued tapes that are indicated by a RC=16 condition in SARTCHK.
When a return code of 16 (RC=16) is received in a run of SARTCHK, that is an indication that one of the View primary or duplex tapes has been prematurely uncatalogued.
Per the SARINIT parameter EXPDT=99000, CA View continues ownership of its tapes (created in a View standard backup (SARSTC) or in SARPAC) until all of the reports on the tape have expired and there is no more use for any occurrences of a backup of the CA View Master Index on the tape (Determined by SARINIT parameter NGENI).
When a tape is deemed as expired, after a standard backup when retentions of the database's reports have been evaluated, View sends a message to MVS to uncatalogued and scratch the primary tape and the duplex tape (if one exists).
A tape can be prematurely uncatalogued due to the following:
Here is a list of procedures on how to address a problem tape:
//XXXXXXXX JOB ...
//SARTCP EXEC PGM=SARTCP,PARM='COPYASIS'
//STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if used
//SYSPRINT DD SYSOUT=*
//TAPEIN DD DISP=OLD,DSN=VIEW.DB1.SARTAPE.T00nnnnn
//TAPEOUT DD DISP=(,CATLG),
// DSN=VIEW.DB1.SARDPLX.T00nnnnn,
// UNIT=(xxxx,,DEFER),VOL=(,RETAIN),
// LABEL=(,SL,EXPDT=99000)
//SYSIN DD DUMMY
//
//XXXXXXXX JOB ...
//SARTDR EXEC PGM=SARTDR,PARM='VIEW.DB1' <=== Modify DB name
//STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if used
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
/TLOAD TAPESEQ=nnnnn <=== Modify nnnnn to the tape sequence of the DR tape
// (VIEW.DB1.SARDRTP.T00nnnnn)
//XXXXXXXX JOB ...
//SARTSLST EXEC PGM=SARTSLST,PARM='VIEW.DB1,nnnnn' <=== Modify DB name
//* <=== Modify nnnnn from VIEW.DB1.SARTAPE.T00nnnnn
//STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if used
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//CTLCARDS DD DISP=(NEW,KEEP),DSN=XXXXXX.XXXXXX.CTLCARDS,
// UNIT=SYSDA,SPACE=(TRK,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120)
//
//XXXXXXXX JOB ...
//SARBCH EXEC PGM=SARBCH,PARM=VIEW.DB1' <=== Modify DB name
//STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if used
//SYSPRINT DD SYSOUT=*
//REPORT DD SYSOUT=*
//SYSIN DD DISP=SHR,DSN=XXXXXX.XXXXXX.CTLCARDS
//
//XXXXXXXX JOB ...
//SARTSLST EXEC PGM=SARTSLST,PARM='VIEW.DB1,nnnnn' <=== Modify DB name
//* <=== Modify nnnnn from VIEW.DB1.SARTAPE.T00nnnnn
//STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if used
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//CTLCARDS DD DISP=(NEW,KEEP),DSN=XXXXXX.XXXXXX.CTLCARDS,
// UNIT=SYSDA,SPACE=(TRK,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120)
//
/DELETE ID=... or /CHANGE ID=... ... BACKUP=OFF
//XXXXXXXX JOB ...
//SARBCH EXEC PGM=SARBCH,PARM=VIEW.DB1' <=== Modify DB name
//STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if used
//SYSPRINT DD SYSOUT=*
//REPORT DD SYSOUT=*
//SYSIN DD DISP=SHR,DSN=XXXXXX.XXXXXX.CTLCARDS
//