JCL/JCS Requirements and Examples

#### Search Results

Search

# JCL/JCS Requirements and Examples

This section describes the job control information required to run ADARES with BS2000, z/OS, and z/VSE systems and shows examples of each of the job streams.

Notes:

1. The DD/SIAUS1/2 device type used to copy the protection log may not support the BACKOUT function if it is an IDRC (hardware compression) device. For more information, see the description of the PLCOPY function earlier in this document.
2. When running with the optional Recovery Aid (ADARAI), all temporary data sets must also be cataloged in the job control.

This document covers the following topics:

- BS2000

- z/OS

- z/VSE

## BS2000

File | Link Name | Storage | More Information
--- | --- | --- | ---
Sequential protection log or ADASAV DDSAVEn output | DDSIIN | tape/ disk | Input log for COPY, REGENERATE, and REPAIR functions.
Multiple protection log | DDPLOGRn | disk | Input logs for PLCOPY function, and BACKOUT DPLOG.
Multiple command log | DDCLOGRn | disk | Input logs for CLCOPY function.
Sequential protection log | DDBACK | tape | Input log for BACKOUT function (not BACKOUT DPLOG).
Copied log | DDSIAUS1 | tape/ disk | Output of COPY, CLCOPY, PLCOPY functions.
Extra copied log | DDSIAUS2 | tape/ disk | Required only if two copies are to be produced by a copy function (with TWOCOPIES).
Data Storage | DDDATARn | disk | Required only for REGENERATE if FROMCP=SYN1 or SYN4.
Associator | DDASSORn | disk |
Recovery log (RLOG) | DDRLOGR1 | disk | Required when using ADARAI.
ADARUN parameters | SYSDTA/ DDCARD |  | Operations
ADARES parameters | SYSDTA/ DDKARTE |  |
ADARUN messages | SYSOUT/ DDPRINT |  | Messages and Codes
ADARES messages | SYSLST DDDRUCK |  | Messages and Codes

### ADARES JCL Examples (BS2000)

#### Copy Dual/Multiple Command Log

#### In SDF Format:

    /.ADARES SET-LOGON-PARAMETERS
     /MODIFY-TEST-OPTIONS DUMP=YES
     /REMARK *
     /REMARK * A D A R E S COPY DUAL/MULTIPLE COMMAND LOG
     /REMARK *
     /DELETE-FILE ADAyyyyy.AUS1
     /SET-JOB-STEP
     /CREATE-FILE ADAyyyyy.AUS1,PUB(SPACE=(960,480))
     /SET-JOB-STEP
     /ASS-SYSLST L.RES.CLCO
     /ASS-SYSDTA *SYSCMD
     /SET-FILE-LINK DDLIB,ADAvrs.MOD
     /SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
     /SET-FILE-LINK DDCLOGR1,ADAyyyyy.CLOGR1,SHARE-UPD=YES
     /SET-FILE-LINK DDCLOGR2,ADAyyyyy.CLOGR2,SHARE-UPD=YES
     /SET-FILE-LINK DDSIAUS1,ADAyyyyy.AUS1,BUFFER-LENGTH=STD(16)
     /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES CLCOPY
     /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADARES LOGON
     /OPTION MSG=FH,DUMP=YES
     /REMARK *
     /REMARK * A D A R E S COPY DUAL/MULTIPLE COMMAND LOG
     /REMARK *
     /SYSFILE SYSLST=L.RES.CLCO
     /FILE ADA.MOD,LINK=DDLIB
     /FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
     /FILE ADAyyyyy.CLOGR1 ,LINK=DDCLOGR1,SHARUPD=YES
     /FILE ADAyyyyy.CLOGR2 ,LINK=DDCLOGR2,SHARUPD=YES
     /FILE ADAyyyyy.AUS1 ,LINK=DDSIAUS1,SPACE=(960,480),BUFFSIZE=(STD,16)
     /EXEC (ADARUN,ADA.MOD)
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES CLCOPY
     /LOGOFF NOSPOOL

#### Copy Sequential Protection Log

