651-905-3729 Microsoft Silver Learning Partner EC Counsel Reseller compTIA Authorized Partner

Advanced MVS JCL and Utilities Virtual Classroom Live June 24, 2024

Price: $1,900

This course runs for a duration of 3 Days.

The class will run daily from 10 AM ET to 5 PM ET.

Class Location: Virtual LIVE Instructor Led - Virtual Live Classroom.

Enroll today to reserve your spot!

Space is limited. Enroll today.

Enroll Now


This course is designed to help intermediate to advanced system programmers, operators, and application programmers use and code JCL procedures effectively, including analyzing condition codes and system error messages that provide clues to the cause of JCL and utility control statement errors. Effective procedure coding techniques are stressed, such as use of symbolic parameters, DDNAME operands, and other coding techniques to streamline the required JCL. Use of MVS and vendor utility programs are used to demonstrate advanced program, library, and system management techniques. This course includes lecture components and hands-on labs to give each student the opportunity to understand and use JCL language for production processing.


  • This course is designed for programmers.


  • Job Control Language Essentials Review
  • New Job Control Language Features
  • The IEBCOPY Utility
  • The Sort Utility
  • Advanced Printing Techniques
  • Using and Writing Procedures
  • The IDCAMS Utility
  • MVS Utilities
  • Tape Processing
  • Using the TSO TMP and REXX with Batch
  • UNIX System Services
  • FTP Essentials
  • Miscellaneous Topics

Course Overview

I. Job Control Language Essentials Review

  • A. JCL Overview and Syntax Review
  • B. JCL Overview and Syntax Review
  • C. Classic JCL Statement Types
  • D. New JCL Statement Types
  • E. JCL Statement Categories
  • F. JCL Syntax: Fields
  • G. JCL Syntax: Parameters
  • H. JCL Syntax: Comments
  • I. JCL Syntax: Continuation
  • J. JES (Job Entry Subsystem) Statements
  • K. JES JCL Statements L. JOB Statement Review
  • M. JOB Statement: Jobname
  • N. JOB Statement: Accounting Info
  • O. JOB Statement: Programmer-Name
  • P. JOB Statement: Apostrophe Rules
  • Q. JOB Statement: Keyword Parameters
  • R. JOB Statement: CLASS Keyword
  • S. JOB Statement: MSGCLASS Keyword
  • T. JOB Statement: MSGLEVEL Keyword
  • U. JOB Statement: NOTIFY Keyword
  • V. JOB Statement: TYPRUN Keyword
  • W. JOB Statement: RESTART Keyword
  • X. JOB Statement: Other Keywords
  • Y. More JOB Keyword Parameters
  • Z. MVS Utilities: IEFBR14
  • AA. Lab: Create a JOB JCL Statement
  • BB. LABJOB1 Solutions
  • CC. EXEC Statement
  • DD. Big Picture: Compile & Link Process
  • EE. EXEC Statement: Keyword Parameters
  • FF. EXEC Statement: PGM Keyword
  • GG. EXEC Statement: PROC Keyword
  • HH. Understanding Error Types
  • II. Understanding Return Codes
  • JJ. EXEC Statement: COND Keyword
  • KK. EXEC Statement: PARM Keyword
  • LL. Using PARM in a COBOL Program
  • MM. EXEC Statement: REGION Keyword
  • NN. EXEC Statement: TIME Keyword
  • OO. More EXEC Keyword Parameters
  • PP. Lab: JCL EXEC
  • QQ. Optional Lab: JCL EXEC
  • RR. DD Statement
  • SS. DD Statement: DDNAME
  • TT. Referring to the DDNAME in COBOL
  • UU. DD Statement: *
  • VV. DD Statement: DATA
  • WW. DD Statement: DUMMY
  • XX. MVS Utilities: IEBGENER
  • YY. Example IEBGENER job step:
  • ZZ. LABDD1: In-stream & SYSOUT data
  • AAA. LABDD1 Solution
  • BBB. DD Statement: Keyword Parameters
  • CCC. DD Statement: SYSOUT=
  • DDD. SYSOUT Examples
  • EEE. DD Statement: DSN=
  • FFF. DD Statement: DISP=
  • GGG. DD Statement: UNIT=
  • HHH. DD Statement: VOL= & VOL=SER=
  • III. DD Statement: LABEL=
  • JJJ. DD Statement: RETPD and EXPDT
  • KKK. DD Statement: LABEL= Examples
  • LLL. DD Statement: DCB=
  • MMM. DD Statement: SPACE=
  • NNN. Understanding DASD Extents
  • OOO. DD Statement: SPACE= Examples
  • PPP. DD Statement: AVGREC=
  • QQQ. DD Statement: LIKE=
  • RRR. DD Statement: LIKE=, REFDD= Examples
  • SSS. SMS-managed Dataset Keywords 
  • TTT. LABDD2: Reading from DASD
  • UUU. LABDD3: Writing to DASD
  • VVV. Data Set Concatenation
  • WWW.Special DD Names
  • XXX. JOBLIB Statement
  • YYY. JOBLIB Statement: Example
  • ZZZ. STEPLIB DD Statement
  • AAAA. DD Statement: Backward Reference

