JCL Requirements and Examples

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:


Requirements to Run ADARAI JCL

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  

JCL Examples

Prepare for Recovery Logging (ADARAI PREPARE):

//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

List the RLOG (ADARAI LIST)

//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
/*

Create Recovery JCL (ADARAI RECOVER)

//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

Skeleton Job Control Example

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                                            
 //*