#### In SDF Format:

    /.ADARES SET-LOGON-PARAMETERS
     /MODIFY-TEST-OPTIONS DUMP=YES
     /REMARK *
     /REMARK * A D A R E S COPY SEQUENTIAL PLOG
     /REMARK *
     /DELETE-FILE ADAyyyyy.SIBA.COP1
     /SET-JOB-STEP
     /CREATE-FILE ADAyyyyy.SIBA.COP1,PUB(SPACE=(960,480))
     /SET-JOB-STEP
     /ASS-SYSLST L.RES.COPY
     /ASS-SYSDTA *SYSCMD
     /SET-FILE-LINK DDLIB,ADAvrs.MOD
     /SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
     /SET-FILE-LINK DDSIIN,ADAyyyyy.SIBA
     /SET-FILE-LINK DDSIAUS1,ADAyyyyy.SIBA.COP1.AUS1,BUFFER-LENGTH=STD(16)
     /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES COPY PLOGNUM=ppp
     /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADARES LOGON
     /OPTION MSG=FH,DUMP=YES
     /REMARK *
     /REMARK * A D A R E S COPY SEQUENTIAL PLOG
     /REMARK *
     /SYSFILE SYSLST=L.RES.COPY
     /FILE ADA.MOD,LINK=DDLIB
     /FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
     /FILE ADAyyyyy.SIBA ,LINK=DDSIIN
     /FILE ADAyyyyy.SIBA.COP1 ,LINK=DDSIAUS1,SPACE=(960,480),BUFFSIZE=(STD,16)
     /EXEC (ADARUN,ADA.MOD)
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES COPY PLOGNUM=ppp
     /LOGOFF NOSPOOL

#### Copy Dual/Multiple Protection Log

#### In SDF Format:

    /.ADARES SET-LOGON-PARAMETERS
     /MODIFY-TEST-OPTIONS DUMP=YES
     /REMARK *
     /REMARK * A D A R E S COPY DUAL/MULTIPLE PROTECTION LOG
     /REMARK *
     /DELETE-FILE ADAyyyyy.AUS1
     /SET-JOB-STEP
     /CREATE-FILE ADAyyyyy.AUS1,PUB(SPACE=(960,480))
     /SET-JOB-STEP
     /DELETE-FILE ADAyyyyy.AUS2
     /SET-JOB-STEP
     /CREATE-FILE ADAyyyyy.AUS2,PUB(SPACE=(960,480))
     /SET-JOB-STEP
     /ASS-SYSLST L.RES.PLCO
     /ASS-SYSDTA *SYSCMD
     /SET-FILE-LINK DDLIB,ADAvrs.MOD
     /SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
     /SET-FILE-LINK DDPLOGR1,ADAyyyyy.PLOGR1,SHARE-UPD=YES
     /SET-FILE-LINK DDPLOGR2,ADAyyyyy.PLOGR2,SHARE-UPD=YES
     /SET-FILE-LINK DDSIAUS1,ADAyyyyy.AUS1,BUFFER-LENGTH=STD(16)
     /SET-FILE-LINK DDSIAUS2,ADAyyyyy.AUS2,BUFFER-LENGTH=STD(16)
     /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES PLCOPY TWOCOPIES
     /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADARES LOGON
     /OPTION MSG=FH,DUMP=YES
     /REMARK *
     /REMARK * A D A R E S COPY DUAL/MULTIPLE PROTECTION LOG
     /REMARK *
     /SYSFILE SYSLST=L.RES.PLCO
     /FILE ADA.MOD,LINK=DDLIB
     /FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
     /FILE ADAyyyyy.PLOGR1 ,LINK=DDPLOGR1,SHARUPD=YES
     /FILE ADAyyyyy.PLOGR2 ,LINK=DDPLOGR2,SHARUPD=YES
     /FILE ADAyyyyy.AUS1 ,LINK=DDSIAUS1,SPACE=(960,480),BUFFSIZE=(STD,16)
     /FILE ADAyyyyy.AUS2 ,LINK=DDSIAUS2,SPACE=(960,480),BUFFSIZE=(STD,16)
     /EXEC (ADARUN,ADA.MOD)
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES PLCOPY TWOCOPIES
     /LOGOFF NOSPOOL

#### Backout Using a Sequential Protection Log

