Mainframe JCL Fundamentals
Test your knowledge of IBM mainframe Job Control Language (JCL) including JOB and DD statements, parameters, procedures, symbolic parameters, GDG datasets, and conditional processing.
Questions
What is correct?
- A REGION parameter on an EXEC statement, overrides the REGION parameter on the JOB
- A REGION parameter on an EXEC statement, limits the space available for that step, but
- A REGION parameter on an EXEC statement, is only taken into consideration if there is no
- The sum of all REGION parameters on EXEC statements, must be equal to the REGION
Which of the following concerning the COND parameter are true on EXEC statement level? (2 answers)
- The COND parameter always indicates that if its condition is met, the step is NOT executed.
- When adding the COND parameter to an EXEC statement that calls a procedure, this COND
- With the COND parameter, we can only check return codes.
- The COND parameter can check the return codes of multiple steps, but as soon as one of
What are the correct values for the DSN parameter of a temporary data set?
- &NAME&(TEMP)
- &&TEMP(NAME)
- &&NAME
- &NAME
When to use DISP=MOD?
- For both sequential and partitioned datasets to be extended or created.
- Only for existing datasets to be extended.
- For all secured sequential datasets to be extended.
- Only for sequential datasets to be extended or created.
Which of the following equations are correct?
- DISP=(,PASS) is equivalent to DISP=(NEW,PASS,KEEP)
- DISP=(,,KEEP) is equivalent to DISP=(NEW,DELETE,KEEP)
- DISP=(,,CATLG) is equivalent to DISP=(OLD,CATLG,CATLG)
- DISP=(OLD,,) is equivalent to DISP=(OLD,KEEP,KEEP)
Some parameters have sub-parameters. These can be both positional or keyword sub-parameters. Suppose TU00001 is the programmer’s name, ATUT000 is the programmer's account number and it is a default value. Given this information, which statements are correct:
- //TU00001T JOB (ATUT000,,,,,,,,),TU00001,CLASS=7,MSGCLASS=X
- //TU00001T JOB (ATUT000),’TU00001’,CLASS=7,MSGCLASS=X
- //TU00001T JOB TU00001,’(ATUT000)’,CLASS=7,MSGCLASS=X
- //TU00001T JOB ,(ATUT000),CLASS=7,MSGCLASS=X
Indicate the correct answers about the OUTPUT statement
- Multiple OUTPUT statements can be coded for 1 single job step.
- The OUTPUT statement can be used to control the authorisation of the submitting user,
- The OUTPUT statement at job level must be coded before the JOB statement.
- The OUTPUT statement can not override the MSGCLASS parameter on the JOB statement.
Which of the following DD statements to create a new data set is correctly written?
- //DD1 DD DSN=TBISUSR.TU00001.DATA1,DISP=(NEW,KEEP),DSORG=PS,LRECL=80,
- //DD2 DD DSN=TBISUSR.TU00001.DATA2(MBR1),DISP=(NEW,KEEP),DSORG=PO,
- //DD3 DD DSN=TBISUSR.TU00001.DATA3(MBR2),DISP=(NEW,KEEP),DSORG=PO,
- //DD4 DD DSN=TBISUSR.TU00001.DATA4,DISP=(NEW,KEEP),DSORG=PS,
Which parameter can not be used on a JOB statement:
- MSGCLASS
- COND
- MGMTCLAS
- NOTIFY
The following GDG datasets exist: TBISUSR.TU00001.GDG.G0003V00 TBISUSR.TU00001.GDG.G0004V00 TBISUSR.TU00001.GDG.G0005V00 TBISUSR.TU00001.GDG.G0006V00 TBISUSR.TU00001.GDG.G0007V00 Which statement will always create: TBISUSR.TU00001.GDG.G0008V00 ?
- //DD1 DD DSN=TBISUSR.TU00001.GDG(+1),DISP=(NEW,CATLG),LRECL=80,
- //DD1 DD DSN=TBISUSR.TU00001.GDG(+1),DISP=SHR
- //DD1 DD DSN=TBISUSR.TU00001.GDG(8),DISP=(NEW,CATLG),LRECL=80,
- //DD1 DD DSN=TBISUSR.TU00001.GDG(8),DISP=SHR
Which of the following conditional expressions can not be used with an IF-THEN-ELSE-ENDIF construction?
- STEP.RC NE 8
- ABEND = FALSE
- STEP.CC = U4038
- STEP.RUN EQ TRUE
Indicate the correct answers: A concatenation of datasets...
- ... can be used for input, to use both DD entries describing sequential datasets and DD
- ... can be used to write multiple output datasets.
- ... can contain a dummy data set in the input, which will indicate the end of the input.
- ... stored on different device types, can not be used for input.
When calling a procedure we can change - in different ways - this procedure. Which is the most complete statement?
- We can override parameters on EXEC statements and add DD statements.
- We can override, nullify and add parameters on all statements and add DD and/or OUTPUT
- We can add and override parameters to all statements, but can only nullify parameters
- We can nullify, override and add parameters to all statements, but can only add DD statements.
Consider the following: // SET GROUP=TBIS,DIV=USR,SUBJ=JCL,TYPE=DATA,NMBR=1 Which of the following structures containing symbolic parameters will result in: TBISUSR.JCLCRS.DATA1?
- &GROUP&DIV.&SUBJCRS.&TYPE&NMBR
- &GROUP&DIV..&SUBJ.CRS.&TYPE&NMBR
- &GROUP.&DIV..&SUBJ.CRS.&TYPE.&NMBR.
- &GROUP.&DIV..&SUBJ.CRS..&TYPE.&NMBR.
What is the purpose of REGION key word ?
- specifies the amount of space required by a step
- specifies the amount of space required by a job
- both of the above
- none of the above
How can values be passed from the job stream to an executable program?
- Through the VALUE parameter
- Through the PARM keyword
- Through the PGM parameter
- All of the above
What parameter of the job statement is used to limit the CPU time consumed by the job?
- EXECMAX
- LIMIT
- TIME
- RUNTIME
What parameters can be used to limit the number of records written to a SYSOUT dataset ?
- LIMIT
- SIZE
- MAX
- OUTLIM
How can a job’s execution priority be modified ?
- PRTY parameter
- JOBCLASS parameter
- RUNTIME parameter
- PRIQTY parameter