Mainframe Oriented Batch
Job Submit using JCL Members
  Table of Contents  v-16.01.01 - jcllib01.htm 
  Introduction
  Prepare the Environment
  Configure a Batch (or JES) Server
  Submit Jobs
  Submit Jobs via Enterprise Server
  Submit Jobs via EZSUB Command
  A Very Simple Job
  Create a Customer Master File
  Mailing Labels
  Use SORT Utility, Sort by Postal Code
  Use a Callable COBOL Sort
  JCL Conditional Processing
  The Traditional COND= Construct
  The IF/THEN/ELSE Constructs
  Internal Reader, INTRDR
  Submit a Job using IEBGENER
  Submit a Job using COBOL
  Application ABENDS
  0048 - Divide by Zero
  0163 - Calculation, Non-numeric Value
  0173 - Program not Found
  Summary
  Software Agreement and Disclaimer
  Downloads and Links
  Current Server or Internet Access
  Internet Access Required
  Glossary of Terms
  Comments or Feedback
  Company Overview
The SimoTime Home Page 

Table of Contents Previous Section Next Section Introduction

This document provides a list of jobs (or JCL Members) that are available to be submitted to a Mainframe-Oriented System for execution and review. The jobs were originally created to run in an OSVS or MVS environment and continue to run in the ZOS environment today. In addition, all the jobs have been migrated and run in a Micro Focus Server environment on Linux, UNIX or Windows (LUW) systems.


We have made a significant effort to ensure the documents and software technologies are correct and accurate. We reserve the right to make changes without notice at any time. The function delivered in this version is based upon the enhancement requests from a specific group of users. The intent is to provide changes as the need arises and in a timeframe that is dependent upon the availability of resources.

Copyright © 1987-2019
SimoTime Technologies and Services
All Rights Reserved

Table of Contents Previous Section Next Section Prepare the Environment

This section describes what is needed to access the documentation and run the complete suite of batch and online programs that are maintained by SimoTime and offered to our customers as examples, learning tools and reference material.

Step or Task Description
Obtain Libraries Obtain the libraries from SimoTime Enterprises by sending and e-mail to the following:
helpdesk@simotime.com
Documentation Unzip the contents of the SIMOWEB1.ZIP file into a directory named C:\SimoWeb1. The documentation is in HTML format. This step will make a local copy of the HTML documents.
Common Members Unzip the contents of the SIMOLIBR.ZIP file into a directory named C:\SimoLIBR. This directory has the common or shared members used by the various applications. This directory should be added to the system path.
Sample Programs Unzip the contents of the SIMOSAM1.ZIP file into a directory named C:\SimoSam1. This directory contains the sample programs and data files.
  Prepare the Environment to Execute the SimoTime Suite of Batch on Online Programs

Table of Contents Previous Section Next Section Configure a Batch (or JES) Server

Micro Focus Enterprise Server has the ability to run mainframe-oriented batch jobs. In other words, a user may submit JCL to a server and the batch job will run as it does on the mainframe. Before jobs can be submitted it will be necessary to configure a JES sub-system to accept the JCL submissions. This section provides a link to a separate document that will describe  How to Configure a JES Sub-System   to run under control of Micro Focus Enterprise Server..

Table of Contents Previous Section Next Section Submit Jobs

There are a number of ways to submit jobs to the Server and these are covered in the Micro Focus documentation. The scope of this document will focus on two ways to submit jobs.

Table of Contents Previous Section Next Section Submit Jobs via Enterprise Server

The programmer's or user's interface is a browser based and is referred to as Enterprise Server Administration or ES/Admin. When the JES function is enabled an ES/Admin JCL Control screen may be displayed. From this screen a user may submit jobs via a point-and-click technique with a capability of browsing a JCL Library (or directory).

Table of Contents Previous Section Next Section Submit Jobs via EZSUB Command

The command line interface is a very popular way to submit batch jobs. This interface can be used by individuals, job schedulers or other technologies. A suite of EZ Series commands is provided to help simplify and document the submission of jobs from a command line.

Check out  The EZ and SYS1 Series Commands  for additional information about submitting jobs.

Note: For each of the jobs described in this document the command line syntax is provided.

Table of Contents Previous Section Next Section A Very Simple Job

This is a very simple, single-step job that executes IEFBR14. Its purpose is to validate the system configuration, the installation of the software and the startup process for the Micro Focus Enterprise Server.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA UVBR00J1