#### In SDF Format:

    /.ADARES SET-LOGON-PARAMETERS
     /MODIFY-TEST-OPTIONS DUMP=YES
     /REMARK *
     /REMARK * A D A R E S BACKOUT FROM SEQUENTIAL PLOG
     /REMARK *
     /ASS-SYSLST L.RES.BACK
     /ASS-SYSDTA *SYSCMD
     /SET-FILE-LINK DDLIB,ADAvrs.MOD
     /SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
     /SET-FILE-LINK DDBACK,ADAyyyyy.BACK
     /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES BACKOUT
     /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADARES LOGON
     /OPTION MSG=FH,DUMP=YES
     /REMARK *
     /REMARK * A D A R E S BACKOUT FROM SEQUENTIAL PLOG
     /REMARK *
     /SYSFILE SYSLST=L.RES.BACK
     /FILE ADA.MOD,LINK=DDLIB
     /FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
     /FILE ADAyyyyy.BACK ,LINK=DDBACK
     /EXEC (ADARUN,ADA.MOD)
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES BACKOUT
     /LOGOFF NOSPOOL

#### Backout Using a Dual/Multiple Protection Log

#### In SDF Format:

    /.ADARES SET-LOGON-PARAMETERS
     /MODIFY-TEST-OPTIONS DUMP=YES
     /REMARK *
     /REMARK * A D A R E S BACKOUT FROM DUAL/MULTIPLE PLOG
     /REMARK *
     /ASS-SYSLST L.RES.BADP
     /ASS-SYSDTA *SYSCMD
     /SET-FILE-LINK DDLIB,ADAvrs.MOD
     /SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
     /SET-FILE-LINK DDPLOGR1,ADAyyyyy.PLOGR1,SHARE-UPD=YES
     /SET-FILE-LINK DDPLOGR2,ADAyyyyy.PLOGR2,SHARE-UPD=YES
     /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES BACKOUT DPLOG
     /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADARES LOGON
     /OPTION MSG=FH,DUMP=YES
     /REMARK *
     /REMARK * A D A R E S BACKOUT FROM DUAL/MULTIPLE PLOG
     /REMARK *
     /SYSFILE SYSLST=L.RES.BADP
     /FILE ADA.MOD,LINK=DDLIB
     /FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
     /FILE ADAyyyyy.PLOGR1 ,LINK=DDPLOGR1,SHARUPD=YES
     /FILE ADAyyyyy.PLOGR2 ,LINK=DDPLOGR2,SHARUPD=YES
     /EXEC (ADARUN,ADA.MOD)
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES BACKOUT DPLOG
     /LOGOFF NOSPOOL

#### Regenerate Function

#### In SDF Format:

    /.ADARES SET-LOGON-PARAMETERS
     /MODIFY-TEST-OPTIONS DUMP=YES
     /REMARK *
     /REMARK * A D A R E S REGENERATE
     /REMARK *
     /ASS-SYSLST L.RES.REGE
     /ASS-SYSDTA *SYSCMD
     /SET-FILE-LINK DDLIB,ADAvrs.MOD
     /SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
     /SET-FILE-LINK DDSIIN,ADAyyyyy.SIBA
     /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES REGENERATE FILE=1,CONTINUE,PLOGNUM=ppp
     /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADARES LOGON
     /OPTION MSG=FH,DUMP=YES
     /REMARK *
     /REMARK * A D A R E S REGENERATE
     /REMARK *
     /SYSFILE SYSLST=L.RES.REGE
     /FILE ADA.MOD,LINK=DDLIB
     /FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
     /FILE ADAyyyyy.SIBA ,LINK=DDSIIN
     /EXEC (ADARUN,ADA.MOD)
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES REGENERATE FILE=1,CONTINUE,PLOGNUM=ppp
     /LOGOFF NOSPOOL

#### Repair Data Storage

#### In SDF Format:

    /.ADARES SET-LOGON-PARAMETERS
     /MODIFY-TEST-OPTIONS DUMP=YES
     /REMARK *
     /REMARK * A D A R E S REPAIR DATASTORAGE
     /REMARK *
     /ASS-SYSLST L.RES.REPA
     /ASS-SYSDTA *SYSCMD
     /SET-FILE-LINK DDLIB,ADAvrs.MOD
     /SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
     /SET-FILE-LINK DDSIIN,ADAyyyyy.SAVE
     /SET-FILE-LINK DDSIIN01,ADAyyyyy.PLOG5
     /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES REPAIR DSRABN=3456-3490
     /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADARES LOGON
     /OPTION MSG=FH,DUMP=YES
     /REMARK *
     /REMARK * A D A R E S REPAIR DATASTORAGE
     /REMARK *
     /SYSFILE SYSLST=L.RES.REPA
     /FILE ADA.MOD,LINK=DDLIB
     /FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
     /FILE ADAyyyyy.SAVE ,LINK=DDSIIN
     /FILE ADAyyyyy.PLOG5 ,LINK=DDSIIN01
     /EXEC (ADARUN,ADA.MOD)
     ADARUN PROG=ADARES,DB=yyyyy,IDTNAME=ADABAS5B
     ADARES REPAIR DSRABN=3456-3490
     /LOGOFF NOSPOOL

