7/23/2019 Jcl Training (7 Days)
1/78
d
S
R
C
Introduction
Data Organization
JCL Introduction
JCL JOB statement
JCL EXEC statement
JCL DD statement
CONTENTS
7/23/2019 Jcl Training (7 Days)
2/78
d
S
R
C
JCL stand for JOB CONTROL LANGAGE
Language !e use to
Contro" t#e e$ecution of
Jo%&s in t#e s'stem
Descri%ing t#e (o%
Ca""ing t#e )rogram
Descri%ing t#e resources eg* Datasets*
+#at is JCL
7/23/2019 Jcl Training (7 Days)
3/78
d
S
R
C
JCL Defines t#e re,uirements of a (o% to t#e o)erating s'stem
Accounting information
+#ic# )rogram to e$ecute
Se,uence of e$ecution
Dataset re,uired
-ard!are re,uired
Direction .!#at is to %e done/
JCL Contd0*
7/23/2019 Jcl Training (7 Days)
4/78
d
S
R
C
11 JOB
11 EXEC
11 DD
JOB STATE2ENT
Gi3es t#e name of t#e (o% and su))"ies accounting information
EXEC STATE2ENT
Ca""s t#e s)ecified )rogram or )rocedure
DD STATE2ENT
Descri%es t#e resources t#e )rogram needs
JCL STATE2ENT
7/23/2019 Jcl Training (7 Days)
5/78
d
S
R
C
Jo% Contro" statements used to %e )unc#ed onto cards* T#ese cards
!ere read into t#e s'stem from a "oca" card reader*
T#e cards needed for one (o% is ca""ed a %atc#* T#is is !#' !e ca"" t#e
(o%s running under contro" of JES4 BATC- (o%s* 2an' )eo)"e !#o
#a3e %een !or5ing !it# com)uters for a "ong time often ca"" t#e
JCL6statements4 JCL6cards and t#e statements sti"" #a3e t#e same
size as a )unc#ed card4 78 )ositions*
One JCL statement is one ro! on t#e termina" screen
T#e most common JCL statements1 cards are9
JOB statement
EXEC statement.E$ecution/
DD statement .Data definition/
JCL STATE2ENT -ISTOR:
7/23/2019 Jcl Training (7 Days)
6/78
d
S
R
C
S:S*;ROCLIB
IN;T CON
7/23/2019 Jcl Training (7 Days)
7/78
d
S
R
C
IN;T
T#is is t#e )rocess !#ere a (o% !i"" enter t#e s'stem and is
gi3en a num%er* T#e JOB ID num%er !#ic# !i"" %e id of t#e (o% as
"ong as it is in t#e s'stem* T#e accounting information in t#e (o%
card is tested and an' JES commands area e$ecuted* T#e JCLstatements are )ut on t#e S;OOL dataset in t#e in)ut ,ueue*
CON
7/23/2019 Jcl Training (7 Days)
8/78
d
S
R
CEXECTION
T#e interna" te$t for t#e (o% is read into an initiator and t#e (o%
!i"" e$ecute*
OT;T
-ere t#e resu"t !i"" %e formatted according to t#e (o% c"ass or
t#e statements in t#e (o%* T#e resu"ts are out on t#e s)ecifiedout)ut ,ueue*
;RINT1;NC-
T#is is t#e )rocess t#at #e")s 'ou to get #o"d of t#e out)ut* It
cou"d %e )rinted on a "oca" )rinter4 or send to a remote )rinter or
e3en anot#er s'stem*
;RGE
+#en a"" t#e resu"ts of t#e (o% are )rinted it is time for a c"ean
u)* T#e )urge )rocess !i"" #e") us to do t#at and it !i"" re"ease t#e
JOB ID t#at is generated !#en t#e (o% entered t#e s'stem*
JES ;ROCESSORS
7/23/2019 Jcl Training (7 Days)
9/78
d
S
R
C
C-EC? ;OINT
JOB =EE
JOB CLASS 2 INIT @ INIT 14 Z JOB JOB JOB 145 C CLASSES CLASSES CLASSES 146 Z A, Z,B,C S,B,A C,Z 1078 T 2001 A 2002 B
CLASS A2001
CLASS B2002CLASS C145CLASS Z14146CLASS T1078
JOB SELECTION
7/23/2019 Jcl Training (7 Days)
10/78
d
S
R
C
Batc# (o%s run in initiator address s)aces and t#ose can %e started
to ser3e different (o% c"asses*
One initiator can %e started !it# se3era" (o% c"asses4 t#e' are
se"ected in )riorit' order4 in accordance !it# t#e c"ass definition of
t#e initiator !#en it !as started*
+#en an initiator is id"e4 it re,uest !or5 from JES address s)ace*
JES t#en !i"" "oo5 at t#e ,ueue and se"ect t#e #ig#est )riorit' (o%
for t#is initiator*
JOB SELECTION
7/23/2019 Jcl Training (7 Days)
11/78
d
S
R
C JOB ;AC? AREA ;AGABLE LIN? ;AC? AREA
.;L;A/
JOBLIB STE;LIB S:S>*LIN?LIB
.LN?LST$$/
IXED LIN? ;AC?
AREA.L;A/ ABEND 78
2ODIIED LIN? ;AC?
AREA.2L;A/
;ROGRA2 2ANAGE2ENT SEARC- SE=ENCE
7/23/2019 Jcl Training (7 Days)
12/78
d
S
R
C
IDENTIIER
NA2E IELD
O;ERATION IELD
;ARA2ETER IELD
11JNA2E JOB .ACCONT NR/4&;ROG NA2E&4
11 NOTI:SERID11STE;> EXEC ;G2TEST
11S:SIN DD DSNSERID*XX*DATA4DIS;S-R
11S:S;RINT DD S:SOTF
JCL ;ARA2ETER IELDS
7/23/2019 Jcl Training (7 Days)
13/78
d
S
R
C
Eac# (o% contro" statement is "ogica""' di3ided into t#e fo""o!ing
fi3e fie"ds
IDENTIIER IELD
NA2E IELD
O;ERATION IELD
;ARA2ETER IELD
CO22ENT IELD
JCL ;ARA2ETER IELDS
7/23/2019 Jcl Training (7 Days)
14/78
d
S
R
C
co" >
11 JCL
1F DELI2ITER or JES@ CONTROL STATE2ENTS
11F CO22ENT or JES CONTROL STATE2ENTS
T#e identifier fie"d indicate to t#e s'stem t#at a statement is aJCL statement4 de"imiter statement or a comment statement*
JCL6 IDENTIIER IELD
7/23/2019 Jcl Training (7 Days)
15/78
d
S
R
C
11TSOI8XXA JOB
11STE;> EXEC 0*
11INDATA DD 00
T#e NA2E IELD identifies a contro" statement t#at ot#er
statements and t#e s'stem can reference
must %egin in co"umn
> to 7 a")#anumeric.A6H4 8 / or nationa" c#aracters.4K4 /
first c#aracter must %e a")#a%etic or nationa"
name fie"d must %e fo""o!ed %' at "east one %"an5
JCL statement NA2E IELD
7/23/2019 Jcl Training (7 Days)
16/78
d
S
R
C
11TSOI8XXA JOB
11STE;> EXEC 0*
11INDATA DD 00
11ITEST I
11LIB JCLLIB
T#e O;ERATION IELD s)ecifies t#e t')e of contro" statement t#at
fo""o!s t#e name fie"d
must %e )receded and fo""o!ed %' at "east one %"an5
can contain JOB4 EXEC4 DD4 JCLLIB4 CO22AND4 I etc0
JCL statement O;ERATION IELD
7/23/2019 Jcl Training (7 Days)
17/78
d
S
R
C
11TSOI8XXA JOB DA4DOE42SGCLASSA
11STE;> EXEC ;G2SORT
11INDATA DD DSNSERID*NE+*DATA4DIS;S-R
T#e ;ARA2ETER IELD contain one or more )arameters se)arated
%' commas
fo""o!s t#e o)eration fie"d
NO %"an5 %et!een )arameters
use commas to se)arate )arameters
)receded and fo""o!ed %' at "east one %"an5
)arameters can %e coded u) to )osition >
JCL statement ;ARA2ETER IELD
7/23/2019 Jcl Training (7 Days)
18/78
d
S
R
C
11STE;> EXEC ;G2SORT STE; >
11INDATA DD DSNSERID*NE+*DATA4DIS;S-R IN;T DATA
T#e CO22ENT IELD contain information 'ou find #e")fu" !#en
'ou code t#e JCL statement*
must fo""o! t#e )arameter fie"d
must %e )receded %' at "east one %"an5can %e coded u) to )osition 78
must not %e used un"ess t#ere is a )arameter fie"d
JCL statement CO22ENT IELD
7/23/2019 Jcl Training (7 Days)
19/78
d
S
R
C
> >
11NA2E O;ERATION ;ARA2ETER4
11 ;ARA2ETER4;ARA2ETER
11OTDATA DD DSNSERID*NE+*DATA4
11 DIS;.NE+4CATLG/4NITS:SDA4S;ACE.TR?4.>4>//4
11 DCB.LRECL784REC2B4BL?SIHE>8/
Interru)t t#e fie"d after a com)"ete )arameter or su%)arameter
inc"uding t#e comma t#at fo""o!s4 at or %efore co"umn >*Code 11 in t#e co"umn > and @ of t#e fo""o!ing statement*
Continuation can start from co"umn M t#roug# >*
JCL statement CONTINATION O STATE2ENT
7/23/2019 Jcl Training (7 Days)
20/78
d
S
R
C
;OS
> @ > @
1 1STE;> EXEC 2:;ROC T-IS STATE2ENT CALLS A C
1 1 ;ROCEDRE NA2ED 2:;ROC
1 1 F ;ROCEDRE
Interru)t t#e comment at a con3enient )"ace %efore co"umn
@
Code non %"an5 c#aracter in co"umn @
Code 1 1 in co"umn > and @ of t#e fo""o!ing statement
Continue t#e comment fie"d %eginning in an' co"umn after
co"umn
Note9 T-E CO22ENT STATE2ENT CAN NOT BE CONTINED
JCL statement CONTINING T-E CO22ENT IELD
7/23/2019 Jcl Training (7 Days)
21/78
d
S
R
C
11NA2E O;ERATION ;>4;@4;4?>A11NA2E O;ERATION 4;@4;4?>A
11NA2E O;ERATION ;>4?>A4?@B
11NA2E O;ERATION ?>A4?C4?@B
T#e ;OSITIONAL ;ARA2ETERS
must %e first
must %e in a s)ecific order
a%sence must %e indicated %' a comma
if t#e "ast one is a%sent4 no comma necessar'if a"" are a%sent4 no comma is necessar'*
Eg*
TI2E.48/ TI2E./ TI2E
TI2E.848/ TI2E.48/ TI2E.8/ TI2E8
JCL statement ;OSITIONAL ;ARA2ETERS
7/23/2019 Jcl Training (7 Days)
22/78
d
S
R
C
11NA2E O;ERATION ?>A4?@B4?C
11NA2E O;ERATION ;>4?@B
11NA2E O;ERATION 4;@4?@B4?>A
?E:+ORD ;ARA2ETERS
must %e after an' )ositiona" )arameterscan %e an' order !it# res)ect to one anot#er
need not indicate a%sence of a 5e'!ord )arameter
JCL statement ?E:+ORD ;ARA2ETERS
JCL t t t ;OSITIONAL AND
7/23/2019 Jcl Training (7 Days)
23/78
d
S
R
CDIS;OLD
DIS;.NE+4?EE;4?EE;/
DIS;.4?EE;4?EE;/
DCB.REC2B4LRECL784BL?SIHE788/
DCB.LRECL784REC2B/
;OSITIONAL AND ?E:+ORD ;ARA2ETERS
?E:+ORD ;ARA2ETERS
must %e after an' )ositiona" )arameters
can %e an' order !it# res)ect to one anot#er
need not indicate a%sence of a 5e'!ord )arameter
JCL statement ;OSITIONAL AND?E:+ORD SB;ARA2ETERS
7/23/2019 Jcl Training (7 Days)
24/78
d
S
R
C
11JOBNA2E JOB 00*
ACCT FIELD CLASS
PGMER NAME NOTI:
2SGLE
7/23/2019 Jcl Training (7 Days)
25/78
d
S
R
C
;OSITIONAL ;ARA2ETERS ON T-E JOB STATE2ENT
11RNA JOB DE;TA4DOE4000
11RNB JOB PD74C&4&C T-O2SON&4000*
11RNC JOB .PD1@&4->@M/4JDOE400
11RND JOB DE;TB*&O&&DONNELL&400*
;ositiona" )arameters on t#e JOB CARD
ACCONTING INOR2ATION;ro3ides accounting information t#at insta""ation re,uires
;ROGRA22ERS&S NA2E
Identifies t#e )erson or grou) res)onsi%"e for t#at (o%
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
26/78
d
S
R
C
?E:+ORD ;ARA2ETERS ON T-E JOB STATE2ENT
11RNA JOB DE;TMA4DA/42SGCLASSA4
11 CLASSA4NOTI:TSO884T:;RNSCAN
T#e 5e'!ord )arameters
2SGLE
7/23/2019 Jcl Training (7 Days)
27/78
d
S
R
C
2SGCLASSAssigns t#e (o% "og to an out)ut c"ass
S'nta$ 2SGCLASSn !#eren is A t#roug# H or 8 t#roug#
CLASS
Assigns t#e (o% to a c"ass
S'nta$ CLASSn !#ere n isA t#roug# H or 8 t#roug#
NOTI:
Re,uests t#at t#e s'stem send a message to t#e TSO userid s)ecified!#en t#e (o% com)"etes )rocessing
S'nta$ NOTI:userid !#ere userid is> t#roug# a")#anumeric c#aracters and must %e a 3a"id userid
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
28/78
d
S
R
C
T:;RN
sed to re,uest s)ecia" (o% )rocessing
S'nta$ T:;RN.SCAN1-OLD/SCAN Re,uests t#at t#e s'stem scan t#is (o%&s JCL for s'nta$
errors4 !it#out e$ecuting t#e (o% or a""ocating an' de3ices* T#is )arameteras5s t#e s'stem to c#ec5 for9
In3a"id s)e""ing of )arameter 5e'!ords and some su%6)arameter5e'!ords
In3a"id c#aractersn%a"ances )arent#esis2is)"aced )ositiona" )arameters on some statements
In3a"id s'nta$ on JCL statements in a cata"ogued )rocedure in3o5ed %'an' scanned EXEC statements
-OLD Re,uest t#at t#e s'stem #o"d t#e (o% %efore e$ecution*-o!e3er JCL )rocessing is )erformed and t#e (o% !i"" not %e #e"d if an erroroccurs*
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
29/78
d
S
R
C
TI2ES)ecifies t#e ma$imum amount of time a""o!ed for t#e (o%
S'nta$ TI2E.$4'/ !#ere$ for minutes and' for seconds
T#e 3a"id range of minutes is > t#roug# >@.@M7* da's/T#e 3a"id range of seconds is > t#roug#
TI2ENOLI2ITNOLI2IT s)ecifies t#at t#e (o% can use t#e )rocessor for an un"imitedamount of time* NOLI2IT is same as t#at of TI2E>MM8
TI2E2AXI222AXI22 s)ecifies t#at t#e ste) can use t#e )rocessor for t#e
ma$imum amount of time* A""o!s t#e (o% to run for >@ minutes*
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
30/78
d
S
R
C
RESTARTRestart refers to t#e continuation of a )re3ious a%orted (o% stream
S'nta$ RESTARTSte)name
Restart )arameter s)ecifies t#e ne! starting ste) for a (o%
E$am)"e*
11JOBNA2E JOB 0004RESTARTSTE;
-ere t#e (o% start from t#e ste)name STE; %' )assing t#e ste)s )rior to t#este) STE;*
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
31/78
d
S
R
C
;RT:+it#in a JES@ (o% c"ass or a JES (o% c"ass grou)4 t#e s'stem se"ects
(o%s for e$ecution in order %' )riorit'* T#e #ig#er t#e )riorit' num%er4 t#esooner t#e (o% is se"ected* Jo%s !it# t#e same )riorit' are se"ected on afirst6in first6out %asis*
S'nta$ 11(o%name JOB acct4)rogname4;RT:$
!#ere n is an integer* T#e ma$imum 3a"ue of n is >*
E$am)"e*
11JOB>8 JOB 4QLO JONESQ4;RT:>M
Note9
In a JES@ s'stem4 t#ere are a num%er of factors t#at determine t#e order in!#ic# a )articu"ar (o% is se"ected for e$ecution* T#erefore4 'ou cannot %eassured t#at (o% )riorit' .%ased on t#e ;RT: 'ou assign a (o%/ or t#e order of(o% su%mission !i"" guarantee t#at t#e (o%s !i"" e$ecute in a )articu"ar order*
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
32/78
d
S
R
C
SER
T#e SER )arameter can %e coded on t#e JOB statement to identif' t#e)erson su%mitting t#e (o%*
Example
11TSO88MJ JOB ACCT>4PSA2 T-O2ASQ4SERID@DB;
REGIONT#e amount of s)ace needed %' a (o% or ste) can %e s)ecified in t#e
REGION )arameter of t#e JOB or EXEC statement* If REGION is on t#e JOBstatement4 eac# ste) of t#e (o% e$ecutes in t#e re,uested amount of s)ace*If on t#e EXEC statements in a (o%4 eac# ste) e$ecutes in its o!n amount ofs)ace* se t#e EXEC statement REGION )arameters !#en different ste)s needgreat"' different amounts of s)ace*E$am)"e 9
11J@7 JOB 4Q* GOLAHES?IQ4CLASSD4REGION@8?
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
33/78
d
S
R
C
RESTARTRestart refers to t#e continuation of a )re3ious a%orted (o% stream
S'nta$ RESTARTSte)name
Restart )arameter s)ecifies t#e ne! starting ste) for a (o%
E$am)"e*
11JOBNA2E JOB 0004RESTARTSTE;
-ere t#e (o% start from t#e ste)name STE; %' )assing t#e ste)s )rior to t#este) STE;*
JOB STATE2ENT
7/23/2019 Jcl Training (7 Days)
34/78
d
S
R
C
11Name CO22AND Pcommand command6o)erand&
11C> CO22AND PS R2T>& >11C@ CO22AND PSEND P PT-E CO2;LIE STE; IS NO+
CO2;LETE& P4 SERTSO88@&
>CO22AND S)ecifies an 2 and @ co"umn and ma' #a3e M fie"ds
Name.o)tiona"/O)eration.CO22AND/;arameter .t#e )arameter fie"d s)ecifies t#e name of t#e command4 at
"east one %"an54 and t#en t#e o)erands for t#e command4 a"" enc"osed ina)ostro)#es/
Comments.o)tiona"/
JES@ CONTROL STATE2ENT
7/23/2019 Jcl Training (7 Days)
35/78
d
S
R
C
>* Identif' t#e fo""o!ing as 3a"id or in3a"id e$am)"es of (o% names*If in3a"id !#'
11JOB> 11ABCD11RN 11TESTM11FRN 11>K;A:8>>
@ se t#e fo""o!ing information and code a (o% statement*JOBNA2E ABC>
ACCONT DM>;G2*NA2E :ONG2ESSAGE CLASS E;RINT ALL JCL STATE2ENTS;RINT ALL 2ESSAGES
se t#e fo""o!ing information and code a (o% statementJOBNA2E ABC@ACCONT 6;G2*NA2E 2 S2IT-2ESSAGE CLASS C;RINT ONL: JOB STATE2ENTNO 2ESSAGES
JOB Statement ;a)er E$ercise
mailto:1@PAY011mailto:1@PAY0117/23/2019 Jcl Training (7 Days)
36/78
d
S
R
C
M se t#e fo""o!ing information and code a (o% statement*JOBNA2E ABCACCONT >7@7;G2*NA2E +OODS2ESSAGE CLASS D
NOTI: ABC;RINT ALL JCL STATE2ENTSNO 2ESSAGES
se t#e fo""o!ing information and code a (o% statementJOBNA2E ABCM
ACCONT >@4M;G2*NA2E :OR NA2E2ESSAGE CLASS EEXECTION CLASS ANOTI: ABC
JOB Statement ;a)er E$ercise
7/23/2019 Jcl Training (7 Days)
37/78
d
S
R
C
After su%mitting a (o%4 go t#roug# t#e (o% "og
11RN> JOB ;GT>@4&2 S2IT-&4NOTI:TSO88@42SGCLASSA411 CLASA42SGLE4>/11STE;> EXEC ;G2IEBR>M11DD> DD DSNTSO88@*NE+*DATA4DIS;.NE+4CATLG/411 S;ACE.TR?4.@4>4//4LRECL784REC2B4BL?SIHE>8
11S:S;RINT DD S:SOTFS;LIT SCREEN JES JOB LOG 6666666S:STE2 ?>@ 000*
>8*>@* JOB 7>@ IEM@I JOBAIL JOB NOT RN 6 JCL ERROR666666666666666666 JES@ JOB STATISTICS 6666666666666666
CARDS READ0*000*
ST2T NO 2ESSAGE> IE8> NIDENTIIED ?E:+ORD CLAS
JES JOB LOG
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
38/78
d
S
R
C
11STE;NA2E EXEC 00** ;G2 COND
;ROC D;RT:;ROCNA2E D:NA2NBR
;AR2;EROR2RD
ACCT REGIONADDRS;C TI2E
EXEC STATE2ENT Eac# (o% ste) %egins !it# an EXEC statement t#at eit#er names t#e
)rogram to e$ecute or in3o5e a cata"ogued or in6stream )rocedure
Re,uired for eac# (o% ste) 2a$imum of @ (o% ste)s Consists of 11 in co"umns > and @ and ma' #a3e four fie"ds
Name.ste)name/ O)eration.EXEC/ ;arameter .)ositiona" and 5e'!ord/ comments
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
39/78
d
S
R
C
;OSITIONAL ;ARA2ETERS ON T-E EXEC STATE2ENT
11STE;NA2E EXEC ;G2IEBR>M11STE;NA2E EXEC ;ROC2:;ROC11STE;NA2E EXEC 2:;ROC
T#e )ositiona" )arameters on t#e EXEC statement
;ROGRA2 NA2E;ro3ides t#e name of t#e )rogram to %e e$ecuted
;ROCEDRE NA2EIdentifies t#e )rocedure to %e ca""ed and e$ecuted*
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
40/78
d
S
R
C
?E:+ORD ;ARA2ETERS ON T-E EXEC STATE2ENT
11RNA JOB 000000000*
11STE;@ EXEC ;G2TEST4
11 COND.M4E=4STE;>/4REGION>824
11 TI2E.48/4;EROR284;AR2T>4
11 D;RT:.>4>/4ACCT.acct info*/4
11 D:NA2NBR>84RDNC4ADDRS;CREAL
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
41/78
d
S
R
C
ACCT
S)ecifies accounting information for t#is ste) on"'* An'
information coded #ere o3errides t#at coded on t#e (o% statement* If
accounting information needs to %e o3erridden for a gi3en ste) of a
ca""ed )rocedure t#is can %e done %' t#e inc"usion of a )rocste)name
)arameter*
S'nta$ ACCT*)rocste)name accounting information* T#eru"e for coding t#e accounting information are identica" to t#e ru"esfor accounting information on t#e (o% statement*
A sing"e )arameter or a "ist of )arameters se)arated %'commas and enc"osed %' )arent#eses*
No more t#an >M@ c#aracters inc"uding commas*
A)ostro)#es needed for s)ecia" c#aracters
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
42/78
d
S
R
C
ADDRS;C
ADDRS;C indicates t')e of storage for t#is ste) on"'4 3irtua" or
rea"* T#is )arameter cannot o3erride a s)ecific ADDRS;C coded on t#e
(o% statement4 %ut ma' o3erride t#e s'stem defau"t* If ADDRS;C needs
to %e o3erridden for a gi3en ste) of a ca""ed )rocedure t#is can %e
done %' t#e inc"usion of a )rocste)name )arameter*
S'nta$9 ADDRS;C*)rocste)ameU
7/23/2019 Jcl Training (7 Days)
43/78
d
S
R
C
CONDCOND s)ecifies return code test used to determine if t#is ste) is
to %e e$ecuted or %')assed* T#e format of t#e COND in t#e EXECstatement is simi"ar to t#at of JOB statement4 e$ce)t a ste)name isused for referra" )ur)ose* If an' of t#e test is true t#e ste) is %')assed4on"' if none of t#e tests are true t#en t#e ste) is e$ecuted as norma"*
S'nta$ COND*)rocste)name.code4o)erator4ste)name/CODE9 S)ecifies a num%er t#at t#e s'stem com)ares to t#ereturn codes from a"" )re3ious ste)s in t#e (o% or from t#e s)ecificste)s* Code a decima" num%er from 8 t#roug# M8*
O;ERATOR9 S)ecifies t#e t')e of com)arison to %e made to t#ereturn code* If t#e s)ecified ste) is true t#e ste) is %')assed*
T#e o)erators areGT Greater t#an GE Greater t#an or e,ua" toE= E,ua" to NE Not e,ua" to
LT Less t#an LE Less t#an or e,ua" to
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
44/78
d
S
R
C
D;RT:
Assigns a dis)atc#ing )riorit' for t#e address s)ace for t#is ste)*
S'nta$ D;RT:*)rocste)name.3a">43a"@/:ou can omit t#e )arent#esis if 'ou code on"' 3a">:ou must inc"ude t#e )arent#esis and code a comma %efore 3a"@ if 'ou
code on"' 3a"@
3a"> 8 t#roug# >3a"@ 8 t#roug# >
T#e s'stem forms t#e interna" dis)atc#ing )riorit' as fo""o!s
dis)atc#ing )riorit' .3a"> F > / W 3a"@
Note9T#e D;RT: 5e'!ord is ignored in 2
7/23/2019 Jcl Training (7 Days)
45/78
d
S
R
C
D:NA2NBR
-o"ds a num%er of data set a""ocations for reuseS'nta$ D:NA2NBR*;ROCSTE;NA2En !#ere
Pn& s)ecifies a 3a"ue used to ca"cu"ate t#e num%er of data set a""ocationst#at t#e s'stem can #o"d in antici)ation of reuse* T#e 3a"ue of Pn& can %e u) tot#e ma$imum size of t#e TIOT.Tas5 In)ut Out)ut Ta%"e/ contro" %"oc5.8t#roug# @/4 "ess t#e num%er of ddnames used in t#e ca""ing JCL*Eg*
A JCL (o% !it# >8 ddnames and a TIOT of @5 t#e D:NA2NBR !ou"d %e
@ minus >84 i*e* @
If no D:NA2NBR )arameter is s)ecified4 t#e defau"t is 8
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
46/78
d
S
R
C
;AR2
sed to )ass 3aria%"e information to t#e )rocessing )rogram e$ecuted%' t#is (o% ste)*
S'nta$ ;AR2*)rocste)nameinformation
Lengt#9 T#e entire information )assed must not e$ceed >88c#aracters inc"uding an' commas !#ic# are )assed to t#e )rocessing)rogram4 %ut e$c"uding an' enc"osing )arent#esis or a)ostro)#es*
If )rocessing )rogram e$)ects eit#er as a)ostro)#e or an
am)ersand as )art of t#e )assed information t#en code t!oconsecuti3e a)ostro)#e or am)ersand*
Eg* Code >@M as ;AR2P>@M&*
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
47/78
d
S
R
C
;EROR2
S)ecifies )erformance grou) used %' t#is ste)* T#e insta""ation6defined )erformance grou) determine t#e rate at !#ic# t#e associatedste)s #a3e access to t#e )rocessor4 storage4 and c#anne"s*
S'nta$ ;EROR2*)rocste)namen !#ere
Pn& re,uests a )erformance grou)4 !#ere n is a num%erfrom > t#roug# and must identif' a )erformance grou)
identified %' t#e insta""ation*
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
48/78
d
S
R
C
RD
Indicates !#et#er t#e o)erator s#ou"d )erform automatic ste)restart4 if ste) fai"s*
S'nta$ RD*;ROCSTE;NA2EUR1RNC1NR1NCV
RDR .Restart4 C#ec5)oints a""o!ed/ Indicates t#e o)erator is to)erform automatic ste) restart if t#e (o% ste) fai"sRDRNC .Restart4 No C#ec5)oints/ Indicates t#e o)erator is to
)erform automatic restart4 %ut from ste) start not from a c#ec5)oint4 asRNC actua""' su))resses an' c#ec5)oint faci"it' re,uested !it#in t#e ca""ed)rogram*
RDNR .No automatic restart4 c#ec5)oints a""o!ed/ Indicates t#eo)erator is not to )erform automatic restart if t#e ste) fai"s* -o!e3erc#ec5)oints can %e used for deferred restart* RDNC .No automatic restart4 No c#ec5)oints/ Indicates t#e o)erator isnot to )erform automatic restart if t#e ste) fai"s4 and if deferred restart is usedt#en t#e (o% ste) must restart from t#e %eginning as an' c#ec5)oint faci"it'
re,uested in t#e ca""ed )rogram !i"" %e su))ressed*
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
49/78
d
S
R
C
REGION
S)ecifies t#e amount of storage in mega%'tes or 5i"o%'tes t#is ste) canuse*
S'nta$ REGION*)rocste)name.3a"?43a"2/
3a"?9 S)ecifies t#e re,uired storage in ?i"o%'tes* T#e 3a"ue is >t#roug# decima" num%ers4 from > t#roug# @8>@7* Code an
e3en num%er* If 'ou code an odd num%er t#e s'stem treats it as t#ene$t #ig#est e3en num%er*
3a"29 S)ecifies t#e re,uired storage in 2ega%'tes* T#e 3a"ue is >t#roug# M decima" num%ers4 from > t#roug# @8M* Code eit#er
e3en num%er or odd num%er*
EXEC STATE2ENT
EXEC STATE2ENT
7/23/2019 Jcl Training (7 Days)
50/78
d
S
R
C
TI2Ese t#e TI2E )arameter to s)ecif' t#e ma$imum "engt# of time t#at a (o%
ste) is to use t#e )rocessor and to find out t#roug# messages #o! muc#)rocessor time t#e ste) used*
A ste) t#at e$ceeds its a""otted time a%norma""' terminates and causes(o% termination4 un"ess an insta""ation e$it routine e$tends t#e time for t#e (o%*
S'nta$ TI2E*)rocste)nameU.minutes4seconds/VU>MM8 V
UNOLI2IT V U2AXI22 V
2inutes 6 T#e 3a"id range of minutes is > t#roug# >@.@M7* da's/Seconds 6 T#e 3a"id range of seconds is > t#roug# >MM8 6 Indicates t#at t#e ste) can use t#e )rocessor for an
un"imited amount of timeY >MM8 "itera""' means @M #ours* CodingTI2E>MM8 is same as coding as TI2ENOLI2IT
NOLI2IT s)ecifies t#at t#e (o% can use t#e )rocessor for an un"imitedamount of time* NOLI2IT is same as t#at of TI2E>MM82AXI22 s)ecifies t#at t#e ste) can use t#e )rocessor for t#e
ma$imum amount of time* A""o!s t#e (o% to run for >@ minutes*
EXEC STATE2ENT
O)erators on I1T-EN1ELSE1ENDI Statement
7/23/2019 Jcl Training (7 Days)
51/78
d
S
R
C
11name I . re"ationa"6e$)ression/ T-EN*
*action !#en re"ationa" e$)ression is true
11name ELSE**
action !#en re"ationa" e$)ression is fa"se*
11name ENDI
T#e I statement is a"!a's fo""o!ed %' a re"ationa" e$)ression and a
T-EN c"ause* O)tiona""'4 an ELSE c"ause can fo""o! t#e T-EN c"ause*An ENDI statement a"!a's fo""o!s t#e ELSE c"ause4 if )resent4 or t#e
T-EN c"ause*
Contd00**
Construct
O)erators on I1T-EN1ELSE1ENDI Statement
7/23/2019 Jcl Training (7 Days)
52/78
d
S
R
C
T#en T-EN c"ause s)ecifies t#e (o% ste)s t#at t#e s'stem)rocess !#en t#e e3a"uation of t#e re"ationa" e$)ression for t#e Istatement is true*
T#e ELSE c"ause s)ecifies t#e (o% ste)s t#at t#e s'stem )rocess!#en t#e e3a"uation of t#e re"ationa" e$)ression is fa"se*
T#e s'stem e3a"uates t#e re"ationa" e$)ression at e$ecution time*
T#e EDNI statement indicates t#e end of t#e
I1T-EN1ELSE1ENDI statement*
Contd 00**
Construct
O)erators on I1T-EN1ELSE1ENDI Statement
7/23/2019 Jcl Training (7 Days)
53/78
d
S
R
C
T#e I1T-EN1ELSE1ENDI statement constructs u) to a ma$imum of >"e3e"s*
Consists of 11 in co"umns > and @ and ma' #a3e fo""o!ing fie"ds
Name.o)tiona"/O)eration.I4ELSE or ENDI/T#e re"ationa" e$)ression fie"d
T#e re"ationa" e$)ression fo""o!s t#e I o)eration fie"d after at "east oneinter3ening %"an5 and is fo""o!ed %' at "east one %"an5 %efore t#ec#aracters T-EN*E*g*
11 I RCZM T-EN
:ou can enc"ose t#e re"ationa" e$)ression in )arent#esis*
11 I .RCZM/ T-EN
Contd00**
Construct
O)erators on I1T-EN1ELSE1ENDI Statement
7/23/2019 Jcl Training (7 Days)
54/78
d
S
R
C
11JOBNA2E JOB 00000000011STE;> EXEC ;G2;DATE110000*110**11STE;@ EXEC ;G2ADD1100
1100**11ITEST I .STE;>*RCZM STE;@*RC[7/ T-EN11STE; EXEC ;G200*110011 ELSE
11STE;M EXEC ;G2001100000110000011ITEST ENDI
Construct
O)erators on I1T-EN1ELSE1ENDI Statement
7/23/2019 Jcl Training (7 Days)
55/78
d
S
R
C
A re"ationa" e$)ression consists of
Com)arison o)eratorsLogica" o)eratorsNOT.\/ o)eratorsRe"ationa" e$)ression 5e'!ords
Construct
O)erators on I1T-EN1ELSE1ENDI Statement
7/23/2019 Jcl Training (7 Days)
56/78
d
S
R
C
Com)arison o)erator
GT or ZLT or [NG or \ZNL or \[E= or
NE or \GE or ZLE or [
Logica" o)eratorAND or
OR or ]
NOT o)eratorNOT or \
Construct
O)erators on I1T-EN1ELSE1ENDI StatementC
7/23/2019 Jcl Training (7 Days)
57/78
d
S
R
C
E3a"uation of o)erators
NOT !i"" %e e3a"uated first fo""o!ed %' com)arison o)erator and
fina""' "ogica" o)erators
Re"ationa" E$)ression ?e'!ords
RC indicate a return 5e'!ord
ABEND indicate an a%end condition occurred
\ABEND indicate no a%end condition occurred
ABENDCC indicate a s)ecific s'stem or user a%end code
RN indicate t#at t#e s)ecified ste) e$ecuted
\RN indicate t#at t#e s)ecified ste) did not e$ecute
Construct
O)erators on I1T-EN1ELSE1ENDI StatementC t t
7/23/2019 Jcl Training (7 Days)
58/78
d
S
R
C
RC indicates t#at t#e re"ationa" e$)ression tests a return code* E3a"uatet#e return code %' coding RC4 a com)arison o)erator4 and a
numeric 3a"ue*
E*g* .RC7/ test for a return code e,ua" to 7
ABEND or ABEND TRE indicates t#at t#e re"ationa" e$)ression tests
for an a%end condition t#at occurred during )rocessing of t#e (o%
)rior to t#e time of e3a"uation*
\ABEND of ABENDALSE indicates t#at t#e re"ationa" e$)ression test
t#at an a%end condition did not occur during t#e )rocessing of t#e
(o% )rior to t#e time of e3a"uation*ABENDCCS$$$$ of ABENDCC$$$$ indicates t#e re"ationa"
e$)ression tests for a s'stem a%end com)"etion code .S$$$$/ or a
user defined a%end com)"etion code.$$$$/*
Construct
CONDITIONAL EXECTION O JOB STE;S
7/23/2019 Jcl Training (7 Days)
59/78
d
S
R
C
I COND TRE B:;ASS
I COND ALSE EXECTE
COND9 In3o"3es testing condition codes from )re3ious (o% ste)s to
determine f"o! of e$ecution.!#et#er or not to e$ecute a )rogram/
If t#e s)ecified condition is true t#e ste) is %')assed
Condition ma' range from 8 to M8
Condition code are s)ecified on t#e COND )arameterAs coded on t#e EXEC statement00*
11STE;> EXEC ;G2TEST4COND.M4LE/
S'nta$
COND..num%er4com)arisonU4ste)nameV/400/
Ste)name defau"t to an' )re3ious ste)
) to 7 conditions ma' %e coded on one COND )arameter
Can %e coded on (o% statement and o3errides a"" condition on EXEC
statements*
11JOBNA2E JOB 0**4COND.M4LE/
CONDITIONAL EXECTION O JOB STE;S
7/23/2019 Jcl Training (7 Days)
60/78
d
S
R
C
7/23/2019 Jcl Training (7 Days)
61/78
d
S
R
C
JCL e$ercise
>* Ca"" t#e )rogram IEBR>M for t#is ste) ca""ed STE;>4 )assing t#e
fo""o!ing information4 PJANAR: > @88 EXA2;LES&4 t#e ste)
s#ou"d ta5e no "onger t#an >8 seconds*
@* STE;@ ca""s t#e )rogram IEB;DTE4 )assing it t#e o)tion P2OD&4%ut t#is run 'ou s#ou"d ensure t#is ste) is %')assed4.use COND /
* T#e t#ird and fina" ste)4 STE; s#ou"d in3o5e t#e )rogram
IRTNOG* sing t#e I statement on"' run t#is ste) if STE;> runs
O?*
M* ina""' t#is (o% s#ou"d use no more t#an @ minutes of C; time4
%ut if an' ste) in t#e (o% sets a return code of 4 t#en t#e (o%
s#ou"d terminate4.use COND /
LAB ;ro%"em
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
62/78
d
S
R
C
11DDNA2E DD 000*
F DSN
7/23/2019 Jcl Training (7 Days)
63/78
d
S
R
C
;OSITIONAL ;ARA2ETERS ON T-E DD STATE2ENT
11INDATA DD F 4DL2
* DATA
*instream data for in)ut
*
*
11F or 11F or 11 .end of data/
or t!o c#aracter demi"iter
11INDATA DD D22:
. ata e t o / S
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
64/78
d
S
R
C;OSITIONAL ;ARA2ETERS ON T-E DD STATE2ENT
in6stream data set fo""o!s t#at contains no JCL and end of in6
stream data set is indicated !it# 11 or 1F or as s)ecified on t#e DD F
statement DL2 )arameter
DATA
in6stream data set fo""o!s t#at can contain JCL and end of in6
stream data set must %e indicated !it# 1F or as s)ecified on t#e DD
DATA statement*
D22:
a"" I1O o)erations to %e %')assed4 and de3ice a""ocation4 s)ace
a""ocation4 and data set dis)osition to %e ignored*
. /
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
65/78
d
S
R
C
?E:+ORD ;ARA2ETERS ON T-E DD STATE2ENT
11S:ST@ DD DSNOTTA;E411 DIS;.4CATLG/4NITTA;E
11 4
11 LABEL.4NSL4RET;D/
DSN or DSNA2E S)ecifies t#e name of t#e dataset
DIS; S)ecifies t#e status of t#e dataset to t#e s'stem and
te""s t#e s'stem !#at to do !it# t#e dataset after termination of t#e
(o% ste) or (o%
NIT Te""s t#e s'stem to )"ace t#e dataset on a s)ecific
de3ice4 a certain t')e or grou) of de3ices4 or t#e same de3ice as an
ot#er dataset
LABEL S)ecifies t#e t')e of "a%e"4 t#e re"ati3e fi"e num%er n
t#e ta)e4 and !#et#er t#e data set is )rotected for in)ut or out)ut
. /
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
66/78
d
S
R
C
?E:+ORD ;ARA2ETERS ON T-E DD STATE2ENT
11S:ST@ DD DSNOTDATA411 DIS;.4CATLG/4NITS:SADA4
11 4S;ACE.TR?4.>4>4@//4
11 DCB.LRECL784BL?SIHE7884REC2B/
11S:SOT DD S:SOTF
S;ACE sed to re,uest s)ace for a ne! dataset on a direct access
3o"ume
7/23/2019 Jcl Training (7 Days)
67/78
d
S
R
C
DDNA2E IELD ON T-E DD STATE2ENT
11;RINT DD DSN2:DATA*OT;T4DIS;S-R11DD> DD DSNTESTDATA4DIS;S-R
11S:ST> DD DSNTSO88>*IN;T*DATA4DIS;S-R
11 DD DNSTSO88>*IN;T>*DATA DSN4DIS;S-R
ddname s#ou"d %e uni,ue !it#in t#e (o% ste)
ddname is omitted if t#e DD statement defines a data set t#at is
concatenated to t#e dataset of t#e )receding DD statement
)rogrammer su))"ies a ddname in t#e )rogram for eac# data set
to %e used
E$am)"e*
COBOL SELECT INILE ASSIGN TO DD>
;L1I READ ILE.;RINT/
ASSE2BLER ILEIN DCB DDNA2ES:ST>
. /
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
68/78
d
S
R
C
RLES OR CONCATENATION
2a$imum of @ se,uentia" datasets2a$imum of > )artitioned datasets
;artitioned and se,uentia" dataset can not %e mi$ed
2em%ers of )artitioned datasets are considered as se,uentia"
datasets
REC2 must %e t#e same on eac# datasets %eing concatenated
. /
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
69/78
d
S
R
C
DSNA2E ;ARA2ETER ON T-E DD STATE2ENT
T#e name of a dataset can %e9
sim)"e data set name
,ua"ified data set name
)artitioned data set name
tem)orar' data set name
referenced from an ear"ier DD statement
. /
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
70/78
d
S
R
C
SI2;LE DATASET NA2E
Consists of > to 7 c#aracters
T#e first c#aracter must %e a")#a%etic or a nationa".K44/
E$am)"es9
11DD> DD DSNA>@M400**
11DD@ DD DSNABC400**
11DD DD DSNA400**
11DDM DD DSNABX400*
. /
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
71/78
d
S
R
C=ALIIED DATASET NA2E
Consists of mu"ti)"e data set names se)arated %' )eriods
Eac# name !it#in t#e ,ua"ified name can %e > to 7 c#aracters !it#
first an a")#a%etic or nationa"
T#e entire ,ua"ified name can inc"ude as man' as MM c#aracters
inc"uding )eriods
E$am)"es9
11DDA DD DSNTSO88>*DATA*IN;T400**
11DDB DD DSNDSRC8>@*ABC*DATA*IN;T400**
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
72/78
d
S
R
C
;ARTITIONED DATASET NA2E
Consists of a )artitioned dataset name !it# a mem%er name
enc"osed in )arent#esis
T#e )artitioned data set name !i"" fo""o! t#e ru"es of t#e sim)"e
data set name or ,ua"ified data set name
T#e mem%er name can %e > to 7 c#aracters
T#e entire data set name can inc"ide as man' as MM c#aracters
.e$c"uding t#e mem%er name/
E$am)"es911DD@ DD DSNTSO88>*IN;T*DATA.2E2>/400**
11DD DD DSNDSRC8>@*;A:ROLL*DATA.TESTDATA/40
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
73/78
d
S
R
C
TE2;ORAR: DATA SET NA2E
T#ere are t!o !a's to s)ecif' a tem)orar' data set name on t#e DDstatement9
Code t#e DSN )arameter using t!o am)ersands./
Omit t#e DSN )arameter from t#e DD statement in !#ic# case t#e
s'stem !i"" assign a name
A tem)orar' data set can %e s)ecified as a )artitioned data set
T#e entire data set name can %e > to 7 c#aracters .e$c"uding t#e
mem%er name/
E$am)"es9
11DD> DD DSNSORTOT400**
11STE;B DD DSNTE2;.2E2>/400**
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
74/78
d
S
R
C
REERENCE RO2 A ;RE
7/23/2019 Jcl Training (7 Days)
75/78
d
S
R
C
DATA SET REERENCED RO2 A ;RE
7/23/2019 Jcl Training (7 Days)
76/78
d
S
R
C
DIS; ;ARA2ETER ON T-E DD STATE2ENT
INITIAL NOR2AL ABNOR2AL
DIS; .NE+4 DELETE4 DELETE /
OLD4 ?EE;4 ?EE;
S-R4 ;ASS4 CATLG
2OD4 CATLG NCATLG
NCATLG
A"" su% )arameters on !it#in t#e DIS; )arameter are )ositiona"*
INITINAL STATS is t#e status of t#e data set at t#e %eginning of t#e
ste)
NOR2AL TER2INATION indicates t#e dis)osition of t#e data set !#ent#e (o% terminates norma""'
ABNOR2AL TER2INATION indicates t#e dis)osition of t#e data set
!#en t#e (o% a%norma""' terminates*
DD .Data Definition/ STATE2ENT
7/23/2019 Jcl Training (7 Days)
77/78
d
S
R
C
NIT ;ARA2ETER
NIT.DE< ADDRESS4 NIT CONT4 DEER/
DE< T:;E
GRO; NA2E
DE
7/23/2019 Jcl Training (7 Days)
78/78
dS
R
C
AINIT:
Re,uests t#at t#e s'stem a""ocate different data sets residing on
different remo3a%"e 3o"umes to t#e same de3ice during t#e
e$ecution of t#e ste)
E$am)"es of NIT )arameter
11DD> DD DSN2:DS*DATA4DIS;OLD4NITS:SDA
11DD@ DD DSNENTR:*JCL4DIS;S-R4NITTA;E400*
11DD DD DSNABC*DE4DIS;S-R4NIT@7400*11DDM DD DSNGR;*DATA4DIS;S-R4NIT.M@844DEER/400*
11DD DD DSNABC*DE4DIS;.4CATLG/4NITADD:40*