The following shows a listing of the JCL Member for this job.

//UVBR00J1 JOB SIMOTIME,CLASS=1,MSGCLASS=0,NOTIFY=CSIP1,USER=SIMOTIME
//* *******************************************************************
//*       UVBR00J1.JCL - a JCL Member for Batch Job Processing        *
//*       This JCL Member is provided by SimoTime Technologies        *
//*           (C) Copyright 1987-2019 All Rights Reserved             *
//*             Web Site URL:   http://www.simotime.com               *
//*                   e-mail:   helpdesk@simotime.com                 *
//* *******************************************************************
//*
//* Text   - Set Condition-Code to ZERO and return to caller
//* Author - SimoTime Technologies
//* Date   - January 24, 1996
//*
//* *******************************************************************
//* Step 1 of 1, Execute the program...
//*
//NULLSTEP EXEC PGM=IEFBR14
//*

Table of Contents Previous Section Next Section Create a Customer Master File

On the IBM Mainframe the Customer Master File is a VSAM Keyed Sequential Data Set (referred to as a VSAM, KSDS). On a Windows or UNIX System using Micro Focus the Customer Master File is an Indexed File or Key Sequenced File.

The Customer Master file contains variable length records with the minimum and average record length being the same length of 512 bytes. The key starts in the first position of the record and is 12 bytes in length. The record layout is defined in a COBOL copy file and contains text strings and various numeric formats including zoned-decimal, packed and binary.

JOB Name Description
CUCRTJ01 This job will use IDCAMS to define a VSAM Cluster for the Customer Master File. This will be a Keyed-Sequence-Data-Set (KSDS). The key is twelve characters starting at the first position in the record. The record length is 512 characters.
C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA CUCRTJ01
CUSC80J1 This job will be used to create a sequential file from in stream data. The sequential file will be used to update the new Customer Master File.
C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA CUSC80J1
CUSI80J1 This JCL member will be used to update the new Customer Master File using the information from the sequential.
C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA CUSI80J1
  Create a new Customer Master File

Table of Contents Previous Section Next Section Mailing Labels

This following two sub-sections describe how to run jobs that produce mailing labels. Check out  How to Produce Mailing Labels  for additional information.

Table of Contents Previous Section Next Section Use SORT Utility, Sort by Postal Code

This job will read a Customer Master File (VSAM, KSDS) and produce a sequential file of 4-across mailing labels that will be sorted in postal code sequence. The following shows the sequence of events and the process for submitting the job.

Job Step Description
Step-01: House keeping, uses IEFBR14 with the DISP=(MOD,DELETE,DELETE) to delete any files created and left behind from a previous run.
Step-02: Execute a COBOL to read the Customer Master File and extract all customers without a Post Office Box address, This step shows parameter passing from JCL (via the PARM+ function) to a COBOL program.
Step-03: Execute the SORT utility and sort the extracted records in the sequential file into postal code sequence.
Step-04: Execute a COBOL to read the sequential file that has been sorted into Postal Code sequence, This step shows parameter passing from JCL (via the PARM= function) to a COBOL program to determine if 1, 2, 3 or 4 across labels are to be produced. This job produces 4-across mailing labels
  SORT Utility to Sort by Postal Code

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA STAMLRJ1

Table of Contents Previous Section Next Section Use a Callable COBOL Sort

This job will read a Customer Master File (VSAM, KSDS) and produce a sequential file of 4-across mailing labels that will be sorted in postal code sequence. The following shows the sequence of events and the process for submitting the job.

Job Step Description
Step-01: House keeping, uses IEFBR14 with the DISP=(MOD,DELETE,DELETE) to delete any files created and left behind from a previous run.
Step-02: Execute a COBOL program to read the Customer Master File and extract all customers without a Post Office Box address, This step shows parameter passing from JCL (via the PARM+ function) to a COBOL program.
Step-03: Execute a COBOL program with a callable SORT routine and sort the extracted records in the sequential file into postal code sequence.
Step-04: Execute a COBOL program to read the sequential file that has been sorted into Postal Code sequence, This step shows parameter passing from JCL (via the PARM= function) to a COBOL program to determine if 1, 2, 3 or 4 across labels are to be produced. This job produces 4-across mailing labels
Step-05: Execute a COBOL program to read the sequential file that has been sorted into Postal Code sequence, This step shows parameter passing from JCL (via the PARM= function) to a COBOL program to determine if 1, 2, 3 or 4 across labels are to be produced. This job produces 1-across mailing labels based on the PARM=1 specified in the JCL on the EXEC statement.
  Using a Callable COBOL Sort

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA STAMLRJ2