## z/OS

Data Set | DD Name | Storage | More Information
--- | --- | --- | ---
Sequential protection log or ADASAV DDSAVEn output | DDSIIN | tape/ disk | Input log for COPY, REGENERATE, and REPAIR functions.
Multiple protection log | DDPLOGRn | disk | Input logs for PLCOPY function, and BACKOUT DPLOG/MPLOG .
Multiple command log | DDCLOGRn | disk | Input logs for CLCOPY function.
Sequential protection log | DDBACK | tape | Input log for BACKOUT function (not BACKOUT DPLOG).
Copied log | DDSIAUS1 | tape/ disk | Output of COPY, CLCOPY, PLCOPY functions.
Extra copied log | DDSIAUS2 | tape/ disk | Required only if two copies are to be produced by a copy function (with TWOCOPIES).
Recovery log (RLOG) | DDRLOGR1 | disk | Required when using ADARAI.
Data Storage | DDDATARn | disk | Required only for REGENERATE if FROMCP=SYN1 or SYN4.
Associator | DDASSORn | disk |
ADARUN parameters | DDCARD | reader | Operations
ADARES parameters | DDKARTE | reader |
ADARUN messages | DDPRINT | printer | Messages and Codes
ADARES messages | DDDRUCK | printer | Messages and Codes

### ADARES JCL Examples (z/OS)

