This section describes the job control information required to run ADARAI on the z/OS operating systems and shows examples of job streams.
This document covers the following topics:
Data Set | DD Name | Storage | More Information |
---|---|---|---|
Associator | DDASSORn | disk | |
Data protection log | DDPLOGRn | tape/ disk | Required for RECOVER only if FEOFPL=YES is specified. |
Recovery log (RLOG) | DDRLOGR1 | disk | |
Job stream input | DDJCLIN | disk | Required only for RECOVER |
Recovery job output | DDJCLOUT | disk | Required only for RECOVER |
ADARAI messages | DDDRUCK | printer | Messages and Codes |
ADARUN messages | DDPRINT | printer | Messages and Codes |
ADARUN parameters | DDCARD | reader | Operations |
ADARAI parameters | DDKARTE | reader |
//RAIPREP EXEC PGM=ADARUN //STEPLIB DD DISP=SHR,DSN=ADABAS.ADAvrs.LOADLIB //DDASSOR1 DD DISP=SHR,DSN=EXAMPLE.ADAyyyyy.ASSOR1 //DDRLOGR1 DD DISP=SHR,DSN=EXAMPLE.ADAyyyyy.RLOGR1 //DDDRUCK DD SYSOUT=A //DDPRINT DD SYSOUT=A //DDCARD DD * ADARUN PROGRAM=ADARAI,SVC=xxx,DEVICE=dddd,DBID=yyyyy,MODE=MULTI //DDKARTE DD * ADARAI PREPARE RLOGSIZE=5,MINGENS=5
//RAILIST EXEC PGM=ADARUN //STEPLIB DD DSN=ADABAS.ADAvrs.LOADLIB,DISP=SHR //DDASSOR1 DD DSN=EXAMPLE.ADAyyyyy.ASSOR1,DISP=SHR //DDRLOGR1 DD DSN=EXAMPLE.ADAyyyyy.RLOGR1,DISP=SHR //DDDRUCK DD SYSOUT=A //DDPRINT DD SYSOUT=A //DDCARD DD * ADARUN PROGRAM=ADARAI,SVC=xxx,DEVICE=dddd,DBID=yyyyy,MODE=MULTI //DDKARTE DD * ADARAI LIST /*
//ADARAI EXEC PGM=ADARUN //STEPLIB DD DSN=ADABAS.ADAvrs.LOADLIB,DISP=SHR //* //DDASSOR1 DD DSN=EXAMPLE.ADAyyyyy.ASSOR1,DISP=SHR //* //DDRLOGR1 DD DSN=EXAMPLE.ADAyyyyy.RLOGR1,DISP=SHR //DDJCLIN DD DSN=EXAMPLE.ADAyyyyy.RAIJCL(JCLIN),DISP=SHR //DDJCLOUT DD SYSOUT=A //* //DDPLOGR1 DD DSN=EXAMPLE.ADAyyyyy.PLOGR1,DISP=SHR //DDPLOGR2 DD DSN=EXAMPLE.ADAyyyyy.PLOGR2,DISP=SHR //* //DDDRUCK DD SYSOUT=A //DDPRINT DD SYSOUT=A //DDCARD DD * ADARUN PROGRAM=ADARAI,SVC=xxx,DEVICE=dddd,DBID=yyyyy,MODE=MULTI ADARUN UEX2=UEX2 //DDKARTE DD * ADARAI RECOVER JCLLOG=YES,RELGEN=0,DRIVES=2
This example can be found in member ADARAIIN of the JOBS data set.
%%JCL-JOB-HEADER //ADARECOV JOB 5,'ADA-USER',MSGCLASS=X,CLASS=A,REGION=4096K //* //JOBLIB DD DSN=ADABAS.ADAvrs.LOAD,DISP=SHR //* %%JCL-JOB-TRAILER //* //* END OF RECOVERY //* // %%JCL-STEP-TRAILER //* //* END OF STEP //* %%JCL-DDKARTE //DDKARTE DD * %%JCL-ADADEF //* //* DEFINE NEWWORK //* //%STEP EXEC PGM=ADARUN ADADEF JOB STEP //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDDATAR1 DD DSN=ADABAS.ADAvrs.DATAR1,DISP=SHR //DDWORKR1 DD DSN=ADABAS.ADAvrs.WORKR1,DISP=SHR //DDTEMPR1 DD DSN=ADABAS.ADAvrs.TEMPR1,DISP=OLD //DDSORTR1 DD DSN=ADABAS.ADAvrs.SORTR1,DISP=OLD //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //SYSUDUMP DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROG=ADADEF,DBID=xxxxx,DE=yyyy,SVC=zzz //DDKARTE DD * %KARTE %%JCL-ADAINV //* //* INVERT / COUPLE //* //%STEP EXEC PGM=ADARUN ADAINV JOB STEP //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //DDSORTR1 DD DSN=ADABAS.ADAvrs.SORTR1,DISP=OLD //DDTEMPR1 DD DSN=ADABAS.ADAvrs.TEMPR1,DISP=OLD //SYSUDUMP DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROG=ADAINV,DBID=xxxxx,DE=yyyy,SVC=zzz //DDKARTE DD * %KARTE %%JCL-ADALOD //* //* LOAD A FILE / MASS UPDATE //* //%STEP EXEC PGM=ADARUN ADALOD JOB STEP %SEQUENTIAL //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDDATAR1 DD DSN=ADABAS.ADAvrs.DATAR1,DISP=SHR //DDWORKR1 DD DSN=ADABAS.ADAvrs.WORKR1,DISP=SHR //DDTEMPR1 DD DSN=ADABAS.ADAvrs.TEMPR1,DISP=OLD //DDSORTR1 DD DSN=ADABAS.ADAvrs.SORTR1,DISP=OLD //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //SYSUDUMP DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROG=ADALOD,DBID=xxxxx,DE=yyyy,SVC=zzz //DDKARTE DD * %KARTE %%JCL-ADAORD //* //* REORDER //* //%STEP EXEC PGM=ADARUN ADAORD JOB STEP %SEQUENTIAL //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDDATAR1 DD DSN=ADABAS.ADAvrs.DATAR1,DISP=SHR //DDWORKR1 DD DSN=ADABAS.ADAvrs.WORKR1,DISP=SHR //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //SYSUDUMP DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROG=ADAORD,DBID=xxxxx,DE=yyyy,SVC=zzz //DDKARTE DD * %KARTE %%JCL-ADARES //* //* PLCOPY / REGENERATE / BACKOUT //* //%STEP EXEC PGM=ADARUN %SEQUENTIAL //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //* Omit DDPLOGRx for Parallel and Cluster Services //DDPLOGR1 DD DSN=ADABAS.ADAvrs.PLOGR1,DISP=SHR //DDPLOGR2 DD DSN=ADABAS.ADAvrs.PLOGR2,DISP=SHR //* Include MERGIN1 and MERGIN2 for Parallel and Cluster Services //MERGIN1 DD DSN=ADABAS.ADAvrs.INTERI,DISP=SHR //MERGIN2 DD DSN=ADABAS.ADAvrs.INTERO,DISP=SHR //SYSUDUMP DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROG=ADARES,DBID=xxxxx,DE=yyyy,SVC=zzz //DDKARTE DD * %KARTE %%JCL-DDSIAUS1 //DDSIAUS1 DD DSN=ADABAS.ADAvrs.PLCOPY(+1), // DISP=(NEW,CATLG),UNIT=TAPE %%JCL-DDSIAUS2 //DDSIAUS2 DD DSN=ADABAS.ADAvrs.PLCOPY2(+1), Optional second copy // DISP=(NEW,CATLG),UNIT=TAPE %%JCL-ADASAV //* //* RESTORE FILE(S)/DATABASE //* //%STEP EXEC PGM=ADARUN ADASAV JOB STEP %SEQUENTIAL //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDDATAR1 DD DSN=ADABAS.ADAvrs.DATAR1,DISP=SHR //DDWORKR1 DD DSN=ADABAS.ADAvrs.WORKR1,DISP=SHR //DDTEMPR1 DD DSN=ADABAS.ADAvrs.TEMPR1,DISP=OLD //SYSUDUMP DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROG=ADASAV,DBID=xxxxx,DE=yyyy,SVC=zzz //DDKARTE DD * %KARTE %%JCL-STARTNUC //* //* START NUCLEUS //* //%STEP EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //SYSUT2 DD SYSOUT=(*,INTRDR) //SYSUT1 DD DATA,DLM='$$' //ADANUC JOB 5,'ADANUC',CLASS=A,MSGCLASS=X,REGION=6M,TIME=1440 //NUCxxxx EXEC PGM=ADARUN //STEPLIB DD DSN=ADABAS.ADAvrs.LOAD,DISP=SHR //* //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDDATAR1 DD DSN=ADABAS.ADAvrs.DATAR1,DISP=SHR //DDWORKR1 DD DSN=ADABAS.ADAvrs.WORKR1,DISP=SHR //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //DDPLOGR1 DD DSN=ADABAS.ADAvrs.PLOGR1,DISP=SHR //DDPLOGR2 DD DSN=ADABAS.ADAvrs.PLOGR2,DISP=SHR //INTRDR2 DD SYSOUT=(*,INTRDR) //SYSUDUMP DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN PROG=ADANUC ADARUN UEX2=UEX2 ADARUN DUALPLS=nnn dual PLOG size ADARUN DUALPLD=mmmm dual PLOG device type ADARUN MODE=MULTI ADARUN DATABASE=xxxxx DATA BASE ID ADARUN DEVICE=yyyy ASSOCIATOR DEVICE TYPE ADARUN SVC=zzz SVC NUMBER $$ //* //* End of input for internal reader. Check whether nucleus is active. //* //ADARAI EXEC PGM=ADARUN //STEPLIB DD DSN=ADABAS.ADAvrs.LOAD,DISP=SHR //SYSOUT DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROGRAM=ADARAI,DBID=xxxxx,SVC=zzz,DE=yyyy //DDKARTE DD * ADARAI CHKDB ACTIVE //* %%JCL-ENDNUC //* //* ADADBS END NUCLEUS //* //%STEP EXEC PGM=ADARUN //DDASSOR1 DD DSN=ADABAS.ADAvrs.ASSOR1,DISP=SHR //DDDATAR1 DD DSN=ADABAS.ADAvrs.DATAR1,DISP=SHR //DDWORKR1 DD DSN=ADABAS.ADAvrs.WORKR1,DISP=SHR //DDTEMPR1 DD DSN=ADABAS.ADAvrs.TEMPR1,DISP=OLD //DDSORTR1 DD DSN=ADABAS.ADAvrs.SORTR1,DISP=OLD //DDRLOGR1 DD DSN=ADABAS.ADAvrs.RLOGR1,DISP=SHR //DDDRUCK DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROG=ADADBS,DBID=xxxxx,DE=yyyy,SVC=zzz //DDKARTE DD * ADADBS OPERCOM ADAEND //* //* Check whether nucleus is inactive. //* //ADARAI EXEC PGM=ADARUN //STEPLIB DD DSN=ADABAS.ADAvrs.LOAD,DISP=SHR //SYSOUT DD SYSOUT=* //DDPRINT DD SYSOUT=* //DDDRUCK DD SYSOUT=* //DDCARD DD * ADARUN MODE=MULTI,PROGRAM=ADARAI,DBID=xxxxx,SVC=zzz,DE=yyyy //DDKARTE DD * ADARAI CHKDB INACTIVE //*