Table of Contents Previous Section Next Section JCL Conditional Processing

JCL conditional processing has always presented a challenge and front-end learning curve for programmers that are new to the mainframe. Their first question us. "Why did they do it that way?". Their next statement usually is, "The logic appears to be the reverse of what it should be." The intent of this suite of programs is to help understand this confusion. In our opinion this technique presents a multitude of simplicities that are confusing but they are not complicated.

Table of Contents Previous Section Next Section The Traditional COND= Construct

The following is the mainframe JCL (JCLCONJ1.JCL) example that uses the COND parameter. The first step (NOPARM) will always execute and since there is no parameter specified the COBOL program (JCLCONC1.CBL) will simply set the return code to zero (0) and return to the JCL member. The second step (COND00A) will always execute the COBOL program passing a parameter that will cause the COBOL program to set a Return-Code of zero (0). The third step (COND00B) will execute only if the return code from all the previous steps is zero (0). The JCL will then continue to execute testing various conditions as documented in the JCL member.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA JCLCONJ1

Check out  JCL using the COND= Construct  for additional information about conditional processing with JCL.

Table of Contents Previous Section Next Section The IF/THEN/ELSE Constructs

The following is the mainframe JCL (JCLCONJ2.JCL) example that uses the IF, THEN, ELSE and ENDIF statement construct. The first step (NOPARM) will always execute and since there is no parameter specified the COBOL program (JCLCONC1.CBL) will simply set the return code to zero (0) and return to the JCL member. The second step (COND00A) will always execute the COBOL program passing a parameter that will cause the COBOL program to set a Return-Code of zero (0). The third step (COND00B) will execute only if the return code from all the previous steps is zero (0). The JCL will then continue to execute testing various conditions as documented in the JCL member.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA JCLCONJ2

Check out  JCL using the IF/THEN/ELSE Constructs  for additional information about conditional processing with JCL.

Table of Contents Previous Section Next Section Internal Reader, INTRDR

When jobs are submitted to the JES sub-system they are placed in a reader queue and the actual execution is managed by JES. A user may have a requirement to submit a job from within a currently running job or a COBOL program. The Internal Reader (or INTRDR) is what is used to address this requirement.

Table of Contents Previous Section Next Section Submit a Job using IEBGENER

This suite of programs will describe how to submit a second job from within the current running job using IEBGENER.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA INTRDRJ1

Check out  Using the Internal Reader with IEBGENER  for additional information about INTRDR.

Table of Contents Previous Section Next Section Submit a Job using COBOL

This suite of programs will describe how to submit a second job from within the current running job using a COBOL program. The advantage of using a COBOL program is access to the records in the JCL member being submitted.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA CBLSUBJ1

Check out  Using the Internal Reader with COBOL  for additional information about INTRDR.

Table of Contents Previous Section Next Section Application ABENDS

This suite of programs includes three (3) sample programs that will cause an abnormal termination at execution time.

Table of Contents Previous Section Next Section 0048 - Divide by Zero

This job will cause a 0048 ABEND (or ABnormal ENDing) condition when attempting to do an arithmetic calculation and a divide by zero.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA AB0048J1

Check out  The ABEND Testing Program  for additional information about this ABEND.

Table of Contents Previous Section Next Section 0163 - Calculation, Non-numeric Value

This job will cause a 0163 ABEND (or ABnormal ENDing and also known as a S0C7 on the Mainframe) condition when attempting to do an arithmetic calculation and a divide by zero.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA AB0163J1

Check out  The ABEND Testing Program  for additional information about this ABEND.

Table of Contents Previous Section Next Section 0173 - Program not Found

This job will cause a 0173 ABEND (or ABnormal ENDing) condition when attempting to do an arithmetic calculation and a divide by zero.

The following statement shows the command line syntax for submitting the job to Enterprise Server.

C:\SIMOSAM1\LOADLIB> EZSUB SIMOBATA AB0173J1

Check out  The ABEND Testing Program  for additional information about this ABEND.

Table of Contents Previous Section Next Section Summary

This document provides a list of jobs (or JCL Members) that are available to be submitted to a Mainframe-Oriented System for execution and review. This document may be used as a tutorial for new programmers or as a quick reference for experienced programmers.

Table of Contents Previous Section Next Section Software Agreement and Disclaimer

