Go BackJCL: Fundamentals

Synopsis
JCL: Fundamentals covers the basic principles and practices needed by a new user to understand and code commonly used MVS Job Control Language statements.

The material in this course applies to all releases of the MVS operating system since the original release of MVS/ESA. The majority of the concepts presented can be used to code JCL in all releases of MVS.

Information that is specific to a particular release of MVS (for example: OS/390 MVS) will be clearly labeled. Otherwise, when you see MVS in this course, it refers to MVS/ESA and all subsequent releases.

Audience
This course is for end users, managers, programmers, JCL specialists, technical support staff and operations staff who must code and/or read JCL.

Time
6 - 11 hours

Product Code: JCL301
After completing this course, the student should be able to:
 
Explain what JCL is
Describe simple jobstreams and their output
Define the basic JCL statements, parameters and their coding rules
Build simple jobstreams
Identify what procedures are and how to use them
Correct simple JCL errors

JCL Overview
Describes what JCL is and what it looks like, what a job is and how JCL relates to a program.
 
What is JCL?
What JCL is and what it looks like.  
JCL vs. Programs
What a program is and how it differs from JCL.


Jobstreams
Introduces jobstreams and JCL procedures. Looks at each principal type of JCL statement to see what functions it performs.  Describes the syntax rules that apply to coding JCL statements and parameters.
 
JCL Statements
What JOB, EXEC, DD and null statements look like.
JCL Procedures
How a program differs from a procedure.
General Syntax Rules
Fields that compose JCL statements.


Building Jobstreams
Provides a structured approach to writing jobstreams and the essential JCL statements. Describes the fields and parameters needed in the sample jobstream.  Provides definitions for every additional field and some parameters.
 
Diagramming the System Flow
Steps involved in starting to write a simple jobstream.  How and why each step is performed.
Outlining the Jobstream
Coding stubs as the next step in writing a simple jobstream.  How and why outlining is performed.  Rules for coding Job, step and DD names.
The JOB Statement
Format and function of the JOB statement.  Fields: jobname, operation and parameter.  Commonly-used parameters: accounting, programmer's name, CLASS, MSGCLASS, MSGLEVEL, NOTIFY, TIME and TYPRUN.   
The EXEC Statement
Format and function of the EXEC statement.  Fields: stepname, operation and parameter.  Commonly-used parameters: PGM, PROC and PARM.  
The DD Statement
Format and function of the DD statement.  Fields: DDname, operation and parameter.  Commonly-used parameters: *, DATA, DUMMY and SYSOUT.


Defining Data Sets in Your Jobstreams
Describes the parameters to access existing data sets and to create new data sets.
 
Accessing a Cataloged Data Set
The system catalog.  Using the DSNAME and DISP parameters to access a cataloged data set.
Accessing a Non-Cataloged Data Set
Label information for disk and tape data sets. UNIT, VOLUME and LABEL parameters to access a non-cataloged data set.
Creating a New Data Set
Parameters needed to create tape and disk data sets. DCB and SPACE parameters when creating new data sets.
Creating a New Data Set Under SMS
DATACLAS, STORCLAS and MGMTCLAS constructs. Secondary parameters to override the constructs.  Effects of an ACS exit routine.


Procedures
Describes how to use, modify and override procedures.
 
Using Procedures
How procedures are merged into your jobstream.  Modifying procedures with symbolic parameters.  Overriding DD statements within a procedure.


Looking at your Output
Describes the output generated after a job is submitted and executed.  Explains how to test your jobstream for syntax errors.  Provides practice in finding and fixing JCL errors.
 
JCL Output
Sections that make up the JCL printout.  
Scanning Your JCL
Using the TYPRUN parameter to scan JCL for syntax errors.  The JCL printout from scanning a job.
Finding and Fixing Errors
Correction of errors in JCL statements and parameters.


 

Go Back