You are on page 1of 3

How Many EXEC Stmts can be coded in a JOB?

****A job can have a maximum of 255 EXEC statements.


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
How Many DD Stmts can be used in a STEP?
**** A maximum of 3273 DD statement s is allowed per step.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Whether PROC & PEND Needs to be deifned mandatory in a PROC?
**** No. Only PROC is mandatory like below :
VIEW
TEST.VISION.PROCLIB(VPXTRD02) - 01.05
Columns 00001 00072
Command ===>
Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 //VPXTRD02 PROC
000002 //*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
KEYWORD PARAMETERS MSGLEVEL=([jcl][,messages])
ADDRSPC={VIRT|REAL}
REGION=value(K|M}
COND=((code,operator)[,(code,operator)]...)
CLASS=jobclass
PRTY=priority
TIME=(minutes,seconds|1440)
NOTIFY=userid
MSGCLASS=class
RESTART={stepname|procexec.stepname}
TYPRUN={HOLD|JCLHOLD|SCAN|COPY}
ADDRSPC = VIRT / REAL
VIRTUAL - Virtual storage means that each running program can assume it has acce
ss to all of the storage defined by the architecture's addressing scheme. The on
ly limit is the number of bits in a storage address. This ability to use a large
number of storage locations is important because a program may be long and comp
lex, and both the program's code and the data it requires must be in central sto
rage for the processor to access them.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
USE OF REGION PARAMETER?
REGION = THE REGION PARM SPECIFIES THE AMOUNT OF STORAGE NEEDED BY THE STEP WIT
H THE HIGHEST STORAGE REQUIREMENTS
GENERAL SYNTAX :
REGION=value(K|M}
//TMPASJOB

JOB

,SMITH,REGION=800K

WHEN THE AMOUNT OF STORAGE REQUESTED IN THE REGION PARM IS HIGHER THAN THE ADDRE
SS SPACE CAN PROVIDE, AN ABEND WILL OCCUR
IF REGION=0K(OR 0M) IS CODED, THE ENTIRE ADDRESS SPACE (EXCEPT FOR THOSE AREAS U
SED BY MVS/XA) IS AVAILABLE
ex :::
000001
000002
000003
000004
000005
000129
000130
000131
000132
000133
000134
000135

//TSTFABL5
//
//
//
//*

JOB (0000,0000),'AMSL BKUP',


CLASS=P,
MSGCLASS=S,
MSGLEVEL=(1,1),REGION=6M

//*
//*********************************************************************
//* CREATE MERGE AMBS AND AMBI EXTRACTS
*
//*********************************************************************
//STEP2A EXEC PGM=EZTPA00,COND=(0,NE),
//
REGION=6250K
//*

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Whats the use of JCLLIB / joblib & STEPLIB?
JCLLIB/STEPLIB specifies the private libraries containing the catalogued procedu
res and JCL referred to by Include statements. SET assigns values to symbolic
parameters in catalog procedures, INCLUDE allows JCL stored in partitioned datas
et to be included in the
job stream. IF/THEN/ELSE/END allows selective execution of Job steps. CNTL and E
NDCNTL marks the
start and end of control statements in the input stream. OUTPUT Supplies options
for SYSOUT processing
Ex :
VIEW
TEST.PROD.JCLLIB(TSTFFA10) - 01.08
Columns 00001 00072
Command ===>
Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 //TSTFFA10 JOB (0000,0000),'FAS DAILY1',
000002 //
CLASS=P,
000003 //
MSGCLASS=S,
000004 //
MSGLEVEL=(1,1),
000005 //
REGION=0M
000006 //*>>>>> T H I S J C L I S F O R F I L E T O F I L E
000007 //*>>>>> P R O C E S S I N G
000008 //*
000009 //PROCLIB JCLLIB ORDER=(TEST.PROD.PROCLIB)
000010 //*
000011 //$JOBLIB INCLUDE MEMBER=$TSTLOAD
. . . . . . . . . . . . . . . . . . . . . . . . . . .
VIEW
TEST.PROD.PROCLIB($TSTLOAD) - 01.66
Columns 00001 00072
Command ===>
Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 //JOBLIB DD DSN=PGCPRG4.SMG3.V120.DA.BASEJNI,DISP=SHR
000002 //
DD DSN=TEST.BATCH.PDSE.LOAD,DISP=SHR
000003 //
DD DSN=TEST.INH.V817.BATCH.LOADFIX,DISP=SHR

000004 //

DD DSN=TEST.INH.V817.BATCH.LOAD,DISP=SHR

. . . . . . . . . . . . . . . . . . . . . . . . . . .
VIEW
TEST.PROD.PROCLIB(CONNECTA) - 01.01
*Bottom of data reached*
Command ===>
Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 //CONNECTA PROC
000002 //*
000003 //********************************************************************
000004 //*
CONNECT DIRECT FILE TRANSFER
*
000005 //********************************************************************
000006 //*
000007 //STEP020 EXEC PGM=DMBATCH,PARM='YYLLYNN',COND=(4,LT)
000008 //sTEPLIB DD DSN=&RGN.NET.CONNECT.LINKLIB,
000009 //
DISP=SHR
000010 //DMNETMAP DD DSN=&RGN.NET.CONNECT.NETMAP,DISP=SHR
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%