Permission to use, copy, modify and distribute this software, documentation or training material for any purpose requires a fee to be paid to SimoTime Technologies. Once the fee is received by SimoTime the latest version of the software, documentation or training material will be delivered and a license will be granted for use within an enterprise, provided the SimoTime copyright notice appear on all copies of the software. The SimoTime name or Logo may not be used in any advertising or publicity pertaining to the use of the software without the written permission of SimoTime Technologies.

SimoTime Technologies makes no warranty or representations about the suitability of the software, documentation or learning material for any purpose. It is provided "AS IS" without any expressed or implied warranty, including the implied warranties of merchantability, fitness for a particular purpose and non-infringement. SimoTime Technologies shall not be liable for any direct, indirect, special or consequential damages resulting from the loss of use, data or projects, whether in an action of contract or tort, arising out of or in connection with the use or performance of this software, documentation or training material.

Table of Contents Previous Section Next Section Downloads and Links

This section includes links to documents with additional information that are beyond the scope and purpose of this document. The first group of documents may be available from a local system or via an internet connection, the second group of documents will require an internet connection.

Note: A SimoTime License is required for the items to be made available on a local system or server.

Table of Contents Previous Section Next Section Current Server or Internet Access

The following links may be to the current server or to the Internet.

Note: The latest versions of the SimoTime Documents and Program Suites are available on the Internet and may be accessed using the Link to Internet icon. If a user has a SimoTime Enterprise License the Documents and Program Suites may be available on a local server and accessed using the Link to Server icon.

Link to Internet   Link to Server   Explore the JCL Connection for more examples of JCL functionality with programming techniques and sample code.

Link to Internet   Link to Server   Explore the COBOL Connection for more examples of COBOL programming techniques and sample code.

Link to Internet   Link to Server   Explore An Enterprise System Model that describes and demonstrates how Applications that were running on a Mainframe System and non-relational data that was located on the Mainframe System were copied and deployed in a Microsoft Windows environment with Micro Focus Enterprise Server.

Link to Internet   Link to Server   Explore The ASCII and EBCDIC Translation Tables. These tables are provided for individuals that need to better understand the bit structures and differences of the encoding formats.

Link to Internet   Link to Server   Explore The File Status Return Codes to interpret the results of accessing VSAM data sets and/or QSAM files.

Table of Contents Previous Section Next Section Internet Access Required

The following links will require an internet connect.

A good place to start is The SimoTime Home Page for access to white papers, program examples and product information. This link requires an Internet Connection

Explore The Micro Focus Web Site for more information about products and services available from Micro Focus. This link requires an Internet Connection.

Table of Contents Previous Section Next Section Glossary of Terms

Link to Internet   Link to Server   Explore the Glossary of Terms for a list of terms and definitions used in this suite of documents and white papers.

Table of Contents Previous Section Next Section Comments or Feedback

This document was created and is copyrighted and maintained by SimoTime Technologies.

If you have any questions, suggestions, comments or feedback please call at 1 415 827-7045 or send an e-mail to: helpdesk@simotime.com

We appreciate hearing from you.

Table of Contents Previous Section Next Section Company Overview

SimoTime Technologies was founded in 1987 and is a privately owned company. We specialize in the creation and deployment of business applications using new or existing technologies and services. We have a team of individuals that understand the broad range of technologies being used in today's environments. Our customers include small businesses using Internet technologies to corporations using very large mainframe systems.

Quite often, to reach larger markets or provide a higher level of service to existing customers it requires the newer Internet technologies to work in a complementary manner with existing corporate mainframe systems. We specialize in preparing applications and the associated data that are currently residing on a single platform to be distributed across a variety of platforms.

Preparing the application programs will require the transfer of source members that will be compiled and deployed on the target platform.

The data will need to be transferred between the systems and may need to be converted and validated at various stages within the process.

SimoTime has the technology, services and experience to assist in the application and data management tasks involved with doing business in a multi-system environment.

Whether you want to use the Internet to expand into new market segments or as a delivery vehicle for existing business functions simply give us a call at 1 415 827-7045 or send an e-mail to: helpdesk@simotime.com

Also, check the web site at http://www.simotime.com


Return-to-Top
Mainframe Oriented Batch Jobs, JCL Members to Submit to Enterprise Server
Copyright © 1987-2019
SimoTime Technologies and Services
All Rights Reserved
When technology complements business
http://www.simotime.com