#### Copy Sequential Protection Log

    //ADARESCP  JOB
    //*
    //*    ADARES: COPY SEQUENTIAL PROTECTION LOG
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD        <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1  <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1  <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1  <=== WORK
    //DDSIIN    DD   DSN=EXAMPLE.DByyyyy.SIBA,            <=== PLOG
    //            VOL=SER=vvvvvv,DISP=OLD,UNIT=TAPE
    //DDSIAUS1  DD   DSN=EXAMPLE.DByyyyy.PLOG(+1),        <=== PLOG COPY
    //            VOL=SER=vvvvvv,UNIT=TAPE,DISP=(NEW,CATLG)
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADARES COPY
    /*

Refer to ADARESCP in the JOBS data set for this example.

#### Copy Dual/Multiple Protection Log

    //ADARESCD  JOB
    //*
    //*    ADARES: COPY DUAL/MULTIPLE PROTECTION LOG
    //*             TWO COPIES OF OUTPUT ARE TO BE CREATED
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD       <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1  <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1  <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1  <=== WORK
    //DDPLOGR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.PLOGR1  <=== PLOG1
    //DDPLOGR2  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.PLOGR2  <=== PLOG2
    //DDSIAUS1  DD   DSN=EXAMPLE.DByyyyy.PLOG1(+1),       <=== PLOG COPY 1
    //            VOL=SER=vvvvvv,UNIT=TAPE,DISP=(NEW,CATLG)
    //DDSIAUS2  DD   DSN=EXAMPLE.DByyyyy.PLOG2(+1),       <=== PLOG COPY 2
    //            VOL=SER=vvvvvv,UNIT=TAPE,DISP=(NEW,CATLG)
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADARES PLCOPY TWOCOPIES
    /*

Refer to ADARESCD in the JOBS data set for this example.

#### Automatically Copy/Merge Nucleus Cluster Protection Logs

Note
Note that when intermediate data sets are used for both CLCOPY and PLCOPY, the data set names must be unique so that they are not overwritten.

Following is sample JCL for allocating the required intermediate data sets MERGIN1 and MERGIN2:

    //ALLOC JOB
    //*
    //* Example to allocate the MERGIN1 and the MERGIN2 data sets
    //*
    //ALLOC   EXEC PGM=IEFBR14
    //MERGIN1 DD  DISP=(NEW,CATLG,DELETE),DSN=EXAMPLE.PINTERI,
    //             SPACE=(CYL,(1,10,0)),UNIT=3390,VOL=SER=volser,
    //             RECFM=VB,BLKSIZE=27998,LRECL=27994
    //MERGIN2 DD  DISP=(NEW,CATLG,DELETE),DSN=EXAMPLE.PINTERO,
    //             SPACE=(CYL,(1,10,0)),UNIT=3390,VOL=SER=volser,
    //             RECFM=VB,BLKSIZE=27998,LRECL=27994

Refer to ADARESMP in the JOBS data set for this example.

#### Automatically Copy/Merge Nucleus Cluster Protection Logs Ignoring PPT

    //ADARESIP  JOB
    //*
    //*    ADARES: COPY/MERGE DUAL/MULTIPLE PROTECTION LOGS FROM ALL
    //*             NUCLEI IN AN ADABAS CLUSTER
    //*             PPT IS TO BE IGNORED
    //*             THIS IS ONLY FOR EMERGENCY USE WHEN THE PPT HAS BEEN
    //*             OVER-WRITTEN - USE CAUTION WHEN SUBMITTING
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD      <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.ASSOR1   <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.DATAR1   <=== DATA
    //DDPLOG01  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.PLOGR1   <=== PLOG1 NUC1
    //DDPLOG02  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.PLOGR2   <=== PLOG2 NUC1
    //DDPLOG03  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.PLOGR1A  <=== PLOG1 NUC2
    //DDPLOG04  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.PLOGR2A  <=== PLOG2 NUC2
    //DDPLOG05  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.PLOGR1B  <=== PLOG1 NUC3
    //DDPLOG06  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.PLOGR2B  <=== PLOG2 NUC3
    //MERGIN2   DD   DISP=SHR,DSN=EXAMPLE.INTERO           <=== INTER
    //MERGIN1   DD   DISP=SHR,DSN=EXAMPLE.INTERI           <=== INTER
    //DDSIAUS1  DD   DSN=EXAMPLE.DBYYYYY.PLOG1(+1),        <=== PLOG COPY
    //            VOL=SER=ADAXXX,UNIT=TAPE,DISP=(NEW,CATLG)
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=XXX,DEVICE=3390,DBID=YYYYY
    /*
    //DDKARTE   DD   *
    ADARES PLCOPY NOPPT
    /*
    //

Refer to ADARESIP in the JOBS data set.

#### Copy Dual/Multiple Command Log

    //ADARESCC  JOB
    //*
    //*     ADARES: COPY DUAL/MULTIPLE COMMAND LOG
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD       <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1 <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1 <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1 <=== WORK
    //DDCLOGR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.CLOGR1 <=== CLOG1
    //DDCLOGR2  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.CLOGR2 <=== CLOG2
    //DDSIAUS1  DD   DSN=EXAMPLE.DByyyyy.CLOG,           <=== OUTPUT OF
    //            VOL=SER=vvvvvv,UNIT=TAPE,DISP=(NEW,CATLG)       CLCOPY
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADARES CLCOPY
    /*

Refer to ADARESCC in the JOBS data set for this example.

#### Automatically Copy/Merge Nucleus Cluster Command Logs

Note
Note that when intermediate data sets are used for both CLCOPY and PLCOPY, the data set names must be unique so that they are not overwritten.

Following is sample JCL for allocating the required intermediate data sets MERGIN1 and MERGIN2:

    //ALLOC JOB
    //*
    //* Example to allocate the MERGIN1 and the MERGIN2 data sets
    //*
    //ALLOC   EXEC PGM=IEFBR14
    //MERGIN1 DD  DISP=(NEW,CATLG,DELETE),DSN=EXAMPLE.CINTERI,
    //             SPACE=(CYL,(1,10,0)),UNIT=3390,VOL=SER=volser,
    //             RECFM=VB,BLKSIZE=27998,LRECL=27994
    //MERGIN2 DD  DISP=(NEW,CATLG,DELETE),DSN=EXAMPLE.CINTERO,
    //             SPACE=(CYL,(1,10,0)),UNIT=3390,VOL=SER=volser,
    //             RECFM=VB,BLKSIZE=27998,LRECL=27994

Refer to ADARESMC in the JOBS data set for this example.

#### Manually Merge Sequential Command Logs in a Nucleus Cluster Environment

    //ADARESCM  JOB
    //*
    //*    ADARES: MERGE SEQUENTIAL COMMAND LOGS
    //*             FOR USE WITH AN ADABAS NUCLEUS CLUSTER
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD       <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.ASSOR1  <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.DATAR1  <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.WORKR1  <=== WORK
    //DDCLOG01  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.CLOGR1A <=== CLOG1
    //DDCLOG02  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.CLOGR1B <=== CLOG2
    //DDCLOG03  DD   DISP=SHR,DSN=EXAMPLE.DBYYYYY.CLOGR1C <=== CLOG3
    //DDSIAUS1  DD   DSN=EXAMPLE.DBYYYYY.CLOGM,           <=== OUTPUT OF
    //            VOL=SER=ADAXXX,UNIT=TAPE,DISP=(NEW,CATLG)       CLOG MERGE
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=XXX,DEVICE=3390,DBID=YYYYY
    /*
    //DDKARTE   DD   *
    ADARES MERGE CLOG,NUMLOG=3
    /*
    //

Refer to ADARESCM in the JOBS data set for this example.

#### Backout from a Sequential Protection Log

    //ADARESSP  JOB
    //*
    //*    ADARES: BACKOUT FROM A SEQUENTIAL PLOG
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD       <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1 <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1 <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1 <=== WORK
    //DDBACK    DD   DSN=EXAMPLE.DByyyyy.PLOG(-5),       <=== PLOG TAPE
    //               UNIT=TAPE,DISP=OLD
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADARES BACKOUT PLOGNUM=nnn
    /*

Refer to ADARESSP in the JOBS data set for this example.

#### Backout from Dual/Multiple Protection Log

    //ADARESB   JOB
    //*
    //*    ADARES: BACKOUT FROM DUAL/MULTIPLE PLOG
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD       <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1 <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1 <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1 <=== WORK
    //DDPLOGR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.PLOGR1 <=== PLOG1
    //DDPLOGR2  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.PLOGR2 <=== PLOG2
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADARES BACKOUT DPLOG
    /*

Refer to ADARESB in the JOBS data set for this example.

#### Regenerate Function

    //ADARESR   JOB
    //*
    //*    ADARES: REGENERATE
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD       <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1 <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1 <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1 <=== WORK
    //DDSIIN    DD   DSN=EXAMPLE.DByyyyy.PLOG(-5),       <=== PLOG TAPE
    //            UNIT=TAPE,DISP=OLD
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADARES REGENERATE FILE=1
    /*

Refer to ADARESR in the JOBS data set for this example.

#### Repair Data Storage

    //ADARESRP  JOB
    //*
    //*    ADARES:  REPAIR DATASTORAGE
    //*
    //RES      EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD       <=== ADABAS LOAD
    //*
    //DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1 <=== ASSO
    //DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1 <=== DATA
    //DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1 <=== WORK
    //DDSIIN    DD   DSN=EXAMPLE.DByyyyy.SAVE,           <=== SAVE OUTPUT
    //             DISP=OLD,UNIT=TAPE
    //          DD   DSN=EXAMPLE.DByyyyy.PLOG(-5),       <=== PLOG TAPE
    //             DISP=OLD,UNIT=TAPE
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDCARD    DD   *
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADARES REPAIR DSRABN=3456-3490

Refer to ADARESRP in the JOBS data set for this example.

## z/VSE

Data Set | Symbolic | Storage | Logical Unit | More Information
--- | --- | --- | --- | ---
Sequential protection log or ADASAV SAVEn output | SIIN | tape disk | SYS020 See note | Input log for COPY, REGENERATE, and REPAIR.
Multiple protection log | PLOGRn | disk | See note | Input logs for PLCOPY and BACKOUT DPLOG.
Multiple command log | CLOGRn | disk | See note | Input logs for CLCOPY.
Sequential protection log | BACK | tape | SYS020 | Input log for BACKOUT (not BACKOUT DPLOG).
Copied log | SIAUS1 | tape disk | SYS021 See note | Output of COPY, CLCOPY, and PLCOPY.
Extra copied log | SIAUS2 | tape disk | SYS022 See note | Required for TWOCOPIES.
Data Storage | DATARn | disk |  | Required for REGENERATE if FROMCP=SYN1 or SYN4.
Associator | ASSORn |  | See note |
Recovery log (RLOG) | RLOGR1 | disk |  | Required when using ADARAI.
ADARUN parameters | - CARD CARD | reader tape disk | SYSRDR SYS000 See note |
ADARES parameters |  | reader | SYSIPT |
ADARUN messages |  | printer | SYSLST |
ADARES messages |  | printer | SYS009 |

Note
Any programmer logical unit can be used.

### ADARES JCS Examples (z/VSE)

See Library and File Procedures for z/VSE Examples for descriptions of the z/VSE procedures (PROCs).

Refer to the following members for these examples:

Example | Member
--- | ---
Copy sequential protection log | ADARESCP.X
Copy dual/multiple protection log | ADARESCD.X
Copy dual/multiple command log | ADARESCC.X
Regenerate | ADARESR.X
Backout from a sequential protection log | ADARESSP.X
Backout from a dual protection log | ADARESB.X
Repair Data Storage | ADARESRP.X

#### Copy Sequential Protection Log

    * $$ JOB JNM=ADARESCP,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    // JOB ADARESCP
    *       COPY SEQUENTIAL PLOG(TAPE)
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS020,TAPE,D0
    // PAUSE MOUNT INPUT TAPE ON TAPE cuu
    // MTC REW,SYS020
    // TLBL SIIN,'ADABAS.ADAvrs.SIBA'
    // ASSGN SYS022,TAPE,D0
    // PAUSE MOUNT SCRATCH TAPE ON TAPE cuu
    // MTC REW,SYS022
    // MTC WTM,SYS022,5
    // MTC REW,SYS022
    // TLBL SIAUS1,'ADABAS.ADAvrs.SIAUS1'
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADARES COPY
    /*
    /&
    * $$ EOJ

#### Copy Dual/Multiple Protection Log

    * $$ JOB JNM=ADARESCD,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    // JOB ADARESCD
    *       CLCOPY WITH OPTION TWOCOPIES(TAPE)
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS021,TAPE,D0
    // ASSGN SYS022,TAPE,D0
    // PAUSE MOUNT SCRATCH TAPE ON TAPES cu1 AND cu2
    // MTC REW,SYS022
    // MTC WTM,SYS022,5
    // MTC REW,SYS022
    // MTC REW,SYS021
    // MTC WTM,SYS021,5
    // MTC REW,SYS021
    // TLBL SIAUS1,'ADABAS.ADAvrs.PLOGC1'
    // TLBL SIAUS2,'ADABAS.ADAvrs.PLOGC2'
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADARES PLCOPY TWOCOPIES
    /*
    /&
    * $$ EOJ

#### Copy Dual/Multiple Command Log

    * $$ JOB JNM=ADARESCC,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    // JOB ADARESCC
    *       COPY DUAL/MULTIPLE COMMAND LOG
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS022,DISK,VOL=vvvvvv,SHR
    // DLBL SIAUS1,'ADABAS.ADAvrs.CLOG',0,SD
    // EXTENT SYS022,vvvvvv,1,0,sssss,nnnnn
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADARES CLCOPY
    /*
    /&
    * $$ EOJ

#### Regenerate

    * $$ JOB JNM=ADARESR,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    // JOB ADARESR
    *       REGENERATE
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS020,DISK,VOL=vvvvvv,SHR
    // DLBL SIIN,'EXAMPLE.DByyyyy.PLOG'
    // EXTENT SYS020,vvvvvv
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADARES REGENERATE FILE=1
    /*
    /&
    * $$ EOJ

#### Backout from a Sequential Protection Log

    * $$ JOB JNM=ADARESSP,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    // JOB ADARESSP
    *       BACKOUT FROM A SEQUENTIAL PLOG
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS020,TAPE
    // PAUSE  ***  PLEASE MOUNT TAPE ***
    // MTC REW,SYS020
    // TLBL BACK,'DByyyyy.PLCOPY.TAPE'
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADARES BACKOUT PLOGNUM=ppp
    /*
    /&
    * $$ EOJ

#### Backout from a Dual Protection Log

    * $$ JOB JNM=ADARESB,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    // JOB ADARESB
    *       BACKOUT FROM DUAL PLOG
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADARES BACKOUT DPLOG
    /*
    /&
    * $$ EOJ

#### Repair Data Storage

    * $$ JOB JNM=ADARESRP,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    // JOB ADARESRP
    *       REPAIR DATASTORAGE
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS020,TAPE
    // PAUSE MOUNT INPUT TAPE ON cuu
    // MTC REW,SYS020
    // TLBL SIIN,'EXAMPLE.ADAyyyyy.SAVE1'
    // TLBL SIIN01,'ADABAS.ADAyyyyy.PLOG5'       (*)
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADARES,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADARES REPAIR DSRABN=3456-3490
    /*
    /&
    * $$ EOJ

(*) See Sequential Input Files, z/VSE Concatenation.

### On this page

- BS2000
- z/OS
- z/VSE