II. New Job Control Language Features

  • A. IEBCOPY Documentation
  • B. Greater than 100 character Parms in JCL
  • C. PARMDD1 JOB: PARMDD Example
  • D. Instream Symbol Substitution
  • E. Job Execution Controls - Overview
  • F. Simple Job Group Example
  • G. JOBGROUP Statement Syntax
  • H. JOBGROUP Statement Keywords
  • I. GJOB Statement
  • J. JOBSET Statement
  • K. Dependencies: BEFORE, AFTER, CONCURRENT
  • L. Dependencies: BEFORE, AFTER NAME=
  • M. Dependencies: BEFORE, AFTER WHEN=
  • N. BEFORE, AFTER WHEN= Operators
  • O. Dependencies: BEFORE, AFTER ACTION=
  • P. Dependencies: BEFORE, AFTER OTHERWISE=
  • Q. Dependencies: CONCURRENT
  • R. Concurrent Example
  • S. Dependencies: SCHEDULE JCL Statement
  • T. JOBGROUP and SCHEDULE Example
  • U. SYSDSN ENQ Downgrade in JCL
  • V. DSENQSHR Example
  • W. JES-Independent JCL
  • X. HSM Parallel Batch Recall III

III. The IEBCOP Y Utility

  • A. IEBCOPY Documentation
  • C. IEBCOPY Parameters
  • D. IEBCOPY Statement Types
  • E. COPY Control Statement F
  • . IEBCOPY Operation Types
  • G. SELECT Control Statement
  • H. EXCLUDE Control Statement
  • I. IEBCOPY Return Codes
  • J. IEBCOPY Examples

IV. The Sort Utility

  • A. SORT Overview
  • B. Example Sort JCL
  • C. SORT DD Statements
  • D. SORT control statements
  • E. SORT Operands
  • F. SORT: Lab

V Advanced Printing Techniques

  • A. OUTPUT Statement
  • B. OUTPUT Statement Example
  • C. OUTPUT Statement: Lab (optional)

VI Using and Writing Procedures

  • A. JCLLIB Statement
  • B. INCLUDE Statement
  • C. INCLUDE Statement: Lab
  • D. Procedures E. Procedures: Symbolic Parameters
  • F. Procedures: Statement Overrides
  • G. Procedures: Order of Overrides
  • H. Procedures: Adding In-stream data
  • I. Procedures: Symbolics Example
  • J. LABPRCxx: Create a Procedure
  • K. LABPRC1: Use a Procedure
  • L. LABPRC2: An In-stream Procedure
  • M. SET Statement
  • N. SET Statement: Example
  • O. SET Statement: Lab

VII The IDCAMS Utility

  • A. IDCAMS Utility Program Overview
  • B. IDCAMS Documentation C. IDCAMS Functional Commands
  • D. IDCAMS Cmd Language Syntax
  • E. IDCAMS Syntax Example F. DEFINE Command Overview
  • G. VSAM Terminology Review
  • H. VSAM KSDS Datasets
  • I. Define Cluster command
  • J. Selected Define Cluster Parameters
  • K. Define Alternateindex command
  • L. Define AlternateIndex Parameters
  • M. Define AlternateIndex Example
  • N. Define Path Command
  • O. Build Index Command
  • P. Complete BldIndex Example
  • Q. Delete Command R. Delete Examples
  • S. Repro Command
  • T. Print Command
  • U. Listcat Command
  • V. Modal Commands
  • X. Optional IDCAMS Lab LABVSAM2
  • Y. Generation Data Sets
  • Z. DD Statement: Generation Data Sets
  • AA. Example: Generation Data Sets
  • BB. Lab: Generation Data Sets
  • CC. System Programmer Tasks w/ IDCAMS
  • DD. Alter Management Class Example
  • EE. Define Alias Example
  • FF. Define User Catalog Example
  • GG. Define Page Dataset Example
  • HH. Backup the IODF Example

VIII MVS Utilities

  • A. Typical JCL for MVS Utilities
  • B. IBM Data Set Utilities
  • C. IEBDG: Generate Test Data
  • D. IEBDG: Generate Test Data Example
  • E. IEBUPDTE: Update a PDS
  • F. IEBUPDTE: Update a PDS Example
  • G. IBM System Utilities

IX Tape Processing

  • A. Tape Device Fundamentals
  • B. Tape Device Details
  • C. Tape DD Statement Review
  • D. Tape DD Statement Example
  • E. DD Statement Review: UNIT=
  • F. DD Statement: UNIT= Examples
  • G. DD Statement: VOL= & VOL=SER=
  • H. DD Statement: VOL= Examples
  • I. Minimizing Tape Units in a Job Step
  • J. Tape Management Subsystems
  • K. TMS (CA-1) Overview
  • . TMS JCL Considerations
  • M. TMS Expiration Dates
  • N. TMS JCL Examples
  • O. Tape Mapping Utility Overview
  • P. Using the IBM Ditto Utility
  • Q. Mapping a Tape Using Ditto
  • R. Copying a Tape Using Ditto
  • S. Initializing Tape Volumes

X Using the TSO TMP and REXX with Batch

  • A. The TSO Terminal Monitor Program
  • B. TSO Terminal Monitor Program Example
  • C. Running REXX from Batch
  • D. Submitting JCL From REXX

XI UNIX System Services

  • A. Issue UNIX cmds from BATCH JCL
  • C. BPXBATCH Example: Shell Script
  • D. BPXBATCH Example: Shell Cmd
  • E. BPXBATCH Alternatives
  • F. Pro’s and Con’s of USS access via Batch
  • G. Using the Irish Commands
  • H. Moving Data HFS <-> MVS


Students must be familiar with basic JCL coding, as well as use of ISPF edit and an output retrieval program such as SDSF.

Other Available Dates for this Course

Virtual Classroom Live
October 07, 2024

3 Days    10:00 AM EST - 5:00 PM EST
view class details and enroll