mainframe jcl keyword parameters part - 2
TRANSCRIPT
MAINFRAME SREFRESHER JCL PART-2
( KEYWORD PARAMETRS )
JANAKI RAM SOMISETTY
MAINFRAMES REFRESHER PART-2 JCL
CLASS
It is used to assign the properties to the job. Suppose if you submit at the job at the same time which job has to run first time and which job has to run 2nd time and so on will be decided by class parameter.
Note This class parameter priority is set by MVS Admin Team
It has single character from A-ZEach class has properties on resources over the
other classes
MAINFRAMES REFRESHER PART-2 JCL
Real Time Examples
Class = P----- Production Class Class = M---- Model/UAT Class Class = I ----- SIT Class
A – Short Running ClassB – Long Waiting ClassC – Long Running Class
In test region more users submit their jobs, so more classes required.
In SIT/UAT/PROD most of jobs are submitted one after the other.
MAINFRAMES REFRESHER PART-2 JCL
MSGCLASS
It is another keyword parameter which is used to route diagnostic messages i.e (pass or fail) to specify destination.
Destination can be auxiliary , printer and spool
EX MSGCLASS = A ----------- SPOOL MSGCLASS = B ---------- PRINT MSGCLASS = C ---------- SAR TOOL
MAINFRAMES REFRESHER PART-2 JCL
MSGLEVEL
It is another keyword parameter, which is used to control volumes of the messages .
Message level contains of two sub parameters (STMTS,MSGS)
STMTS is used to specify type of message, where as MSG is used to specify status of job i.e normal or
abnormal.
MAINFRAMES REFRESHER PART-2 JCL
STMTS CONSISTS OF 0,1,2
0 -- Is for job related messages 1-- Is for all messages 2- Is for DD or activity related
MSG CONSISTS OF 0,1
0 --- Normal 1--- Abnormal
By default (1,1)
MAINFRAMES REFRESHER PART-2 JCL
PRIORITY
It is used to set the priority to the jobs by giving specific values ranging from 0 to 14
When we have multiple jobs with same class parameter then the priority comes in to consideration.
PRTY = 14 -- Highest PriorityPRTY = 0 --- Lowest Priority
MAINFRAMES REFRESHER PART-2 JCL
EX
Job1 Job2 Job3Class=X, Prty=7 Class=X,Prty=6 Class=X,Prty=9
Then the job swill be executed in the following sequence job3, job1 and job 2. When have CLASS,PRTY parameters same for all jobs then JOBID comes into consideration. JOBLIB is generated by job entry subsystem (JES), it is the processor in MVS.
MAINFRAMES REFRESHER PART-2 JCL
NOTIFY
To which user id the job has to be notification after successful or unsuccessful completion.
Successful completion means MAXCC = 0 (or) 04 unsuccessful completion means MAXCC > 04.
If it is not coded then user has to check the status of the job from the spool.
It has two methods. NOTIFY = USERID------ When userid is given then it
will notify to the given user.
NOTIFY = &SYSUID----- When &SYSUID is given then it will it replace current USERID
MAINFRAMES REFRESHER PART-2 JCL
TIME
It is the CPU time given to the job. It tells us how much the time job has to run in the execution queue.
Max time for time parameter is TIME =NOLIMIT / 1440(MINS) / MAXIMUM (8.25 MONTHS)
When the given time limit exceeds we get S322 --- CPU TIME OUT ERROR
Other time related errors. S222-- USER CANCEL THE JOB S122- OPERATOR CANCEL THE JOB
MAINFRAMES REFRESHER PART-2 JCL
REGION
It is used to allocated space for entire job to run. Maximum value for region parameter is
REGION = 0 M / 0 K Region related abends S80A / S804 / S822
MAINFRAMES REFRESHER PART-2 JCL
RESTART
It is used to restart the job from from particular step by mentioning the step name.
Syntax
Restart = Step name
For Procedure
RESTART = JOBSTEP NAME. PROCSTEP NAME
MAINFRAMES REFRESHER PART-2 JCL
TYPERUN It is used for syntax error checking.SyntaxTYPRUN = SCAN It checks for syntax errors without the job execution . If there are any syntax error they are notified in spool.
TYPRUN = HOLD It checks for syntax errors if there are any syntax errors they are notified in spool, if there are no syntax errors the job will be placed in HOLD state and the HOLD state should be released by the operator (MVS admin).
TYPRUN = COPY This is default option, the entire JCL will be copied to JESJCL because of this option.
MAINFRAMES REFRESHER PART-2 JCL
COND
It is used to execute or bypass the particular step in the job.
It can be coded at both JOB level and STEP level. Coding the ‘COND’ parameter at step level is more
popular. If condition is true then the step will be bypass and
if the condition is false then the step will be executed.
MAINFRAMES REFRESHER PART-2 JCL
Syntax
COND=(RC,OPERATOR,STEPNAME) If we don’t mention any step name , then the Return Code (RC) of all previous steps will be compared.
COND=ONLY The step will be executed if any of the previous steps are abended. We code it only once in a JOB.
COND=EVEN The step will be executed independent of other steps. We code this multiple times in our JOB.
Note If we want to bypass a particular step then , code condition as COND = (00,LE)