User's Guide: ESP Workload Manager
User's Guide: ESP Workload Manager
Version 5.4
User’s Guide
ESP-5.4-UG-05
Fifth Edition (April 2005)
This edition applies to Version 5 Release 4 of ESP Workload Manager documentation. The
software and related manuals are protected by copyright law.
Trademark Notice
Cybermation and ESP Workload Manager are registered trademarks of Cybermation, Inc.
IBM, AS/400, and z/OS are registered trademarks of IBM.
All other brand and product names are trademarks or registered trademarks of their respective
companies.
Contents
ESP-5.4-UG-05 iii
Distributed workload objects ........................................................................... 19
Job documentation........................................................................................... 19
Consolidated Status Facility (CSF)................................................................... 20
Graphical user interface.................................................................................... 20
Symbolic variables............................................................................................ 21
Tailoring Job Control Language....................................................................... 22
Resources ......................................................................................................... 23
Tracking jobs ................................................................................................... 24
Job monitoring and alert processing ................................................................. 25
System message interception ............................................................................ 26
REXX interface ................................................................................................ 27
Reporting......................................................................................................... 27
Modeling ......................................................................................................... 29
Security ............................................................................................................ 30
2 Getting Started 31
Accessing ESP Workload Manager ................................................................... 32
Accessing ESP Workload Manager as an ISPF option ...................................... 32
Accessing ESP Workload Manager through a batch program ........................... 38
Invoking ESP Workload Manager as a program in TSO .................................. 39
Accessing ESP Workload Manager through
a TSO command processor............................................................................ 40
Exiting ESP Workload Manager ...................................................................... 40
Loading commands.......................................................................................... 40
Alternative input data sets ................................................................................ 42
3 Schedule Criteria 43
Where you can use schedule criteria ................................................................. 44
Specifying schedule criteria............................................................................... 44
Schedule terms ................................................................................................. 50
Using other techniques for schedule criteria ..................................................... 57
Testing schedule criteria................................................................................... 57
Using calendars ................................................................................................ 58
Using calendar terms........................................................................................ 59
Working with calendars ................................................................................... 60
Defining holidays............................................................................................. 65
Defining special days........................................................................................ 67
Special periods ................................................................................................. 68
Working with periods ...................................................................................... 70
4 Processing ESP Events 73
Defining an ESP Event .................................................................................... 74
Specifying data-set-triggered Events ................................................................. 81
Specifying FTP data-set triggered Events.......................................................... 84
Specifying explicit-data-set triggers................................................................... 87
Specifying the function of an Event.................................................................. 91
iv ESP-5.4-UG-05
Contents
ESP-5.4-UG-05 v
Tagging jobs .................................................................................................. 205
Providing notification on Job status ............................................................... 206
Using critical-path analysis ............................................................................. 208
Issuing ESP Workload Manager commands ................................................... 211
Using subApplications.................................................................................... 212
Working with Applications ............................................................................ 215
Displaying an Application .............................................................................. 215
Controlling an Application ............................................................................ 216
Changing an Application definition ............................................................... 218
Invoking an ESP Application ......................................................................... 219
7 Consolidated Status Facility (CSF) 221
Setting up CSF views ..................................................................................... 222
CSF fields ...................................................................................................... 223
Defining a view .............................................................................................. 226
Customizing a view ........................................................................................ 227
Updating a view ............................................................................................. 231
Deleting a view .............................................................................................. 232
Selecting views ............................................................................................... 232
Commands .................................................................................................... 232
Inserting a job ................................................................................................ 235
Resubmitting a job......................................................................................... 237
Rerunning multiple jobs................................................................................. 238
Removing job dependencies ........................................................................... 239
Resetting a time dependency .......................................................................... 240
Bypassing and completing jobs....................................................................... 242
Adding job dependencies ............................................................................... 243
Adding a job with a time dependency ............................................................ 243
Adding a job relationship in an Application ................................................... 243
Adding a LINK process .................................................................................. 244
Setting and resetting the user status field ........................................................ 244
Modifying a Job Resources or Enqueues......................................................... 245
Using other commands .................................................................................. 247
Extensions to CSF.......................................................................................... 247
Freeform filtering ........................................................................................... 247
8 Job Documentation 257
Contents of job documentation...................................................................... 258
Control information....................................................................................... 258
User description ............................................................................................. 259
Creating job documentation .......................................................................... 260
Using the jobs option..................................................................................... 261
Updating job documentation ......................................................................... 262
Using job documentation............................................................................... 263
Using the control information........................................................................ 264
vi ESP-5.4-UG-05
Contents
ESP-5.4-UG-05 vii
Modifying Resources...................................................................................... 338
WLM Workload Balancing............................................................................ 338
Agent Workload Balancing ............................................................................ 339
Deleting resources .......................................................................................... 339
Displaying resource information .................................................................... 340
Step-level resource release............................................................................... 341
Resource absorption ....................................................................................... 342
Example: Controlling mutually exclusive jobs ................................................ 345
Example: Controlling access to an online system ............................................ 346
Example: Time periods for low priority jobs .................................................. 347
Example: Using a resource for a self-completing task...................................... 348
Example: Controlling access to a data base ..................................................... 349
Example: Running jobs on a particular system ............................................... 349
Example: Controlling mutually exclusive groups of jobs................................. 350
Example: Planning for a system shutdown - Part 1......................................... 353
Example: Planning for a system shutdown - Part 2......................................... 354
Example: Schedule dependency...................................................................... 356
11 Optimizing ESP Applications to Use
Distributed Manager 359
Planning Applications to optimize Distributed Manager ................................ 360
Establishing ownership of a workload object .................................................. 364
Creating distributed Applications................................................................... 365
Defining ownership of an Application............................................................ 366
Changing ownership of an Application .......................................................... 367
Changing ownership of an Application dynamically....................................... 368
12 Using XCF with ESP Workload Manager 369
Commands .................................................................................................... 370
XCF Services.................................................................................................. 370
State awareness............................................................................................... 373
Trace.............................................................................................................. 374
13 ESP Workload Manager High Performance Option 377
Expedite ......................................................................................................... 378
Resource Balancing ........................................................................................ 382
Workload Balancing....................................................................................... 382
XCF Status Monitoring ................................................................................. 387
XCF Routing Service ..................................................................................... 388
XCF Scoreboard Service................................................................................. 390
14 ESP Workload Manager High Availability Option 393
Shadow Manager............................................................................................ 394
ARM Registration .......................................................................................... 398
XCF Status Monitoring ................................................................................. 399
XCF Routing Service ..................................................................................... 400
viii ESP-5.4-UG-05
Contents
Glossary 405
Index 413
ESP-5.4-UG-05 ix
x ESP-5.4-UG-05
About this guide
This guide provides you with an intermediate level of instruction for using Enterprise
Systems Platform (ESP) Workload Manager, a powerful and versatile system for
scheduling jobs and managing workload.
ESP-5.4-UG-05 1
Who should read this guide
This guide’s audience is users whose activities involves scheduling and managing jobs.
Because this guide expects users to already have a basic understanding of ESP
Workload Manager, Cybermation recommends that new users work through the ESP
Workload Manager Getting Started guide first.
Entering commands
ESP Workload Manager commands can be entered in Line mode, Page mode, batch,
loaded from a data set (using the LOAD command), or ESP Workstation. Many can
also be entered from a system console.
ESP Workload Manager statements must be entered in a data set specific to the type
of statement used.
Entering statements
Note: The content of this section also applies to commands and initialization
parameters when contained in a data set.
Continuation
Type either a hyphen or a plus sign as the last non-blank character on a line to
continue a line of input. If you use a hyphen, leading blanks on the next line are
included. If you use a plus sign, leading blanks on the next line are deleted. Blanks
preceding the hyphen or the plus sign are retained. Statements cannot extend beyond
column 72. The continuation character can be placed in column 72 or before.
2 ESP-5.4-UG-05
About this guide
Note: A hyphen can also be used as a wildcard character. If the wildcard hyphen is the
last character on the line, it will be interpreted as a continuation character and not as a
wildcard. For the hyphen to be interpreted as a wildcard, it must be followed by a
semicolon or something else on the line such as a comment: (/* */).
Comments
Enclose comments between /* and */. Comments can be written anywhere in an ESP
Workload Manager Procedure or initialization parameter files.
Data sets
Enclose all data-set names in single quotation marks, otherwise ESP Workload
Manager adds your TSO data set prefix to the name. Use LIB- or PAN- prefixes to
identify Librarian and Panvalet data sets.
Delimiters
Use single quotation marks when you want to denote character strings in expressions,
in assignment statements, and in built-in functions. You must include single
quotation marks around a string that contains blanks.
Indentation
You can use indentation to improve readability.
Types of commands
The most frequent types of commands are:
• General commands—issued without general restrictions
• OPER commands—must be preceded by the word OPER
• Authorized commands—can be issued by users authorized in the security system
• Authorized OPER commands—can be issued by users authorized in the security
system and must be preceded by the word OPER
ESP-5.4-UG-05 3
Examples
Issuing console commands
To issue a command from the system console, use the MODIFY command, as in F
ESP, where ESP is the started task name. For example:
F ESP,STATUS
Subsystem name
If the subsystem name for ESP is not ESP, you need to type the subsystem name when
entering a command in batch. For example, if the subsystem name is ESPA, type:
//EXEC PGM=ESP,PARM='SUBSYS(ESPA)',REGION=4000K
Steplib
If the TSO command processor is not in a LINKLIST library, you need a STEPLIB
or JOBLIB statement in your JCL. Your statement looks like:
//STEPLIB DD DSN=CYB.ESP.LOAD,DISP=SHR
4 ESP-5.4-UG-05
About this guide
Syntax conventions
The syntax diagrams in this guide use the following conventions:
Notation Meaning
Quote marks '' or ' Must be entered as shown.
Comma , Must be entered as shown.
Ellipsis … The operand can be repeated. Do not enter ellipsis.
Lower Case Italics An operand must be substituted. User supplied variable or
operand character string.
Uppercase operand The operand must be spelled as shown. You can enter the
command and the operand in either upper or lower case.
OR-bar ( | ) Indicates an exclusive value on left or right of bar. You
must enter one of the items. You cannot enter more than
one.
Underline _______ If you do not enter one of the operands, the system
supplies the underlined operand, this is the default
Parentheses ( ) and Operand enclosed in parentheses is mandatory and must
special characters be entered as shown.
Single operand in Optional operand, do not type the brackets.
square brackets [ ]
Stacked operands in Mandatory, you must enter one of the operands. You
braces { } cannot enter more than one.
{ }
Stacked operands in Optional operand, you can enter one value, or none.
square brackets
[ ]
[ ]
Operands with OR- Optional, mutually exclusive operands. Enter one or none.
bars ( | ) and square
brackets [ ]|[ ]
Stacked operands in Mandatory, you must enter one of these operands. You can
square brackets within enter more than one.
braces {[ ]}
ESP-5.4-UG-05 5
Summary of changes
Changes in edition five
• PTFs SU01813, SU01814, and SU1815; defect DEF12612:
Implement limits for
• Defining a holiday and a special day with the same name
• Defining holidays with the same name, start date, and start time
See “Defining holidays” and “Defining special days” in the “Schedule Criteria
chapter.
• RFE 2978: Added note about updating a cached procedure. See “Changing an
Application definition” section
6 ESP-5.4-UG-05
Introduction to ESP Workload Manager
Concepts
ESP-5.4-UG-05 7
Section–Functions of ESP Workload Manager
8 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Using calendars
Although ESP Workload Manager is familiar with the standard calendar, you can use
scheduling terms that are specific to your installation. To define your own customized
set of scheduling terms, you can define one or more calendars. A calendar can contain:
• A list of holidays. Holidays can span one day, several days, or just parts of a day.
• Lists of special processing dates.
• Descriptions of periods, such as fiscal months, fiscal years, 4-4-5 periods.
• A specification as to which days of the week are eligible to be workdays. The
default is Monday to Friday.
After defining your unique scheduling terms, you can use schedule criteria like these:
8AM LAST DAY OF FISCAL_MONTH
5PM INVENTORY_DAY
CHRISTMAS PLUS 1 WORKDAY
8AM 8TH-10TH WORKDAY OF FISCAL_YEAR
2ND WORKDAY OF 3RD FISCAL_MONTH OF FISCAL_YEAR
ESP-5.4-UG-05 9
Section–Data-set triggering
Performing tasks
ESP Workload Manager can perform a variety of tasks through the Events you define.
An Event must do one of the following:
• Send a message to you, other users, or operator consoles
• Submit JCL
• Invoke an ESP Procedure
• Issue an operating-system command
Example
An example of an Event appears below. The Event is scheduled at 8 am each day that
invokes a Procedure.
EVENT ID(USER.MESSAGE)
SCHEDULE 8AM DAILY
INVOKE 'SYS1.PROCLIB(PAYJOB1)'
ENDDEF
Additional information
For more information on Events, see “Processing ESP Events” on page 73.
Data-set triggering
You can tell ESP Workload Manager when to process your Events depending on data-
set activity. This feature is called data-set triggering. You can use it in conjunction
with, or instead of, time-and-date scheduling.
10 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Example
An example of a data-set-triggered Event follows. This Event sends a message to a user
each time the data set CYB.APPL.BASKET closes.
EVENT ID(USER.APPL_RECEIVE)
DSTRIG CYB.APPL.BASKET ANYCLOSE
SEND 'APPLICATION RECEIVED FROM ESP WORKSTATION' USER(BP)
ENDDEF
You can also use data-set triggering for establishing individual job dependencies
within your ESP Applications.
Example
The following is an example of an FTP transfer-triggered Event. This Event sends a
message to a user each time an FTP transfer to data set CYBER.DATA.SET completes
from logged-on user aixuser on host AIXHOST to any local user with host security
user ID prefix CYB. Because both the USER and the LOGON operands are specified
and because they specify different user IDs, the FTP trigger criteria can only be
satisfied if the local FTP partner is the client.
EVENT ID (USER.APPL_RECEIVE)
DSTRIG CYBER.DATA.SET USER(CYB-) FTP(RECEIVE) HOST(AIXHOST)-
LOGON(aixuser)
SEND 'APPLICATION RECEIVED FROM CLIENT' USER(BP)
ENDDEF
Additional information
For more information on data-set triggering, see “Processing ESP Events” on page 73
and “Using Applications” on page 137.
ESP-5.4-UG-05 11
Section–Global-variable-table triggering
Global-variable-table triggering
You can set a global-variable-table trigger to trigger an Event when a specified variable
changes.
Example
In this example, the Event CYBER.MYEVENT is triggered when the global variable
VT1 of the global-variable table named MYTABLE changes.
For the Event to be triggered, the table MYTABLE, the variable VT1, and the
(optional) trigger ID TR07 are set as follows:
VTDEFINE MYTABLE
VT1='ONE'
VTPUT VT1 TABLE(MYTABLE)
VTRDEF ID(TR07) VARIABLE(VT1) TABLE(MYTABLE)- EVENT(CYBER.MYEVENT)
Any change of the value of the global variable VT1 will trigger the
CYBER.MYEVENT Event. For example, setting the value of VT1 to TWO as
follows:
VSET VT1 TWO TABLE(MYTABLE)
Additional information
For more information on the use of global-variable tables including the triggering of
Events when a global variable changes, see the ESP Workload Manager Advanced User’s
Guide.
ESP Procedures
An ESP Procedure is a set of stored instructions that ESP Workload Manager invokes.
Part or all of these instructions can define a group of jobs and tasks as an ESP
Application. Although you use an ESP Procedure to define all ESP Applications, not
all ESP Procedures contain an ESP Application definition.
12 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Example
The following is an example of using CLANG. In this example, ESP Workload
Manager:
• Sends a message on workdays
• Submits job PAYJOB on the last workday of each month
IF TODAY('WORKDAY') THEN -
SEND 'ANOTHER DAY OF HARD LABOR' U(BOSS)
IF TODAY('LAST WORKDAY OF MONTH') THEN -
SUBMIT 'SYS1.JCLLIB(PAYJOB)'
Additional information
For more information on Procedures, see “Working with ESP Procedures” on
page 107.
Applications
An ESP Application consists of one or more workload objects (for example: job,
message, command, script, manual task). An ESP Procedure describes an Application
to ESP Workload Manager. A Procedure consists of a series of statements to:
• Identify the Application
• Tell ESP Workload Manager where the appropriate JCL is located
• Identify the jobs
• Describe the job relationships
• Describe when ESP Workload Manager should select the jobs to run
• Describe other job dependencies, such as time and resources
• Optionally, it may also state such things as a job documentation library and what
condition codes cause a job to fail
ESP-5.4-UG-05 13
Section–Inheriting job relationships
Application definition
An Application definition looks like this:
APPL PAYROLL
JCLLIB 'CYBER.ESP.JCL'
JOB A A
RUN DAILY
RELEASE (B,C)
ENDJOB
JOB B B C
RUN DAILY Daily
RELEASE D
ENDJOB
JOB C
RUN DAILY D
RELEASE D
ENDJOB
JOB D
E Friday
RUN DAILY
RELEASE E
ENDJOB
JOB E
F Last workday
RUN FRIDAY of month
RELEASE F
ENDJOB
JOB F
RUN LAST WORKDAY OF THE MONTH
ENDJOB
Streamlining Applications
You can streamline the way you schedule and manage entire Applications. When ESP
Workload Manager creates an Application, it assigns a generation number to it. One
generation does not need to complete before the next one starts. Several generations of
the Application can run concurrently. ESP Workload Manager manages dependencies
within the Application as well as between different Applications.
Additional information
For more information on Applications, see “Using Applications” on page 137.
14 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Example
Consider the following three jobs and their schedule frequencies:
J1 Daily
J2 Friday
J3 Daily
On Fridays, all three jobs execute in order, but on any other day of the week job J2
does not run. On these other days, J1 and J3 are selected and they inherit their mutual
relationships from J2. When J1 completes successfully, it releases J3.
Additional information
For more information on how ESP Workload Manager inherits job relationships, see
“Inheriting job relationships” on page 176.
Example
In this example, jobs NWN001 and NWN003 are set up so they cannot run at the
same time.
APPL NWN00C
JCLLIB 'CYBER.JCL.CNTL'
JOB NWN001
RUN WEEKDAYS
NOTWITH NWN003
ENDJOB
JOB NWN002
ESP-5.4-UG-05 15
Section–On-request jobs
RUN WEEKDAYS
ENDJOB
JOB NWN003
RUN WEEKDAYS
NOTWITH NWN001
ENDJOB
Additional information
For more information on specifying mutually exclusive run requirements, see “Using
Implicit Resources” on page 166.
On-request jobs
An on-request job is a job normally run on demand; it is not a regularly scheduled job.
With Applications, you can identify certain jobs as on-request and define their
relationships to other jobs. The on-request jobs take their place in the schedule. You
can request a job any time, from the time you generate the Application up to the time
the job is submitted. If you have not explicitly requested the job using a command, it
is treated as a normal completion.
Additional information
For more information on request jobs, see “Identifying a job as on-request” on
page 151.
Links
A link is a task that completes itself. You can use a link to process commands such as
sending messages and issuing operator commands, during the processing of an ESP
Application.
Uses of links
Common uses of links include:
• Simplifying job relationships
• Keeping an Application active
• Notifying when something happens
• Notifying when something does not happen
16 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Example
In the example below, a link is a successor to jobs A, B, and C. The link could send a
message, issue an operator command, or simply link two groups of jobs together.
A B C
LINK
D E F
Additional information
For more information on using links, see “Using links” on page 184.
Tasks
You can define tasks in an Application and establish dependencies between them and
other tasks and jobs. You must mark a task complete before its successors become
eligible for submission.
A task can represent a manual process that requires intervention, or it can represent a
process that can be automated. You can choose to use tasks for:
• Balancing reports
• Receipt of input tapes
• Completion of a job step
• Any other special handling requirements
Example
In this example, a report needs to be checked after job J1 completes successfully. A
task called CHECKRPT.J1 represents the task of checking the report.
J1
(Job)
CHECKRPT.J1
(Task)
J2
(Job)
ESP-5.4-UG-05 17
Section–APPLEND workload object
Additional information
For more information on using tasks, see “Using tasks” on page 188.
Example
In the following example, the APPLEND workload object named FRED will be made
a successor of JOB2, because JOB2 has no other successors. However, job
AFTERAE2 and AFTRAELA, which also do not have successors, are successors to
APPLEND FRED, so are not made predecessors to it.
APPL TESTAE1
JCLLIB 'CYBER.JCL.CNTL'
APPLEND FRED
REL (AFTERAE1,AFTERAE2)
SE 'APPLEND RUNNING' U(*)
ENDJOB
18 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Additional information
For more information on the use of APPLEND workload object, see “Using
APPLEND workload object” on page 190.
Additional information
For information on scheduling workload on distributed platforms, see the ESP
Workload Manager Agent documentation for the platform you are using.
Job documentation
You can use the ESP Workload Manager job-documentation facility to create a
complete and centralized definition of all or any of your jobs. You can document the
entire requirements of a job at the individual job level, including a job’s predecessors
and successors, schedule criteria, due-out time from various processing phases,
resources required by the job, and more.
Additional information
For more information on job documentation, see “Job Documentation” on page 257.
ESP-5.4-UG-05 19
Section–Consolidated Status Facility (CSF)
Example
This example demonstrates the kind of job information that CSF can provide:
Customizing CSF
Through the use of CSF Extensions, you can further customize your use of CSF by
writing your own commands, or by replacing existing commands. For example, you
can launch other ISPF applications, provide additional panels, and force the use of
certain fields.
Additional information
For more information on CSF, see “Consolidated Status Facility (CSF)” on page 221.
20 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
ESP Workstation
ESP Workstation is a graphical user interface for ESP Workload Manager. From a
single point, You can define, monitor, and control your entire workload across
multiple platforms. You can:
• Use graphics to create ESP Applications
• Manage workload in real time
Additional information
For more information on ESP Workload Manager graphical user interface, see the
ESP Workstation User's Guide.
Symbolic variables
A symbolic variable is an object whose value can be changed during ESP Workload
Manager processing. ESP Workload Manager provides powerful substitution
capabilities through the use of symbolic variables. When it encounters a symbolic
variable, it substitutes the current value of that variable. With symbolic variables, you
have all the flexibility you need to define date operands, specify job names, and define
job dependencies.
Using variables
ESP Workload Manager provides you with several built-in variables (such as times and
dates) that can be substituted in Events, ESP Procedures, and the JCL input stream.
Also, you can define as many of your own symbolic variables as you need.
Example
NAME, DATE, and X are some examples of variables:
NAME='PATRICK'
DATE='%ESPSMM%ESPSDD%ESPSYEAR'
INTEGER X
X=293
ESP-5.4-UG-05 21
Section–Tailoring Job Control Language
Additional information
For more information on symbolic variables and symbol libraries, see the “Symbolic
Variables” chapter of the ESP Workload Manager Advanced User’s Guide.
Example 1
ESP Workload Manager has a number of built-in symbolic variables; many relate to
dates and times. The following example shows how to represent the scheduled date of
a job in the format MMDDYYYY using built-in symbolic variables. In this example, a
user requests date information as data; you can use also symbolic variables as part of
JCL.
//SYSIN DD *
%ESPSMM%ESPSDD%ESPSYEAR
Example 2
When ESP Workload Manager submits this JCL for an Event scheduled on June 9,
2000, it substitutes the built-in symbolic variable as shown below.
Substituted JCL on
Original JCL June 9, 2000
//SYSIN DD //SYSIN DD
%
*ESPSMM%ESPSDD%ESPSYEAR *06092000
You could generate another set of symbolic variables to complement the built-in set of
date and time symbolic variables for any date in the future or in the past.
22 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Additional tailoring
In addition to using symbolic variables to insert different operands, such as time, date,
day of week, and data-set name into JCL, you can further tailor your JCL by using:
• Selective inclusion and exclusion of JCL and data
• JCL exclusion symbols
• Different symbol introducers
• Secured symbols
• Automatic variable insertion
Additional information
For more information on tailoring JCL, see the ESP Workload Manager Advanced
User’s Guide.
Resources
A resource can be any hardware, software, or abstract condition. Within ESP
Workload Manager, there is no limit to what you can define as a resource.
Examples
Common examples of resources include:
• Disk space
• Scratch tapes
• Execution time
• An entity to control mutually exclusive jobs
• Online system availability
• DASD space
• Time periods
• Tape drives
ESP-5.4-UG-05 23
Section–Tracking jobs
Resources
ESP Workload Manager supports the three following types of resources:
Type of Explanation
resource...
Renewable A renewable resource is a borrowed resource. When ESP Workload
Manager submits a job, the job removes the resource from the resource
pool and returns it upon completion. Some examples of renewable
resources include tape drives, a data base, or sort work space.
Depletable A depletable resource is a consumed resource. When ESP Workload
Manager submits a job, it removes the resource from the resource pool,
and does not return it at the end of execution. The resource is used up
and can only be replenished through an explicit action, such as issuing
an appropriate ESP Workload Manager command. A depletable
resource could refer to the number of scratch tapes available or to
permanent DASD space.
Threshold A threshold resource is a sizing resource. You can think of a threshold
resource as a variable-height doorway into the system. If the resource
quantity is set to two, any number of jobs requiring two or fewer units
can be submitted. However, any job requiring three or more units is
too high to pass through the door and so it is not submitted. In other
words, ESP Workload Manager sizes the job against the current level of
the threshold resource. This type of resource could be used to prevent
certain jobs from executing until a NITESHFT period begins, for
example.
Resource requirement
You can define resource requirements for any job. You can also use default resources
where ESP Workload Manager automatically determines resource requirements for a
job based on historical data.
Additional information
For more information on resources, see “Using Resources” on page 325.
Tracking jobs
The ESP Workload Manager job-tracking facility tracks job data in real time as jobs
are being processed. You can use the job tracking facility to track your jobs and keep
information on the progress of these jobs. You can track both jobs that ESP Workload
Manager submits and jobs that it does not submit. Also, you can track Started Tasks
(STCs) and TSO users (TSUs). You see detailed step-level statistics in real-time. ESP
Workload Manager maintains completion codes for each job step, and provides data
24 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
such as CPU time, elapsed time, disk and tape I/O counts, number of tape mounts,
tape drives, and so on.
Example
The following example shows a sample output from a command to display tracking
data for job PAY008A:
LJ PAY008A(6308)
PAY008A JO6308, COMPLETED, CC SOC1, NODE CYBJES
SUBMITTED BY ESP AT 10.06 ON TUE 13APR, EVENT CYBBP01.PAY
JCL FROM CYBBP01.ESP.DEMO.JCL(PAY008A)
JCL COPIED TO CYBBP01.ESP.DEMO.COPYJCL(PAY008A)
PROGRAMMER BOB, ACCOUNT CYBTEST
JOB IS IN APPL PAY
INFORMATION/MANAGEMENT RECORD 0000053 CREATED FOR THIS JOB
STEPNAME-PROCSTEP-PROGNAME—EXCEP-#T-S-N-CPU-TIME-SUNITS-REGION-CMPC
ENCORE ESPRM CYBRM000 30 0 0 0 0:00.48 2635 320K 0
STEP01 IEFBR14 0 0 0 0 0:00.00 0 4K 0
STEP02 IEBGENER 0 0 0 0 0:00.00 0 72K 0
STEP03 SOC1 1 0 0 0 0:00.13 428 8K SOC1
STEP04 IEFBR14 0 0 0 0 0:00.00 0 0K -
STEP05 IEBGENER 0 0 0 0 0:00.00 0 0K -
ESPCCFCK IEFBR14 0 0 0 0 0:00.00 0 0K -
PNODE----OUT---QTIME-POST_BY—SYS-|PNODE----OUT---QTIME-POST_BY—SYS
INPUT 10.06 5 CYB1|EXEC 10.06 12 SYSTEM CYB1
OUTPUT 10.06 13 SYSTEM CYB1
Tracking models
You can define a tracking model to track a group of jobs with similar characteristics.
This tracking model enables you to define and modify the tracking characteristics of
multiple jobs at the same time. You can, for example, use a tracking model to identify
jobs where you want to keep long-term historical data and then use the data with ESP
Workload Manager history reporting facility. For more information on setting up
your job-tracking environment, see the ESP Workload Manager Installation and
Configuration Guide.
ESP-5.4-UG-05 25
Section–System message interception
Uses
For example, you can use job monitoring and alert processing to:
• Automatically start a subsystem
• Restart a job by automatically resubmitting it
• Automatically restart an abended job
• Create a problem record in an information/management data base.
• Submit a recovery job
• Activate or deactivate resources by issuing the appropriate command.
• Cause SNMP traps to be sent by an ESP Management Agent appearing as if they
were sent from ESP Workload Manager
You can use a number of symbolic variables with either facility.
Additional information
For more information on job monitoring and alert processing, see the ESP Workload
Manager Advanced User’s Guide.
Example
The following example requests the cancellation of a job whenever a NOT CATLGD
message starting anywhere between column 50 and 60 is generated for that job. It also
26 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
specifies to route this message to consoles with the default route code two. Descriptor
code two is used to make the message non-deletable:
SYSMSGS 'NOT CATLGD' COL(50:60) CANCEL DESC(2)
Additional information
For more information on intercepting system messages, see the ESP Workload
Manager Advanced User’s Guide.
REXX interface
You can use the IBM high-level, procedural language called Restructured EXtended
eXecutor language (REXX) with ESP Workload Manager. REXX extends its
capabilities by providing it with another powerful command language. You can use
REXX anywhere you use ESP Workload Manager Command Language (CLANG), or
you can mix the two languages together to provide powerful functions in an easy-to-
use fashion.
Uses of REXX
You can use REXX with ESP Workload Manager to:
• Perform repetitive tasks, such as defining a static holiday
• Trap output from ESP Workload Manager commands
• Extend the functions of the Consolidated Status Facility
• Build ESP Workload Manager Application code
• Perform data set I/O
Additional information
For more information on using REXX with ESP Workload Manager, see the ESP
Workload Manager Advanced User’s Guide.
Reporting
The ESP Workload Manager reporting facilities can give you up-to-date information
about scheduled jobs that executed in the past or will execute in the future. Reporting
facilities include:
• History
• Scheduled activity
• Job mapping
ESP-5.4-UG-05 27
Section–Reporting
History reporting
A powerful and versatile generalized reporting facility provides details about the
progress of your jobs at any time up to the present. This facility extracts and formats
data from the ESP Workload Manager history files to meet a variety of requirements.
The reports specified can be as detailed or as simple as you require. You can include a
variety of job aspects such as job name, status, tape allocation, and so on. The report
formats you define can be named and used repeatedly. In addition, reports are
available online and in hard-copy.
Example
The following is an example of a report on all PAY- jobs that executed on
May 8, 2001:
28 ESP-5.4-UG-05
Chapter 1–Introduction to ESP Workload Manager Concepts
Additional information
For more information on history reporting, see “History reporting” on page 276.
Additional information
For more information on scheduled activity reporting, see “Reporting on scheduled
activity” on page 298.
Job mapping
Job mapping is a reporting facility you use to produce detailed job information. You
can generate the following reports:
• Job activity report. This report contains detailed information on jobs including
job name, Application name, job type, Event name, ESP Procedure name, JCL
library, execution time, CPU time, and predecessor and successor jobs.
• Job descendent report. This report shows a job and its successors.
Additional information
For more information on using job mapping, see “Using job mapping” on page 303.
Modeling
ESP Workload Manager has a modeling feature that forecasts how it processes a group
of jobs in your particular systems environment. Scheduled activity reporting provides
you with information based on what is scheduled. Modeling takes this one step
further. ESP Workload Manager combines the schedule with what it knows about the
scheduling environment to predict future activity. You define your environment and
then ESP Workload Manager creates a picture showing how a future schedule period
ESP-5.4-UG-05 29
Section–Security
looks. Modeling allows ESP Workload Manager to forecast the influence of factors
such as CPUs, initiators, and resources.
Modeling reports
Modeling generates reports on jobs, resources, and exceptions. For example, you can
generate a report that shows you all jobs that will not meet their scheduled due out
time.
Additional information
For more information on modeling, see the ESP Workload Manager Advanced User’s
Guide.
Security
Whether you have schedulers and operators scheduling all of the work or end users
submitting their work, ESP Workload Manager gives you security that ensures the
integrity of your system. Work is performed according to the security attributes of the
user. Before the ESP Workload Manager server executes the requested routines, it
checks to see if the user is authorized for the requested work. This method of security
works for any type of user: individuals, production groups, or service bureau
customers.
Additional information
For more information on security, see the ESP Workload Manager Security Guide.
30 ESP-5.4-UG-05
Getting Started
This chapter gives you some general information on how you can use ESP Workload
Manager.
When you have finished this chapter you should be able to access ESP Workload
Manager, load commands into it, and use different data set types as input.
This chapter contains the following topics:
• Accessing ESP Workload Manager
• Accessing ESP Workload Manager as an ISPF option
• Accessing ESP Workload Manager through a batch program
• Invoking ESP Workload Manager as a program in TSO
• Accessing ESP Workload Manager through a TSO command processor
• Exiting ESP Workload Manager
• Loading commands
• Alternative input data sets
ESP-5.4-UG-05 31
Section–Accessing ESP Workload Manager
32 ESP-5.4-UG-05
Chapter 2–Getting Started
When you invoke ESP Workload Manager, the Main Menu appears. It displays the
available options including Events, Calendars, Consolidated Status Facility. Many
ESP Workload Manager commands are available through menu mode. There is a
wide choice of menus, entry panels and help screens.
ESP-5.4-UG-05 33
Section–Accessing ESP Workload Manager as an ISPF option
34 ESP-5.4-UG-05
Chapter 2–Getting Started
ESP-5.4-UG-05 35
Section–Accessing ESP Workload Manager as an ISPF option
36 ESP-5.4-UG-05
Chapter 2–Getting Started
Important: Do not use the SAVE command. The SAVE command writes the data
back to the temporary work file that is discarded at the end of your
session.
• To scroll, use the standard scroll keys: PF7 to move up, and PF8 to move down.
• To scroll more quickly, enter TOP or BOTTOM in the command line.
• To access a specific line number quickly, use the LOCATE command.
To display informational messages where they occur in the input instead of at the top
of the screen:
Enter on the command line:
INFOMSG SET
You can prefix these messages with a string of your choice by entering on the
command line:
INFOMSG SET PR('STRING')
ESP-5.4-UG-05 37
Section–Accessing ESP Workload Manager through a batch program
Subsystem name
If the subsystem name for ESP is not ESP, you need to type the subsystem name. For
example, if the subsystem name is ESPA, type:
//EXEC PGM=ESP,PARM='SUBSYS(ESPA)',REGION=4000K
Steplib
If the TSO command processor is not in a LINKLIST library, you will need a
STEPLIB or JOBLIB statement in your JCL. Your statement looks like:
//STEPLIB DD DSN=CYB.ESP.LOAD,DISP=SHR
38 ESP-5.4-UG-05
Chapter 2–Getting Started
PROC 0
WRITE Enter the name of the job you want to run
READ &J
ESP SUB(ESPX)
TRIGGER &USER.ADDJOB USER1("&J")
END
ESP-5.4-UG-05 39
Section–Accessing ESP Workload Manager through a TSO command processor
PROC 0
WRITE Enter the name of the job you want to run
READ &J
CALL 'CYB1.ESP510E.LOAD(ESP)' SUB(ESPX);-
TRIGGER &USER.ADDJOB USER1("&J");END'
Loading commands
The LOAD command lets you load a series of ESP Workload Manager commands for
execution. You can enter your commands into a PDS or sequential data set. Later,
40 ESP-5.4-UG-05
Chapter 2–Getting Started
when you issue the LOAD command in Page mode, you can process this series of
commands.
Sample output
SMFSTATS
ESP SUBSYSTEM INITIALIZED AT 12.43.58 ON MONDAY JUNE 25TH, 2001
9213 ENTRIES TO SMFWTM, 1592 BY BRANCH ENTRY AND 7621 BY SVC
4863 ENTRIES TO ESP PHASE 2
7272 JOB STARTS, 595 STC STARTS, 645 TSU STARTS, 9051 STEP ENDS
LISTTRAK
TRAKFILECYB3.ESP430NV.TRAKFILE
FORMATTED AT 16.15.17 ON MONDAY SEPTEMBER 25TH, 2000
9296 SLOTS TOTAL, 8857 AVAILABLE, NEXT IS 6223
OPER LISTAPTF
DATASET CYB3.ESP430NV.APPLFILE
FORMATTED AT 15.00.54 ON MONDAY OCTOBER 16TH, 2000
6000 SLOTS TOTAL, 5735 AVAILABLE, NEXT IS 2504
---1 ENTRY DISPLAYED
LISTCKPT
PRIMARY CHECKPOINT CTB3.ESP430NV,CKPT
MAX CHECKPOINT SIZE 614400
HIGHEST ADDRESS USED 4032
80 BYTES IMBEDDED FREE SPACE
LISTQ
QUEUE DATASET CYB3.ESP430NV.QUEUE
FORMATTED AT 13.44.57 ON MONDAY JUNE 11TH, 2001
MAXIMUM SIZE 614400 BYTES
HIGHEST ADDRESS USED 3888, 480 BYTES IMBEDDED FREE SPACE
ESP-5.4-UG-05 41
Section–Alternative input data sets
Example
The following statement identifies a JCL library as a Panvalet data set.
JCLLIB PAN-PROD.JCL
Note: You cannot use ESP Workload Manager to write to Librarian and Panvalet data
sets.
42 ESP-5.4-UG-05
Schedule Criteria
You can use free format, everyday English, to specify schedule criteria when
scheduling Events and jobs. ESP Workload Manager has a built-in understanding of
general scheduling terms. You can also add your own unique scheduling terms. These
include special processing periods, holidays, and other special days. You can specify
schedule criteria up to the year 2042.
This chapter contains the following topics:
• Where you can use schedule criteria
• Specifying schedule criteria
• Schedule terms
• Using other techniques for schedule criteria
• Testing schedule criteria
• Using calendars
• Using calendar terms
• Working with calendars
• Defining holidays
• Defining special days
• Special periods
• Working with periods
ESP-5.4-UG-05 43
Section–Where you can use schedule criteria
44 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
If you specify a day and a date that do not match each other, ESP Workload Manager
automatically calculates the first specified day of the week on or after the date you
requested. For example, May 14th, 2001 falls on a Monday.
If you mistakenly specify the following:
TUESDAY MAY 14TH 2001
you actually get this:
TUESDAY MAY 15TH 2001
Month names
ESP Workload Manager recognizes the following months of the year:
• January
• February
• March
• April
• May
• June
• July
• August
• September
• October
• November
• December
You can abbreviate any month specification to a minimum of three letters, for
example:
• APR
• AUG
ESP-5.4-UG-05 45
Section–Specifying schedule criteria
Time zones
You can use the following time zone abbreviations for scheduling in ESP Workload
Manager:
• LT: Local time
• LOCAL: Local time
• ADT: Atlantic Daylight Time
• AST: Atlantic Standard Time
• EDT: Eastern Daylight Time
• EST: Eastern Standard Time
• CDT: Central Daylight Time
• CST: Central Standard Time
• MDT: Mountain Daylight Time
• MST: Mountain Standard Time
• PDT: Pacific Daylight Time
• PST: Pacific Standard Time
• BST: British Summer Time
• GMT: Greenwich Mean Time
You do not need to specify your own time zone in your schedule criteria. These are set
in ESP Workload Manager initialization parameters.
Note: ESP Workload Manager assumes that any number preceding a time zone
abbreviation is a time specification.
Time of day
The following table shows time-of-day formats that ESP Workload Manager accepts,
where h and hh = hours, mm = minutes and ss = seconds.
Format Example
hh.mm 12.30
hh:mm 01:25
hh.mm.ss 10.47.30
hh:mm:ss 11:00:01
Note: ESP Workload Manager assumes that any number preceding the letters AM or
PM is a time specification, for example:
• 3AM
• 6PM
Days of months
A number joined to the name of a month is recognized as a day of the month (for
example jun3, 22oct, 6nov2001). The ordinal qualifiers st, nd, rd or th are also used
with a month name. For example, January21st, August29th.
46 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
Julian date
A Julian date is recognized in the following formats, where yy or yyyy = year number
and ddd = day number.
Format Example
yy.ddd 01.056
yyyy.ddd 2001.056
Date format
ESP Workload Manager recognizes the date format xx/xx/xx. The DATEFORM
initialization parameter instructs ESP Workload Manager how to interpret this
format. The following table shows the different formats (yy=year number, mm=month
number, dd=day number) and how to express January 2, 2000 using them.
Format Example
yy/mm/dd 00/12/28
dd/mm/yy 28/12/00
mm/dd/yy 12/28/00
Note: Only one of these formats is valid at your installation. Check with your systems
programmer or issue the DATEFORM operator command to determine which
format you can use.
Ordinal numbers
Use ordinal numbers (for example, 1st or 5th) to refer to scheduling terms other than
just day of month. For example, 2nd Monday of year. You can use more than one
ordinal, as in 3rd and 4th month of year.
The following examples specify the first Monday of each month.
1ST MONDAY OF MONTH
1ST MONDAY MONTHLY
The following example requests activity at 10 am on the third day of each month.
10AM 3RD MONTHLY
The next example requests activity at 10 am on the first Monday after the third day of
each month.
10AM MONDAY 3RD MONTHLY
Date range
Use a hyphen to designate a range of dates. For example,
3RD-6TH DAY OF MONTH
ESP-5.4-UG-05 47
Section–Specifying schedule criteria
represents the 3rd, 4th, 5th, and 6th day of the month.
Implied periods
The following calendar terms are implied periods:
• WEEK
• WEEKEND
Note: A weekend is defined as both Saturday and Sunday. Therefore, the first weekend
of a month starting on Sunday 1st consists of the Saturday 7th and the Sunday 8th.
• MONTH
• YEAR
The following are valid:
2ND WEEKEND OF THE MONTH
3RD DAY OF LAST WEEK OF YEAR
5TH WORKDAY OF 2ND WEEK OF YEAR
Matching criteria
Normally, you do not need to specify a starting time and date when you define a
schedule. The first time and date that match the criteria you have entered is
automatically selected.
• DAILY AT 19.00
• WEDNESDAYS AT 3PM
• WORKDAYS
48 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
Spaces
Spaces between words are not necessary if there are other delimiting factors in your
date and time specification.
• SAT25JUN
• EVERY5MINUTES
Using workdays
Each calendar has its own workdays. By default workdays are Monday through Friday
excluding holidays. If you specify 2nd workday of month, ESP Workload Manager
looks for the second day of the month which is not a weekend or holiday.
ESP-5.4-UG-05 49
Section–Schedule terms
Schedule terms
You can use words and phrases other than specific dates and times to define schedule
criteria. The following is a list of other terms recognized by ESP Workload Manager.
50 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
ESP-5.4-UG-05 51
Section–Schedule terms
52 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
Note: When working with jobs in an ESP Application, NOW refers to the scheduled
time of the Event that triggered the ESP Application; REALNOW refers to the actual
time the Event was triggered.
ESP-5.4-UG-05 53
Section–Schedule terms
For example, if you specify 3rd Friday at 9 am the schedule occurs at 9 am on the third
Friday of every month, while 9 am last holiday provides a schedule on the last holiday
of the calendar year.
Weekly
• Last workday of each week:
LAST WORKDAY OF WEEK
• Every Saturday in June:
SATURDAY OF JUNE
54 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
Monthly
• 8 am on the last Saturday of each month, beginning in October 2004:
8:00 LAST SATURDAY OF MONTH STARTING OCTOBER, 2004
• First weekday (for example, Monday through Friday) on or after the 15th day of
the month:
15TH DAY OF MONTH PLUS 0 WEEKDAYS
ESP-5.4-UG-05 55
Section–Schedule terms
• 3rd, 9th, 10th, 11th, 12th, and 14th workday of each month:
3RD 9TH - 12TH 14TH WORKDAY WITHIN MONTH
• Every other Monday beginning next Monday:
EVERY 2 WEEKS STARTING MONDAY
• Every other Monday beginning in a week from next Monday:
EVERY 2 WEEKS STARTING MONDAY PLUS 1 WEEK
• 3rd and 4th Sunday of month if there are four Sundays in the month;
3rd and 5th Sunday of month if there are five Sundays in the month:
3RD AND LAST SUNDAY OF MONTH
Yearly
• Each year on July 23:
JULY 23 YEARLY
One-time examples
• 11 pm on April 26, 2000:
11PM APRIL 26, 2000 ONCE
56 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
The ESP Workload Manager Advanced User’s Guide contains some examples of
schedule criteria that use the above techniques. For instance, it describes how to:
• Run a job every two weeks in an Application
• Run a job based on what day of the week a particular criteria falls on
• Use symbolic variables for schedule criteria
• Schedule on even days of the month
ESP-5.4-UG-05 57
Section–Using calendars
Using calendars
ESP Workload Manager has a built-in understanding of scheduling terms, such as
dates and times, based on the Gregorian calendar. Your installation can have other
scheduling terms specific to it, such as holidays, special days, and special processing
periods. You must define these terms to ESP Workload Manager through an ESP
Workload Manager calendar. You must be aware of the security authority necessary to
perform each action.
You do not need to define most calendar terms to ESP Workload Manager to use
them. ESP Workload Manager already recognizes general scheduling terms.
Administrators can create calendars to store definitions of scheduling elements unique
to your installation—your holidays, special days and special processing periods. A
calendar also identifies workdays, the first day of the week, and the start time for a
day. Your administrator defines calendars and controls access to them.
58 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
Example
The accounting department:
• Can consider the period from September 01 to August 31 its fiscal year
• Can then define a special period in a calendar and call that period fiscal_ year
• Can have ESP Workload Manager perform specific tasks in that period by
referring to the name fiscal_year when setting up schedule criteria for the tasks
SYSTEM calendar
Only global holidays and special days should be stored in the SYSTEM calendar.
Department-specific holidays and special days can be stored in as many calendars as
required. ESP Workload Manager always uses the system calendar.
CALENDAR command
Use a CALENDAR command in an Event to refer to a maximum of two calendars. If
you do not refer to a calendar in the Event, ESP Workload Manager automatically
uses the default calendars your administrator assigned to you or your group. ESP
Workload Manager merges holiday definitions in all calendars associated with an
Event. For special days, workdays, and the first day of the week, ESP Workload
Manager uses the first definition it encounters.
Note: The system calendar is always used. For example, if
• Your system calendar defines July 1st as a holiday
• You define July 2nd in calendar A and July 3rd in calendar B as holidays
• You use the CALENDAR command to refer to calendars A and B
ESP Workload Manager consider that July 1st, 2nd, and 3rd are holidays.
ESP-5.4-UG-05 59
Section–Working with calendars
Default calendar
When defining holidays, special days and special periods, specify which calendar will
be used to store the definition. If you do not specify a calendar name, your first
default calendar as defined in your user ID entry will be used. If you do not have a
first default calendar, your second default calendar is used. If you do not have any
default calendars defined, the entry automatically goes into the SYSTEM calendar.
Retaining entries
ESP Workload Manager checks for and deletes old entries only when a calendar is
updated for other define and delete requests. When more than two days have gone by
since holiday and special day entries have occurred, they are automatically deleted
unless you specify otherwise using the RETAIN operand at definition time.
Defining a calendar
Before you define ESP Workload Manager calendars, you should review:
• How many calendars you need to define
• Which days you need to define as workdays
• Which day will be considered the first day of the week
• Which group or user will own which calendar
• Who will own the SYSTEM calendar
To define a calendar:
Use the DEFCAL command.
When defining a calendar, you must specify a calendar name.
60 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
Optional specifications
• An owner for the calendar
• A department to which the calendar belongs
• The definition of the calendar as absolute or logical (defaults to absolute if not
specified)
• The start time of a logical day (defaults to midnight if not specified)
• The first day of the week (defaults to Sunday if not specified)
• Workdays (defaults to Monday to Friday if not specified)
Example 1
This example defines the SYSTEM calendar. By default, the week starts on Sunday,
and the workdays are Monday to Friday inclusively.
DEFCAL SYSTEM
Example 2
This example defines calendar FISCAL. The first day of the week is Monday, and
workdays are Monday to Saturday inclusively.
DEFCAL FISCAL WEEKSTART(MON) -
WORKDAYS(MON,TUE,WED,THU,FRI,SAT)
ESP-5.4-UG-05 61
Section–Working with calendars
3. Type A to define a new calendar, and specify the calendar name. The Define a
Calendar panel appears.
Altering a calendar
To alter a calendar
• Use the ALTCAL command.
Example
This example changes the first day of the week for the SYSTEM calendar:
ALTCAL SYSTEM WEEKSTART(MON)
Note: You can also use the Calendar Definitions panel to alter a calendar.
Displaying a calendar
After you have defined a calendar, and those users with update access have defined
their scheduling terms in the calendar, you or any other user can review information
about the calendar. You can review the calendar information for troubleshooting and
maintenance. Other users who have read access to the calendar will find it useful to
review the calendar information before using it in an Event or Application.
To display a calendar:
• Use the LISTCAL command to display information about a calendar.
62 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
Example 1
This example displays information about the SYSTEM calendar. Workdays are
Monday through Friday. CHRISTMAS and NEW_YEARS are two holidays defined
for two years. There is one definition of a special day called INVENTORY_DAY.
listcal system
CALENDAR NAME:SYSTEM
DEPARTMENT:NONE
DEFINED:AT 11.45 ON THU 13TH AUG 2001 BY CYBBT01
OWNER:CYBBT01
WORKDAYS:MON TUE WED THU FRI
WEEK STARTS:MON
SIZE:280 BYTES
HOLIDAYS:CHRISTMAS, NEW_YEARS, CHRISTMAS, NEW_YEARS
SPECIAL DAYS:INVENTORY_DAY(1)
Example 2
This example displays information about a calendar called PAYCAL. It belongs to the
PAYROLL department, and workdays are Monday through Saturday. The week starts
on Monday. No holidays are defined. There are 24 definitions of
PAYROLL_PERIOD and one definition of PAYROLL_REVIEW.
listcal paycal
CALENDAR NAME:PAYCAL
DEPARTMENT:PAYROLL
DEFINED:AT 08.21 ON FRI 14TH SEP 2001 BY BP01
OWNER:BP01
WORKDAYS:MON TUE WED THU FRI SAT
WEEK STARTS:MON
SIZE:472 BYTES
HOLIDAYS:NONE
SPECIAL DAYS PAYROLL_PERIOD(24), PAYROLL_REVIEW(1)
Deleting a calendar
A calendar can exist for a specific purpose after which the user can decide to delete it.
ESP-5.4-UG-05 63
Section–Working with calendars
To delete a calendar:
• Use the DELCAL command. Specify the name of the calendar you want deleted.
Note: Deleting a calendar that is referenced from an Event causes the Event to have a
processing error.
In this example, ESP Workload Manager deletes calendar CENTRAL and all of its
contents.
DELCAL CENTRAL
Note: You can also use the Calendar Definitions panel to delete a calendar.
Referencing a calendar
Using the DEFCAL command, you can define as many calendars as are needed for
your organization.
Users can then use a CALENDAR command in an Event to refer to a maximum of
two calendars plus the SYSTEM calendar. If a user does not refer to a calendar in the
Event, ESP Workload Manager automatically uses the default calendars you assigned
to the user or to the group to which the user belongs.
Scheduling terms
After you create a calendar, users define their unique scheduling terms in the calendar.
ESP Workload Manager merges holiday definitions in all calendars associated with an
Event. For special days, workdays, and the first day of the week, it uses the first
definition it encounters.
The example below shows an Event with a calendar command that references the
PAYCAL calendar. When ESP Workload Manager executes this Event, it reads this
calendar and the SYSTEM calendar for scheduling terms.
EVENT ID(PAYROLL.PROCESSING)
CALENDAR PAYCAL
64 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
This example defines the calendar BPCAL and specifies the start of the logical day at
7:30 am
DEFCAL BPCAL OWNER(BP) LOGICAL SHIFT(07:30)
Note: You should not need to use logical calendars. They can cause unanticipated
results. Cybermation recommends you use absolute calendars because of their ease of
use and because they can handle almost all scheduling requirements.
Defining holidays
To define holidays:
Use the DEFHOL command.
or
Use Option L of the Main Menu.
You can use up to 16 characters to name each holiday, and you must give a start date
in each holiday definition. The time duration for a holiday is 24 hours, unless you
specify otherwise.
You can define multiple holidays with the same name. However, if they are on the
same calendar, each holiday must have a different starting date and time. If you are
creating consecutive holidays, you may find it simpler to combine them into one
holiday with the duration set to the total duration of the separate holidays.
If the holiday you define was a workday, this day is no longer considered to be a
workday for scheduling purposes.
Note: For logical day processing, holidays should be defined in ABSOLUTE terms
even if stored in a LOGICAL calendar.
You cannot define a holiday in a given calendar if there is a special day with the same
name defined in that calendar or in the system calendar. However, if the special day is
defined elsewhere, you can define a holiday with the same name as the special day. In
that case, a warning appears in the audit log.
ESP-5.4-UG-05 65
Section–Defining holidays
Using holidays
Once holidays are defined, you can use them as you would any other scheduling
terms. Some examples are shown below:
• 16:00 every holiday:
16:00 HOLIDAY
• One workday before BANK_HOLIDAY:
BANK_HOLIDAY LESS 1 WORKDAY
66 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
• The first statement instructs ESP Workload Manager to run a job on Friday. If
this is a holiday, run the job on the following workday.
• The second statement instructs ESP Workload Manager to run a job on Friday. If
this is a holiday, run the job on the previous workday.
ESP-5.4-UG-05 67
Section–Special periods
Example
The following example defines April 20, 2000 as a special day called
BALANCE_DAY:
DEFSPEC BALANCE_DAY ON('APR20,2000')
You can define more than one day as BALANCE_DAY.
For example:
DEFSPEC BALANCE_DAY ON('AUG23,2000')
DEFSPEC BALANCE_DAY ON('OCT17,2000')
Example
If there is a pattern to the special days you are defining, use the REPEAT operand to
define multiple special days using a single command.
The following example shows how to define the next 10 fiscal years on February 1st.
Each FISCAL_YEAR definition will be retained in the calendar called FISCAL for
two years.
DEFSPEC FISCAL_YEAR REPEAT('10 TIMES FEB1 YEARLY') –
CALENDAR(FISCAL) RETAIN(2,YEARS)
Special periods
A special period is the period between two special days. Therefore, you need at least
two special days to use special periods.
68 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
as many periods as you need. If you are not using REPEAT, include one extra period
at the end of your definitions to give ESP Workload Manager a final reference point.
For example, define the first day of at least two consecutive fiscal years, so that ESP
Workload Manager can calculate the start and finish of the first year. Use an
alphanumeric name of up to 16 characters for the name of your special period. The
first character must be alphabetic, and you should not use blanks. You can also specify
the name of a particular calendar to which the period definitions apply.
Example
This example defines fiscal years:
DEFSPEC FISCAL_YEAR ON(1APRIL97) RETAIN(2,YEARS)
DEFSPEC FISCAL_YEAR ON(1APRIL98) RETAIN(2,YEARS)
DEFSPEC FISCAL_YEAR ON(1APRIL99) RETAIN(2,YEARS)
Period intervals
Period intervals do not have to be regular. One trading period, for example, can start
three weeks after the beginning of the previous trading period, and five weeks before
the beginning of the next. Simply tell ESP Workload Manager when each period
starts. When two special days of the same names are defined in a calendar, you have
essentially defined a period from the first special day up to the second special day. In
the above example, ESP Workload Manager knows that the last day of each
FISCAL_YEAR is 31st March.
Use this method for any special period you want to define, regardless of the intervals
between the start of each period: every five days, three weeks, or four months.
Example
This example shows how to define payroll periods every two weeks for the next year
using the REPEAT operand. Each PAYROLL_PERIOD is retained on the PAYCAL
calendar for one year after it occurs.
DEFSPEC PAYROLL_PERIOD REPEAT('26 TIMES EVERY 2 -
WEEKS STARTING THURSDAY') CALENDAR(PAYCAL) -
RETAIN(1,YEAR)
ESP-5.4-UG-05 69
Section–Working with periods
70 ESP-5.4-UG-05
Chapter 3–Schedule Criteria
June 28
4 weeks
July 26
4 weeks 13 weeks
August 23
5 weeks
Septem ber 27
4 weeks
O ctober 25
4 weeks 13 weeks
N ovem ber 22
5 weeks
D ecem ber 27
Option L
Using option L.4 you can define these periods, for a year, as follows:
For each occurrence of the special day you want to define, complete SPECIAL
DAY NAME, ON, and CALENDAR if required, then press,ENTER.
The ON fields can contain specific dates and times, or schedule statements
for special days that occur at regular intervals.
ESP-5.4-UG-05 71
Section–Working with periods
72 ESP-5.4-UG-05
Processing ESP Events
ESP-5.4-UG-05 73
Section–Defining an ESP Event
To define an Event:
Use one of the following methods:
• Use the ISPF panels
• Modify and save an existing Event under a new name
• Load an Event definition from a sequential data set or member of a PDS, using
the LOAD command
• Define the individual commands of an Event line by line
Example
EVENT ID(PROD.FIRST_EVENT)
SCHEDULE 5PM FIRST WORKDAY OF MONTH
SUBMIT 'TEST.JCL.CNTL(JOB1)'
ENDDEF
In this example:
• The definition begins with the EVENT command and the Event name.
• The SCHEDULE command tells ESP Workload Manager when to schedule the
Event.
• The SUBMIT command tells ESP Workload Manager what to do; in this case,
submit a job.
• The ENDDEF command indicates the end of the definition.
When ESP Workload Manager encounters the ENDDEF command, it sends the
Event to the ESP Workload Manager subsystem for processing. It also sends a message
to the user who defined it, telling the date and time on which the Event will first
execute, or warning the user that no schedule elements exist.
Naming an Event
The first step in defining the Event is naming. Naming an Event establishes its
ownership, which is important for security. Not all users have the same authority or
access to functions and resources. A security system such as RACF, CA-ACF2, or CA-
Top Secret, as well as ESP Workload Manager internal security, can control the
authority and access users have.
74 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
Event name
An Event name has two parts:
Duplicate Events
When an Event with the same name already exists, ESP Workload Manager ignores
your new definition. To replace the old definition with the new one, use the
REPLACE operand.
Event prefixes
In the next diagram:
• The prefix for Events TRAINING and PAYROLL is PROD.
• The prefix for Event PHONE_BILL is DOROTHY.
• The user DOROTHY has access to her own Events and to Events starting with
the prefix PROD.
DOROTHY
DOROTHY.PHONE_BILL PROD.TRAINING
PROD.PAYROLL
ESP-5.4-UG-05 75
Section–Defining an ESP Event
Systems
All Events that create ESP Applications should point to the ESP Workload Manager
system designated as the master system. Other Events can execute on a specific system
because they need to process commands for that system. If the system does not matter,
you can specify SYSTEM(-).
Note: This does not affect where jobs run; JES controls that.
Example
This example identifies a system identifier of ESPM for the Event PROD.BILLING.
EVENT ID(PROD.BILLING) SYSTEM(ESPM)
Additional information
The next sections describe how to use schedule criteria and data-set triggering in
Events and how to manually trigger an Event. For information on other types of
Events, including global variable table, job monitor, alert Events, and signal, see the
ESP Workload Manager Advanced User’s Guide.
76 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
SCHEDULE command
Each command, or scheduling statement, begins with SCHEDULE followed by the
time period for execution. For example:
SCHEDULE 10AM DAILY
You can specify as many SCHEDULE commands as you need. For example, you can
schedule an Event at different times during a week.
SCHEDULE 4PM WEEKDAYS
SCHEDULE 2PM WEEKENDS
Overlapping criteria
If the times in more than one SCHEDULE command coincide, the Event only
executes once. The following example only executes once at midnight, even though
the second statement also schedules an execution at midnight every fourth execution.
SCHEDULE MIDNIGHT DAILY
SCHEDULE EVERY 6 HOURS ROUND WEEKDAYS
Additional information
For more information on schedule criteria, see “Schedule Criteria” on page 43.
ESP-5.4-UG-05 77
Section–Defining an ESP Event
Important: If you schedule an Event for a particular date and omit the ONCE
operand, ESP Workload Manager assumes a default schedule
frequency of DAILY.
Handling exceptions
An Event executes once at every time and date you specified in your SCHEDULE
commands. You can use the NOSCHED command to handle exceptions.
If your SCHEDULE command has a time, then you must use the same time on the
NOSCHED command.
Missed Events
An Event can miss its scheduled time for reasons such as:
• System trouble (system crash, power outage)
• The Event is on hold
• The Event class is on hold
• ESP Workload Manager is placed in a suspended (quiesced) state
• The Event data set is suspended at the scheduled execution time
When ESP Workload Manager cannot to execute an Event at the time you scheduled,
the Event is considered overdue. When the Event becomes eligible to be processed, for
78 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
example after an outage, ESP Workload Manager checks the Event definition to
determine how to process the Event. The overdue count specifies how many overdue
occurrences of the Event ESP Workload Manager must process.
Advance/delay/ignore/processing
Your scheduling criteria for Event execution can create conflicts. For example, if you
want the Event to execute on the second day of every month except on a weekend, tell
ESP Workload Manager to either:
• Advance the Event (run it sooner than usual) by any number of days or weekdays
• Delay the Event (run it later than usual) by any number of days or weekdays
• Ignore the Event (do not run it at all)
You can use the ON command with a SCHEDULE command to advance, delay, or
ignore Event processing if the Event falls on a holiday, weekday, weekend, or
particular day of the week. You can use multiple ON commands in an Event.
If you schedule your Event to run on the 12th day of every month, but do not want it
to run if the 12th falls on a weekend or holiday, you can delay the processing using the
ON command. Type ON followed by the criteria you do not want the Event to run.
Then type your DELAY operand and the amount of time you want the Event delayed.
Your Event looks like this:
EVENT ID(CYBER.TWELVE)
SCHEDULE 12TH DAY OF MONTH
ON WEEKEND DELAY 1 WEEKDAY
ON HOLIDAY DELAY 1 WEEKDAY
INVOKE 'TEST.ESP.PROC(MYAPPL)'
ENDDEF
By indicating a delay of one weekday, you ensure that, even if the 12th falls on a
Saturday, Sunday, or a Holiday, it runs during the week.
ESP-5.4-UG-05 79
Section–Defining an ESP Event
You can use the DELETE command if, for example, you want to delete an Event that
is only temporary. Perhaps you want to delete a daily Event after a particular date.
DELETE 10AM AUG 23, 2000
80 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
ESP-5.4-UG-05 81
Section–Specifying data-set-triggered Events
Abnormal closures
ESP Workload Manager does not trigger a data-set-triggered Event when the data set
closes during an abnormal termination of a task or job step.
Process flow
Visually, the flow looks like this:
PROD.CICS.FILE1602 PROD.NIGHTLY
(data set) (Event)
82 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
INVOKE 'PROD.ESP.PROCS(PAYJOBS)'
ENDDEF
ESP-5.4-UG-05 83
Section–Specifying FTP data-set triggered Events
You can specify several DSTRIG commands for one Event, and each can maintain its
own separate counters.
ldte
The following data set(s) are being checked for data set triggers:
CYB001.DATA.SET1, AnyClose, User(CYB-)
CYB002.DATA.SET2, AnyClose, Job(CYB002), User(CYB002), Ftp(Send)
Logon(aixuser-)
CYBER.DATA.SET1, AnyClose, Job(FTPSERVE), User(CYB001) Ftp(Receive)
3 data set triggers found
84 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
When setting up an FTP data-set Event, the file transfer causing the Event to be
triggered can be defined by:
• Specifying the direction of the transfer
• Limiting data set activity to a host
• Limiting data set activity to a user ID
• Limiting data-set activity to a logon ID
ESP-5.4-UG-05 85
Section–Specifying FTP data-set triggered Events
86 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
dsname
The data set name of the DSTRIG Event command always refers to the local
mainframe data set for both FTP(RECEIVE) and FTP(SEND).
ANYCLOSE
FTP triggers cannot distinguish between data-set creation and data-set updates.
Therefore, ANYCLOSE is assumed if not explicitly specified in an FTP trigger
definition.
RENAME
When RENAME is specified for an FTP trigger, the trigger is activated on completion
of an FTP rename command issued by the client to rename the data set to the
specified data set name. Because data set name always refers to a local host data set, the
remote FTP partner must be the client for an FTP trigger where RENAME is
specified. Therefore, the RENAME and FTP(SEND) operands are mutually
exclusive.
Example
The following is an example of an FTP transfer-triggered Event. This Event sends a
message to a user each time an FTP transfer to data set CYBER.DATA.SET completes
from logged on user aixuser on host AIXHOST to any local user with host security
user ID prefix CYB. Because both the USER and the LOGON operands are specified
and because they specify different user IDs, the FTP trigger criteria can only be
satisfied if the local FTP partner is the client.
EVENT ID (USER.APPL_RECEIVE)
DSTRIG CYBER.DATA.SET USER(CYB-) FTP(RECEIVE) HOST(AIXHOST)-
LOGON(aixuser)
SEND 'APPLICATION RECEIVED FROM CLIENT' USER(BP)
ENDDEF
ESP-5.4-UG-05 87
Section–Specifying explicit-data-set triggers
88 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
Parameter Description
DSNAME or DATASET Is the data-set name keyword.
dsname Specifies the name of a data set.
member Specifies a member name of a PDS.
relgen Specifies the relative generation data group (GDG). For
example you can code:
• (0) for the current generation
• (+1) for the next generation
• (-1) for the previous generation
You must code relgen in CYBESDT1 and in the
corresponding DSTRIG command or DSNAME
statement exactly the same, including leading zeros.
Note: you can also include the absolute generation in
dsname. For example:
CYB4.ENCXX.BACKO01A.G0027V00
VOLSER or VOLUME Is the volume serial number keyword.
volser Specifies the volume serial number that the data set resides
on. It is required for uncataloged data sets and optional for
cataloged data sets.
SUBSYSTEM or SSID Is the ESP Workload Manager subsystem identifier
keyword.This parameter is optional, if omitted, all tracking
ESP Workload Manager subsystems will receive the explicit
data-set trigger SMF record that program CYBESDT1
writes.
subsystem Specifies the subsystem name of a tracking ESP Workload
Manager that will receive the explicit data-set trigger SMF
record that program CYBESDT1 writes.
Note: A tracking ESP Workload Manager subsystem is
one whose ESPPARM initialization file does not
contain the following statement:
SMFINT OFF
VERIFY Specifies that CYBESDT1 will set the explicit data-set
trigger only if the following criteria are met:
• The specified data set is catalogued if the VOLSER or
VOLUME parameter is omitted.
• The specified data set resides on the specified volume.
(From the volser parameter if specified, from the catalog if
not.)
• The owning user of the job executing CYBESDT1 has
update access to the data set specified.
NOVERIFY Specifies that CYBESDT1 will set the explicit data-set
trigger whether or not the criteria described for the
VERIFY parameter are met.
ESP-5.4-UG-05 89
Section–Specifying explicit-data-set triggers
Examples
90 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
Sending messages
You can use an Event to send a message to yourself, another user, a group of users, or
an operator console. To send a message, enter the SEND command followed by the
message in single quotes, and the user ID or console identifier to which the message is
being sent. You can include several SEND commands in any single Event.
Submitting JCL
You can use an ESP Event to submit JCL from a data set to JES using the SUBMIT
command. A single Event can submit more than one job. If there are relationships
between the jobs you are submitting, you must use an ESP Procedure to submit them.
ESP-5.4-UG-05 91
Section–Specifying the function of an Event
92 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
ESP-5.4-UG-05 93
Section–Specifying the function of an Event
Important: You must code the ENDPROC command at the end of an instream
Procedure
Note: You cannot use panels to add an instream procedures in an Event. Create the
Event first with the panels and, then, add the instream procedure by editing the
Event.
To browse or edit instream procedures from the CSF, use the BE and EE commands.
This is because the instream procedure is inside the Event and cannot be browsed or
edited independently.
The following is an example of an Event including an instream ESP Procedure:
EVENT ID(PROD.WITHPROC)
SCHEDULE DAILY AT 6PM
PROC
APPL WITHPROC
JCLLIB PROD.JCL
JOB A
RUN DAILY
RELEASE JOB B
ENDJOB
JOB B
RUN DAILY
ENDJOB
ENDPROC
ENDDEF
Additional information
For information on using ESP Procedures, see “Working with ESP Procedures” on
page 107.
94 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
You can also specify COPYJCL within a Procedure to identify one or more jobs for
which you want to use COPYJCL. This gives you the advantage of using COPYJCL
for specific jobs.
When you use the COPYJCL command, you must also specify the library that is to
receive the copy, followed by either the JOBNAME or JOBID operand. The operands
you use influence the member name ESP Workload Manager assigns to the JCL copy.
Compressing COPYJCL
If you re-use the same data set continually, submit a compress job frequently to ensure
the data set does not run out of space. You could use a data-set-triggered Event to
submit the compress job automatically after a number of closures.
ESP-5.4-UG-05 95
Section–Specifying other requirements
Example
This example references the symbol library called DATES. When ESP Workload
Manager processes the Event, it opens each data set associated with this symbol library
and uses this information to perform substitution of symbolic variables.
EVENT ID(CYBER.PAYROLL)
SYMLIB DATES
INVOKE 'CYB.ESP.PROCS(PAYROLL)'
ENDDEF
You can also define and work with symbols as part of an ESP Procedure. See the ESP
Workload Manager Advanced User’s Guide for detailed information on creating and
using symbolic variables.
96 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
ESP-5.4-UG-05 97
Section–Displaying the schedule
Adding comments
You can use the COM command to add any number of comments, anywhere in an
Event. ESP Workload Manager ignores them when it executes the Event.
Example
For example, to display all entries on the current schedule cycle, type:
LISTSCH
Note: If an Event is scheduled more than once during the current schedule cycle, ESP
Workload Manager only displays the time of the first execution. ESP Workload
Manager stores only one instance of the Event and does not calculate the next
execution time until it has executed the Event.
98 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
Expected execution
The LISTSCH command can only display scheduled Events. If you want to display
Events that do not have SCHEDULE commands, such as Events triggered by data-set
activity you can use the EXPECT command.
The EXPECT command uses the same format as the SCHEDULE command, but it
does not cause an Event to execute.
ESP-5.4-UG-05 99
Section–Working with defined Events
Command Function
ALTER Alters the characteristics of an Event.
CLASS Controls the classes of Events (requires OPER authority; not available
through panels).
DELETE Deletes an Event.
HOLD Holds an Event from processing.
LIST Lists an Event name or definition.
RELEASE Releases a held Event for processing.
RESUME Resumes processing of a suspended Event.
SIMULATE Simulates the functions of an Event.
SUSPEND Suspends an Event from processing.
TRIGGER Triggers execution of an Event.
100 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
3. Type the prefix of the Event in the PREFIX field for multiple Events.
4. Press Enter. A list of Events appears.
5. Type the code letter for the action you want to take beside the Event name.
Note: The ISPF interface also provides BROWSE and EDIT options.
Simulating an Event
You can simulate the functions of any defined Event using the SIMULATE
command. For the Event you select, the SIMULATE command tells you which jobs
ESP Workload Manager submits, any messages it sends, how it substitutes symbolic
variables, and so on. This command is particularly useful with ESP Procedures
because you can use it to see how the complex and conditional components of your
Procedure will run at a particular date and time. ESP Workload Manager also displays
error messages if it encounters problems, such as syntax errors or successor loops in an
ESP Procedure. You can simulate an Event for a day on which it is not normally
scheduled; ESP Workload Manager simulates what would happen if the Event was
triggered on that particular day.
ESP-5.4-UG-05 101
Section–Working with defined Events
Options
There are a number of other options available with the SIMULATE command. For
example, you can:
• Suppress the printing of the ESP Procedure listing.
• Simulate data-set triggers, signal processing and job monitor Events.
• Simulate Procedures invoked by the simulated Procedure as well as monitor
Events and other directly invoked Events.
• Invoke a JCL scan exit during simulation. An indicator will be passed to this exit
indicating that this is a simulation rather than real Event execution.
• Perform full syntax checking on all ESP Workload Manager commands invoked.
• Direct the JCL output to a data set.
• Suppress the execution of REXX code within an ESP Procedure.
• Display all successors that were inherited because a job was not selected for some
reason on the job selection report.
• Display jobs that were not selected for any reason on the job selection report.
Triggering an Event
You can manually trigger an Event at any time through the TRIGGER command.
Enter the command TRIGGER, followed by the Event’s name and the time at which
you want it to execute. The default time is now.
If you specify a time in the past, ESP Workload Manager triggers the Event
immediately and processes the Event as if it was this prior date. ESP Workload
Manager selects jobs and resolves symbolic variables as if it were this date in the past.
DELAYSUB/EARLYSUB statements are ignored unless they use the term
REALNOW that reflects the actual time of Event trigger.
102 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
The Event execution either replaces the next scheduled execution, or it can be a
temporary addition to the schedule.
Adding executions
You can use the ADD option to schedule executions of the Event that you want to add
to the Event’s normal schedule. ESP Workload Manager processes the ADD operand
in the same way it processes a SCHEDULE command. A TRIGGER ADD always
causes the Event to execute. If there is a HOLD or SUSPEND, ESP Workload
Manager does not execute the Event and produces an error message.
For example, if you need to run an Event now in addition to its scheduled time of
7 pm, trigger the Event with the ADD option.
TRIGGER USER01.FIRST_EVENT ADD
Note: An
installation can set the default on the TRIGGER command to ADD or
REPLACE.
ESP-5.4-UG-05 103
Section–Working with defined Events
104 ESP-5.4-UG-05
Chapter 4–Processing ESP Events
Note: If the Event is both held and suspended at a scheduled execution time, ESP
Workload Manager treats the Event as suspended and therefore does not consider it
overdue.
Overdue Events
Event classes
After a long system outage, ESP Workload Manager makes it easy for you to
manipulate classes of Events so that the system can process high priority work first.
For more information on manipulating classes of Events see the ESP Workload
Manager Operator’s Guide.
Overdue Events
Add OVERDUE to the end of your SCHEDULE command, and then a number in
brackets indicating how often the Event should execute if it misses its scheduled time.
The default is 1.
Altering Events
To change certain characteristics of one or more Events:
Use the ALTEVENT command.
Specify any number of operands to cause multiple changes to a single Event or group
of Events. When the name contains asterisks or a hyphen, ESP Workload Manager
alters all matching entries. If you are unsure of which Events a particular command
will affect, use a LIST command to display the Events.
Use the ALTEVENT command to change calendars, classes, symbol libraries, and
system identifiers, in addition to adding or subtracting hours or minutes to compute a
new set of time and date schedules.
ESP-5.4-UG-05 105
Section–Working with defined Events
Deleting Events
To delete an existing Event:
Use the DELETE command.
This removes the Event from the Event data set.
106 ESP-5.4-UG-05
Working with ESP Procedures
An ESP Procedure is a set of stored instructions that ESP Workload Manager invokes.
When you create an ESP Procedure using CLANG, a high-level programming
language. You can also use the IBM REXX language in ESP Procedures.
The main use of an ESP Procedure is to provide a framework for an ESP Application.
You control an Application from one Event definition, regardless of the Application’s
complexity or number of conditional requirements. You can use a single ESP
Procedure to control a complete batch run or even multiple batch runs. The
Procedure automatically accounts for any daily changes or month-end processing. For
more information on using ESP Procedures to define Applications, see “Using
Applications” on page 137.
This chapter contains the following topics:
• Overview of ESP Procedures
• Invoking an ESP Procedure
• ESP Procedure syntax
• Using ESP Workload Manager control language in Procedures
• Using symbolic variables in Procedures
• Using expressions and strings in Procedures
• Built-in functions
• Using calendaring functions
• Using functions for job selection
• Using functions for symbolic variables
• Using system activity functions
ESP-5.4-UG-05 107
Section–Overview of ESP Procedures
• Combining functions
• Re-executing an ESP Procedure
• Using templates
• Using Event definition commands in Procedures
• CLANG examples
• Caching an ESP Workload Manager Procedure
108 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
ESP-5.4-UG-05 109
Section–Using ESP Workload Manager control language in Procedures
Examples of using the above syntax rules are presented throughout this chapter.
IF
Use IF to conditionally process an instruction or group of instructions depending on
the evaluation of an expression. When you use an IF statement, the expression that
follows it must return a true or false value. You can use any number of nested IF
statements.
Example:
IF logical-expression THEN ...
THEN
Use THEN to indicate the Procedure processed only if the expression that follows the
IF statement returns a true value. If a THEN statement continues to another line, use
a line continuation character (- or +). If there is no continuation character, ESP
Workload Manager ignores the THEN statement. You must begin and end a set of
instructions with DO and ENDDO language elements.
Example:
THEN statement
ELSE
Use an ELSE statement only in conjunction with an IF statement when the expression
that follows the IF statement returns a false value. If you do not include an ELSE
110 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
statement after an expression returning a false value, ESP Workload Manager passes
control on to the next line. You must begin and end a group of instructions with DO
and ENDDO language elements. If an ELSE statement continues to another line, use
a line continuation character (- or +). If there is no continuation character, ESP
Workload Manager ignores the ELSE statement.
Example:
ELSE statement
DO
Use the DO statement in conjunction with THEN and ELSE statements to indicate
the start of a set of statements. Use this statement to group a number of instructions
together. You do not require a DO statement if you only have one instruction. DO
must follow immediately after THEN or ELSE, or begin the continuation line. Do
not use a continuation character (- or +) on a DO statement.
Example:
DO
statement
statement
ENDDO
Use the ENDDO statement in conjunction with the DO statement to indicate the
end of a set of statements. The following example shows how you should use DO and
ENDDO.
Example:
DO
statement
statement
ENDDO
EXIT
Use EXIT to quit from your current point in a Procedure. ESP Workload Manager
continues to process pending requests up to the point at which you use EXIT. ESP
Workload Manager also processes any action statements in the calling Event, or other
ESP Procedures invoked in the same Event. ESP Workload Manager ignores EXIT
statements within the scope of a JOB statement during the generation of an ESP
Application. During Application processing, EXIT within the scope of a JOB
statement causes ESP Workload Manager to process all statements up to the EXIT
and submit the job.
Example:
EXIT
ESP-5.4-UG-05 111
Section–Using ESP Workload Manager control language in Procedures
QUIT
Use QUIT to quit an entire process and the Event that invoked it. If you use QUIT,
ESP Workload Manager does not process any pending requests from this or any other
Procedure invoked by the same Event. ESP Workload Manager ignores QUIT
statements within the scope of a JOB statement during the generation of an ESP
Application. During Application processing, QUIT within the scope of a JOB
statement causes ESP Workload Manager not to process any statements for that job
and does not submit the job, causing the job to fail with a SUBERROR. Therefore,
any of the jobs dependencies are not released.
Example:
QUIT
JUMPTO
Use JUMPTO to search forward through the existing Procedure to find the next label
of the name given in the JUMPTO statement. Use JUMPTO to skip over whole
sections of a Procedure. You can use JUMPTO with or without an IF statement.
Example:
JUMPTO labelerr_handler
Note: Afteryou specify DO, ENDDO, EXIT, or QUIT you must specify your next
statement on the next line. You cannot continue these statements.
112 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
Additional information
For more examples of using CLANG, see “” on page 131.
ESP-5.4-UG-05 113
Section–Using expressions and strings in Procedures
When you want to use the value of a symbolic variable, you use the symbol-introducer
character (default is the per cent sign (%)) followed by the symbol name. For example:
%NAME.
Note: Yourinstallation can use a different symbol-introducer character. Check with
your administrator to find out what symbol-introducer character is used at your site.
Additional information
See the ESP Workload Manager Advanced User’s Guide for detailed discussion of
symbolic variables and global variable tables.
114 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
When you want to enter text and have it appear exactly as you typed it, type it
enclosed in single quotes:
'THIS IS A CHARACTER STRING'
When you want to enter a text statement containing a changing variable, such as the
time (%ESPATIME), you could type:
'THE TIME IS %ESPATIME'
ESP Workload Manager substitutes the actual system time in place of the symbolic-
variable name %ESPATIME.
Using expressions
An expression is a variable, number, or character string connected by operators.
Expression evaluation is from left to right; this is modified overridden by parentheses
and by operator precedence. You can modify this order using parentheses.
A logical expression resolves to the value one if true, or zero if false. If an arithmetic
expression resolves to zero, it is false. For any other value, the expression is true. If you
do not enclose a logical expression in parentheses when you use an IF statement, ESP
Workload Manager understands the THEN statement to be the terminator.
Examples:
• In the first statement, ESP Workload Manager processes the THEN statement if
NUM=100.
• In the second statement, ESP Workload Manager processes the THEN statement
if VAR1 is less than VAR2 and NUM is equal to 100.
IF NUM=100 THEN ...
IF (VAR1 LT VAR2 AND NUM EQ 100) THEN ...
Using operators
You can use arithmetic operators, comparison operators, and logical operators in an
expression.
Arithmetic operators
Numbers can be combined using the following arithmetic operators:
+ Add
- Subtract
* Multiply
/ Divide
// Integer Divide
** Power
Prefix - Negate the following term. Same as '0-term'
Prefix + Take following term as if it was '0+term'
If you use / for division, ESP Workload Manager performs the division internally
using floating-point arithmetic but the resulting value is an integer. If you use // for
ESP-5.4-UG-05 115
Section–Using expressions and strings in Procedures
Comparison operators
The comparison operators return the value one if the result of the comparison is true,
or zero otherwise. You can use the following operators, in either their symbol or letter
form, in an expression.
>= GE greater than or equal to
<= LE less than or equal to
< LT less than
> GT greater than
= EQ equal to
¬= NE not equal to
Logical operators
You can use the following logical operators in an expression:
& AND
| OR
Order of precedence
The order of precedence of the operators is (highest at the top):
¬ (not), prefix + (prefix plus), prefix - (prefix minus)
**(power)
/(divide), // (integer divide), * (multiply)
+(plus), -(minus)
>= (GE), <= (LE), < (LT), > (GT),= (EQ), ¬= (NE)
AND
OR
In the statement below (A = B or C > D) is a valid expression, and GO is a valid
character string that ESP Workload Manager assigns to the variable E. ESP Workload
Manager assigns the value GO to the variable E if either
A = B or C > D.
IF (A=B OR C > D) THEN E = 'GO'
Note: Ifthe expression A = B is true, the entire logical expression is also true. This
means that ESP Workload Manager does not have to evaluate C > D. This order of
precedence is useful for expressions such as IF I = 0 AND J/I > 4. This expression does
not cause an error since J is divided by I only if I is non-zero.
116 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
Built-in functions
A function is a sequence of instructions that can receive data, process that data, and
return a value. ESP Workload Manager provides a set of built-in functions. To use a
function, type the function name directly followed by one or more arguments within
parentheses, like this:
function(arguments)
Note: There can be no space between the function name and the left parenthesis.
Built-in functions
The built-in functions fall into the following categories:
Category Explanation
Calendaring Tests schedule criteria and calculate time periods.
Job selection Checks if a job has already been selected for submission.
Symbolics Performs operations on symbolic variables.
System activity Checks the status of activity on the system, including jobs and
tape drives.
Summary by function
The following table summarizes the functions by category:
ESP-5.4-UG-05 117
Section–Using calendaring functions
Additional information
The following sections describe ESP Workload Manager built-in functions in detail
and contain some examples of using these functions. For more examples, see “” on
page 131.
DAYS_TO
The DAYS_TO function returns a positive number representing the number of days
from a specified special day, holiday, or any defined schedule criteria. If you do not use
a year and the day you specified has passed, DAYS_TO assumes the next year and
returns a positive number. If the date is in the past, ESP Workload Manager returns a
negative number.
118 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
Example: DAYS_TO
If you want to determine the number of days to December 25 from the current day,
and assign that number to an integer variable called X, type:
INTEGER X
X=DAYS_TO('DEC 25')
DAYS_FROM
The DAYS_FROM function returns a positive number representing the number of
days from a date in the past. DAYS_FROM assumes the current year if you do not
specify one. If the date is in the future, ESP Workload Manager returns a negative
number.
Example: DAYS_FROM
The following is an example of an expression containing the DAYS_FROM built-in
function:
IF DAYS_FROM('AUGUST 1ST') GT 0 THEN
DAYS_BETWEEN
The DAYS_BETWEEN function returns a whole number representing the number
of a specified unit of time (days, months, workdays, fiscal_months, and so on)
between two given dates. You do not have to specify the dates explicitly; you can use a
schedule expression instead.
DAYS_BETWEEN('first date','second date','restrictor')
The restrictor is an optional qualifier that defaults to DAYS. Examples of the
following are other possible restrictors; HOURLY, DAILY, are WORKDAYS, and
WEEKDAYS, WEEKLY, SATURDAYS, WEEKENDS, MONTHLY,
YEARLYPLUS SAT. Your restrictor cannot be any unit of time less than hourly. The
value that this function returns is the number of occurrences of the restrictor between
the first date and the second date. If the first date is not prior to the second date, the
function returns a value of zero negative number. The maximum value the function
returns is 50000 for any restrictor other than DAYS.
ESP-5.4-UG-05 119
Section–Using calendaring functions
You could also determine the number of Saturdays from the 6th workday of the
current month, up to but not including tomorrow, by typing:
DAYS_BETWEEN('6TH WORKDAY OF MONTH STARTING +
TODAY','TOMORROW','SAT')
TODAY
The TODAY function compares the schedule expression that you specify to today’s
schedule date. It returns a true or a false value, depending on whether the expression
matches today. ESP Workload Manager returns a number code indicating the result:
1 = true
0 = false
In the following example, ESP Workload Manager only processes the instructions
following the THEN statement if today is a Friday.
IF TODAY('FRIDAY') THEN ...
When the statement is false, ESP Workload Manager skips to the next ELSE
statement or to the following line.
You can check if today is not Friday like this:
IF TODAY('NOT FRIDAY') THEN ...
Example: TODAY
The following are examples of the TODAY function:
IF TODAY('MON WED FRI') THEN ...
IF TODAY ('FIRST-LAST DAY OF JUNE JULY') THEN ...
IF TODAY('LAST WORKDAY OF MONTH LESS 1 WORKDAY') THEN ...
• The first statement checks if today is Monday, Wednesday, or Friday.
• The second statement checks if today is any day in June or July.
• The last statement checks if today is the second last workday of the month.
TOMORROW
The TOMORROW function compares the expression following the TOMORROW
keyword to tomorrow’s date (for example, the day after the schedule date). ESP
Workload Manager returns a true or false value, depending on whether the expression
matches tomorrow. ESP Workload Manager returns a number code indicating the
result:
1 = true
0 = false
120 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
Examples: TOMORROW
The following are two examples using the TOMORROW function:
IF TOMORROW('LAST WORKDAY OF MONTH') THEN ...
IF TOMORROW('HOLIDAY') THEN ...
• In the first example, ESP Workload Manager only processes the instructions
following the THEN statement if tomorrow is the last workday of the month.
• In the second example, ESP Workload Manager only processes the instructions
following the THEN statement if tomorrow is a holiday.
When the statement is false, ESP Workload Manager skips to the ELSE statement or
the following line.
YESTERDAY
The YESTERDAY function compares the schedule expression that you specify to
yesterday’s date (for example, the day before the schedule date). ESP Workload
Manager returns a true or false value, depending on whether the expression matches
yesterday. ESP Workload Manager returns a number code indicating the result:
1 = true
0 = false
Example: YESTERDAY
In the following example, ESP Workload Manager only processes the instructions
following the THEN statement when yesterday is the first workday of the month:
IF YESTERDAY('FIRST WORKDAY OF MONTH') THEN ...
When the statement is false, ESP Workload Manager skips to the ELSE statement or
to the following line.
Example: YESTERDAY
In the following example, ESP Workload Manager only processes the instructions
following the THEN statement when yesterday is a holiday:
IF YESTERDAY('HOLIDAY') THEN ...
When the statement is false, ESP Workload Manager skips to the ELSE statement or
to the following line.
ESP-5.4-UG-05 121
Section–Using functions for job selection
SELECTED
The SELECTED function returns a true or false value that indicates whether a job
name has been selected as a result of a previously processed SELECT or RUN
statement. To return a true value, ESP Workload Manager must have selected the job
in this ESP Procedure or in another ESP Procedure invoked by the same Event, prior
to evaluating the function. This function does not return a true value for a job selected
via a POSTREQ, PREREQ, or COREQ statement.
ESP Workload Manager returns a number code for the value:
1 = true, the job name has been selected.
0 = false, the job name has not been selected.
The syntax is:
SELECTED('JOBNAME')
If the job you are checking for selection is a qualified job, you will need to include the
qualifier, like this:
SELECTED('jobname.qualifier')
This function is useful for scheduling jobs with the same frequency because it can
eliminate the need to specify complicated criteria multiple times. The function is also
useful when you want to schedule a job whenever another job is not scheduled.
122 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
DEFINED
The DEFINED function checks to see if a symbolic variable has been defined and
returns the following values:
1 = true
0 = false
The syntax is:
DEFINED(variable)
LENGTH
The LENGTH function returns a number equal to the length of the variable
following the LENGTH keyword in parentheses. The syntax is:
LENGTH(variable)
This function does not return a true or false value. Instead, it resolves to a whole
number equal to the length of the named variable’s value.
SUBSTR
The SUBSTR function resolves to a partial string from the variable string that follows
the SUBSTR keyword in parentheses. The syntax is:
SUBSTR(start,length,variable_name)
ESP-5.4-UG-05 123
Section–Using system activity functions
ACTIVE
The ACTIVE function tests to see if a job or any address space is active on the current
system and returns a value based on that test. ESP Workload Manager returns a
number representing the result:
address space identifier = true
0 = false.
Note: If you want to verify that a job or any address space is active on any system
(within the same JES node), use the JOBONQ built-in function.
124 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
JOBONQ
Use the JOBONQ function to determine, by checking JES, whether a job or group of
jobs is currently on any JES queue. To use the JOBONQ function, use the following
syntax:
JOBONQ('jobname','prefix','criteria')
This function requires three operands: a job name, a prefix, and a search criteria.
Operand Explanation
jobname Specifies the name of the job or job name prefix. You can only use a
job name prefix with the U criterion.
prefix Specifies the prefix of the variables you want to generate. This operand
is optional. For example, you can specify:
IF JOBONQ('MYJOB', '', 'E') THEN -
SEND 'MYJOB IS EXECUTING' U(*)
criteria Specifies the search criteria consists of any combination of the letter
codes below. If this operand is omitted, ESP Workload Manager looks
in all queues.
Returning values
The following list contains all the acceptable search criteria codes:
JOBONQ variables
The JOBONQ function returns the count of jobs that meet the criteria. For each job,
it generates a series of four variables beginning with the specified prefix (the second
operand). The variables represent the job identifier (JOBID), job number (JOBNO),
whether or not the job is on hold (JOBH), and the queue the job is in (JOBQ). The
suffix increments from one to the number of jobs found.
ESP-5.4-UG-05 125
Section–Using system activity functions
Example: JOBONQ
The JOBONQ function in the following example verifies the existence of any job in
the input queue (I) in hold status (H). ESP Workload Manager assigns the number of
jobs that meet this criteria to the integer variable JOBCOUNT.
INTEGER JOBCOUNT
JOBCOUNT = JOBONQ('PAYROLL','Z','IH')
If JOBCOUNT is not equal to zero, meaning that at least one job called PAYROLL is
in the input queue in hold status, ESP Workload Manager generates a set of variables
for each job it finds. These variables all begin with the prefix Z.
Example
For example, for the first job it finds the variables are:
Variable Explanation
ZJOBID1 JES job identifier in the form JOBnnnnn or Jnnnnnnn, where nnnnn or
nnnnnnn is the job number. See the job ID entry in the glossary.
ZJOBNO1 JES job number (for example 123456).
ZJOBH1 Equal to zero if JES is not holding the job, or equal to one if JES is
holding the job.
ZJOBQ1 Equal to I, E, or O depending on whether the job is on the input,
execution, or output queue respectively.
When ESP Workload Manager finds more than one job, the variables it generates for
the second job are: ZJOBID2, ZJOBNO2, ZJOBH2, and ZJOBQ2. ESP Workload
Manager repeats this series with the last digit incrementing by one for additional jobs
it finds.
If you use the U criterion, the JOBONQ function also returns the JOBN variable,
with the appropriate prefix and suffix.
TAPES
ESP Workload Manager evaluates the TAPES function to check the status of tape
drives on the system and compares the status to the resources required by the job.
When you use the TAPES function at the job level for a job in an Application, you
can verify the status of the tape drives before you submit a job.
126 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
Note: To check the status of tape drives, Cybermation recommends you use resources.
Resources provide you with easier, more efficient ways of defining tape requirements.
For more information, see “Using Resources” on page 325.
Example: TAPES
To use this function, enter TAPES followed by two operands from the lists below:
TAPES('xy')
ESP Workload Manager evaluates both operands (x and y) of the function and returns
a whole number.
You can choose one of the following three options as the first operand:
Option Explanation
C Cartridge drives.
R Reel-to-reel drives.
T Total drives.
Option Explanation
A Available.
O Online.
D Defined.
Combining functions
You can combine built-in functions using the AND and OR logical operators. Specify
the built-in function name each time you need to use it.
ESP-5.4-UG-05 127
Section–Re-executing an ESP Procedure
Examples
Some examples are shown below:
• Today is Friday, and today is not the last workday of the year:
IF TODAY('FRIDAY' AND TODAY('NOT LAST WORKDAY OF YEAR') THEN
• Today is the last workday of the month, and CICS is active on the current system:
IF TODAY('LAST WORKDAY OF MONTH') AND ACTIVE('CICS') THEN
• Yesterday was a holiday, tomorrow is Friday, and today is a workday:
IF YESTERDAY('HOLIDAY') AND TOMORROW('FRIDAY') AND +
TODAY('WORKDAY') THEN
• Today is Monday, Wednesday, or Friday, and either yesterday was a holiday or
tomorrow is a holiday:
IF TODAY('MON WED FRI') AND (YESTERDAY('HOLIDAY') OR +
TOMORROW('HOLIDAY')) THEN
128 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
• If RMTJOB is on the input queue on hold, ESP Workload Manager releases the
job.
• If RMTJOB is not on the input queue on hold, ESP Workload Manager checks
the number of re-executions. If the number of re-executions is less than five, ESP
Workload Manager re-executes the Procedure in 30 minutes. Otherwise, ESP
Workload Manager sends a message.
Using templates
A template is an element of CLANG that allows you to specify repetitious commands
or statements once, such as those you use to define holidays or jobs.
This section contains a brief introduction to templates. For more information on
using templates, see the ESP Workload Manager Advanced User’s Guide.
Defining a template
To define a template:
1. Use a TEMPLATE statement to give your template a name and identify operands
you want to pass through the template.
2. Define the statements that make up your template.
3. End the template definition with the ENDTEMPL statement.
ESP-5.4-UG-05 129
Section–Using templates
Use a template in an ESP Procedure to specify the DEFHOL command and supply
the template with different years. In this example:
• The name of the template is XMAS, and it accepts one positional operand
represented by the variable YEAR.
• The body of the template consists of one statement that defines CHRISTMAS as
a 24 hour holiday, on December 25 each year, in the SYSTEM calendar. The year
is represented by the variable YEAR.
• The ENDTEMPL statement ends the template definition.
• The template XMAS is then used with the years 2001 through 2006. Each of
these years is passed to the template and substituted for the variable YEAR within
the template.
TEMPLATE XMAS (1,YEAR)
ESP DEFHOL CHRISTMAS START('DEC 25, %YEAR') +
FOR(24) CAL(SYSTEM)
ENDTEMPL
XMAS 2001
XMAS 2002
XMAS 2003
XMAS 2004
XMAS 2005
XMAS 2006
Set up an Event to invoke this ESP Procedure and trigger it manually to define your
holidays.
130 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
RUN DAILY
ENDJOB
Because of the similarity of the jobs, you can define a print job template and pass one
operand for the name of each job. The template contains details for the print job, such
as SUBAPPL PRTJOBS and RUN DAILY.
ESP-5.4-UG-05 131
Section–CLANG examples
CLANG examples
This section contains some additional examples of using CLANG.
132 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
ESP-5.4-UG-05 133
Section–CLANG examples
134 ESP-5.4-UG-05
Chapter 5–Working with ESP Procedures
Important: If you change the contents of a Procedure, delete the cached version
of the Procedure so the new version is read automatically by an active
Application.
ESP-5.4-UG-05 135
Section–Caching an ESP Workload Manager Procedure
136 ESP-5.4-UG-05
Using Applications
ESP-5.4-UG-05 137
Section–Introducing Applications
Introducing Applications
This section describes the generating and processing of Applications:
• How ESP Workload Manager manages jobs in an Application
• Generating and processing an Application
• Application generations
Processing an Application
ESP Workload Manager performs the following processing steps for jobs in an
Application:
1. When a job’s submission time arrives, ESP Workload Manager checks for any
remaining dependencies.
2. Each job has a hold count. The hold count is a number corresponding to the
number of immediate predecessors for the job. A job in an Application is not
eligible for submission if the hold count exceeds zero.
3. When a predecessor job terminates successfully, ESP Workload Manager subtracts
one from the successor job’s hold count. For instance, if the hold count for a job is
three and a predecessor job terminates successfully, the hold count decreases to
two.
4. When the hold count reduces to zero, ESP Workload Manager readies the job for
submission, unless the job is in another type of hold status such as Manual hold or
Resource Wait.
5. ESP Workload Manager submits the job when all required resources are available.
138 ESP-5.4-UG-05
Chapter 6–Using Applications
Application phases
An Application passes through the following two phases:
• Generation
• Process
Generation phase
When an Event is triggered that invokes an ESP Application definition, ESP
Workload Manager must first generate the Application. ESP Workload Manager reads
the definition and creates a record in a file known as the APPLFILE. This record
includes the information ESP Workload Manager needs to process the jobs in the
Application. The record describes the Application and all the jobs within it.
Process phase
Once ESP Workload Manager generates an Application, it then begins to process that
Application as follows:
• A component of ESP Workload Manager called the Application Manager has a
queue of jobs awaiting submission. Jobs can be in a waiting state because of such
things as time, predecessors, and resources.
• The Application Manager looks at the jobs and assesses whether any time
dependencies have been met. If so, the job goes into a job dependency state and
waits until the last predecessor dependency has been met.
• The job then enters a resource wait state, which allows ESP Workload Manager
resource manager to verify that the job’s resource dependencies are met.
• ESP Workload Manager re-drives the Event to submit the job when the required
resources are available.
• The Application manager uses real-time SMF data to update the execution status
of each job.
Phase status
You can find out the phase status of an Application by using the ESP_APPL_PROC
and ESP_APPL_GEN symbolic variables in an Application definition.
ESP Workload Manager sets these symbolic variables as follows:
ESP_APPL_GEN equals:
• 1 during generation phase
• 0 otherwise
ESP_APPL_PROC equals:
• 1 during process phase
• 0 otherwise
ESP-5.4-UG-05 139
Section–Introducing Applications
In the following example, ESP Workload Manager sends a message to a user only
during the generation phase of an Application.
IF ESP_APPL_GEN=1 THEN -
SE 'ESP IS GENERATING THE PAYROLL APPLICATION' U(TAXMAN)
Application generations
Each Application has a generation number assigned by ESP Workload Manager when
the Application is generated. This number increments with each generation of an
Application. Using the generation number, ESP Workload Manager can identify the
particular generation of an Application to which a job belongs.
A generation of an Application does not have to complete within any 24 hour period.
An Application can span many days or weeks, or you can schedule an Application
many times in one day. Different generations of an Application can process at the
same time.
Defining an Application
You must use an ESP Procedure to describe an Application to ESP Workload
Manager. See “Working with ESP Procedures” on page 107 for detailed information
on ESP Procedures.
140 ESP-5.4-UG-05
Chapter 6–Using Applications
In addition, an ESP Procedure can also indicate which job documentation library is
used, or specify what condition codes cause a job to fail.Visually, an Application looks
like this:
B C Daily
E Friday
F Last workday
of month
Application definition
The corresponding Application definition looks like this:
APPL PAYROLL
JCLLIB 'CYBER.ESP.JCL'
JOB A
RUN DAILY
RELEASE (B,C)
ENDJOB
JOB B
RUN DAILY
RELEASE D
ENDJOB
JOB C
RUN DAILY
RELEASE D
ENDJOB
JOB D
RUN DAILY
RELEASE E
ENDJOB
JOB E
RUN FRIDAY
RELEASE F
ENDJOB
JOB F
RUN LAST WORKDAY OF MONTH
ENDJOB
The following sections discuss how to define an Application.
ESP-5.4-UG-05 141
Section–Identifying the Application
142 ESP-5.4-UG-05
Chapter 6–Using Applications
Example
The following example identifies three libraries in the BILLJOBS Application. These
global statements are specified prior to any JOB statements.
APPL BILLJOBS
JCLLIB 'PROD.JCL.CNTL'
TEMPLIB 'PROD.OVERRIDE.JCL'
COPYJCL 'CYBER.JCL.COPY' GEN(0)
Each of these statements is described in the sections following.
ESP-5.4-UG-05 143
Section–Identifying JCL libraries
The MEMBER statement can be used to override the JCL name searched for in the
JCLLIB library. For details, see “Specifying a member name for a JCL library search”
on page 145.
144 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 145
Section–Identifying JCL libraries
146 ESP-5.4-UG-05
Chapter 6–Using Applications
• Use different data sets. For example, you could use a different data set each day.
Example
In the following example, ESP Workload Manager uses the temporary JCL from
midnight on February 1, 2001 up to, but not including, February 14, 2001. At any
time after February 13, ESP Workload Manager uses the default JCL library. Note
these dates are based on the scheduled date of the Event, which may not be the actual
date of job submission.
//* FROM FEB 1,2001
//* UNTIL FEB 14,2001
//BILLJOBA JOB . . .
ESP-5.4-UG-05 147
Section–Identifying JCL libraries
JCL either by job name (JOBNAME operand) or by JES job number (JOBID
operand).
Suppressing COPYJCL
If you do not want to create COPYJCL for a particular job, you can specify the
following:
JOB MISC
COPYJCL NONE
Compressing COPYJCL
If you re-use the same data set continually, submit a compress job frequently to ensure
the data set does not run out of space. You can use a data-set-triggered Event to
submit the compress job automatically after a number of closures.
148 ESP-5.4-UG-05
Chapter 6–Using Applications
Identifying jobs
An ESP Application is made up of a group of related jobs and other tasks. The jobs
and tasks have job names assigned to them.
Before identifying job requirements, you must use a JOB statement to identify the
name of the job in an Application. You can define jobs in any order. ESP Workload
Manager submits the jobs based on how you define the job relationships.
JOB statement
Once the JOB statement has been used to introduce a job to an Application, use other
related job statements to:
• Define a job’s processing requirements
• Override any default specifications
• Specify the relationships between the named job and others included in this
Application or outside this Application
The JOB statement defines the beginning of the job definition. The ENDJOB
statement or another JOB statement signifies the end of a job definition. You must
use an ENDJOB statement after defining all of your jobs. Although optional, it is
recommended you use an ENDJOB for each job definition.
The following is a sample job definition:
JOB PATJOB1
RUN DAILY
RELEASE PATJOB2
ENDJOB
Qualifying jobs
ESP Workload Manager lets you qualify job names with a qualifier consisting of up to
8 alphanumeric characters, and separated from the job name by a period,‘.’ You can
qualify jobs, links, and tasks, but you cannot qualify Manual jobs. Use qualification of
job names in an Application to:
• Define duplicate jobs
• Give a meaningful name to other job types, such as links and tasks
• Give a more descriptive name to a job
• Pass a built-in symbolic variable (ESPAPQUAL), representing the qualifier, to a
job’s JCL
ESP-5.4-UG-05 149
Section–Identifying jobs
Examples
Combined statement
The following procedure segment:
JOB A
DUEOUT EXEC 23:59
RUN WEEKDAYS
150 ESP-5.4-UG-05
Chapter 6–Using Applications
REQUEST job
By selecting a REQUEST job, you are not requesting the job, you are only making it
eligible for explicit request via CSF or the APPLJOB command. You must first
generate the Application before you can request any of the Application’s jobs. To allow
users to request jobs, you can generate the Application containing these jobs early in
the morning and use submit time dependencies (for example, DELAYSUB
statements) on the jobs with no predecessors so they are not submitted at the time
ESP Workload Manager generates the Application.
ESP-5.4-UG-05 151
Section–Identifying jobs
Other methods
Other methods exist for handling on-request work. For example you can:
• Insert a job into an Application from CSF
• Use a separate on-request Application with a link that keeps it active
• Trigger an Event and pass it a user symbolic variable representing the job name
For information on CSF, see “Consolidated Status Facility (CSF)” on page 221.
For information on using links, see “Using links” on page 184.
For information on using symbolic variables, see ESP Workload Manager Advanced
User’s Guide.
Example
In the following example, if job J2 is not requested at the time it is scheduled for
submission, ESP Workload Manager bypasses it and submits job J3.
J1 Daily
J2 REQUEST
J3 Daily
152 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 153
Section–Identifying jobs
For example, you can have a recovery job that only runs when another job in the
Application abends. In this case, the recovery job is a conditional job. The recovery
job may or may not run. If all other jobs in the Application are complete then you
want ESP Workload Manager to complete the Application.
154 ESP-5.4-UG-05
Chapter 6–Using Applications
RUN DAILY
ENDJOB
Dependency
Timing Selection
ESP-5.4-UG-05 155
Section–Specifying time dependencies
JOB J2
RUN DAILY
DELAYSUB 9PM
IF TODAY('WEEKEND') THEN DELAYSUB 5PM
ENDJOB
156 ESP-5.4-UG-05
Chapter 6–Using Applications
Statement Explanation
LATESUB Specifies a late submission for a job. This identifies a time by
which ESP Workload Manager should submit a job. The
LATESUB time for a link, task, or data-set-trigger object
represents the time by which all of its predecessor and time
dependencies should be met (for example, the READY time).
LATESUB does not force, or bypass, submission of the job.
Use the ABANDON DEPENDENCIES statement to force
submission of the job, regardless of dependencies; use the
ABANDON SUBMISSION statement to bypass submission
of the job.
DUEOUT INPUT Specifies a due-out time from the INPUT processing node.
This refers to the start time.
DUEOUT EXEC Specifies a due-out time from the EXEC processing node. This
refers to the successful end time. For a link, task, or data-set-
trigger object, this represents the time by which it should
complete.
ESP-5.4-UG-05 157
Section–Specifying time dependencies
158 ESP-5.4-UG-05
Chapter 6–Using Applications
Manager provides notification when this time is not met, just as it does when you
specifically code a DUEOUT time. If you need to reset the time, you can use CSF or
the APPLJOB command.
Note: Your administrator can have turned this propagation feature off.
PAYJOB1
PAYJOB2
PAYJOB6
ESP-5.4-UG-05 159
Section–Specifying time dependencies
JOB PAYJOB6
LATESUB 7AM
ENDJOB
SELECT (PAYJOB1,PAYJOB2,PAYJOB3,PAYJOB4,PAYJOB5,PAYJOB6)
Bypassing jobs
Use the ABANDON SUBMISSION job statement to bypass a job after a specified
time.
An example of this statement is:
ABANDON SUBMISSION 11PM
160 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 161
Section–Specifying time dependencies
Example: Specifying application level minimum and maximum run times, with
162 ESP-5.4-UG-05
Chapter 6–Using Applications
global notification
APPL PAYROLL
JCLLIB 'CYBER.JCL.CNTL'
IF %ESP_APPL_PROC THEN DO
MINRUNTIME = AVGRUNTIME * 25 / 100
MAXRUNTIME = AVGRUNTIME * 175 / 100
ENDDO
JOB PAY1
RUN NOW
ENDJOB
JOB PAY2
RUN NOW
ENDJOB
In the preceding example, Application PAYROLL has two jobs, PAY1 and PAY2. The
minimum run time for each job is set to 25% of its current average runtime; the
maximum run time for each job is set to 175% of its current average run time. If
either job runs over the maximum time or ends before having run for the specified
minimum time, a notification message is sent to user CYBER02.
Example: CSF
In the following CSF display, job WAIT5, AGen 47 ended before the minimum time
and job WAIT3, AGen 47 exceeded its maximum run time:
TT54 Consolidated Status: View 1 ------------ Row 1 of 6, Col 1
COMMAND ===> SCR ===> CSR
Here are the notification messages corresponding to the preceding CSF display:
TT54_1194I Job WAIT5(JOB12218) ENDED PREMATURELY, CMPC=0 AT 14.06.02 ON 09 JAN
2004, APPL TSTRFES.47
ESP-5.4-UG-05 163
Section–Specifying time dependencies
Issuing the LJE command on job WAIT5, AGen 47 in the preceding CSF screen
provides the following output. Note that the minimum, maximum, and average run
times are displayed:
ESP ----------------------------------------------- Row 1 of 16, Col 1 -
COMMAND ===>
---------------------------------- TOP OF DATA---------------------------------
AJ WAIT5(12218) APPL(TSTRFES.47)
Job=WAIT5(12218), Completed->CC 0
Submitted ................ 2004/01/09 14:00
Started .................. 2004/01/09 14:00
Completed ................ 2004/01/09 14:06
MinimumRunTime=7, MaximumRunTime=12, AverageRunTime=5
Class=A, Priority=7, Step=STEP1, SrvClass=JES, SysName=SYSA,
Sysplex=SYSAPLEX, Asid=0082, SmfId=SYSA, JesNode=CYBJES,
EspProc=CYBTT01.TEST.ESPPROC(TSTRFES)
Appl=TSTRFES.47, Completed
Scheduled ................ 2004/01/09 14:00
Built .................... 2004/01/09 14:00
Completed ................ 2004/01/09 14:17
DueOutPropagation, Event=CYBTT04.TSTRFES, TrigUser=CYBTT04
JOBNAME JOB APPLSYS Min Max Avg EXEC OVERDUE START EXEC
NO Run Run Run QTIME END DATE START
WAIT3 42148 - - - 3M01 - THU 4DEC03 14.41.38
WAIT5 42299 - - - 4M59 - THU 4DEC03 17.16.56
WAIT5 42305 - - - 5M00 - THU 4DEC03 17.26.23
WAIT5 42326 - - - 4M59 - THU 4DEC03 17.33.01
WAIT5 42370 - - - 5M01 - THU 4DEC03 17.35.18
WAIT5 54085 TSTRFES 7M00 12M00 5M00 5M09 0 TUE 9DEC03 08.17.13
WAIT3#5S 54086 TSTRFES 7M00 12M00 16M00 16M10 4M12 TUE 9DEC03 08.17.23
WAIT5 54541 TSTRFES 7M00 12M00 5M00 5M01 0 TUE 9DEC03 08.45.55
WAIT3#5S 54542 TSTRFES 7M00 12M00 16M00 16M01 4M02 TUE 9DEC03 08.45.56
WAIT5 54615 TSTRFES 7M00 12M00 5M00 5M00 0 TUE 9DEC03 09.21.50
WAIT3#5S 54616 TSTRFES 7M00 12M00 16M00 16M01 4M02 TUE 9DEC03 09.21.51
WAIT3 55327 - - - 3M00 - TUE 9DEC03 15.04.20
WAIT3#5S 55329 - - - 16M01 - TUE 9DEC03 15.04.28
164 ESP-5.4-UG-05
Chapter 6–Using Applications
Job-Dependency Explanation
Statement
AFTER Specifies any job that is a predecessor to this job and indicates a release
to this job upon its completion. (The default is successful completion.)
RELEASE Specifies successors to a job that are released upon its completion. (The
default is successful completion.)
PREREQ Specifies the names of any other jobs that must be complete before this
job can be allowed to execute. These are prerequisite jobs. ESP
Workload Manager automatically selects the prerequisite jobs for
submission whenever this job is selected for processing.
COREQ Specifies the names of any other jobs which must be selected
automatically whenever this job is selected for processing. The named
job and all of its co-requisites are allowed to execute simultaneously;
there is no relationship between a job and its co-requisites.
POSTREQ Specifies the names of any other jobs which must run after this job has
executed. These are post-requisite jobs. ESP Workload Manager
automatically selects the post-requisite jobs for submission whenever
this job is selected for processing.
ESP-5.4-UG-05 165
Section–Using Implicit Resources
Method Code
1 JOB A
RELEASE B
2 JOB B
AFTER A
166 ESP-5.4-UG-05
Chapter 6–Using Applications
ENQUEUE
Examples
The following example shows job NWN001 specifying an enqueue on a resource
named FRED:
APPL NWN00A
JCLLIB 'CYBER.JCL.CNTL'
JOB NWN001
RUN DAILY
ENQUEUE NAME(FRED) SHARED
ENDJOB
JOB NWN002
RUN DAILY
ENDJOB
The following example shows job NWN001 and job NWN002 specifying an
enqueue on a resource named FRED. Because the operand EXCLUSIVE is specified
in job NWN002, jobs NWN001 and NWN002 cannot run at the same time:
APPL NWN00A
JCLLIB 'CYBER.JCL.CNTL'
JOB NWN001
RUN DAILY
ENQUEUE NAME(FRED) SHARED
ENDJOB
JOB NWN002
RUN DAILY
ENQUEUE NAME(FRED) EXCLUSIVE
ENDJOB
ESP-5.4-UG-05 167
Section–Using Implicit Resources
The following example shows job NWN001, job NWN002, and job NWN003
specifying an enqueue on a resource named FRED. Because the operand
EXCLUSIVE is specified in job NWN002, job NWN002 cannot run at the same
time as the other two jobs. Jobs NWN001 and NWN003 can run at the same time:
APPL NWN00A
JCLLIB 'CYBER.JCL.CNTL'
JOB NWN001
RUN DAILY
ENQUEUE NAME(FRED) SHARED
ENDJOB
JOB NWN002
RUN DAILY
ENQUEUE NAME(FRED) EXCLUSIVE
ENDJOB
JOB NWN003
RUN DAILY
ENQUEUE NAME(FRED) SHARED
ENDJOB
Usage notes
The following example shows job NWN002 excluded from a specified enqueue of the
resource named FRED.
APPL NWN00B
JCLLIB 'CYBER.JCL.CNTL'
ENQUEUE NAME(FRED) SHARED
JOB NWN001
RUN DAILY
ENDJOB
JOB NWN002
168 ESP-5.4-UG-05
Chapter 6–Using Applications
RUN DAILY
DEQUEUE NAME(FRED)
ENDJOB
JOB NWN003
RUN DAILY
ENDJOB
JOB NWN004
RUN DAILY
ENDJOB
Example
For each enqueue that matches nnn, ESP Workload Manager will produce a list of all
outstanding requests showing the requesting job, the type of the request (exclusive or
shared) and whether the enqueue is held by the job. Some jobs can be shown with
requests generated by the ESP Resource Manager. This happens when a job has a
generic request (one with wildcards) that matches a non-generic request by another
job. Such a match will result in the generic enqueue being accompanied with a normal
enqueue that the generic request implies.
Considering the following Application:
APPL NWN00G
JCLLIB 'CYBER.JCL.CNTL'
JOB NWN001
RUN DAILY
ENQUEUE NAME(B-C) SHARED
ENDJOB
JOB NWN002
RUN DAILY
ENQUEUE NAME(BBC) EXCLUSIVE
ENDJOB
The ENQUEUE B- command produces the following:
BBC
ESP-5.4-UG-05 169
Section–Using Implicit Resources
B-C
Held Shr NWN001, Appl NWN00G.1
The display shows job NWN002 waiting behind a satisfied request of NWN001.
That request was generated by the ESP Resource Manager to reflect the match
between NWN001’s enqueue on B-C and NWN002’s enqueue on BBC. Generated
requests are shown with (Gen).
Example
Considering the following Application:
APPL NWN00G
JCLLIB 'CYBER.JCL.CNTL'
JOB NWN001
RUN DAILY
ENQUEUE NAME(B-C) SHARED
ENDJOB
JOB NWN002
RUN DAILY
ENQUEUE NAME(BBC) EXCLUSIVE
ENDJOB
The ENQUEUE B- command produces the following:
BBC
(Gen) Held Shr NWN001, Appl NWN00G.1
Required Excl NWN002, Appl NWN00G.1
B-C
Held Shr NWN001, Appl NWN00G.1
The display shows job NWN002 waiting behind a satisfied request of NWN001.
To release job NWN002, you can issue the following command:
JOBENQ JOB(NWN002) APPL(NWN00G) DEQUEUE BBC
170 ESP-5.4-UG-05
Chapter 6–Using Applications
ENQSELF
Before coding mutual exclusive run requirements with NOTWITH statements, you
must know the ENQSELF status because ESP Workload Manager behaves differently
depending on that status being ALWAYS or NOTALWAYS.
The ENQSELF command provides the option of specifying whether or not every job
will have an enqueue on itself.
ENQSELF can be coded as an initialization parameter.
Example
The following is the response from issuing the ENQSELF ALWAYS command in ESP
Workload Manager page mode:
OPER ENQSELF ALWAYS
ESP1573I ENQSELF MODE IS ALWAYS
NOTWITH
The NOTWITH statement provides a way to prevent mutually incompatible jobs to
run at the same time as nothing other than the name of the other job is required.
A choice between the two following methods must be made:
• Set ENQSELF to ALWAYS. In this case every job will enqueue over itself and you
will not need a matching NOTWITH statement in the other job, or
• Leave ENQSELF to NOTALWAYS. In this case you will need a matching
NOTWITH statement in the other job.
The disadvantage of setting ENQSELF to ALWAYS is the overhead due to the
automatic enqueuing of every job.
An alternative is the use of the ENQUEUE statement. See “ENQUEUE” on
page 167.
For details about ENQSELF, see “ENQSELF” on page 171.
ESP-5.4-UG-05 171
Section–Using Implicit Resources
172 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 173
Section–Using Implicit Resources
Example
When you specify the NOTWITH statement outside the scope of a job, there can be
one job in the Application that can run concurrently with the other jobs. You can use
the DROPNOTW statement in the scope of the job that can run concurrently to
allow it to run.
APPL NWN00E
JCLLIB 'CYBER.JCL.CNTL'
JOB NWN001
RUN DAILY
NOTWITH (NWN002,NWN003)
ENDJOB
NOTWITH NWN001
JOB NWN002
RUN DAILY
ENDJOB
JOB NWN003
RUN DAILY
ENDJOB
JOB NWN004
RUN DAILY
DROPNOTW NWN001
ENDJOB
174 ESP-5.4-UG-05
Chapter 6–Using Applications
Example: Method 1
The following example shows two ways of selecting jobs for submission.
The first method uses a RUN statement for each job. ESP Workload Manager selects
job A each time the Procedure is invoked; ESP Workload Manager selects job B if the
scheduled day is Friday.
JOB A
RUN DAILY
RELEASE B
ENDJOB
JOB B
RUN FRIDAY
ENDJOB
Example: Method 2
This method uses SELECT statements after identifying specific job requirements.
ESP Workload Manager selects job A each time the Procedure is invoked; ESP
Workload Manager selects job B if the scheduled day is Friday.
JOB A
RELEASE B
ENDJOB
JOB B
ENDJOB
SELECT A
IF TODAY('FRIDAY') THEN SELECT B
Submit time
If a job has a time dependency for submission, you must use either an EARLYSUB or
a DELAYSUB statement. The statement RUN 5PM DAILY is not valid.
ESP-5.4-UG-05 175
Section–Selecting jobs for submission
To deselect jobs:
• Use the NORUN and DESELECT statements to handle exceptions to a job’s
regular schedule criteria.
These statements tell ESP Workload Manager when not to select a job.
ESP Workload Manager allows multiple RUN and NORUN statements for the same
job. You should normally code your NORUN statements after your RUN statements.
If you specify a job with a NORUN statement and without a RUN statement, ESP
Workload Manager schedules the job each time the Event executes except when it
manages to satisfy the NORUN schedule criteria.
Example 1
In the following example, job X runs daily except on the first Monday of the month.
JOB X
RUN DAILY
NORUN FIRST MONDAY OF MONTH
ENDJOB
Example 2
This example uses a DESELECT statement to achieve the same results.
SELECT X
IF TODAY('FIRST MONDAY OF MONTH') THEN DESELECT X
176 ESP-5.4-UG-05
Chapter 6–Using Applications
Example
Consider the following three jobs and their schedule frequencies.
J1 Daily
J2 Friday
J3 Daily
On Fridays all three jobs execute in order, but on any other day of the week, job J2
does not run. On these days, ESP Workload Manager selects jobs J1 and J3 and
inherits their relationships with job J2. When job J1 completes successfully, it releases
job J3.
Additional information
For information on overriding the inheritance of job relationships, see the ESP
Workload Manager Advanced User’s Guide.
ESP-5.4-UG-05 177
Section–Defining external jobs
The next few sections describe the job types other than job. You can also define
distributed workload, such as UNIX scripts, in your ESP Application. For
information on defining this type of workload, see the JOB statement in ESP
Workload Manager Reference Guide.
178 ESP-5.4-UG-05
Chapter 6–Using Applications
APPL1 APPL2
A X
(job) (External job)
X Z
(job) (job)
ESP-5.4-UG-05 179
Section–Defining external jobs
Some of the ways you can control how to post external jobs complete are described
below.
Specifying an Application
When you define an external job, you can use the APPLID operand to specify the
name of the Application that submits the job. ESP Workload Manager does not mark
the external job complete unless it was submitted by the Application specified. For
example, ESP Workload Manager only marks the following job as complete when the
job is submitted from the Application called ANOTHER.
JOB ABC EXTERNAL APPLID(ANOTHER)
SCHEDULED operand
You can specify a SCHEDULED operand on a JOB statement to reflect when an
external job is scheduled. The Application containing the external does not have to be
active when the job in the home Application ends. ESP Workload Manager
automatically looks back or waits to see if the dependency has been satisfied.
The job in the example below only gets marked complete when run from another
Application with the same scheduled date. This provides synchronization of
Applications. See the ESP Workload Manager Advanced User’s Guide for more
information.
JOB ABC EXTERNAL SCHEDULED('TODAY')
The following example shows specifying a range:
JOB ABX EXTERNAL SCHEDULED ('NOW LESS 2 HOURS ENDING NOW PLUS 2
HOURS')
SCOPE operand
You can specify a SCOPE operand on a JOB statement to control how far back ESP
Workload Manager searches the Job Index data set and to limit the forward search for
a job in the SADGEN data set (as a result of a RESOLVE statement in an ESP
Workload Manager Procedure). See the ESP Workload Manager Advanced User’s Guide
for more information.
When you select an external job, the SCOPE operand instructs ESP Workload
Manager to look back in the Job Index data for the required external job with a status
of COMPLETED. ESP Workload Manager does not use a look forward time unless
you use a RESOLVE statement. If the job is not found, ESP Workload Manager waits
for the dependency to be satisfied.
In this example, ESP Workload Manager runs job ABC on Sundays and looks back 24
hours to Saturday for its successful completion.
job abc external scope(-24:00)
run sunday
ENDJOB
180 ESP-5.4-UG-05
Chapter 6–Using Applications
Job qualifiers
For ESP Workload Manager to mark an external job complete, the job qualifier must
match what was defined in the home Application. You can use job qualifiers to ensure
that an external job does not get marked complete when it is run manually. You can
qualify external jobs with the home Application name. For example:
JOB ABC.BILLING EXTERNAL
Authorization string
You can specify that ESP Workload Manager checks an authorization string for
external jobs so that it tracks and posts the correct job. The authorization string is the
field you use at your site to identify job ownership, such as a user ID or an account
field. For example, ESP Workload Manager only marks the following job as complete
when the job is run with an authorization string of CYBER.
JOB ABC EXTERNAL AUTHSTR(CYBER)
Posting options
Different posting options are available on the APPL statement. For example, you can
select different options to control the posting of external jobs when multiple
generations of an Application are active. See the ESP Workload Manager Advanced
User’s Guide for more information.
Forced complete
When an external job is forced complete in a distant Application, it has no effect on
the status of the same job in any other distant Application, or in the job’s home
Application.
When an external job is forced complete in its home Application, this change will be
transmitted to every existent Application in which the job is defined as external.
USERMOD 30
Prior to release 5.1.0, if a job defined as EXTERNAL in an Application is forced
complete in the home Application, the job in the remote Application (where it is
EXTERNAL) is marked complete only if the job in the home Application has actually
been submitted. With release 5.1.0, 5.2.0, 5.3.0, and 5.4.0 the remote Application
job is now marked complete even if the home Application job was forced complete
prior to submission. This USERMOD disables this new functionality for those users
who rely on the previous behavior.
ESP-5.4-UG-05 181
Section–Defining manual jobs
• You must define a manual job as a tracked job if you want to use it in an
Application. Check with your administrator to find out about tracked jobs.
• You cannot use a job qualifier for a manual job.
Example 1
In the example below, job ZZ runs after the manually submitted job YY on Mondays,
Wednesdays, and Fridays. On other days job ZZ does not wait for job YY.
JCLLIB...
APPL SMALL
JOB ZZ
AFTER YY
RUN DAILY
ENDJOB
JOB YY MANUAL
RUN MON WED FRI
ENDJOB
Example 2
In this example, job B is a manual job that should not complete until job A runs
successfully. After job A is submitted, ESP Workload Manager has no control over the
submission time for job B, because job B is a manual job. However, ESP Workload
Manager can remind someone to submit the job at the time it should be submitted.
182 ESP-5.4-UG-05
Chapter 6–Using Applications
MANUALLY
B SUBMITTED
The Application is shown below. The PROCESS operand on the manual job causes
ESP Workload Manager to process the SEND command when job B is eligible for
submission.
JCLLIB...
APPL ABC
JOB A
RELEASE B
RUN DAILY
ENDJOB
JOB B MANUAL PROCESS
SEND 'TIME TO SUBMIT JOB B' USER(SW)
RUN DAILY
RELEASE C
ENDJOB
JOB C
RUN DAILY
ENDJOB
ESP-5.4-UG-05 183
Section–Using links
Authorization string
You can specify that ESP Workload Manager checks an authorization string for
manual jobs so that it tracks and posts the correct job. The authorization string is the
field you use at your site to identify job ownership, such as a user ID or an account
field. For example, ESP Workload Manager only marks the following job as complete
when the job is run with an authorization string of CYBER.
JOB ABC MANUAL AUTHSTR(CYBER)
Posting options
Different posting options are available on the APPL statement. For example, you can
select different options to control the posting of manual jobs when multiple
generations of an Application are active. See the ESP Workload Manager Advanced
User’s Guide for more information.
Forced complete
When a manual job is forced complete in one Application, it has no effect on manual
jobs in other Applications that just happen to refer to the same physical job instance.
If you want to modify the status of a specific manually submitted job in multiple
Applications that define this job as manual, the modification will have to be
performed explicitly in each of the dependent Applications.
Using links
A link is a task that does not require manual completion. Use a link when you need to
take an action (for example, issuing a command or sending a message), but the
Application does not need to wait for you to notify ESP Workload Manager that the
action has been completed. A link can also be used as a dependency node to simplify
complex dependencies.
LINK operand
The LINK operand on the JOB statement identifies a link. ESP Workload Manager
does not try to submit JCL for it. You define relationships and other dependencies for
a link the same way you do for a job that ESP Workload Manager would submit. A
link usually has a schedule frequency, and it can have a time dependency. It can be on-
request, conditional, defined on hold, and can be inserted into an active Application.
If you want to use a link to process commands, you must specify LINK PROCESS, as
shown in the next example.
184 ESP-5.4-UG-05
Chapter 6–Using Applications
Example
In the following example, a link is used to send a message to user BP01 after MYJOB1
and MYJOB2 complete successfully.
JOB LETME.KNOW LINK PROCESS
AFTER (MYJOB1,MYJOB2)
RUN DAILY
SEND 'MYJOBS ARE DONE' USER(BP01)
ENDJOB
A B C
D E F
Solution
A better approach is to create a link that represents the completion of the first three
jobs, and releases the second group of three jobs. This simplifies the definition of job
relationships and makes it easier to add or delete jobs in each group.
ESP-5.4-UG-05 185
Section–Using links
A B C
LINKJOB
D E F
186 ESP-5.4-UG-05
Chapter 6–Using Applications
START.STC1
(Link)
STC1
(Manual)
BATCHJOB
(Job)
ESP-5.4-UG-05 187
Section–Using tasks
Application
The Application looks like this:
APPL MYAPPL
JCLLIB 'SYS1.JCL'
JOB START.STC1 LINK PROCESS
RUN DAILY
VS 'S STC1'
ENDJOB
JOB STC1 MANUAL
RUN DAILY
RELEASE BATCHJOB
ENDJOB
JOB BATCHJOB
RUN DAILY
ENDJOB
Using tasks
You can define tasks in an Application and establish dependencies between them and
other tasks and jobs. A task can represent a manual process such as balancing a report,
or an automated process such as a step in a job completing.
You identify a task using the TASK operand on a JOB statement. ESP Workload
Manager does not try and submit JCL for it. You define relationships and other
dependencies for a task the same way you do for a job that ESP Workload Manager
would submit. A task usually has a schedule frequency and can have a time
dependency. It can be on-request, conditional, defined on hold, and can be inserted
into an active Application.
When you mark a job as a TASK and select it for execution, ESP Workload Manager
builds it as part of the Application. The AJ command, or the C command from CSF,
can be used to mark a task complete.
188 ESP-5.4-UG-05
Chapter 6–Using Applications
J1
(Job)
CHECKRPT.J
(Task)
J2
(Job)
ESP-5.4-UG-05 189
Section–Using APPLEND workload object
Additional information
For more examples of using tasks, see the ESP Workload Manager Advanced User’s
Guide.
Limitations of APPLEND
The following are limitations of the APPLEND object:
• You cannot insert the APPLEND workload object dynamically to an active
Application. You must predefine APPLEND in the Application.
• When a workload object is inserted in an Application and becomes a predecessor
of APPLEND, the Hold Count of the APPLEND workload object is incremented
by one. However, the Hold Count data in CSF is not immediately updated.
• Simulation will not display the relationships between the APPLEND workload
object and its predecessors.
190 ESP-5.4-UG-05
Chapter 6–Using Applications
Example
In the following example, the APPLEND workload object named FRED will be made
a successor of JOB2, because JOB2 has no other successors. However, job
AFTERAE2 and AFTRAELA, which also do not have successors, are successors to the
APPLEND workload object, so are not also made predecessors to it.
APPL TESTAE1
JCLLIB 'CYBER.JCL.CNTL'
APPLEND FRED
REL (AFTERAE1,AFTERAE2)
SE 'APPLEND RUNNING' U(*)
ENDJOB
Additional considerations
There is an additional consideration when using the APPLEND workload object:
The APPLEND object does not generate any SMF by itself. If it has no successors,
then the ESP1159I message will be the only external indication that an Application
has ended.
ESP-5.4-UG-05 191
Section–Changing job attributes
To generate SMF, a S/390 job will need to be run as a successor to the APPLEND
object. For example:
APPL EXAMPLE
JCLLIB 'CYBER.JCL.CNTL'
JOB JOB1
RUN DAILY
ENDJOB
APPLEND TERMIN8
POSTREQ TERMIN8R
ENDJOB
JOB TERMIN8R
MEMBER IEFBR14
ENDJOB
192 ESP-5.4-UG-05
Chapter 6–Using Applications
Additional information
For more examples of changing job attributes, see the ESP Workload Manager
Advanced User’s Guide.
Additional information
The next sections describe how to set up data-set-trigger objects. For more examples
using these objects, and for other techniques on handling data set dependencies, see
the ESP Workload Manager Advanced User’s Guide.
ESP-5.4-UG-05 193
Section–Using data-set-trigger workload objects
DSTRIG BIGFILE
DSNAME PROD.FILE.CICS1602
RUN DAILY
RELEASE ABCJOB
ENDJOB
Once the Application containing this object is active, ESP Workload Manager
watches for the PROD.CICS.FILE1602 data set to be created. When it is created, the
BIGFILE object completes and releases the successor job ABCJOB.
Visual perspective
Visually, the flow looks like this:
PROD.CICS.FILE1602 ABCJOB
(data set) (Job)
194 ESP-5.4-UG-05
Chapter 6–Using Applications
Example
The following example uses a data-set-trigger workload object (WAIT4.DS) to build a
dependency between any closure of a data set (PROD.WEEKLY.ACCNTS) and a job
(PAYJOB1).
APPL PAYROLL
JCLLIB 'CYB.JCL.CNTL'
DSTRIG WAIT4.DS
DSNAME PROD.WEEKLY.ACCNTS ANYCLOSE
RUN DAILY
RELEASE PAYJOB1
ENDJOB
JOB PAYJOB1
RUN DAILY
ENDJOB
ESP-5.4-UG-05 195
Section–Using data-set-trigger workload objects
APPL PAYROLL
JCLLIB 'CYB.JCL.CNTL'
DSTRIG FILEA
DSNAME CYBER.DATA111.CNTL ANYCLOSE
RUN DAILY
RELEASE XYZ
ENDJOB
DSTRIG FILEB
DSNAME CYBER.DATA999.CNTL ANYCLOSE
RUN DAILY
RELEASE XYZ
ENDJOB
JOB XYZ
RUN DAILY
ENDJOB
196 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 197
Section–Using FTP data-set-trigger workload objects
198 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 199
Section–Using FTP data-set-trigger workload objects
dsname
The data set name specified in the DSNAME Application statement always refers to
the local mainframe data set for both FTP(RECEIVE) and FTP(SEND).
ANYCLOSE
FTP triggers cannot to distinguish between data-set creation and data-set updates.
Therefore, ANYCLOSE is assumed if not explicitly specified in an FTP trigger
definition.
RENAME
When RENAME is specified for an FTP trigger, the trigger is activated on completion
of an FTP rename command issued by the client to rename a data set to a specified
data set name. Because data set name always refers to a local host data set, the remote
FTP partner must be the client for an FTP trigger where RENAME is specified.
Therefore the RENAME and FTP(SEND) operands are mutually exclusive.
Example
The following is an example of an FTP transfer-triggered Event. This Event sends a
message to a user each time an FTP transfer to data set CYBER.DATA.SET completes
from logged-on user aixuser on host AIXHOST to any local user with host security
user ID prefix CYB. Because both the USER and the LOGON operands are specified
and because they specify different user IDs, the FTP trigger criteria can only be
satisfied if the local FTP partner is the client.
DSTRIG USER.APPL_RECEIVE
RUN DAILY
DSNAME CYBER.DATA.SET USER(CYB-) FTP(RECEIVE)-
HOST(AIXHOST) LOGON(aixuser)
SEND 'APPLICATION RECEIVED FROM CLIENT' USER(BP)
ENDJOB
200 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 201
Section–Using explicit-data-set-trigger workload objects
Parameter Description
DSNAME(dsname) or Specifies the data-set name.
DATASET(dsname)
member Specifies a member name of a PDS.
relgen Specifies the relative generation of a generation data group
(GDG). For example you can code:
• (0) for the current generation
• (+1) for the next generation
• (-1) for the previous generation
You must code relgen in CYBESDT1 and in the
corresponding DSTRIG command or DSNAME statement
exactly the same way, including leading zeros.
Note: Alternatively, you can include the absolute
generation in dsname. For example:
CYB4.ENCXX.BACKO01A.G0027V00
VOLSER(volser) or Specifies the volume serial number that the data set resides on.
VOLUME(volser) It is required for uncataloged data sets and optional for
cataloged data sets.
SUBSYSTEM(subsystem) or Is the ESP Workload Manager subsystem identifier keyword.
SSID(subsystem) This parameter is optional, if omitted, all tracking ESP
Workload Manager subsystems will receive the explicit data-
set trigger SMF record that program CYBESDT1 writes. A
tracking ESP Workload Manager subsystem is one whose
ESPPARM initialization file does not contain the following
statement:
SMFINT OFF
VERIFY Specifies that CYBESDT1 will set the explicit data-set trigger
only if the following criteria are met:
• The specified data set is catalogued if the VOLSER or
VOLUME parameter is omitted.
• The specified data set resides on the specified volume.
(From the volser parameter if specified, from the catalog if
not.)
• The owner of the job executing CYBESDT1 has update
access to the data set specified.
202 ESP-5.4-UG-05
Chapter 6–Using Applications
Parameter Description
NOVERIFY Specifies that CYBESDT1 will set the explicit data-set trigger
whether or not the criteria described for the VERIFY
parameter are met.
Examples
ESP-5.4-UG-05 203
Section–Using explicit-data-set-trigger workload objects
204 ESP-5.4-UG-05
Chapter 6–Using Applications
Tagging jobs
TAG statement
You can use the TAG statement to tag jobs in an Application with a character string
up to 16 characters. The tag can apply to all jobs in an Application or to individual
jobs depending on where you place it. You can use a tag to:
• Allow the filtering of jobs with a common characteristic using CSF
• Pass information to JCL. The %ESPAPTAG symbolic variable contains the data
in the TAG statement.
ESP-5.4-UG-05 205
Section–Providing notification on Job status
Sample Application
A sample Application looks like this:
APPL PAYROLL
JCLLIB . . .
TAG 'PAYROLL'
JOB A
RUN DAILY
RELEASE B
ENDJOB
JOB B
RUN DAILY
RELEASE C
ENDJOB
JOB C
RUN DAILY
AFTER X
ENDJOB
JOB X EXTERNAL
TAG 'BILLING'
RUN DAILY
ENDJOB
206 ESP-5.4-UG-05
Chapter 6–Using Applications
The notification lists are included in the MAILLIST data set. The MAILLIST data set
contains any number of MAILBOX initialization parameters, each of them
containing any number of TSO user IDs and email addresses. You select where the
NOTIFY statement sends messages by coding a mailbox name in the MAILBOX
operand. Messages will be sent to all TSO user IDs and email addresses specified in
the mailbox. See the “MAILLIST data set” section in the ESP Workload Manager
Installation and Configuration Guide for information on how to set up the MAILLIST
data set and the mailboxes.
Additional information
The NOTIFY statement can notify users and trigger an Event.
For information on triggering an Event, see Chapter 3, “Job Monitoring and Alert
Processing”, in the ESP Workload Manager Advanced User’s Guide.
ESP-5.4-UG-05 207
Section–Using critical-path analysis
A 15 Mins
B 15 Mins
10 Mins Z CRITICAL
ESP Workload Manager determines the critical path when it generates an Application.
The critical path for an Application can vary depending on which jobs are selected.
Based on the previous example, the critical path can vary as follows:
208 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 209
Section–Using critical-path analysis
B C D E F
G H I
K L M
N O P Q
R S T
U V
210 ESP-5.4-UG-05
Chapter 6–Using Applications
Additional information
For more information on freeform filtering, see “Consolidated Status Facility (CSF)”
on page 221.
ESP-5.4-UG-05 211
Section–Using subApplications
Using subApplications
An Application can consist of one or more subApplications. This is useful, for
example, when you have a large Application you would like to break up into smaller,
easier to manage, groups of jobs. You can display, manipulate, and report on
subApplications. You can control a group of jobs belonging to the same
subApplication by using a single command. Use CSF or the LISTAPPL (LAP) and
APPLJOB (AJ) commands to display and control subApplications respectively.
To identify a subApplication:
Use the SUBAPPL statement in an Application to identify a subApplication and
choose a name different from any job name in the Application.
You can use the SUBAPPL statement within the scope of a JOB statement to associate
a job with a subApplication, or outside the scope of a JOB statement to apply to
multiple jobs. Use the WAIT operand if you have not used it on the APPL statement
and you want a subApplication to wait on the previous generation of the
subApplication.
212 ESP-5.4-UG-05
Chapter 6–Using Applications
Example
The following example shows two subApplications defined within the Application
called ACJOBS. The criteria are:
• Jobs in CYB1 and CYB2 belong to the subApplication called PREPJOBS.
• Jobs CYB3 and CYB4 belong to the subApplication called NIGHTLY.
• The PREPJOBS subApplication can process even if the previous PREPJOBS
subApplication is not complete; the NIGHTLY subApplication must wait until
the previous generation of the corresponding subApplication completes execution.
APPL ACJOBS
SUBAPPL PREPJOBS
JOB CYB1
RELEASE CYB3
ENDJOB
JOB CYB2
RELEASE CYB3
ENDJOB
SUBAPPL NIGHTLY WAIT
JOB CYB3
RELEASE CYB4
ENDJOB
JOB CYB4
ENDJOB
SELECT (CYB1,CYB2,CYB3,CYB4)
Selecting a subApplication
If your jobs within a subApplication have the same frequency, you can choose to use a
SELECT statement to select all jobs within a subApplication. This eliminates the
need to use a RUN statement for each job or a SELECT statement that specifies the
name of each job.
To select a subApplication:
Use the SELECT statement to specify one or more subApplication names, followed
by the operand SUBAPPL.
ESP-5.4-UG-05 213
Section–Using subApplications
To display a subApplication:
Use the LS command from CSF or use the LISTAPPL (LAP) command with the
SUBAPPL operand to display subApplications.
For example, the following results in a structured view of the subApplication
PREPJOBS within the Application called ACJOBS.
LAP ACJOBS SUBAPPL(PREPJOBS) ALL
To control a subApplication:
Use either CSF or different operands command to control subApplications similar to
the way in which you control jobs.
You can:
• Bypass a subApplication or cancel the bypass
• Ready a subApplication
• Request a subApplication or cancel the request
• Hold or release a subApplication
• Complete a subApplication
• Remove a subApplication from wait status
214 ESP-5.4-UG-05
Chapter 6–Using Applications
Note: Requesting a subApplication is not the same as selecting each job in the
subApplication.
Additional information
For more information on CSF, see “Consolidated Status Facility (CSF)” on page 221.
For more information on ESP Workstation, see the ESP Workstation User’s Guide.
Displaying an Application
After ESP Workload Manager generates an Application, use the LISTAPPL command
to display it. The short form of the command is LAP. Use the command with the ALL
operand to give a structured view of an active Application or with other operands to
give a summary of active or completed Applications. You can limit the display to
specific generations of an Application and to specific jobs within an Application.
ESP-5.4-UG-05 215
Section–Controlling an Application
Sample output
Sample output from an LAP command looks like this:
LAP PAYROLL.23 ALL
APPL PAYROLL GEN 23
CREATED AT 09.54 ON MONDAY MAY 14TH, 2001
BY EVENT CYBBP01.PAY
PAYD001A J6281, COMPLETED, CC 0 AT 10.01 ON MONDAY MAY 14TH, 2001
PAYD002A J6282, COMPLETED, CC 8 AT 10.04 ON MONDAY MAY 14TH, 2001
PAYD003A J6283, STARTED, STEP 3
PAYD004A, HC=1
SUBMISSION AT 10.15 ON MONDAY MAY 14TH, 2001
ANTICIPATED END TIME: 10.20 ON MONDAY MAY 14TH, 2001
PREDECESSORS: PAYD003A
SUCCESSORS: PAYD100A
PAYD100A, HC=1
ANTICIPATED END TIME: 10.29 ON MONDAY MAY 14TH, 2001
DUE OUT BY 10.30 ON MONDAY MAY 14TH, 2001
PREDECESSORS: PAYD004A
SUCCESSORS: PAYD006A
ABCJOB, HC=0
ANTICIPATED END TIME: 10.59 ON MONDAY MAY 14TH, 2001
EXTERNAL
PREDECESSORS: NONE
SUCCESSORS: PAYD006A
PAYD006A, HC=2
ANTICIPATED END TIME: 11.12 ON MONDAY MAY 14TH, 2001
PREDECESSORS: PAYD100A, ABCJOB
SUCCESSORS: ENDAPPL
RESOURCES: 1,CICSUP
ENDAPPL, HC=1
ANTICIPATED END TIME: 11.29 ON MONDAY MAY 14TH, 2001
PREDECESSORS: PAYD006A
SUCCESSORS: (NONE)
Other options are available on the LISTAPPL command. For example, you can
display particular jobs, a previous generation of an Application, or a subApplication.
Controlling an Application
APPLJOB command
The APPLJOB command controls jobs, subApplications, and Applications. The short
form of this command name is AJ.
216 ESP-5.4-UG-05
Chapter 6–Using Applications
Examples
Here are some examples of using the APPLJOB command with the current generation
(.0) of an Application called PAYROLL.
ESP-5.4-UG-05 217
Section–Changing an Application definition
Important: If you cache a Procedure and then you update it, use the CPROC
command to delete the cached version so the new version is read
automatically by an active Application. For details, see “Caching an
ESP Workload Manager Procedure” on page 135.
218 ESP-5.4-UG-05
Chapter 6–Using Applications
ESP-5.4-UG-05 219
Section–Invoking an ESP Application
220 ESP-5.4-UG-05
Consolidated Status Facility (CSF)
The Consolidated Status Facility provides a focal point for monitoring and
controlling the workload. You will see which jobs have recently executed, are currently
running, and are scheduled to execute. You can zoom in on any job to get greater
detail, edit JCL, and restart jobs.
Note: You can use CSF for jobs in an Application, but not for jobs submitted directly
from an Event.
This chapter contains the following topics:
• Setting up CSF views
• CSF fields
• Defining a view
• Customizing a view
• Updating a view
• Deleting a view
• Selecting views
• Commands
• Inserting a job
• Resubmitting a job
• Rerunning multiple jobs
• Removing job dependencies
• Resetting a time dependency
• Bypassing and completing jobs
• Adding job dependencies
ESP-5.4-UG-05 221
Section–Setting up CSF views
Displaying data
Using the Consolidated Status Facility, you can display only relevant data in the
format you want by using views. A view is a customized way of looking at ESP
Workload Manager workload. Think of CSF as a kind of scoreboard where:
• Each row represents a workload object, such as a job, link, or task.
• Each column represents an attribute of a workload object, such as job number and
status.
Example
For example, one row can represent a job. Each column represents some attribute of
the job, such as the job name, Application generation number, Pnode (processing
node), job number, and status. An example of what the CSF looks like is shown
below. Here the CSF presents the current status of an Application:
222 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
CSF fields
This section describes some special fields that CSF uses.
Pnode fields
A job in an Application goes through different stages in processing. These stages are
known as Pnodes. Using CSF you can filter and sort your view by Pnode and display
Pnode information.
The following table describes the Pnode fields:
Pnode Description
APPLHOLD Application hold.
APPLWAIT Application waiting on previous generation.
BYPASSED Bypassed.
COMPLETE Completed successfully.
EXEC Executing.
EXTERNAL External job submitted by another Application.
FAIL Completed unsuccessfully.
INPUT Input queue - JES number assigned.
JANCWAIT Job ancestor wait.
MANHOLD Manual hold.
MANSUB Manual submission.
PREDWAIT Predecessor wait.
READY Eligible.
RESWAIT Resource wait.
SANCWAIT SubApplication ancestor wait.
SUBDELAY Submission delayed.
SUBERROR Submission error.
SYSERROR System error.
TASK Task requiring completion.
WAITING Delayed submission time.
Note: The term Pnode is also used to describe the phases through which ESP
Workload Manager tracks a job. The Pnodes described here apply only to jobs in an
ESP Application and do not include post-execution phases.
ESP-5.4-UG-05 223
Section–CSF fields
SUBDELAY Pnode
The following table provides more information on what you see in the Status field if a
job is in the SUBDELAY Pnode.
SUBERROR Pnode
This table provides more information on what you see in the Status field if a job is in
the SUBERROR Pnode.
224 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Status fields
You can display the following status fields on CSF:
ESP-5.4-UG-05 225
Section–Defining a view
Defining a view
The process of defining a view involves replicating an existing view and customizing
the new view to your requirements.
To define a view:
1. Select option C from the ESP Workload Manager Main Menu to access CSF.
2. Type V at the Command Line. ESP Workload Manager takes you to the View
Definitions panel, which lists any existing views, as shown below.
3. Enter R to the left of a view name to copy an existing view under a new name.
ESP Workload Manager takes you to the Replicate View panel.
4. Type the name, an applicable description, and the message you want displayed
when there are no items matching the view criteria. The view you selected
appears, showing all the jobs that fall within that view definition.
5. Customize the view as described in the next section.
Storing views
ESP Workload Manager stores your view definitions in the ESPCSFA member of
your ISPF profile data set. This allows you to use the same view on different systems.
226 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Customizing a view
Once you select a view, you can customize the information presented. Some examples
of types of views are:
• Application specific.
• Exception monitoring. For example, you can define a view called TROUBLE to
display workload objects requiring intervention.
• Incomplete jobs.
• Overdue jobs.
Commands
You can enter the following commands on the COMMAND line to define the
characteristics of a view:
Command Characteristic
FI Filter information.
PR Presentation information.
PT Presentation titles.
PL Presentation column length.
SO Sort the information presented.
CO Define color options based on job status.
You can use colors to distinguish workload
states.
Filtering information
When you filter information, you are describing the criteria for displaying a job as
part of a view. For example, you can filter by Application name to select only those
jobs in a particular Application. This information defines the rows in your display.
To filter information:
• Type FI on the CSF Command Line.
This takes you to the Filter Specification panel where you can specify
characteristics of the jobs ESP Workload Manager filters into the display. You can
filter based on different conditions (for example failed jobs) and based on other
criteria such as job name, Application name, and tag.
ESP-5.4-UG-05 227
Section–Customizing a view
Examples
228 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Freeform filtering
Freeform filtering is an extension to the CSF filtering capabilities that allows you a
more versatile and customizable method of filtering your ESP Applications. If you
cannot use the standard filter panel for your requirements, see “Freeform filtering” on
page 247 for information on using this feature.
Presenting information
Once you have filtered the information you want, you can specify the attributes of the
filtered jobs you want presented. For example, you can see the job number, Pnode
(processing node), and status information for each job. This information defines the
columns in your display.
Note: Option O.5 (Set CSF Options) allows you to set different options for CSF. This
determines the types of entries displayed when you enter any Presentation command
from CSF.
To present information:
1. Type PR on the CSF Command Line. The Presentation Fields panel appears.
2. On this panel, indicate the fields you want displayed by entering a number or
letter beside each desired field. The numbers and letters also represent the order
you want them to appear across the screen. You can alter the presentation order
easily by using numeric and alphabetic characters.
Example
The following example positions the Appl Generation column between the
Application and Completion Code columns.
Appl Generation 2A
Application 2
Completion Code 3
ESP-5.4-UG-05 229
Section–Customizing a view
Note: ESP Workload Manager always lists the job name in the first column; you
cannot change this.
To further define the presentation information, you can change the presentation
column lengths and titles.
Presentation titles
The PT command takes you to the Presentation Fields panel. On this panel, you can
define the titles that ESP Workload Manager presents for each of the fields listed. This
is useful for long titles you want to abbreviate. For example, you can shorten the field
title Account number. You can type an abbreviation such as ACCT in the area to the
right of the field name Account number. Or you could change the TAG title to reflect
how you are using tags in an Application.
Sorting information
Sorting information defines the order in which ESP Workload Manager presents the
rows of information.
Sort sequence
A Sort sequence field allows you to specify an ascending or descending sort sequence
for a field. Type A, or leave the field blank, for ascending order; Type D for
descending order.
230 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Color options
Color screens allow you to use different colors and highlighting options to indicate
job status. You can choose different colored and highlighted options to represent
different job status conditions, including:
• Submitted
• Overdue
• Task awaiting post
• Executing
• Failed
Updating a view
You can update a view at any time by selecting the different options for customization,
such as FI, PR, and SO.
To update a view:
1. Enter U to the left of the view name you want to update.
2. Type the name, an applicable description, and the message you want displayed
when there are no items matching your view criteria in the respective fields.
3. Press Enter. ESP Workload Manager returns you to the View Definitions panel.
ESP-5.4-UG-05 231
Section–Deleting a view
Deleting a view
You can delete an existing view at any time.
Selecting views
There are two methods for selecting a view.
To delete a view, if you do not know the name of the view you want to select:
1. Type V on the COMMAND line of the Consolidated Status View pane. ESP
Workload Manager presents you with a list of views.
2. From the list of views, type S beside the view you wish to select.
To delete a view if you know the name of the view you want to select:
• Type V viewname on the COMMAND line.
Commands
When ESP Workload Manager displays a view, it precedes each job name with an
entry field. The codes below represent commands that are valid in CSF. To use one of
these commands, type the letter code in the entry field preceding the job name you
want to manipulate. ESP Workload Manager issues the appropriate command (for
example, LISTAPPL, APPLJOB) in the background.
The next sections list the available commands in different categories.
232 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Command Description
AA Releases an Application held by ESP Workload Manager.
CA Completes all workload objects in an Application.
Note: If the Application is not held or waiting, the Application is
now complete. Otherwise, the Application is still active.
HA Places Application into ESP Workload Manager hold status.
LA Lists Application.
LAD Dumps Application data.
UWA Removes Application from wait status.
Command Description
AS Releases a subApplication held by ESP Workload Manager.
BYS Bypasses a subApplication.
CS Completes an entire subApplication.
HS Places subApplication into ESP Workload Manager hold status.
LS Lists subApplication.
RDS Readies a subApplication.
RQS Requests a subApplication.
UBS Cancels the bypass of a subApplication.
URS Cancel the requests of a subApplication.
UWS Removes subApplication from wait status.
Command Description
A Releases a job.
$A Issues a JES release command on a z/OS job.
BC Browses COPYJCL.
BJ Browses the last executed JCL.
BY Bypasses a job.
C Completes a job.
$C Cancels a z/OS job in JES.
ESP-5.4-UG-05 233
Section–Commands
Command Description
$CD Cancels a z/OS job with a dump in JES.
$CP Cancels and purges a z/OS job in JES.
$D Displays the JES status of a job.
DD Drops all predecessor dependencies.
DIN Displays an info record.
DR Drops all resource dependencies.
EC Edits COPYJCL.
EJ Edits the last executed JCL.
H Places a job into ESP hold status.
$H Issues a JES HOLD command on a z/OS job.
HR Places a job into ESP hold status with a reason.
IJ Inserts a job.
IJA Inserts a job after a selected job.
IJB Inserts a job before a selected job.
IW Inserts additional workload definitions into an active Application.
L Displays all dependencies.
L, then D Drops individual dependencies.
LI Displays index entries.
LJ Displays step-level statistics.
LJE Lists detailed information about the specified job.
LR Displays the job resources.
ME Modifies enqueues.
MR Modifies resources.
P Issues a system STOP command on an executing z/OS job, if it is
programmed to do so.
QS Quiesces a z/OS job executing on a goal mode system. Requires ESP
Workload Manager High Performance Option (HPO).
R Resubmits or restarts a job.
RD Readies a job, removing all predecessors, and submits time
dependencies.
RM Reruns multiple jobs.
RP Replies to an AS/400 message.
RQ Requests a job.
RR Views the ESP Encore panels.
Note: Use RX if you want to exclude specifics steps from the
range of steps you want to rerun.
RS Resumes the original service class of a z/OS job executing on a goal
mode system. Requires ESP Workload Manager High Performance
Option (HPO).
234 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Command Description
RT Resets one or more time dependencies.
RX Views the ESP Encore panels
SUS Resets the user status field for a job.
UB Un-bypasses a bypassed job.
UIN Updates an info record.
UR Un-requests a requested job.
UW Un-waits a job from job-ancestor wait (JANCWAIT).
W Selects distributed job options.
WC Cancels a PeopleSoft job.
WSF Retrieve a distributed job spool file.
XP Manually expedites a job with an associated expedite policy, waiting for
execution or executing. Requires ESP Workload Manager High
Performance Option (HPO).
Command Description
BD Browses job documentation.
BE Browses Event.
BP Browses ESP Procedure.
ED Edits job documentation.
EE Edits Event.
EP Edits ESP Procedure.
Inserting a job
Using CSF, you can insert different job types into an active Application. The inserted
job runs immediately unless you define a predecessor or insert the job on hold.
You can use two options to insert a job in CSF: IW or IJ.
ESP-5.4-UG-05 235
Section–Inserting a job
IW option
Use IW for inserting:
• Jobs requiring different ESP Encore options
• Jobs requiring resources
• Distributed jobs with Agent-related statements
• Multiple workload objects
This option takes you to the ISPF edit mode where you type the job definitions in the
same free-format text used to define workload in an ESP Procedure.
Note: You must specify AFTER and RELEASE statements to define predecessor or
successor relationship with other jobs in the Application. If you do not specify
AFTER and RELEASE statements, the inserted jobs run immediately.
Example
IJ option
Use IJ for single jobs with basic requirements. This option present an ISPF panel
where the user fills the appropriate fields
Example
236 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Resubmitting a job
Using CSF, you can resubmit a job that has terminated abnormally.
The following rules apply when you resubmit a job from the CSF panel shown below:
• If an override member name is specified (in the Member field), but no override
JCL library name is specified (in the Dsname field), then the specified member
name is used together with the original JCL library.
• If the JCL library name is specified but the member name is blank, then the
specified JCL library is used with the original member name.
• If both fields are blank, the original library name and original member name are
used.
• If both fields are filled in, then the specified library name and specified member
name are used.
• On a resubmit, the original JCL library is forced into use, even if the same
member has been placed in TEMPLIB. However, if an override of the data set is
entered on the resubmit panel, this override is explicitly used.
Note: If the job is an INSERTED job, and a JCL Library is supplied on the resubmit,
the supplied JCL library will be used and continue to be used on future resubmits. If
an asterisk is placed in the JCL library name field, the previously supplied JCL library
name will no longer be used for the current and future resubmits.
ESP-5.4-UG-05 237
Section–Rerunning multiple jobs
Note: Once an override library name has been specified on this panel, the Dsname field
displays the latest override library name used for the remainder of the CSF session.
Once you exit from CSF, this default value is lost.
238 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Example
You can:
• Use the RT command to remove time dependencies
• Use the DD command to drop all predecessor dependencies
• Use the L and then D command to drop individual predecessor dependencies, like
this:
ESP-5.4-UG-05 239
Section–Resetting a time dependency
You can enter a D in front of any predecessor that is not yet completed, to drop a
dependency.
JOB PAYD008A
PREDECESSORS
D PAY006A
NEWJOB
SUCCESSORS
PAYR009A
• Use the RD command to ready a job—remove all dependencies except resources
• Use the DR command to remove all resource dependencies
Example
Suppose a job has an early submission time of 5 pm.
240 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
The values shown in CSF are in the same format as the Scheduled field, for example,
“08.51 TODAY” or “16.30 MON”.
At the time an object becomes overdue for submission, start, or end, the object is
marked as overdue, and the value of the appropriate overdue field is set to this time.
If an object's due time for submission, start, or end, is changed (for example, by
means of a CSF RT line command), the new time value is compared to the current
time. For the due time that was changed:
• If the object is currently marked as overdue and the new due time is in the future,
the overdue status is revoked and the corresponding “overdue at” time is cleared.
• If the new due time is in the past, the object is marked as overdue, and the
corresponding “overdue at” time is set to this new time.
ESP-5.4-UG-05 241
Section–Bypassing and completing jobs
Job Name Scheduled PNode CCode O/D Sub at O/D Strt at O/D End at
___ WAIT3 16.30 MON COMPLETE 0
___ WAIT3#5 16.30 MON COMPLETE 0
___ WAIT3#5S 16.30 MON COMPLETE 0
___ WAIT5 16.30 MON COMPLETE 0
___ WAIT5 08.51 TODAY COMPLETE 0 08.52 TODAY 08.53 TODAY 08.56 TODAY
___ WAIT5 09.00 TODAY COMPLETE 0 09.01 TODAY 09.02 TODAY 09.05 TODAY
___ WAIT5 10.17 TODAY COMPLETE 0 10.19 TODAY
___ WAIT5 10.28 TODAY EXEC - 10.30 TODAY
Bypassing a job
You can bypass a job up to the time it becomes ready for submission by typing BY
next to it. ESP Workload Manager updates the status field to BYPREQ indicating
that a bypass has been requested. When the job’s predecessors are complete, the job is
bypassed, and the successor jobs released. You can unbypass a job by typing UB next
to the job anytime before the job actually becomes bypassed.
Completing a job
When you complete a job, you are telling ESP Workload Manager to consider the job
complete. Successors are immediately released, including those in other Applications.
You can complete a job by typing C next to the job, at any time.
242 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
You cannot reverse the completion of a job. If you mistakenly complete a job, you can
insert another occurrence of the job (qualified for uniqueness) with the required
dependencies, but successor jobs can have already been released.
Example
For example, you can:
• Use the RT command to add time dependencies
• Insert a task as a predecessor or successor
• Insert a link with predecessor A and successor B to add a relationship between jobs
A and B
ESP-5.4-UG-05 243
Section–Adding a LINK process
Example
For example, you can add a link to an Application to cause job B to wait for job A to
complete successfully. Visually, the dependencies look like this:
A B
LINKME
244 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Example
For example, if you bypass a job, you can use the user status field to notify others of
the reason for this action. The user status field for a job looks like this:
JOBNAME PNODE USER STATUS
TAPEJOB BYPASSED NO INPUT TODAY
ESP Workload Manager does not reset the user status field. To reset the user status
field to null, issue the SUS command and enter a period (.) in the field.
LR command
The LR command displays the resources and enqueues associated with a job.
For each resource, the following are displayed:
• The resource name
• The resource quantity
• The resource availability indicator:
• ? means that the resource is not defined.
• Y means that the resource is available; in the case of local resource Y is only
displayed if the resource has gravity or if the requested quantity of the resource
is available on a CPU of the current node.
• N means that the resource is not available on any CPU.
• X means that the requested quantity of the resource is available on a CPU of a
node other than the current node and that the resource does not have gravity.
For each enqueue, the following are displayed:
• The enqueue name
• Whether the enqueue is shared or exclusive
You can use two subcommands with the LR command for resources:
• L displays more information about a specific resource. You can also press Enter.
• X displays more information about all resources
ESP-5.4-UG-05 245
Section–Modifying a Job Resources or Enqueues
ME command
The ME command allows you to change one or more enqueues and to add new
enqueues. The ME command is equivalent to the JOBENQ command and provides
the same operands.
For each enqueue, the following are displayed and updated automatically if you make
changes:
• The enqueue name
• Whether the enqueue is shared or exclusive
MR command
246 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Additional information
For more information on using these modes, see “Getting Started” on page 31.
Extensions to CSF
The Consolidated Status Facility can have extensions written in REXX. Your
installation can add its own commands and enhance or replace the standard
commands.
Example
For example, your installation can write commands to:
• Trigger an Event
• Edit JCL prior to job submission
• Provide confirmation panels
• Force user status information
• Access SDSF
Check with your administrator to see if any customized commands are available to
you.
Freeform filtering
Freeform filtering is an extension to the CSF filtering that allows you a more versatile
and customizable method of filtering your ESP Applications. You have the option to
ESP-5.4-UG-05 247
Section–Freeform filtering
filter your Applications using the standard filter panel or to use the Freeform filter for
scenarios that cannot be handled using the standard panel.
Example
For example, you can filter based on the following criteria:
• Jobs that have started and ended between specific times
• Jobs on a critical path
• Completion codes for jobs within a subApplication
• Jobs within an Application that have a restart step
Operand Description
term See “Term syntax” on page 248.
AND Connects two terms when both terms must be true.
OR Connects two terms when at least one term must be true.
Note: The AND operator takes precedence over the OR operator. You can nest
expressions within parentheses to force precedence or to make your filter easier to
understand.
Term syntax
(keyword[(v1[,v2])] reloperator value)|condition
248 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Operand Description
keyword Identifies the kind of workload objects on which you want to filter,
such as Applications or workload object names. See “Keywords:” on
page 250 for the list of valid keywords.
v1 Refers to the starting position if you want to use portions of a
value, rather than its full contents. (Substring notation.)
Character positions start at one.
If v1 is negative, the starting position is relative to the last non-
blank character of the variable. For example, -1 refers to the last
character.
v2 Refers to the number of characters if you want to use portions of a
value, rather than its full contents. (Substring notation.)
• If v2 is omitted, it defaults to the remaining length of the variable.
• If v2 is positive, it specifies the number of characters required.
• If v2 is negative, it represents the remaining length less v2.
reloperator Specifies the operation, such as EQ for equal to. See “Relational
operators” on page 253 for the list of relational operators.
value Specifies what you want Application name to be equal to, such as
PAYROLL.
condition Specifies the condition. For example, if you want to see all Applications
that are incomplete, the condition INCOMPLETE. See “Conditions”
on page 254 for the list of available conditions.
Specification Result
JOBNAME PRODJOB
JOBNAME(1,4) PROD
JOBNAME(5) JOB
JOBNAME(5,1) J
JOBNAME(-1,1) B
JOBNAME(1,7) PRODJOB
JOBNAME(1,-3) PROD
ESP-5.4-UG-05 249
Section–Freeform filtering
Keywords:
Keyword Description
ACCOUNT Account number
AGENT Agent name
APPL Application name
250 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Keyword Description
APPLFILE Application file
APPLGEN Application generation
APPLSEQ Application definition sequence
APSLOT Application file slot number
ASFLAG Application status flag
ASID Execution address space identifier of the job
AUTH Authorization string
AVGRUNTIME Average execution time
CLASS Job class
CMPC Completion code
DMANAGER Distributed manager name
ETIME Job end time
EVENT Event name. The Event name consists of a prefix and a descriptive
name. You must includes spaces so the prefix is eight characters
long and the descriptive name starts in the ninth character
position. The descriptive name can be 16 characters maximum.
Specifying EVENT displays all jobs in Applications that have been
generated by the Event.
EXECJNO Execution job number. It may be different from the submission
job number if the job executes on a different JES node from the
node where the job was submitted.
EXECNODE Execution JES node of the job
HC Hold count
HWRM High water reel mounts
HWCM High water cart mounts
JAFLAG Job attribute flag
JOBNAME Job name
JOBNO Job number
JSBYTE Job status byte as follow
Value Description
C Completed.
D Dependency.
E Executing.
F Failed.
I Input.
P Post-process.
R Resources.
JSFLAG Job status flag
LONGNAME Long name of the job
ESP-5.4-UG-05 251
Section–Freeform filtering
Keyword Description
MAXRUNTIME Maximum allowable execution time
MINRUNTIME Minimum allowable execution time
NETID DJC/JES3 network ID
NSCM Non-specific cart mounts
NSRM Non-specific reel mounts
ORIGJNO Submission job number. It may be different from the execution job
number if the job executes on a different JES node from the node
where the job was submitted.
ORIGNODE JES node where the job was submitted.
PGN Performance group number of the job if the execution system is in
WLM compatibility mode
PNODE Processing node
PRIORITY Job priority
QUAL Qualifier
RDRTIME Time the job was submitted to a JES reader
SADFLAG SAD flags
SCBCYCLE Scoreboard cycle
SCBENTRY Scoreboard entry number
SCBTOKEN Scoreboard token
SCHED Scheduled time
SMFID Execution SMF identifier of the job
SRVCLASS Service class of the job if the execution system is in WLM goal
mode
STATUS System status
STIME Job start time
SUBAPPL SubApplication name
SYSNAME Execution system name of the job
SYSPLEX Execution sysplex name of the job
TAG Tag
TRSLOT Trakfile slot number
USTATUS User status
WOBTYPE 2-character workload object type:
Value Description
AE ApplEnd
AM AGENT_MONITOR
AX Aix_Job
A4 AS400_Job
CM CPU_Mon
DM DB_Job
252 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Keyword Description
DT DSTRIG
EX EXTMON
FM File_Trigger
FT FTP_JOB
HM DISK_Mon
HP HPUX_Job
IM IP_Mon
LJ Linux_Job
LM EVENTLOG_Mon
NC NCR_Job
NT NT_Job
OV OpenVMS_Job
PM PROCESS_Mon
PS PS_Job
SJ Sun_Job
SM SERVICE_Mon
SP SAP_Job
SQ Sequent_Job
TA Tandem_Job
TM TEXT_Mon
UJ Unix_Job
Note: For any of the time fields, (for example, ETIME, SCHED, and STIME), you
need to use the TIME function in a comparison. For example, STIME >
TIME(11AM TODAY). You can compare against any time in a format that ESP
Workload Manager recognizes.
Relational operators
Relational operators include the following standard operators:
ESP-5.4-UG-05 253
Section–Freeform filtering
Conditions
Condition Description
ALL All workload objects.
APPL_COMPLETE Application execution is complete.
BYPASSED Workload object execution has been
bypassed.
COMPLETE Workload object execution is complete.
CRITICAL_PATH Workload object is on a critical path.
EXTERNAL Workload object is external to an
Application.
INCOMPLETE Workload object execution is not
complete.
INTERVENTION_REQUIRED Workload object execution requires
manual intervention.
INTVRQ Workload object execution requires
manual intervention.
LINK Workload object is a LINK.
MANUAL_TASK Workload object is a manual task.
NOT_APPL_COMPLETE Application execution is not complete.
NOT_BYPASSED Workload object execution has not been
bypassed.
NOT_CRITICAL_PATH Workload object is not on a critical path.
NOT_EXTERNAL Workload object is not an external.
NOT_INTERVENTION_REQUIRED Workload object execution does not
require manual intervention.
NOT_INTVRQ Workload object execution does not
require manual intervention.
NOT_LINK Workload object is not a LINK.
NOT_ON_REQUEST Workload object is not defined as
REQUEST.
NOT_OVERDUE_END Workload object execution end time has
not been exceeded.
NOT_OVERDUE_START Workload object execution start time has
not been exceeded.
NOT_REQUESTED Workload object has not been specifically
requested.
NOT_RESTART_STEP_PRESENT Workload object does not have a restart
step.
NOT_TASK Workload object is not a TASK.
ON_REQUEST Workload object is defined as REQUEST.
254 ESP-5.4-UG-05
Chapter 7–Consolidated Status Facility (CSF)
Condition Description
OVERDUE_END Workload object execution end time has
been exceeded.
OVERDUE_START Workload object execution start time has
been exceeded.
REQUESTED Workload object has been specifically
requested.
RESTART_STEP_PRESENT Workload object has a restart step.
TASK Workload object is a TASK.
Note: Common conditions are available on the Filter Specifications screen and may
not require a freeform filter.
ESP-5.4-UG-05 255
Section–Freeform filtering
256 ESP-5.4-UG-05
Job Documentation
The ESP Workload Manager job-documentation facility lets you create a complete
and centralized definition of each one of your jobs. You can document a job’s entire
requirements, including its predecessors and successors, its schedule frequency, all the
resources it requires, and so on. Users and operators can retrieve this information
easily using the JOBINFO command or through the Consolidated Status Facility.
Job documentation can also be used for informational purposes.
This chapter contains the following topics:
• Contents of job documentation
• Control information
• User description
• Creating job documentation
• Using the jobs option
• Updating job documentation
• Using job documentation
• Using the control information
• Referencing job-documentation members
• Overriding job documentation
• Using job documentation for qualified jobs
• Using job documentation for links and tasks
• Retrieving information
• Converting existing job documentation
• Other uses of job documentation
ESP-5.4-UG-05 257
Section–Contents of job documentation
Comment
Either section can include comments within /* */ pairs.
Control information
The control information comes first in your job-documentation entry and follows a
very specific format, as shown below:
job name: JOBDOC
Example
For example, to specify the start of job documentation for the job PAYJOB1, enter the
job name followed by a colon, a space, and the JOBDOC keyword like this:
PAYJOB1: JOBDOC
258 ESP-5.4-UG-05
Chapter 8–Job Documentation
Storing requirements
You can store all requirements for a job in a job-documentation library. Alternatively,
you can also store some requirements in ESP Procedures and others in job
documentation members. For example, you can use job documentation to store only
the resource requirements for a job and use ESP Procedures to store scheduled
frequency, job relationships, and time dependencies.
User description
The user-description section of your job documentation must begin with the keyword
USERDESC as a heading. After that, the rest of the data can be formatted as you
choose. You can divide the user description section into paragraphs and identify each
paragraph with a label. You can then retrieve selected information by label name. ESP
Workload Manager supplies the following standard labels:
ESP Workload Use this Label to…
Manager Label
Function Describe what the job does.
Programmer Identify the programmer of the job.
Abends Identify ABEND codes and recovery activity. A number sign (#) can
precede each ABEND code. This lets you request display
information about a specific ABEND code when retrieving
information with the JOBINFO command.
Messages Identify message codes and recovery activity. A number sign (#) can
precede each message ID code. This lets you request display
information about a specific message ID when retrieving
information with the JOBINFO command.
ESP-5.4-UG-05 259
Section–Creating job documentation
Customized labels
You can use any of your own labels as long you observe the following guidelines:
• A label consists of a word, 1 to 16 characters long, followed by a colon and at least
one blank.
• A label must be the first entry on a line.
• A label can precede any type of information, such as report distribution
information, severity codes, and escalation Procedures.
• Each paragraph ends with the next label or the end of the PDS member.
• You can specify as many labels as you wish.
Example
In the example below, the USERDESC keyword identifies this as the user-description
area of job documentation. Each of the five user description paragraphs begins with a
label (for example, FUNCTION, PROGRAMMER, ABENDS, MESSAGES,
SEVERITY) followed by a colon (:).
USERDESC
FUNCTION:
sort and merge payroll files
PROGRAMMER:
joan smith
ABENDS:
#SB37 -
space problem - double space requirements and restart
job from failing step
MESSAGES:
#AC101 -
number of available accounts <50 – warning
#Z001 -
user not authorized
SEVERITY: 3
260 ESP-5.4-UG-05
Chapter 8–Job Documentation
3. Enter 1 on the command line to access the Job User Description panel.
4. Complete any user description information, as shown below.
ESP-5.4-UG-05 261
Section–Updating job documentation
5. If you have DJC or JES3 installed, you can enter 2 on the command line to define
DJC/JES3 specifications. See the ESP Workload Manager Advanced User’s Guide
for more information.
6. Press PF3 twice to return to the Main Menu.
Result
You have now created and stored job documentation. ESP Workload Manager stores
the information in a member of the job documentation PDS with the same name as
the job name. The information is stored as shown below.
PAYJOB1: JOBDOC
DATASET PROD.JCL.CNTL
RELEASE (PAYJOB2,PAYJOB3)
CCFAIL (STEP1 GT 4)
USERDESC
FUNCTION:
sort and merge payroll files
PROGRAMMER:
joan smith
ABENDS:
#SB37 -
space problem - double space requirements and restart
job from failing step
MESSAGES:
#AC101 -
number of available accounts <50 - warning
#Z001 -
user not authorized
262 ESP-5.4-UG-05
Chapter 8–Job Documentation
Note: Do not use the Job Specifications panel (Option J) to update existing job
documentation. This option is only for initially setting up your documentation.
When you try to use this panel to update an existing entry, you will receive an error
message indicating the member already exists.
ESP-5.4-UG-05 263
Section–Using the control information
ESP Procedure
The ESP Procedure below shows a DOCLIB statement pointing to the library
CYBER.JOBS.DOC that contains documentation on jobs specified in this Procedure.
APPL PAYJOBS
JCLLIB 'CYB.JCL.CNTL'
DOCLIB 'CYBER.JOBS.DOC'
JOB PAYJOB1
ENDJOB
JOB PAYJOB2
ENDJOB
JOB PAYJOB3
ENDJOB
ESP Workload Manager then uses the job-documentation information to establish
dependencies and any other requirements. To invoke this Procedure, use an INVOKE
command in an Event.
Job Documentation
Library
A: JOBDOC
RUN DAILY
ESP Procedure RELEASE B
Event
DOCLIB . . .
INVOKE . . . JOB A
264 ESP-5.4-UG-05
Chapter 8–Job Documentation
Rules
ESP Workload Manager uses the following rules:
Type of information …overrides corresponding
ESP Procedure information… … job documentation information.
Job documentation information… …tracking model information.
Example
For example, if you specify a HISTFILE as below, it overrides the HISTFILE specified
in a tracking model for the job.
APPL PAYJOBS
DOCLIB 'CYBER.JOBS.DOC'
JCLLIB 'CYBER.JOBS.JCL'
JOB PAYJOB1
HISTFILE HIST2
RUN DAILY
ENDJOB
ESP-5.4-UG-05 265
Section–Using job documentation for qualified jobs
Temporary override
You can temporarily override the control information specified in job documentation
from within an ESP Procedure by specifying the new control information you want to
use. In this example, the RELEASE statement for PAYJOB1 overrides any RELEASE
statement specified in the job documentation for the job.
DOCLIB 'CYBER.JOBS.DOC'
APPL PAYJOBS
JOB PAYJOB1
RELEASE NEXTJOB
ENDJOB
DOCMEM method
This method shows you how you use different job documentation members for
different qualified versions of a job. Job A.RUN1 references member A1; job A.RUN2
references member A2.
JOB A.RUN1 DOCMEM(A1)
JOB A.RUN2 DOCMEM(A2)
IF-THEN-ELSE method
This method uses a common job-documentation member for job A. ESP Workload
Manager processes different statements based on the job qualifier.
If the qualifier is RUN1, the job runs daily and releases job Y.
If the qualifier is RUN2, the job runs on workdays and releases job Z.
266 ESP-5.4-UG-05
Chapter 8–Job Documentation
A.RUN1 A.RUN2
Y Z
Job-documentation member
The job-documentation member looks like this:
A: JOBDOC
IF ESPAPQUAL='RUN1' THEN DO
RUN DAILY
RELEASE Y
ENDDO
IF ESPAPQUAL='RUN2' THEN DO
RUN WORKDAYS
RELEASE Z
ENDDO
ESP-5.4-UG-05 267
Section–Using job documentation for links and tasks
A: JOBDOC
DOCLIB 'CYBER.JOBS.DOC RUN DAILY
JCLLIB 'CYBER.JOBS.DOC RELEASE CHECK
APPL ABC
JOB A
JOB CHECK TASK CHECK: JOBDOC
JOB ENDAPPL LINK RUN DAILY
PROCESS SEND 'CHECK REPORT FOR JOB A'
ENDJOB
ENDAPPL: JOBDOC
RUN DAILY
RELEASE CHECK
IF statement
ESP Workload Manager uses the same job-documentation member for each job
because it does not check the qualifier when accessing job documentation. To prevent
the link from using the resource, the job-documentation member for MEMOBACK
uses an IF statement to assign a resource requirement to the unqualified job only.
268 ESP-5.4-UG-05
Chapter 8–Job Documentation
The ESP Procedure and job documentation member look like this:
ESP Procedure
DOCLIB 'CYBER.JOBS.DOC'
JCLLIB 'CYBER.JOBS.JCL'
APPL MEMO
JOB MEMOBACK
RUN WORKDAYS Job Documentation
RELEASE MEMOBACK.MSG Member
JOB MEMOBACK.MSG LINK PROCESS
RUN WORKDAYS
SE 'MEMOBACK IS DONE' U(*) MEMOBACK: JOBDOC
ENDJOB IF ESPAPQUAL=' ' THEN +
RESOURCE (1,DB2TAB)
Retrieving information
You can retrieve job-documentation information using the Consolidated Status
Facility (CSF) or the JOBINFO (JI) command from the operator console, the ESP
Workload Manager command processor, or ISPF interface (Line mode or Page mode).
You can display all information for a job or display selected information as identified
by fields and labels.
Using CSF
You can access job documentation information directly from CSF with the following
commands.
Command Explanation
BD Browses job documentation
ED Edits job documentation
ESP Workload Manager retrieves the information from the data set identified by the
DOCLIB statement in an ESP Procedure. Using this method, ESP Workload
Manager retrieves all information on the job. You cannot select individual fields.
Using TSO
If a job is submitted by an ESP Procedure, ESP Workload Manager searches the job-
documentation library identified by the DOCLIB statement. If a job-documentation
library was not identified in the ESP Procedure, or the job was not scheduled from an
ESP Procedure, the JOBINFO command looks for the file name JOBDOC. If the file
is allocated, it is opened and searched for a member corresponding to the job name.
The JOBDOC file can consist of a concatenation of several partitioned data sets.
ESP-5.4-UG-05 269
Section–Retrieving information
To use the JOBINFO command in TSO you must pre-allocate a file to your TSO
session, either in LOGON Procedure or LOGON CLIST. You can dynamically
allocate this file during a session by issuing the following TSO command:
ALLOC FI(JOBDOC) DA('data set name') SHR
270 ESP-5.4-UG-05
Chapter 8–Job Documentation
To convert an existing PDS job documentation library into an ESP Workload Manager
documentation library:
• Use the GENDOC command in Line mode, Page mode, or in batch.
The GENDOC command identifies the input data set, the members to be
copied, and the output data set. You can also identify changes you want to make
when the old documentation converts.
ESP-5.4-UG-05 271
Section–Converting existing job documentation
Commands
You can use the following commands:
Command Explanation
REMOVE Identifies lines that are not to be copied to the output data set.
LABEL Alters or replaces lines in the output data set, or inserts lines at
different locations.
GO Indicates that all specifications are complete and that the copy process
should proceed
272 ESP-5.4-UG-05
Chapter 8–Job Documentation
Input Output
ESP:
JI SUPPORT FIELD(ESP) REGULAR (905) 479-4611
AFTER_HOURS (416) 287-5021
ESP-5.4-UG-05 273
Section–Other uses of job documentation
274 ESP-5.4-UG-05
Creating Reports
You can get information about your jobs in several ways. You can generate a report,
flowchart a jobstream, view CSF, or use tracking commands to give you the job
information you require.
This chapter contains the following topics:
• History reporting
• Structuring the report
• Reporting fields
• Field formats
• Invoking the report function
• Specifying input criteria
• Specifying output criteria
• Ending the report definition
• ESP Workload Manager history reporting fields
• Accumulating reporting fields
• Reporting on scheduled activity
• Generating data
• Extracting data
• Generating scheduled versus actual report
• Generating projected versus actual data
• Extracting tape information
• Using job mapping
• Job-mapping data set
ESP-5.4-UG-05 275
Section–History reporting
Reporting in batch
When reporting in batch, a hyphen at the end of a line indicates a continuation. If
you are using a hyphen as a mask, follow it with a semi-colon (for example, PAY-;).
History reporting
ESP Workload Manager has a powerful and versatile reporting facility that you can
use at any time to generate details about the progress of jobs. Information in the job
history files, defined by the administrator or installer, provide the basis for the reports.
You can generate reports online or in batch
Note: Youcan report only on jobs, started tasks, and TSO users that the ESP
Workload Manager administrator requests ESP Workload Manager to track.
Additional information
For more information on how to specify which of these ESP Workload Manager will
track, see the ESP Workload Manager Installation and Configuration Guide.
276 ESP-5.4-UG-05
Chapter 9–Creating Reports
Sections of a report
The sections that make up a report are:
• Input source selection
• Selection criteria
• Display format
• Sort options
• Titles and footings
• Section break definitions
• Subtotals
Reporting fields
You can select, sort, and display as many as 70 fields using the CRITERIA, SORT,
and DISPLAY commands. With these commands, you can create a report containing
as much detail as you want.
ESP-5.4-UG-05 277
Section–Field formats
Field formats
Field categories
Using ESP Workload Manager, you can display or base selection criteria on the
following field categories:
• Character
• Numeral
• Time
• Elapsed time
• CPU times
• Dates.
Character fields
These include JOBNAME, ACCOUNT, CLASSID, and PGMR. These fields are
always left justified. In the CRITERIA section, you can select character fields by
specifying the full field value or part of it. If you specify a part of the field, you must
include wildcard characters asterisk or hyphen (see “About this guide” on page 1.)
Example
The following example selects any jobs that begin with ZA and have a B in the fourth
character position of the name. In this example, ESP Workload Manager would also
select any occurrences of the job ABC.
CRITERIA JOBNAME EQ ZA*B OR JOBNAME EQ ABC
Numeric fields
These fields include APPLGEN, EXCP, EXEC#, JOBNO, RC, RRJOBNO, STEPS,
SUBJOBNO, TRANSACT, and TRANSRES. ESP Workload Manager displays them
right justified with leading zeros translated into blanks. You can increase the default
length for these fields by specifying whatever length you want on the DISPLAY
statement or by defining a longer title.
Example
The following example displays DASD EXCP counts to nine digits because the title
length (DISK-EXCP) is nine characters. The title for the tape EXCP counts is TAPE
I/O but ESP Workload Manager displays the counts to a length of nine, as specified.
Blanks on the left fill the field. ESP Workload Manager justifies title and numeric
fields on the right.
DISPLAY DEXCP 'DISK_EXCP' TEXCP 9 'TAPE I/O'
278 ESP-5.4-UG-05
Chapter 9–Creating Reports
Comparisons
You can also make comparisons against numeric fields in the CRITERIA section. ESP
Workload Manager supports the following comparison operators: AND and OR.
Example
This example selects all jobs that perform I/O to tape, but use less than 1000 tape
EXCPs.
CRITERIA TEXCP>0 AND TEXCP<1000
Time fields
Time appears in the 24-hour clock format. The default is hh.mm.ss, but you can omit
the seconds by specifying a display size of five. The RDRON, EXECST, ENDT, and
COMPT fields fall into this category. You can use any date and time format valid on a
SCHEDULE command when you want to select these fields.
Example
The following example selects all jobs submitted since March 3rd, 2001.
CRITERIA RDRON GT MARCH 3RD 2001
You can select elapsed times by requesting them in the same formats as those that
appear above.
ESP-5.4-UG-05 279
Section–Field formats
Example
The following example selects jobs that were in execution for one or more minutes,
yet completed execution within five hours.
CRITERIA EXECQT GE 1M00 AND EXECQT LT 5H00
Example
The following example selects all jobs that consumed between 10 seconds and 5
minutes of CPU time.
CRITERIA CPUTIME>10 AND CPUTIME<5:00
Date fields
These fields include RDRONDATE, EXECSDATE, ENDDATE, PURGDATE,
SCHEDDATE, and COMPDATE. By default, they appear in the form
xxxddmmmyy, where:
Field Symbol Explanation
xxx first three characters of the day of the week.
dd day of month number.
mmm first three characters of the month name.
yy last two digits of the year.
You can change the way date fields are displayed in a report using the DATEFORM
command within the report. See “Specifying output criteria” on page 284.
You can use any date and time format valid on a SCHEDULE command when you
want to select these fields as input criteria to your report.
Example
The following example selects all jobs that were submitted since 9 am on
March 29th, 2000.
CRITERIA RDRONDATE GT 9AM MARCH 29TH 2000
The date fields also allow for some sorting by storing time information. When you
request sorting by a date field, ESP Workload Manager sorts by date and time. If you
specify the following, ESP Workload Manager reports only on those jobs with a
reader-on time and date of midnight, August 23, 2000.
CRITERIA RDRONDATE EQ AUGUST 23RD 2000
280 ESP-5.4-UG-05
Chapter 9–Creating Reports
ESP-5.4-UG-05 281
Section–Specifying input criteria
If the ESP Workload Manager subsystem is not functioning when the system
generates a report, use the INPUT statement rather than the HISTFILE statement.
The sub-system does not have to be active to use the INPUT statement.
If you want to compare a field to a null string, use a blank enclosed in single quotes, as
in ' '.
Note: Youcan specify several criteria sections in a single report, using multiple
CRITERIA commands; ESP Workload Manager selects a job if it satisfies any criteria
section.
282 ESP-5.4-UG-05
Chapter 9–Creating Reports
Example 1
The following example selects only those jobs that belong to the PAYROLL
Application:
CRITERIA APPLSYS EQ PAYROLL
Example 2
The following example selects only those jobs that have been restarted:
CRITERIA RRJOBNO NE 0
Example 3
The following example selects a job if it belongs to the PAYROLL Application and the
job name starts with P.
CRITERIA APPLSYS EQ PAYROLL JOBNAME EQ P-
Example 4
The following example selects a job if it belongs to the PAYROLL Application or the
job name starts with P.
CRITERIA APPLSYS EQ PAYROLL
CRITERIA JOBNAME EQ P-
Or you could use OR to separate the requirements:
CRITERIA APPLSYS EQ PAYROLL OR JOBNAME EQ P-
Example 5
The following example selects all jobs that ended between 8 am and 4 pm on May 17,
2001:
CRITERIA ENDDATE GE 8:00 MAY17,2001 -
ENDDATE LE 16:00 MAY17,2001
Example 6
The following example selects all jobs that were submitted by ESP Workload Manager
outside of an ESP Application:
CRITERIA ESPSUB EQ YES AND APPLSYS NE ' '
ESP-5.4-UG-05 283
Section–Specifying output criteria
Example 7
The following example selects only those jobs for reporting that either:
• Have names beginning with ABC
• Have two character names that begin with A
• Perform tape I/O
• Have no more than 10000 EXCPs to DASD devices
CRITERIA TEXCP GT 0 OR DEXCP LT 10000
CRITERIA JOBNAME EQ ABC- OR JOBNAME EQ A*
Example 8
The next example selects only those jobs that:
• Have more than 10000 EXCPs
• Or have more than 1 minute of CPU time
The commands look like this:
CRITERIA EXCP GT 10000
CRITERIA CPUTIME GT 1:00
284 ESP-5.4-UG-05
Chapter 9–Creating Reports
Note: This setting only affects the date format you use to display fields in a history
report; it does not affect the date format you use on a CRITERIA command, and it
does not affect the date format used in schedule criteria.
Example: DATEFORM
In the following example, the date format is set to YMD. Any date fields, such as
EXECSDATE (start date), displayed in the report will be in YYYYMMMDD format.
DATEFORM YMD
ESP-5.4-UG-05 285
Section–Specifying output criteria
Example
In the following example, ESP Workload Manager:
• Displays both job name and the reader-on time and date, along with their default
titles
• Restricts the reader-on date to five characters
• Displays the tape and disk EXCP count to five and six digits respectively
• Includes special title segments for the last two fields
DISPLAY JOBNAME, RDRON, RDRONDATE 5, TEXCP 'TAPE' -
'EXCPS' DEXCP 6 'DISK' 'EXCPS'
286 ESP-5.4-UG-05
Chapter 9–Creating Reports
JOBNAME JOBNO COMP EXEC START EXEC END END CPU TIME
CODE START DATE DATE
PAYD001A 2221 0 11.56 MON 14MAY01 12.02 MON 14MAY01 0:01
PAYD002A 2227 0 12.02 MON 14MAY01 12.02 MON 14MAY01 0:00
PAYD003A 2226 0 12.02 MON 14MAY01 12.02 MON 14MAY01 0:00
PAYD004A 2229 0 12.02 MON 14MAY01 12.07 MON 14MAY01 0:04
PAYD100A 2232 0 12.07 MON 14MAY01 12.07 MON 14MAY01 0:00
PAYD006A 2233 0 12.08 MON 14MAY01 12.08 MON 14MAY01 0:00
PAYD008A 2234 SOC1 12.08 MON 14MAY01 12.08 MON 14MAY01 0:00
PAYD008A 2270 SOC1 12.57 MON 14MAY01 12.57 MON 14MAY01 0:00
PAYD008A 2271 0 12.58 MON 14MAY01 12.58 MON 14MAY01 0:00
PAYD009A 2272 0 12.58 MON 14MAY01 12.58 MON 14MAY01 0:00
PAYD010A 2273 SOC1 12.59 MON 14MAY01 12.59 MON 14MAY01 0:00
ESP-5.4-UG-05 287
Section–Ending the report definition
JOBNAME JOBNO COMP EXEC START EXEC END END CPU TIME
CODE START DATE DATE
PAYD010A 2275 0 12.59 MON 14MAY01 12.59 MON 14MAY01 0:00
PAYD011A 2276 0 12.59 MON 14MAY01 13.04 MON 14MAY01 0:01
SUBTOTAL (13) 0:06
TOTAL (13) 0:06
288 ESP-5.4-UG-05
Chapter 9–Creating Reports
Field Explanation
ACCOUNT Specifies the job first account operand, can also be specified as
ACCOUNT1.
ACCOUNT2 Specifies the job second account operand.
ACCOUNT3 Specifies the job third account operand.
ACCOUNT4 Specifies the job fourth account operand
AGENT Specifies the Agent name as stated in the AGENT statement.
ALLOCQT Specifies the allocation queue time. This is the total time the job
spends in the allocation process (for example waiting for tape
mount).
APPLGEN Specifies the Application generation number (absolute).
APPLSYS Specifies the Application name for jobs defined to an Application;
can also be specified as APPL.
APPLTAG Specifies the tag associated with a job in an Application.
ASID Specifies the address-space identifier of an executing z/OS job.
AUTHSTR Indicates job authority string that you can use to verify ownership of
the job.
AVGRUNT Specifies the job average execution time.
ESP-5.4-UG-05 289
Section–ESP Workload Manager history reporting fields
Field Explanation
CCFAIL Indicates whether or not the job failed because of condition codes.
The field has a value of YES if the job failed because of a condition
code, and the value is NO otherwise.
CLASSID Specifies the ESP Workload Manager class to which you defined the
Event.
CMPC Specifies the job completion code, including return code, user abend
code, or system abend code. For more information on the different
completion codes, go to the last page of the History Reporting Field
topic.
COMPDATE Specifies the job completion date: it is the date on which the job
completed its last post-processing phase. If the job has no post-
processing phases, the completion date is the same as the purge date.
(See note at the end of the table.)
COMPT Specifies the job completion time: it is the time at which the job
completed its last post-processing phase. If the job has no post-
processing phases, it is the same as the purge time. (See note at the
end of the table.) COMPT is set equal to the ENDT field for
distributed workload.
CPUTIME Specifies the total CPU time, including both SRBTIME and
TCBTIME.
DEXCP Specifies the total EXCP count to DASD devices.
ENDDATE Specifies the date at the end of execution.
ENDT Specifies the time at the end of execution.
ESPSUB Indicates whether or not the job was submitted by ESP Workload
Manager. It has a value of YES if the job was submitted by ESP
Workload Manager (either through an Event or as part of an
Application); otherwise, it has a value of NO.
EXCP Specifies the total EXCP count for the job during the execution
phase.
EXEC# Specifies the number of times the job has executed as part of a
particular generation of an Application.
EXECNODE Specifies the JES node name where a z/OS job is executing or
waiting for execution (for example, LOCAPPL operand).
EXECQT Specifies the elapsed time for the job during the execution.
EXECSDATE Specifies the date at the start of the execution.
EXECST Specifies the execution start time. For example, 08:26.
EXECSYS Specifies the system where the job executed. This is not set until the
job is purged regardless of your tracking options.
EXEJOBNO Specifies the JES job number where the job executed. This value is
different from the SUBJOBNO value when the job executes on a
node different from the node it was submitted to.
290 ESP-5.4-UG-05
Chapter 9–Creating Reports
Field Explanation
GROUP Specifies the prefix of the Event associated with the job, if ESP
Workload Manager submitted it.
INFOREC Specifies the Info/System record number.
INPUTQT Specifies the length of time the job was in the input queue.
INSYS Specifies the system the job was submitted on. This is not set until
the job is purged regardless of your tracking options.
JOBCLASS Specifies the JES execution class.
JOBNAME Specifies the name of the job.
JOBNO Specifies the job number. This value is the submit job number before
and after the job executes and the execution job number during the
time the job executes.
JOBQUAL Specifies the ESP Workload Manager job qualifier.
LINES Specifies the number of print lines.
LONGNAME Specifies the long name of a job.
MAXRUNT Specifies the job longest expected execution time.
MINRUNT Specifies the job shortest expected execution time.
MSGFAIL Indicates whether or not the job failed because of an ESP Workload
Manager SYSMSGS command. The field has a value of YES if the
job terminated because of the ESP Workload Manager SYSMSGS
facility, and the value is NO otherwise.
MXCMPC Specifies the maximum completion code for the job.
MXRC Specifies the highest return code from any step in the job. This is a
numeric field. For more information, see “Numeric fields” on
page 296.
NCI Specifies the number of card images submitted to the internal reader.
NETID Specifies the network identifier for a job belonging to a DJC/JES3
job network.
NSTM Specifies the number of nonspecific tape mounts (scratch tapes) for
the job.
ORIGNODE Specifies the job original or submission JES node.
OUTSYS Specifies the system the job was purged on. This is not set until the
job is purged regardless of your tracking options.
OVDBEGAT Specifies the time at which the job last became overdue for start.
OVDCOMP Specifies the amount by which the job was overdue at the time of
completion. The criteria for being late are defined by the DUEOUT
OUTPUT statement in an ESP Procedure or in a job tracking
model.
OVDEND Specifies the amount of time by which the job was late in ending
execution. The criteria for being late are defined by the DUEOUT
EXEC statement in an ESP Procedure or in a job tracking model.
ESP-5.4-UG-05 291
Section–ESP Workload Manager history reporting fields
Field Explanation
OVDENDAT Specifies the time at which the job last became late in ending
execution.
OVDSTART Specifies the amount of time by which the job was late in starting
execution. The criteria for being late are defined by the DUEOUT
INPUT statement in an ESP Procedure or in a job tracking model.
OVDSUBAT Specifies the time at which the job last became overdue for
submission.
PGMR Specifies the contents of the programmer name field for the job.
PGN Specifies the performance group number of an executing z/OS job.
This applies only to jobs running in a compatibility mode system.
POSTQT Specifies the elapsed time spent in post-output processing phases.
PRINTQT Specifies the length of time the job remained in the print queue.
PRIORITY Specifies the job JES execution priority. It has a value between 0 and
15.
PURGDATE Specifies the date of job purge.
PURGT Specifies the purge time. PURGT is set equal to the ENDT field for
distributed workload.
RC Specifies the return code from the last step executed in the job. This
is a numeric field. For more information, see “Numeric fields” on
page 296.
RDRON Specifies the time at which ESP Workload Manager read the job into
the system. RDRON is set equal to the EXECST field for distributed
workload.
RDRONDATE Specifies the date at job submit time. This field also includes the
time for sorting purposes but not for display purposes.
RRJOB Specifies the name of job being rerun or null.
RRJOBNO Specifies the job number of the most recent execution of a
resubmitted job. This field only has a value for a job that is being
rerun by ESP Workload Manager (for example, a job that has been
resubmitted via an explicit AJ command or the R line command in
CSF). If the job is not a rerun, this field is set to zero.
RTYPE Specifies the run type as follows:
Value Explanation
P A primary run—set for a normally scheduled
execution or by a TRIGGER REPLACE
command.
T An extra run—set by a TRIGGER ADD
command.
D An execution caused by data-set activity.
R A rerun.
SCHEDDATE Specifies the scheduled date.
SCHEDT Specifies the scheduled time.
292 ESP-5.4-UG-05
Chapter 9–Creating Reports
Field Explanation
SID Specifies the SMF identifier of system that z/OS job is executing on.
SPTM Specifies the number of specific (for example, non-scratch) tape
mounts for the job.
SRBTIME Specifies the CPU time consumed while in SRB mode.
SRVCLASS Specifies the service class of an executing z/OS job. This applies only
to jobs running in a goal mode system.
STATUS Specifies the job status. There are four possible values:
Value Explanation
INPUT Defines submitted jobs not yet started.
STARTED Defines jobs currently in execution.
COMPLETE Defines jobs that completed all phases of
processing.
ENDED Defines jobs that completed execution but did not
finish all phases of processing.
STEPS Specifies the number of job steps.
SUB# Specifies the submission number for a job in an Application.
SUBAPPL Specifies the subApplication identifier.
SUBJOBNO Specifies the JES job number where job was submitted. This is useful
when a job is submitted on one system and routed to another system
where a different JES job number is assigned.
SUNITS Specifies the job service units, as defined by the SRM.
SYSABD Specifies the system abend code or null.
SYSNAME Specifies the name of the system in the sysplex that z/OS job is
executing on.
SYSPLEX Specifies the name of the sysplex that z/OS job is executing on.
TAPEM Specifies the number of tape mounts for the job.
TAPEW Specifies the maximum number of tape drives allocated to a job at
one time. Note that SPTM and NSTM may not add up to TAPEW.
SPTM and NSTM represent numbers of tape mounts. TAPEW
counts the number of different tape drives that were used at one
time. For example, if a job-step calls for three specific tapes, one at a
time, on the same drive, then TAPEW will be one, but SPTM will be
three.
TCBTIME Specifies the CPU time consumed while in TCB mode.
TEXCP Specifies the total EXCP count to tape drives.
TMODEL Specifies the name of the ESP Workload Manager tracking model
that was used to track the job.
TOTALQT Specifies the total elapsed time for the job.
ESP-5.4-UG-05 293
Section–ESP Workload Manager history reporting fields
Field Explanation
TRANSACT Specifies the total time for which a transaction is active. In the case of
a batch job, this is approximately equal to the total execution times
for the programs contained in the job. It is measured in units of 1024
microseconds.
TRANSRES Specifies the total time during which a transaction was resident in
real memory. This is often identical to the transaction active time
(TRANSACT), but can differ since it does not include any time
during which the task was swapped out of real memory. It is
measured in units of approximately one millisecond, or more
precisely, units of 1024 microseconds.
TRUSER Specifies the user ID that triggered the Event. It resolves to the user
ID that manually triggered an Event, and is blank otherwise.
UABEND Specifies the user abend code or null.
WDFAIL Indicates whether or not there was a WTO-detected JCL error. The
field has a value of YES if the job terminated prior to starting
execution, and the value NO otherwise. These errors are caused by
such activities as an early (pre-execution) JCL error, certain security-
system verification errors, and a cancellation of a job while it is on
the JES input queue.
294 ESP-5.4-UG-05
Chapter 9–Creating Reports
Field Explanation
WOBTYPE Specifies the short name of workload object types:.
Value Description
AE ApplEnd
AM AGENT_MONITOR
AX Aix_Job
A4 AS400_Job
CM CPU_Mon
DM DB_Job
DT DSTRIG
EX EXTMON
FM File_Trigger
FT FTP_JOB
HM DISK_Mon
HP HPUX_Job
IM IP_Mon
LJ Linux_Job
LM EVENTLOG_Mon
NC NCR_Job
NT NT_Job
OV OpenVMS_Job
PM PROCESS_Mon
PS PS_Job
SJ Sun_Job
SM SERVICE_Mon
SP SAP_Job
SQ Sequent_Job
TA Tandem_Job
TM TEXT_Mon
UJ UNIX_Job
ESP Workload Manager may not track jobs through to the output stage at your
installation. For such jobs:
• The times specified in the COMPDATE and COMPT fields refer to when the
jobs complete successfully.
• The LINES, POSTQT, PRINTQT, PURGDATE, and PURGT fields are not
applicable.
ESP-5.4-UG-05 295
Section–ESP Workload Manager history reporting fields
Numeric fields
The RC and MXRC fields contain strictly numeric values. For cases where a
completion code is non-numeric (for example JCL errors, system or user abends,
CCFAIL), special values are inserted in these fields as an indication of the actual
completion status.
The following table lists the completion codes:
Type of Error Value
System ABEND Abend code + 10000 (abend code converted to decimal first)
User ABEND Abend code + 20000
SYSERROR 30000 (actual completion status unavailable)
CCFAIL 30001 (terminated by CCFAIL or CCCHK logic)
JCLERROR 30002
RUNNING 32767 (job still executing)
296 ESP-5.4-UG-05
Chapter 9–Creating Reports
ESP-5.4-UG-05 297
Section–Reporting on scheduled activity
Generating data
To generate data that you can use for scheduled-activity reporting, ESP Workload
Manager must simulate all the Events and ESP Procedures it would execute in a
specified period. ESP Workload Manager does this by executing the ESP Workload
Manager subsystem started task Procedure in batch with a special parameter
(PARM='SAR' or PARM='SAD'). The output generated by this simulation forms a
scheduled activity data set.
You can also create multiple schedule-activity data sets. You can generate separate data
sets on scheduled activity for the next day or for the next week, or you want different
activity data sets for different production groups.
Note: ESP Workload Manager does not reflect an Event in the scheduled activity data
set unless it contains either a SCHEDULE or EXPECT command.
SADGEN command
When creating a job to generate a scheduled-activity data set, you can limit the
simulation to specific Event data sets, prefixes, and classes using the different operands
of the SADGEN command.
298 ESP-5.4-UG-05
Chapter 9–Creating Reports
You can also use the ESPSADG symbolic variable in an ESP Procedure to affect the
simulation. This variable is set equal to 1 during SADGEN processing; otherwise, it is
set to zero. For example, the following statement at the beginning of an ESP
Procedure causes ESP Workload Manager not to simulate the Procedure during
SADGEN processing:
IF ESPSADG=1 THEN QUIT
When ESP Workload Manager creates a scheduled activity data set, it contains a
record for each job you want to submit, within the time range you have specified on a
schedule command. If you specify neither the FROM nor TO time range, ESP
Workload Manager provides the following default:
'NOW' TO '6AM TOMORROW'
You can use the EXTERNALS operand to add an extra entry on the SADGEN data
set for each external job found within the specified scheduling criteria.
Example
The example below is a batch job, SADGEN, that generates a scheduled activity data
set called CYBER.SAD. The name of the started task Procedure for ESP Workload
Manager is ESP.
//SADGEN JOB...
//S1 EXEC ESP,PARM='SAR'
//SYSPRINT DD *
//SYSIN DD *
SADGEN DATASET('CYBER.SAD') -
FROM('8AM TODAY')TO('8AM TOMORROW')
Extracting data
After ESP Workload Manager generates the data, you can extract data to produce a
standard-format scheduled-activity report. You can create the report either in batch or
online using the LSAR command, or using option S on the Main Menu.
ESP-5.4-UG-05 299
Section–Extracting data
LSAR command
The LSAR command generates a standard scheduled activity report that includes the
following data:
• Job name. A character following the job name identifies a specific job type:
• T = Task
• M = Manual
• R = Request
• L = Link
• E = External
• blank = other job type
• Scheduled submit date and time. These reflect the Event schedule time unless you
use the modeling feature to provide estimated submit times.
• Number of samples used for average.
• Average values for previous job executions:
• Elapsed execution time
• CPU time
• Number of print lines
• Number of specific and non-specific (scratch) tape mounts
• Number of tape drives required
• DJC network and/or Application
• Fully qualified Event identifier
• Total values for previous job executions:
• Number of jobs
• Number of jobs without statistics
• Initiator time
• CPU time
• Number of print lines
• Number of specific tape mounts
• Number of non-specific (scratch) tape mounts
Note: If you do not use the FROM keyword, the starting time for this report defaults
to now.
300 ESP-5.4-UG-05
Chapter 9–Creating Reports
SADUPD command
You perform the schedule update in a similar way to the schedule activity generation.
Instead of the SADGEN command, use the SADUPD command. ESP Workload
Manager can run a job at frequent intervals during a day to update the scheduled
activity data base. The job executes in a fraction of the time of the original schedule
generation.
After ESP Workload Manager has run the scheduled update, use the STATUS
operand on the LSAR command, or specified on the Option S panel, to request a
status display instead of the regular schedule display. This provides the status of all
jobs in the schedule, as well as the time and percent of the schedule still remaining.
ESP Workload Manager displays actual start and end times, completion codes, and
rerun indicators.
ESP-5.4-UG-05 301
Section–Generating projected versus actual data
302 ESP-5.4-UG-05
Chapter 9–Creating Reports
Unlike the scheduled-activity report, which is based on time, the job mapping feature
generates data based on Event names. These Events can be scheduled or can require
data set or manual triggers. There is no need for these Events to have executed because
history data is not required for the jobs. If history data is available, this historical
information is incorporated into the reports.
ESP-5.4-UG-05 303
Section–Using job mapping
Example 1
In the following example, ESP Workload Manager generates data for all Events and
stores the output in the ESP.MAPGEN data set. The name of the started task for ESP
Workload Manager is ESP.
//MAPGEN JOB ...
//S1 EXEC ESP,PARM='SAR'
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
MAPGEN DSN('ESP.MAPGEN') EVENT(-)
304 ESP-5.4-UG-05
Chapter 9–Creating Reports
Example 2
In the following example, the MAPGEN command causes ESP Workload Manager to
generate data for all Events with descriptive names that start with PAY and store the
output in the ESP.MAPGEN data set.
//MAPGEN JOB ...
//S1 EXEC ESP,PARM='SAR'
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
MAPGEN DSN('ESP.MAPGEN') EVENT(PAY-)
JOBMAP command
Use the JOBMAP command to produce a job-activity report. This report contains
detailed job information. For each job, regardless of its frequency, the job-activity
report lists the following information:
• Job name (An M or a T can follow the job name, indicating that the job is a
manual job or a task)
• Application name
• Job type (for example, job, request, manual, external)
• Scheduled frequency
• Job qualifier
• Event name
• Calendar names
• JCL data set and member name
• Indication if the JCL data set is a JCLLIB or TEMPLIB
• Scope for external and manual jobs
• Job class
• Programmer name
• Tape drive and mounts (both cartridge and reel)
• Elapsed execution time
• CPU time
• Hold count
• List of predecessor jobs
• List of successor jobs
• List of resources
• ESP Procedure data set and member names
• Tag
ESP-5.4-UG-05 305
Section–Using job mapping
Because this command uses the job-mapping data set as input, you can report only on
jobs contained in that data set. You can use the JOBMAP command in batch, by
executing PGM=ESP with the correct SUBSYS parameter, or in Page mode.
306 ESP-5.4-UG-05
Chapter 9–Creating Reports
Generating an index
You can use the JOBINDEX, APPLINDEX, and RESINDEX operands to produce
an index by job name, Application name, or resource name, respectively.
The following example creates a job activity report with an index by job name and an
index by Application name.
JOBMAP DSN('ESP.MAPGEN') JOBINDEX APPLINDEX
ESP-5.4-UG-05 307
Section–Using job mapping
The following is a sample index of jobs that will appear at the end of your job-activity
report:
JOB INDEX
Suppressing fields
308 ESP-5.4-UG-05
Chapter 9–Creating Reports
The following example suppresses the display of CPU time, elapsed execution time,
tape drives, and mounts.
JOBMAP DSN('ESP.MAPGEN') NODISPLAY(CPU,ELAPSED,TAPES)
ESP-5.4-UG-05 309
Section–Producing a job-descendent report
Example
In the following example, a job-descendent report is produced for job START.APPL
in the PAYROLL Application.
JOBTREE DSN('ESP.MAPGEN') JOB(START.APPL) APPL(PAYROLL)
PAYJOBB PAYJOBC
PAYJOBD
PAYJOBE
A job descendent tree for PAYJOBA looks like the following. PAYJOBA releases
PAYJOBB and PAYJOBC, PAYJOBB and PAYJOBC release PAYJOBD, and
PAYJOBD releases PAYJOBE.
JOB DESCENDENT TREE
PAYJOBA JOB PAYROLL
PAYJOBB JOB PAYROLL
PAYJOBD JOB PAYROLL
PAYJOBE JOB PAYROLL
PAYJOBC JOB PAYROLL
PAYJOBD JOB PAYROLL
PAYJOBE JOB PAYROLL
310 ESP-5.4-UG-05
Chapter 9–Creating Reports
ESP-5.4-UG-05 311
Section–ESP Workload Manager FLOWDOC
Graphical representation
The entire process is represented as follows:
User
UserInput
Input ESP
ESP SAD
SADFile
File
CYBES090
CYBES090 VSAM
VSAM
CYBES091 FlowDoc
CYBES091 FlowDoc
312 ESP-5.4-UG-05
Chapter 9–Creating Reports
ESP-5.4-UG-05 313
Section–ESP Workload Manager FLOWDOC
Note: The space allocated for the VSAM data base should be approximately 25%
greater than the space consumed by the SADGEN data set.
Report generation
ESP Workload Manager generates reports by Event or Application name along with a
date range. Wild cards are permitted in the selection criteria. The following JCL
would be used to generate a report:
//stepname EXEC PGM=CYBES091
//STEPLIB DD DISP=SHR,DSN=CYBER.ESP.SSCPLINK
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DISP=SHR,DSN=DAILY.FLOWDOC
//SYSIN DD *
FLOWDOC { PREFIX(event_prefix)EVENT(event_name)|APPL(appl_name)}
{ FROM('criteria') TO('criteria') | DATE('criteria') }
/*
If selection by Events is desired, then you must specify PREFIX and NAME.
If selection by Applications is desired, specify the APPL operand. Applications and
Events are mutually exclusive. The names specified can contain wildcards.
If a range of dates is desired, specify the FROM and TO. If only a single date is
desired, then specify DATE. Single dates and date ranges are mutually exclusive.
Multiple FLOWDOC statements can be present in the input stream.
Report organization
The data is presented organized by subApplication with Application or Event. The
jobs are shown in the order in which they will be executed.
If a job is referenced as a predecessor of a job in another Application as an
EXTERNAL job, the referencing job name and Application name for that job is
shown provided that the referencing job is part of an Application that is already on the
data base.
Repeated executions of an Application or Event are grouped together to eliminate
redundant reporting. These repeating Applications are shown by date. If there is any
variation in the sequence of jobs executed, each variation will be shown separately. For
example, if an Application has a series of jobs which run daily but some which only
run on Monday, a thirty day report would display for example, 26 executions of the
Application showing all of the non-Monday jobs and four executions of the
Application showing all jobs.
314 ESP-5.4-UG-05
Chapter 9–Creating Reports
Report headings
The following shows the headings as they appear in the report, and what they mean:
Heading Description
HOLD This field is set to Y if the ESP Workload Manager JOB definition
statement specified the HELD operand.
TAG This field is the first eight bytes of the job tag.
TYPE This field can be one of:
• TASK a task
• MAN a manual
• LINK a link
• EXT an external job
• JOB a normal job
SUB TIME This field is the expected submission time of the job. If it is blank, then
the ESP Workload Manager SADGEN process has determined no
specific time. This time reflects ESP Workload Manager statements,
which affect submission time such as DELAYSUB.
JOB NAME This is the job name as defined in the ESP Procedure.
HC This is the number of outstanding predecessors. If a job has no
predecessors, the hold count field has a value of zero.
RELEASES This lists all of the jobs (two per line) which are released by this job.
If a job does not have any successors, then (NONE) will be placed in
the release field.
RESOURCE This lists all of the resources (one per line) which are used by this job.
SCOPE These fields are only present for external jobs. They represent the first
and second scope times in the format hh:mm where hh is the hours and
mm is the minutes.
SUCCESSOR This lists all of the downstream jobs, one per line, showing the
Application name and the referencing job name. A downstream job is a
job that references this job as an external. It can release this job or it can
require this job as a predecessor.
ESP-5.4-UG-05 315
Section–ESP Workload Manager FLOWDOC
Example 1
The following report-generation JCL could be used to produce a report detailing
information about the PAYROLL Application starting today ending tomorrow:
//FLOWDOC JOB (ACCOUNT),'ALLOC ESP DATASETS',CLASS=A,MSGCLASS=A
//STEP01 EXEC PGM=CYBES091
//STEPLIB DD DSN=CYB2.ESP451.SSCPLINK,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=CYB2.ESP451.FLOWDOC,DISP=SHR
//SYSIN DD *
FLOWDOC APPL(PAYROLL) FROM('TODAY') TO('TOMORROW')
Example 2
The following report-generation JCL could be used to produce a report detailing
information about an Application which is invoked by an Event called
CYBER.PAYROLL on August 29th, 2000:
//FLOWDOC JOB (ACCOUNT),'ALLOC ESP DATASETS',CLASS=A,MSGCLASS=A
//STEP01 EXEC PGM=CYBES091
//STEPLIB DD DSN=CYB2.ESP451.SSCPLINK,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=CYB2.ESP451.FLOWDOC,DISP=SHR
//SYSIN DD *
FLOWDOC PREFIX(CYBER) NAME(PAYROLL) DATE('AUGUST 29, 2000')
Example 3
The following report-generation JCL could be used to produce a report detailing
information about the BILLING Application from 4 pm today until 4 pm two days
from today:
//FLOWDOC JOB (ACCOUNT),'ALLOC ESP DATASETS',CLASS=A,MSGCLASS=A
//STEP01 EXEC PGM=CYBES091
//STEPLIB DD DSN=CYB2.ESP451.SSCPLINK,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=CYB2.ESP451.FLOWDOC,DISP=SHR
//SYSIN DD *
FLOWDOC APPL(BILLING) FROM('4PM TODAY') TO('4PM TODAY PLUS 2 DAYS')
316 ESP-5.4-UG-05
Chapter 9–Creating Reports
Example 4
The following report-generation JCL could be used to produce a report detailing
information about the CLAIMS Application from Monday to Friday. Jobs in the
CLAIMS Application that have varying run frequencies will be displayed on their
respective day, for example, jobs coded as RUN MONDAY will be displayed on
Mondays run date.
//FLOWDOC JOB (ACCOUNT),'ALLOC ESP DATASETS',CLASS=A,MSGCLASS=A
//STEP01 EXEC PGM=CYBES091
//STEPLIB DD DSN=CYB2.ESP451.SSCPLINK,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=CYB2.ESP451.FLOWDOC,DISP=SHR
//SYSIN DD *
FLOWDOC APPL(CLAIMS) DATE('MONDAY')
FLOWDOC APPL(CLAIMS) DATE('TUESDAY')
FLOWDOC APPL(CLAIMS) DATE('WEDNESDAY')
FLOWDOC APPL(CLAIMS) DATE('THURSDAY')
FLOWDOC APPL(CLAIMS) DATE('FRIDAY')
ESP-5.4-UG-05 317
Section–Flowcharting
APPLICATION: PAYROLL
RUN DATES: FRI 15 SEP ***SUCCESSOR
2000 ***
HOLD TAG TYPE SUBTIME JOBNAME HC RELEASES RESOURCE SCOPE APPL JO
BN
AM
E
N LINK 22.00 START PAY1 CPUABS
N PAYROLL JOB 20.00 PAY1 1 PAY2, PAY3
PAY4, PAY5
N PAYROLL JOB 20.00 PAY2 1 PAY6 IMS
N PAYROLL JOB 20.00 PAY3 1 PAY6 IMS
N PAYROLL JOB 20.00 PAY4 1 PAY6
N PAYROLL JOB 20.00 PAY5 1 PAY6 ACCTPAY AC
CT
1
N PAYROLL JOB 20.00 PAY6 4 PAY7, PAY8
PAY9
N PAYROLL JOB 20.00 PAY7 1 PAY10
N PAYROLL JOB 20.00 PAY8 1 PAY10 ACCTPAY AC
CT
1
N PAYROLL JOB 20.00 PAY9 1 PAY10
N PAYROLL JOB 20.00 PAY10 3 END CPUABS
Flowcharting
Schedulers and operators sometimes find it helpful to have a representation of the
workload. Graphic flow charts make it easier to see job dependencies and to monitor
the progression of work.
Creating flowcharts
You can create flow charts of workloads using the following PC-based graphics
software:
• MS Project
• TIMELINE
ESP Workload Manager produces an input file for the PC software. This input file is
then used in creating the graphic flow chart of the workload. You have the option of
318 ESP-5.4-UG-05
Chapter 9–Creating Reports
viewing the ESP Workload Manager workloads on the PC, or sending the output to
the PC printer or plotter when you want a paper copy.
Generation of flow charts consists of some operations on the mainframe, a PC file
transfer, and some additional operations on a PC.
For a real-time, graphical view of the workload, see the ESP Workstation User’s Guide.
Exported fields
The exported fields include:
• Job Name
• SubApplication name
• Start date and end date
• Duration
• Late start time and late end time
• Percent complete
• Tag
ESP-5.4-UG-05 319
Section–Generating flowcharts using MS Project
Illustration of steps 1 to 5
These steps are illustrated below:
download
MS Project
mydsn.mpp
320 ESP-5.4-UG-05
Chapter 9–Creating Reports
ESP-5.4-UG-05 321
Section–Generating flow charts with ESP Workload Manager and Timeline
322 ESP-5.4-UG-05
Chapter 9–Creating Reports
Illustration of steps 1 to 8
These steps are illustrated below:
GENFLOW
FLOW
GO
SADGEN file mydsn
download
chart1d.csv
Timeline
mydsn.mlp
ESP-5.4-UG-05 323
Section–Generating flow charts with ESP Workload Manager and Timeline
324 ESP-5.4-UG-05
Using Resources
You can ensure that jobs in an ESP Application are submitted only when all of their
resource requirements are met. Because you do this without manual intervention,
there are no unnecessary delays before a job starts. With ESP Workload Manager
resource feature, you can automate resource management.
Note: Before you start to use ESP Workload Manager resource features, your Systems
Programmer needs to define a resource data set called the RESFILE, and specify the
CPUs and nodes in your environment. If you want ESP Workload Manager to make
default resource assignments, the RESDFLT initialization statement must also be
specified.
This chapter contains the following topics:
• What is a resource?
• Types of resources
• Scope of resources
• Using real devices
• Routing jobs to other systems
• Managing jobs
• Requesting resources
• Default resources
• Working with resources
• Defining resources
• Setting resources
• Modifying Resources
ESP-5.4-UG-05 325
Section–What is a resource?
What is a resource?
A resource is any type of real or abstract object that affects a job’s ability to run
successfully and can be quantified. Resources are classified by resource type and by
scope.
Examples of resources
Some examples of resources are:
• Tape drives
• Scratch tapes
• Online systems
• data bases
• Time periods
• The completion of a job
Types of resources
ESP Workload Manager resources are classified into three types:
• Renewable
• Depletable
• Threshold
326 ESP-5.4-UG-05
Chapter 10–Using Resources
Renewable resource
A renewable resource is a borrowed resource. When a job is submitted by ESP
Workload Manager, the job removes the resource from the resource pool. However,
the resource is not permanently used up. Instead, it is returned to the resource pool at
the end of execution, whether successful or not. In other words, the job temporarily
borrows the resource to allow it to execute successfully.
For example:
A renewable resource can be used to control concurrent access to a data base.
Depletable resource
A depletable resource is a consumed resource. When a job is submitted by ESP
Workload Manager, the job removes the resource from the resource pool, and does not
return it at the end of execution. The resource is used up and can only be replenished
through an explicit action, such as issuing an appropriate ESP Workload Manager
command. The job needs to consume the resource to execute successfully.
For example:
A depletable resource can be a scratch tape, which is removed from the pool when a
job writes a permanent data set onto it.
Threshold resource
A threshold resource is a sizing resource. A job does not actually remove the resource
from the pool of resources while it executes. You can think of a threshold resource as a
variable height doorway into the system. If the resource quantity is set to two, any
number of jobs requiring two or fewer units are submitted. However, any job
requiring three or more units is too high to pass through the door and so is not
submitted. ESP Workload Manager sizes the job against the current level of the
threshold resource.
For example:
A threshold resource can be used to represent elapsed time and limit the size of jobs
entering the system. You can prevent long-running jobs from being submitted just
before scheduled downtime.
ESP-5.4-UG-05 327
Section–Scope of resources
Scope of resources
You can classify the scope of the resources you define according to the following
resource levels:
Type of resource Explanation
Local resource Each processor maintains an individual counter for the resource.
Global resource The resource availability counter is shared among all processors
within a node.
Enterprise resource The resource availability counter is shared among all nodes. This
type has a true meaning only when one ESP Workload Manager
system submits the work for all nodes.
Device counts
ESP Workload Manager determines the available count by first looking at the system
control blocks for the resources. Then ESP Workload Manager counts how many of
the UCBs (unit control blocks) within that device group are currently online and not
allocated. If ESP Workload Manager schedules a job that requires a tape device, it
could be several seconds or minutes before the job actually allocates the UCB. ESP
Workload Manager ensures that it does not over-allocate a resource when scheduling
jobs that require it. ESP Workload Manager uses an effective available count that is
the lower of the following values: real value and the available count maintained by
ESP Workload Manager.
Example
If a job requires three units of a real resource, and ESP Workload Manager available
count is three, ESP Workload Manager waits for the resource if there are only two
devices actually online and unallocated.
328 ESP-5.4-UG-05
Chapter 10–Using Resources
Routing JCL
ESP Workload Manager can automatically insert the appropriate JCL into a job to
ensure the job is routed to the required node or processor. The JCL ESP Workload
Manager uses to route jobs is specified as part of the NODE and CPU definitions in
your ESP Workload Manager initialization parameters. These are normally a /* EXEC
nodename card and a /*JOBPARM SYSAFF=xxxx card.
Example
If ESP Workload Manager builds an Application on SYSA but the resource a job
needs is on SYSB, ESP Workload Manager routes the job to SYSB. If these systems are
within the same JES node, ESP Workload Manager submits the job and inserts a /
*JOBPARM SYSAFF=SYSB card to route the job to SYSB.
Gravity
ESP Workload Manager can cause a job to be routed to a remote node only if one of
the resources required by the job has the GRAVITY attribute in its definition. ESP
Workload Manager can cause a job to be routed to another CPU within the same
node regardless of the GRAVITY setting.
Managing jobs
When the Application Manager readies a job for submission, it checks to see if the job
has requested any resources. If so, the Application Manager passes the job to the
Resource Manager component. The Resource Manager submits the job when the
required resources become available. If all of a job’s resource requirements cannot be
met, ESP Workload Manager does not submit the job.
Multiple resources
If a job requires multiple resources, or multiple units of a single resource, and all of
these resources are not available when the job is readied for submission, ESP
Workload Manager does not hold on to any resources. As soon as another job ends
that is using a resource this job needs, or the resource status changes in any way—for
ESP-5.4-UG-05 329
Section–Requesting resources
Renewable resources
If a job is using a renewable resource, the resource is taken when the job is submitted
and is freed up as soon as the job ends, whether it is successful or not. A failed job, by
default, has the same resource requirements upon restart as at submission time.
Requesting resources
To identify the resources required by individual jobs or by an Application, you use the
RESOURCE statement within an Application definition. This can be done at an
Application level or at a job level. An individual job can request any number of
different resources. You can use resources for jobs and tasks, but not for links.
Statements
When you specify resource requirements, there are two statements you can use:
• The RESOURCE statement
• The PRIORITY statement
330 ESP-5.4-UG-05
Chapter 10–Using Resources
RESOURCE statement, outside the scope of a JOB statement, occurs. Jobs inserted
into an Application after it has been generated do not inherit any resource
requirements.
Example
In the following example, job A needs one unit of the CICS resource in addition to
one unit of the NITESHFT resource:
RESOURCE (1,NITESHFT)
JOB A
RESOURCE ADD(1,CICS)
ENDJOB
ESP-5.4-UG-05 331
Section–Requesting resources
To free a job from any resource dependency (except default resources) you specify:
RESOURCE DROP
Example
In the following example, job ABC requires one unit of the LOWPRIO resource and
two units of the IMS resource. If the scheduled day is Friday, the LOWPRIO
requirement is removed.
JOB ABC
RUN DAILY
RESOURCE (1,LOWPRIO,2,IMS)
IF TODAY('FRIDAY') THEN RESOURCE DROP(LOWPRIO)
ENDJOB
Example
In the following example, job ABC does not have the ELAPSED default resource
assigned to it and has a requirement for one unit of CICS.
JOB ABC
RESOURCE (0,ELAPSED,1,CICS)
ENDJOB
332 ESP-5.4-UG-05
Chapter 10–Using Resources
For instance, a job that is assigned a priority in a group called CYBER is compared
only to other jobs in the CYBER group and not to jobs in another group called
PROD.
Default resources
ESP Workload Manager can determine some of the significant resource requirements
that a job have by looking at the job’s run history. If required, ESP Workload Manager
can then make default resource assignments automatically.
ESP-5.4-UG-05 333
Section–Default resources
Default assignments
The resources for which ESP Workload Manager can make default assignments are:
• Number of tape drives needed
• Number of scratch tapes needed
• Percentage CPU absorption
• Total CPU time used
• Total elapsed time used
• Total print lines generated
Default resources
To set up default resources:
1. Use the RESDFLT initialization statement in the ESP Workload Manager
initialization parameters to identify the default resource you want to use.
2. Issue the RESDEF ADD command to define the default resource.
334 ESP-5.4-UG-05
Chapter 10–Using Resources
RESDEF command
You define, display, set, and delete resources using the RESDEF command. In a
multiple CPU environment, you must issue the RESDEF command from a master
ESP Workload Manager system. This is normally the same system on which your
Applications are built.
Note: Your ESP Workload Manager administrator needs to grant you the necessary
access for these functions.
The following sections describe how to define and work with resources. See the
Examples sections later in this chapter for more examples of using resources.
Defining resources
Once you define a resource, the definition is stored in an ESP Workload Manager file,
called the RESFILE. This information is saved across restarts of ESP Workload
Manager unless ESP Workload Manager is restarted with the RESFORM option.
Resource definitions are normally stored in the ESP Workload Manager initialization
parameter data set or another data set that ESP Workload Manager reads at startup
time.
ESP-5.4-UG-05 335
Section–Defining resources
6. Indicate the CPU to which the resource applies, if it is a local resource and you
have more than one CPU.
7. Specify the maximum and available quantities associated with the resource. For
depletable and threshold resources, there is only one quantity. You can specify
either maximum (MAX) or available (AVAIL). For renewable resources, there are
maximum and available quantities. Maximum is the total quantity of the resource
that exists; available is the current quantity.
Indicate whether or not the resource has gravity. This allows a job to be routed to
another node if the resource is not available on the node on which the job was
submitted.
336 ESP-5.4-UG-05
Chapter 10–Using Resources
RESREFR command
You can use the RESREFR command to refresh resource status. This can be required
when you change the environment. For example, if a job is waiting for tape drive
resources and you vary more tape drives online, ESP Workload Manager is not
immediately aware of this. The RESREFR command causes ESP Workload Manager
to look at the environment and refresh the status of real resources.
Setting resources
To change a resource:
• Use the SET operand on the RESDEF command to change the scope or the
quantity of a resource.
You cannot change the type of a resource without deleting and redefining it.
For depletable and threshold resources, there is only one quantity. You can specify
either maximum (MAX) or available (AVAIL). For renewable resources, there are
maximum and available quantities. If you set the maximum, the available count
changes. Setting the available count has no effect on the maximum count.
Example
This example sets the available quantity of the resource LOWPRIO to one.
RESDEF LOWPRIO SET AVAIL(1)
ESP-5.4-UG-05 337
Section–Modifying Resources
Modifying Resources
You can use the JOBRES command to add new resource requirements and change
existing resource requirements for a job. This is done after the Application has been
generated. Once the Application is generated, you can issue the JOBRES command at
any time, including if the job is already waiting for resources (RESWAIT state).
You can also use the MR command in CSF.
338 ESP-5.4-UG-05
Chapter 10–Using Resources
Deleting resources
To delete a resource:
• Use the DELETE operand on the RESDEF command.
ESP-5.4-UG-05 339
Section–Displaying resource information
To display the resources associated with that job and determine what jobs have
resources allocated:
• Use the LR command for a job using CSF.
If a job is awaiting resources, the status field in CSF states waiting for resources, and
the PNODE field in CSF states RESWAIT.
In the following example, the LOCKOUT resource is displayed to determine what
jobs are using the resource and what jobs are waiting for the resource.
Resource LOCKOUT List Own Wait
Resource LOCKOUT Global Renewable
1 needed by PAYJOBD, Appl PAYROLL.396
TORONTO * Max=1 Avail=0
1 used by BILLJOBA, Appl BILLING.293
You can drop resource dependencies using the DR command.
340 ESP-5.4-UG-05
Chapter 10–Using Resources
To display resource requirements for jobs not yet submitted in an active Application:
• Use the LISTAPPL (LAP) command.
Sample output looks like this:
LAP TURNOVER.14 ALL
APPL TURNOVER GEN 14
CREATED AT 13.43 ON TUESDAY MAY 15TH, 2001
BY EVENT CYBER.TURNOVER
A J1169, STARTED, STEP 1
B, HC=1
PREDECESSORS: A
SUCCESSORS: D
RESOURCES: 1 DB2TAB1
C, HC=1
PREDECESSORS: A
SUCCESSORS: D
RESOURCES: 1 DB2TAB1, 1 LOWPRIO
D, HC=1
PREDECESSORS: A
SUCCESSORS: D
RESOURCES: 1 DB2TAB1, 1 LOWPRIO
Syntax
The following is the syntax of the STEPEND statement:
STEPEND STEPNAME(stepname) PROCSTEP(procstep) –
RELRES(n1,resname1,n2,resname2,…)
Operand Description
stepname Indicates the name of the job step.
procstep Indicates the name of the proc step.
n,resname Indicates the quantity and name of the resource to be released.
ESP-5.4-UG-05 341
Section–Resource absorption
Resource absorption
In ESP Workload Manager Version 5 Release 1, jobs that required a large resource
count would encounter processing delays as jobs with low resource requirements
would get the resource, thus keeping the overall available resource count low.
In ESP Workload Manager Version 5 Release 3, Resource Absorption reserves the
resources that are available at the time the job is next in the queue and holds them
while waiting to accumulate the remainder of resources required for that job. Jobs
with smaller resource requirements cannot use the reserved resource.
The ABSORB statement will only ABSORB resources if the request is for less than or
equal to the maximum resource defined. An ABSORB statement is coded within the
scope of the job, above the RESOURCE statement, where Absorption is to occur.
ABSORB can also be used at the Application level.
342 ESP-5.4-UG-05
Chapter 10–Using Resources
A job with a higher priority and the same resource requirements will take the resources
and run before the lower priority job with the ABSORB statement.
Once the higher priority job completes, or has the resources it needs, the process of
gathering resources starts again.
Types of resources
Absorption is available for the following types of resources:
• Renewable
• Depletable
ESP-5.4-UG-05 343
Section–Resource absorption
344 ESP-5.4-UG-05
Chapter 10–Using Resources
Resource DB2TAB1
Job A Job B
Waiting for Resource
JOB B
RESOURCE (1,DB2TAB1)
ENDJOB
Result
At any time, either one unit of the resource is available, or no units of the resource are
available. If, for example, job A is executing, the available count of the resource is zero,
and ESP Workload Manager prevents job B from executing. ESP Workload Manager
returns the resource to the system upon completion (successful or not) of job A.
ESP-5.4-UG-05 345
Section–Example: Controlling access to an online system
If you need to control mutually exclusive groups of jobs, see “Example: Controlling
mutually exclusive groups of jobs” on page 350.
1,IMS A
IMS 3 2,IMS B
2,IMS C
Result
ESP Workload Manager processes the jobs as follows:
• Job A can run concurrently with either job B or job C.
• Jobs B and C cannot execute at the same time because they require a total count of
four units of the IMS resource.
346 ESP-5.4-UG-05
Chapter 10–Using Resources
EVENT ID(OPER.SET_LOWPRIO_OFF)
SCHEDULE 4PM WORKDAYS
VS 'F ESP,RESDEF LOWPRIO SET AVAIL(0)'
ENDDEF
ESP-5.4-UG-05 347
Section–Example: Using a resource for a self-completing task
Result
ESP Workload Manager turns the LOWPRIO resource on and off automatically. Any
job requiring one unit of the LOWPRIO resource can only execute between 9 am and
4 pm on workdays.
9 a.m. to 4 p.m.
Allow low priority
4 p.m. to 9 a.m.
Disallow low priority
In a multiple CPU environment, you can have different time periods to run low
priority jobs on different systems. You can define different local resources and set
them independently.
Self-completing task
This example uses a task called WAIT4.LOWPRIO that requires one unit of a
resource called LOWPRIO.
JOB WAIT4.LOWPRIO TASK PROCESS
RUN ANY
RELEASE NEXTJOB
RESOURCE (1,LOWPRIO)
ESP AJ WAIT4.LOWPRIO COMPLETE APPL(WAIT4.%ESPAPGEN)
ENDJOB
Result
When the LOWPRIO resource becomes available, ESP Workload Manager readies
the task and issues an ESP AJ command to complete itself. This command uses an
ESP Workload Manager symbolic variable (%ESPAPGEN) for the Application
generation number to ensure the task is marked complete in the correct generation.
348 ESP-5.4-UG-05
Chapter 10–Using Resources
Result
ESP Workload Manager processes the jobs as follows:
• Neither job A or job Z can run concurrently with any of the other jobs, because
each requires the maximum count for the resource.
• Jobs B and C can run together because they require a total count of two units of
the DBASE1 resource.
ESP-5.4-UG-05 349
Section–Example: Controlling mutually exclusive groups of jobs
CPU definitions
Prior to using the resource feature, CPU definitions are added to the ESP Workload
Manager initialization parameters that assign names to your master and proxy ESP
Workload Manager systems and identify routing JCL for routing jobs to each system.
These definitions must be in place for proper routing.
For example, the following are two CPU definitions that specify routing JCL:
CPU SYSA ADD NODE(TORONTO) ROUTEJCL(/*JOBPARM SYSAFF=SYSA')-
CURRENT
CPU SYSB ADD NODE(TORONTO) ROUTEJCL(/*JOBPARM SYSAFF=SYSB')
Result
When the SYSB resource is available, ESP Workload Manager submits the job and
adds a system affinity card for SYSB. For example, ESP Workload Manager adds the
following card:
/*JOBPARM SYSAFF=SYSB
350 ESP-5.4-UG-05
Chapter 10–Using Resources
Visual perspective
Visually, the dependencies look like this:
A
(job)
START.1 START.2
(task) (task)
B C
(job) (job)
D E
(job) (job)
RESET.1 RESET.2
(link) (link)
ESP-5.4-UG-05 351
Section–Example: Controlling mutually exclusive groups of jobs
Sample Application
JCLLIB 'SYS1.JCL'
APPL MUTUAL
JOB A
RUN DAILY
RELEASE (START.1,START.2)
ENDJOB
JOB START.1 TASK PROCESS
RUN DAILY
RELEASE B
RESOURCE (1,MUTUAL)
ESP AJ START.1 COMPLETE APPL(MUTUAL.%ESPAPGEN)
ENDJOB
JOB B
RUN DAILY
RELEASE D
ENDJOB
JOB D
RUN DAILY
RELEASE RESET.1
ENDJOB
JOB RESET.1 LINK PROCESS
RUN DAILY
ESP RESDEF MUTUAL SET MAX(1)
ENDJOB
JOB START.2 TASK PROCESS
RUN DAILY
RELEASE C
RESOURCE (1,MUTUAL)
ESP AJ START.2 COMPLETE APPL(MUTUAL.%ESPAPGEN)
ENDJOB
JOB C
RUN DAILY
RELEASE E
ENDJOB
JOB E
RUN DAILY
RELEASE RESET.2
ENDJOB
JOB RESET.2 LINK PROCESS
RUN DAILY
ESP RESDEF MUTUAL SET MAX(1)
ENDJOB
352 ESP-5.4-UG-05
Chapter 10–Using Resources
Result
ESP Workload Manager produces the following results:
• When job A ends successfully, ESP Workload Manager completes one of the tasks
and starts processing one group of jobs.
• The predecessor task for the other group of jobs requires the MUTUAL resource,
which is not available.
• When the first group of jobs is done, a link sets the available quantity of the
MUTUAL resource to one. This allows the other group of jobs to process.
ESP-5.4-UG-05 353
Section–Example: Planning for a system shutdown - Part 2
/*
/* PASS NUMBER OF MINUTES TO SHUTDOWN USING USER1
/* PARAMETER WHEN TRIGGERING EVENT
/*
/*SEND MESSAGE, DECREMENT TIME AND RE-TRIGGER EVENT IN
/*1 MINUTE IF TIME >=0
/*
INTEGER TIME
TIME=USER1
SEND 'SYSTEM COMING DOWN IN %TIME MINUTES' CN(01)
RESDEF RUN_TIME SET AVAIL(%TIME) CPU(SYSA)
TIME=TIME-1
IF TIME>=0 THEN ESP TRIGGER OPER.SHUTDOWN +
USER1('%TIME') AT('REALNOW PLUS 1 MINUTE')
354 ESP-5.4-UG-05
Chapter 10–Using Resources
Resource check
When a job’s predecessor and time requirements have been met, ESP Workload
Manager checks to see if the required resources are available. For example, ESP
Workload Manager checks to see if enough of the RUN_TIME resource is available
for job XYZ on each of the CPUs. If no ORDER has been specified on the CPU
definitions in the ESP Workload Manager initialization parameters for the master,
ESP Workload Manager checks each CPU in the order in which each is defined.
Suppose ESP Workload Manager does not find enough of the resource on SYSA but
does find enough of the resource available on SYSB; ESP Workload Manager submits
the job and adds a system affinity card to route the job to SYSB. If no JCL has been
specified for the ROUTEJCL operand in the CPU initialization parameter, ESP
Workload Manager submits the job and JES determines where the job runs.
ESP-5.4-UG-05 355
Section–Example: Schedule dependency
Result
When enough of the RUN_TIME resource is available and the system resource (for
example, SYSA or SYSB) is available, ESP Workload Manager submits the job and
adds a system affinity card for the appropriate system.
356 ESP-5.4-UG-05
Chapter 10–Using Resources
PAYJOB1 PAYJOB2
(job) (job)
END.PAYJOB1 END.PAYJOB2
(link) (link)
Result
ESP Workload Manager produces the following results:
• When PAYJOB1 ends successfully, ESP Workload Manager processes a link called
END.PAYJOB1. The link sets the available count of the PAYJOB1 resource to
one.
• ESP Workload Manager does not submit PAYJOB2 until the PAYJOB1 resource
is available.
• When PAYJOB2 completes successfully, ESP Workload Manager processes a link
called END.PAYJOB2. The link sets the available count of the PAYJOB1 resource
to zero.
ESP-5.4-UG-05 357
Section–Example: Schedule dependency
358 ESP-5.4-UG-05
Optimizing ESP Applications to Use
Distributed Manager
When your ESP Workload Manager network contains one or more Distributed
Managers, you can create ESP Applications that run workload on one or more ESP
Agents controlled by a Distributed Manager. You should consider certain guidelines
when defining Applications that run workload managed by a Distributed Manager.
You can tailor the structure of the ESP Applications that require management by a
Distributed Manager to make the most efficient use of the Distributed Manager's
ability to manage previously scheduled workload when the mainframe is unavailable.
This chapter describes the guidelines to follow when defining distributed Applications
and those ESP Workload Manager features that are not currently supported by the
Distributed Manager.
If this is a new installation of ESP Workload Manager that does or will include one or
more Distributed Managers, read this chapter before you begin coding ESP
Applications.
ESP-5.4-UG-05 359
Section–Planning Applications to optimize Distributed Manager
360 ESP-5.4-UG-05
Chapter 11–Optimizing ESP Applications to Use Distributed Manager
5. Review the list of ESP Workload Manager functions not supported by the current
release of DM. Eliminate the use of the following functions in any ESP
Application that runs workload managed by a Distributed Manager:
• Resolution of runtime symbolic variables.
• Resolution of runtime CLANG or REXX statements.
• Workload objects containing EXTERNAL or MANUAL operands.
• ESP Workload Manager alerts.
For more detailed information, see “Unsupported functions” on page 364.
6. Create a set of rules for defining distributed Applications at your site.
ESP-5.4-UG-05 361
Section–Planning Applications to optimize Distributed Manager
continues to run because it does not rely on intervention from the mainframe. Ideally,
remove all dependencies on the mainframe entirely, or limit them to the beginning or
end of the Application.
JOB A
JOB B
UNIX_JOB F NT_JOB S
NT_JOB T
UNIX_JOB G
NT_JOB V
Change
UNIX_JOB H
362 ESP-5.4-UG-05
Chapter 11–Optimizing ESP Applications to Use Distributed Manager
the next workload object will not be released until the mainframe becomes available
again. This Application structure defeats the purpose of the Distributed Manager.
JOB A
UNIX_JOB F NT_JOB S
Change Change
JOB B
Change
NT_JOB S
Change
UNIX_JOB G NT_JOB S
Change
JOB C
ESP-5.4-UG-05 363
Section–Establishing ownership of a workload object
Unsupported functions
Some ESP Workload Manager functions are not yet supported by ESP Distributed
Managers. While your workload objects will not cause errors in the Distributed
Manager if they contain statements the Distributed Manager does not recognize, your
workload can not perform as expected. The following ESP Workload Manager
functions are not supported by Distributed Managers:
• Resolution of runtime symbolic variables
• Resolution of runtime CLANG or REXX statements
• Workload objects containing EXTERNAL or MANUAL operands
• ESP Workload Manager alerts
Support of these functions varies depending on the owning Manager of the
Application or workload object. See the following table to determine when a function
is unavailable:
364 ESP-5.4-UG-05
Chapter 11–Optimizing ESP Applications to Use Distributed Manager
Owner of an Application
The owning Manager of an Application is defined on the APPL statement or in the
workload definition on ESP Workstation. If no owner is specified, the owner defaults
to the central ESP Workload Manager. The owner specified at the Application level
also applies to all links and tasks within the Application, unless the owner is specified
in the link or task definition.
The owning Manager determines the status of the Application and is the only
Manager that can complete the Application. Therefore, if you are running a
distributed Application that must be able to complete when the mainframe is
unavailable, a Distributed Manager must be the owner.
ESP-5.4-UG-05 365
Section–Defining ownership of an Application
366 ESP-5.4-UG-05
Chapter 11–Optimizing ESP Applications to Use Distributed Manager
ESP-5.4-UG-05 367
Section–Changing ownership of an Application dynamically
368 ESP-5.4-UG-05
Using XCF with ESP Workload Manager
ESP Workload Manager Version 5 Release 4 can use the Cross-System Coupling
Facility (XCF) component of z/OS.
This chapter contains the following topics:
• Commands
• XCF Services
• State awareness
• Trace
ESP-5.4-UG-05 369
Section–Commands
Commands
All the ESP Workload Manager XCF commands can be issued via:
• ESP Workload Manager page mode, option G from the ESP Workload Manager
main menu
• ESP Workload Manager line mode
• ESP Workstation
• MVS MODIFY command
The following display is the response from the XCF HELP command:
XCF Command Options
DELETE|DEL MEMBER|MEM|M member
DISPLAY|D ACTIVITY|ACTIVE|ACT|A
DISPLAY|D GROUPS|GROUP|GR|G
DISPLAY|D SERVICES|SERVICE|SERV|S
DISPLAY|D SYSTEMS|SYSTEM|SYS
DISPLAY|D TRACE|TR
FORCE MEMBER|MEM|M member
HELP|H|?
PURGE|PG CONNECTION|CON connection
PURGE|PG SERVICE|SERV|S service
RESTART|RES|RS|SPIN|SP TRACE|TR
SET|T INTERVAL|INT interval
SET|T MEMBER|MEM|M member MASTER|M
SET|T SERVICE|SERV|S service SUSPEND|S(seconds)
SET|T TERMOPT|TO LEAVE|L|QUIESCE|Q
SET|T TRACE|TR SYSOUT|S(class)
START|S SERVICE|SERV|S service
START|S TRACE|TR
STOP|P GROUP|GR|G
STOP|P MEMBER|MEM|M(member)
STOP|P SERVICE|SERV|S service
STOP|P TRACE|TR
VERIFY|VER MEMBER|MEM|M member
XCF Services
XCF Services are functions of ESP Workload Manager that use sysplex architecture.
ESP Workload Manager currently registers these two XCF Services:
• Data-set triggering (dstrig)
• Job tracking (tracking)
370 ESP-5.4-UG-05
Chapter 12–Using XCF with ESP Workload Manager
QUEUE file
The QUEUE file is still required in ESP Workload Manager Version 5 Release 3.
The QUEUE file has a record of abended job information (available via the DAB
command) and information on jobs in the Input, Execute, and Output pnodes.
ESP-5.4-UG-05 371
Section–XCF Services
372 ESP-5.4-UG-05
Chapter 12–Using XCF with ESP Workload Manager
State awareness
In an XCF group, state awareness exists between all the ESP Workload Manager
subsystems in the group. Each ESP Workload Manager is a unique member of a
common group, but they all know each other’s operating status.
Each ESP Workload Manager subsystem knows which other ESPs are active, quiesced,
or failed in the XCF group. Each ESP Workload Manager member also knows the
XCF Services that are available on the ESP Workload Manager master.
ESP-5.4-UG-05 373
Section–Trace
To display the members in the XCF group and their respective states:
• Use the XCF DISPLAY GROUP command.
XCF DISPLAY GROUP
Group=QS10 Member=QS10M3 Interval=60 TermOpt=Quiesce
Group Member System ASID Jobname SSID ESP Status
QS10 QS10M1 SYSC 0056 QS10 QS10 Shadow Active
QS10 QS10M3 SYSA 009B QS10SHAD QS10 Master Active
QS10 QS10M5 SYSC 0041 QS10SMC QS10 Shadow Active
QS10 QS10S SYSA 009F QS10S QS1S Proxy Active
QS10 QS10S2 SYSC 0046 QS10S2 QS12 Proxy Active
To stop all the ESP Workload Manager XCF members in the XCF group simultaneously:
• Use the XCF STOP GROUP command.
XCF STOP GROUP
Trace
The XCF Trace facility is a debug tool. XCF Trace captures data and spools the output
to a preset sysout class. Only use the tool when instructed by Cybermation technical
support.
SPIN TRACE
The XCF SPIN TRACE command spools the current XCF trace file to output and
starts a new XCF trace file. It can be used when the trace file is started upon
initialization of the ESP Workload Manager subsystem and kept running for the
duration of the subsystem session.
374 ESP-5.4-UG-05
Chapter 12–Using XCF with ESP Workload Manager
Usage notes
The XCF SET TRACE SYSOUT(x) and XCF START TRACE commands can be
specified in the initialization parameter data set, but XCF STOP TRACE and XCF
SPIN TRACE cannot. It is recommended to put XCF SET TRACE SYSOUT(x) in
the initialization parameter data set because then only XCF START TRACE is
required to start it.
ESP-5.4-UG-05 375
Section–Trace
376 ESP-5.4-UG-05
ESP Workload Manager High Performance
Option
This chapter provides you with information on the ESP Workload Manager High
Performance Option.
This chapter contains the following topics:
• Expedite
• Resource Balancing
• Workload Balancing
• XCF Status Monitoring
• XCF Routing Service
• XCF Scoreboard Service
ESP-5.4-UG-05 377
Section–Expedite
Expedite
The Expedite feature in the ESP Workload Manager High Performance Option
(HPO) provides a method of accelerating a job. With Expedite, you can define actions
specifying how a job should be accelerated based on certain criteria.
If the command prefix of the first JES node is different from the command prefix on
other JES nodes, you cannot use the EXPEDITE feature on them to:
• Change the class of a job
• Change the priority of a job
• Start a job immediately
Overview
Expedite Actions are defined in a policy. An Expedite Policy is associated with an ESP
Application through the expedite statement. An Expedite Policy specifies how a job
priority should be increased. The criteria are OVERDUE (the job start or end time is
overdue) and CRITICAL_PATH (the job is on the critical path). OVERDUE and
CRITICAL_PATH are EXPEDITE command operands.
Expedite Policies are defined in the initialization parameter data set or with the
EXPEDITE command. The EXPEDITE command and expedite statement are
documented on subsequent pages in this chapter and also in the ESP Workload
Manager Reference Guide.
For information on the EXPEDITE initialization parameter, see the ESP Workload
Manager Installation and Configuration Guide.
The Expedite feature is documented in the following order in this chapter:
• Expedite actions
• Examples of Expedite policy definitions
• Expedite statement
Expedite actions
The methods of accelerating a job are known as Expedite actions.
The following Expedite actions are available for submitted jobs that are not yet
executing. The objective of a job expedite is to initiate the job as soon as possible or to
make it run as quickly as possible when it does start.
Option Action
1 Change the job JES execution class, specified by the EXPEDITE
CLASS(class) operand.
2 Change (increase) the job priority on the JES execution queue, specified by
the EXPEDITE PRIORITY(priority) operand.
3 Start the job immediately, specified by the EXPEDITE START operand.
378 ESP-5.4-UG-05
Chapter 13–ESP Workload Manager High Performance Option
The following Expedite actions are available for executing jobs. The objective of a job
expedite is to increase the job dispatching priority.
Option Action
1 Change the job service class, specified by the EXPEDITE
SRVCLASS(srvclass) operand. This requires the system be in IBM WLM
goal mode.
2 Change the job performance group, specified by the EXPEDITE
PERFORM(pgn) operand. This requires the system be in IBM WLM
compatibility mode.
The following Expedite action is available for a job that is not yet submitted.
Option Action
1 Change the ESP Workload Manager priority of a job waiting for ESP
Workload Manager resources dynamically. This is specified by the
ESP_PRIORITY operand.
Expedite statement
The expedite statement associates an ESP Workload Manager Expedite policy with an
ESP Application. When EXPEDITE is specified within the scope of a job in the
Application, it designates the Expedite policy for that job only. When EXPEDITE is
specified outside the scope of any job in the Application, it designates the default
Expedite policy for that Application.
ESP-5.4-UG-05 379
Section–Expedite
Operand Description
prefix Indicates the ESP Workload Manager resource name prefix
specified in the PREFIX operand of the SAFCLASS statement
in the initialization parameters. This is usually PREFIX(ESP).
name Indicates the Expedite policy name.
Example
If an Application is invoked under user ID DEPT001 and contains the following
statement:
EXPEDITE FAST_BAT
A host security check is made to ensure that user DEPT001 has read access to host
security resource ESP.EXPEDITE.FAST_BAT before the Application can go ahead.
Related information
For more information, see the host security resource name EXPEDITE in the ESP
Workload Manager Security Guide.
380 ESP-5.4-UG-05
Chapter 13–ESP Workload Manager High Performance Option
Example Application:
APPL DAILYRUN
JCLLIB 'DEPT01.JCLLIB'
EXPEDITE FAST
JOB JOB001
DUEOUT EXEC REAL PLUS 10 MINUTES
RELEASE JOB002
RUN DAILY
ENDJOB
JOB JOB002
EXPEDITE OFF
RELEASE JOB003
RUN DAILY
ENDJOB
JOB JOB003
EXPEDITE SUPER
RUN DAILY
ENDJOB
JOB JOB004
EXPEDITE OFF
RUN DAILY
ENDJOB
How it works:
• Job JOB001 is associated with Expedite policy FAST and is expedited if it has not
completed successfully 10 minutes after the trigger time of the corresponding
Event.
• Job JOB002 is not associated with any Expedite policy and therefore cannot be
expedited.
• Job JOB003 is associated with Expedite policy SUPER but can only be expedited
manually (for example, by the XP CSF line command), as it has no due-out
specification and Expedite policy SUPER does not specify CRITICAL_PATH as
a criterion.
• Job JOB004 is not associated with any Expedite policy and therefore cannot be
expedited.
Note: The above example is intended primarily to illustrate the capabilities of the
expedite statement. Typically, most Applications will have a single, global-scope
EXPEDITE statement to govern all jobs in the Application.
ESP-5.4-UG-05 381
Section–Resource Balancing
Resource Balancing
Resource balancing is an enhancement that enables ESP Workload Manager to
monitor all the ESP Workload Manager resources in the ESP resource topology for
availability and utilization.
When the ESP Workload Manager High Performance Option is not installed, if the
first CPU in the ESP resource topology has a resource definition count of AVAIL=x,
and x matches workload in the queue, ESP Workload Manager still sends workload to
the first processor, regardless of whether or not the CPU was operating at ESP
Workload Manager resource capacity.
When the ESP Workload Manager High Performance Option is installed, ESP
Workload Manager checks all the CPUs and determines which machine has more
available resources. ESP Workload Manager then selects the least loaded CPU and
distributes the workload accordingly. ESP Workload Manager balances the workload
across the ESP resource topology.
Usage note
There is no coding required to enable resource balancing. With the ESP Workload
Manager High Performance Option installed, it is an automatic behavioral change
Workload Balancing
ESP Workload Manager uses workload balancing to select the where to run workload.
For z/OS systems, ESP Workload manager uses WLM workload balancing, which is
based on information from IBM WLM. For workload associated with ESP Agents,
ESP Workload manager uses Agent workload balancing, which is based on polling the
Agent platforms.
382 ESP-5.4-UG-05
Chapter 13–ESP Workload Manager High Performance Option
ESP-5.4-UG-05 383
Section–Workload Balancing
384 ESP-5.4-UG-05
Chapter 13–ESP Workload Manager High Performance Option
ESP-5.4-UG-05 385
Section–Workload Balancing
386 ESP-5.4-UG-05
Chapter 13–ESP Workload Manager High Performance Option
ESP-5.4-UG-05 387
Section–XCF Routing Service
Overview
The ROUTING Service is an XCF connection between an ESP Workload Manager
proxy and the ESP Workload Manager master that enables ESP Workload Manager
clients (TSO/ISPF users and Workstation servers) connected to the ESP Workload
Manager proxy the ability to route subsystem requests, usually ESP Workload
Manager commands, to the ESP Workload Manager master. The ESP Workload
Manager master processes the subsystem requests and routes command responses back
388 ESP-5.4-UG-05
Chapter 13–ESP Workload Manager High Performance Option
to the ESP Workload Manager client through the ESP Workload Manager proxy. In
this scenario, the ROUTING MASTER command must be specified.
Description
Benefit
It does not matter which system in the sysplex the ESP Workload Manager master is
running on. The ESP Workload Manager proxy always knows, through its XCF group
member State Awareness capabilities, where the ESP Workload Manager master is and
how to access it.
ESP-5.4-UG-05 389
Section–XCF Scoreboard Service
How it works
When an ESP Workload Manager client (TSO/ISPF user or Workstation Server) is
connected to the ESP Workload Manager master, the ROUTING command is not
useful, as the LOCAL and MASTER options mean the same thing.
However, when an ESP Workload Manager client (TSO/ISPF user or Workstation
Server) is connected to an ESP Workload Manager proxy, entering ROUTING
LOCAL instructs the ESP Workload Manager proxy to process subsystem requests
itself. Subsystem requests are usually ESP Workload Manager commands. If you enter
ROUTING MASTER, this instructs the ESP Workload Manager proxy to route
subsystem requests to the ESP Workload Manager master.
When an ESP Workload Manager client is connected to the local ESP Workload
Manager proxy, subsystem requests can only be forwarded to the ESP Workload
Manager master if an active XCF ROUTING connection exists between the local ESP
Workload Manager proxy and the ESP Workload Manager master.
Examples
The following example instructs the connected ESP Workload Manager subsystem to
route subsystem requests to the ESP Workload Manager master:
ROUTING MASTER
The following example instructs the connected ESP Workload Manager subsystem to
process subsystem requests itself:
ROUTING LOCAL
390 ESP-5.4-UG-05
Chapter 13–ESP Workload Manager High Performance Option
Workload Manager proxy’s XCF SCOREBD Service connects to the ESP Workload
Manager master, the master transmits the contents of the scoreboard to the ESP
Workload Manager proxy. Thereafter, the ESP Workload Manager master transmits
every scoreboard update it makes to all ESP Workload Manager proxies connected to
it via the XCF SCOREBD Service.
Benefit
The ESP Workload Manager proxies can maintain their own respective copies of the
scoreboard.
The XCF SCOREBD Service makes it possible for an ESP Workload Manager TSO/
ISPF client connected to an ESP Workload Manager proxy to view the scoreboard
through CSF. It also makes scoreboard information accessible to Workstations
connected to a Workstation Server that, in turn, is connected to an ESP Workload
Manager proxy.
ESP-5.4-UG-05 391
Section–XCF Scoreboard Service
392 ESP-5.4-UG-05
ESP Workload Manager High Availability
Option
This chapter provides you with information on the ESP Workload Manager High
Availability Option.
This chapter contains the following topics:
• Shadow Manager
• ARM Registration
• XCF Status Monitoring
• XCF Routing Service
• XCF Scoreboard Service
ESP-5.4-UG-05 393
Section–Shadow Manager
Shadow Manager
Shadow manager provides your environment with the ability to shift the workload to
another ESP Workload Manager master, so processing can continue.
Shadow manager can eliminate the single point of failure by providing a hot backup
and instant switch over should a system fail.
Shadow manager is an ESP Workload Manager subsystem that reads its initialization
parameters, joins an ESP Workload Manager XCF group, then monitors the ESP
Workload Manager master in that XCF group for its termination. When the ESP
Workload Manager master terminates, the shadow manager takes action based on its
shadow goal for that type of termination or takes action from a direct command to
take over as the ESP Workload Manager master.
An ESP Workload Manager master may or may not be shadow-enabled.
Data-set usage
Cybermation strongly recommends that a shadow manager read the same
initialization parameter data set as the ESP Workload Manager master.
Shadow manager must have the same checkpoint file as the ESP Workload Manager
master.
394 ESP-5.4-UG-05
Chapter 14–ESP Workload Manager High Availability Option
Shadow Goal
A shadow goal is a set of actions that a shadow manager is instructed to perform when
the ESP Workload Manager master terminates.
SHADGOAL command
A shadow goal is defined by the SHADGOAL command or defined in the
initialization parameters. The SHADGOAL command is documented in the ESP
ESP-5.4-UG-05 395
Section–Shadow Manager
QUIESCE
The ESP Workload Manager master terminates normally but leaves a trace of its
membership in the group behind. An XCF DISPLAY GROUP ESP Workload
Manager command will show the XCF member in a quiesced state.
LEAVE
The ESP Workload Manager master terminates normally but leaves no trace of its
membership in the group behind. The XCF member goes into an undefined state. An
XCF DISPLAY GROUP ESP Workload Manager command will not show the XCF
member, because it does not exist in any way.
FAIL
This happens when the ESP Workload Manager master terminates abnormally
(ABENDs). An XCF DISPLAY GROUP ESP Workload Manager command will
show the XCF member in a failed state.
SHADGOAL Command
You can specify SHADGOAL in the ESP Workload Manager initialization file of a
shadow manager or a shadow-enabled ESP Workload Manager master, or dynamically
in a shadow manager, via the z/OS MODIFY command. You can also use the
SHADGOAL command to delete a shadow goal or to list the shadow goals.
The SHADGOAL syntax varies in the initialization parameter and the z/OS
MODIFY command. For information on the SHADGOAL initialization parameter,
see the ESP Workload Manager Installation and Configuration Guide. For information
on the z/OS MODIFY SHADGOAL command, see the ESP Workload Manager
Reference Guide.
396 ESP-5.4-UG-05
Chapter 14–ESP Workload Manager High Availability Option
SHADGOAL examples
The following example specifies that 180 seconds (3 minutes) after the ESP Workload
Manager master terminates and enters an XCF quiesced state, the shadow manager
issues warning message #4397 and issues z/OS command S ESPM.
SHADGOAL MASTER(QUIESCE) AFTER(180) WARN +
COMMAND('S ESPM')
The following example specifies that 300 seconds (5 minutes) after the ESP Workload
Manager master abnormally terminates, the shadow manager issues warning message
#4397 and takes over as the ESP Workload Manager master.
SHADGOAL MASTER(FAIL) AFTER(300) WARN TAKEOVER
The following example specifies the shadow goal for the LEAVE option is deleted
immediately.
SHADGOAL DELETE MASTER(LEAVE)
Note: Once a shadow-enabled ESP Workload Manager becomes the active master in
the XCF group, all shadow goals for that shadow-enabled ESP Workload Manager are
deleted and the SHADGOAL command ceases to be available for that master.
Important: When you are connected to an ESP Workload Manager proxy, you
must have the XCF ROUTING service enabled and the ROUTING
LOCAL command must be issued to instruct the ESP Workload
Manager proxy to process subsystem requests itself. Then you can
issue the ESP Workload Manager XCF commands from the ESP
Workload Manager proxy you are logged on to.
For more information on XCF ROUTING, see “XCF Routing Service” on page 400.
ESP-5.4-UG-05 397
Section–ARM Registration
The following is an example of the ESP Workload Manager master (ESPM) being
disabled and moving control of the workload to shadow manager (ESPS):
XCF FORCE MEMBER ESPM
XCF DISPLAY GROUP
XCF SET MEMBER ESPS MASTER
ARM Registration
The ESP Workload Manager High Availability Option provides support for the IBM
Automatic Restart Management (ARM) function of OS/390.
The ARMELEM initialization parameter enables ESP Workload Manager to register
with ARM. If an ESP Workload Manager fails, it can now be automatically restarted
with ARM.
For more information on the ARMELEM initialization parameter, see the ESP
Workload Manager Installation and Configuration Guide.
How it works
ARM will restart a registered ESP Workload Manager subsystem that fails if an ARM
policy (either the IBM default or a user-defined policy) is active on the system where
the failure occurs and on the system where the restart is to occur.
If the ESP Workload Manager master fails or the system the ESP Workload Manager
master is running on fails, the registered ESP Workload Manager master can be
restarted on the same system or restarted on another system in the sysplex.
If an ESP Workload Manager proxy is registered with ARM and the ESP Workload
Manager proxy fails, the ESP Workload Manager proxy will be restarted on the same
system by default. Restarts should be limited to the system the ESP Workload
Manager proxy runs on.
398 ESP-5.4-UG-05
Chapter 14–ESP Workload Manager High Availability Option
ESP-5.4-UG-05 399
Section–XCF Routing Service
members in the XCF group that a status update missing condition exists for that
member.
Message ESP4331W is issued:
ESP4331W XCF status update missing
Overview
The ROUTING Service is an XCF connection between an ESP Workload Manager
proxy and the ESP Workload Manager master that enables ESP Workload Manager
clients (TSO/ISPF users and Workstation servers) connected to the ESP Workload
Manager proxy the ability to route subsystem requests, usually ESP Workload
Manager commands, to the ESP Workload Manager master. The ESP Workload
Manager master processes the subsystem requests, and routes command responses
back to the ESP Workload Manager client through the ESP Workload Manager proxy.
In this scenario, the ROUTING MASTER command must be specified.
400 ESP-5.4-UG-05
Chapter 14–ESP Workload Manager High Availability Option
Description
Benefit
It does not matter which system in the sysplex the ESP Workload Manager master is
running on. The ESP Workload Manager proxy always knows through its XCF group
member State Awareness capabilities, where the ESP Workload Manager master is and
how to access it.
ESP-5.4-UG-05 401
Section–XCF Scoreboard Service
How it works
When an ESP Workload Manager client (TSO/ISPF user or Workstation Server) is
connected to the ESP Workload Manager master, the ROUTING command is not
needed, as the LOCAL and MASTER options mean the same thing.
However, when an ESP Workload Manager client (TSO/ISPF user or Workstation
Server) is connected to an ESP Workload Manager proxy, entering ROUTING
LOCAL instructs the ESP Workload Manager proxy to process subsystem requests
itself. Subsystem requests are usually ESP Workload Manager commands. If you enter
ROUTING MASTER, this instructs the ESP Workload Manager proxy to route
subsystem requests to the ESP Workload Manager master.
When an ESP Workload Manager client is connected to the local ESP Workload
Manager proxy, subsystem requests can only be forwarded to the ESP Workload
Manager master if an active XCF ROUTING connection exists between the local ESP
Workload Manager proxy and the ESP Workload Manager master.
Examples
The following example instructs the connected ESP Workload Manager subsystem to
route subsystem requests to the ESP Workload Manager master:
ROUTING MASTER
The following example instructs the connected ESP Workload Manager subsystem to
process subsystem requests itself:
ROUTING LOCAL
402 ESP-5.4-UG-05
Chapter 14–ESP Workload Manager High Availability Option
Workload Manager proxy’s XCF SCOREBD Service connects to the ESP Workload
Manager master, the master transmits the contents of the scoreboard to the ESP
Workload Manager proxy. Thereafter, the ESP Workload Manager master transmits
every scoreboard update it makes to all ESP Workload Manager proxies connected to
it via the XCF SCOREBD Service.
Benefit
The ESP Workload Manager proxies can maintain their own respective copies of the
scoreboard.
The XCF SCOREBD Service makes it possible for an ESP Workload Manager TSO/
ISPF client connected to an ESP Workload Manager proxy to view the scoreboard
through CSF. It also makes scoreboard information accessible to Workstations
connected to a Workstation Server that, in turn, is connected to an ESP Workload
Manager proxy.
ESP-5.4-UG-05 403
Section–XCF Scoreboard Service
404 ESP-5.4-UG-05
Glossary
Absolute day By default, ESP Workload Manager considers each day to begin at 00:00.
ESP Workload Manager refers to a day that begins at 00:00 as the absolute
day.
Note: Cybermation recommends you use absolute days (as opposed to logical
days) because of their ease of use and because they can handle almost all
scheduling requirements.
Audit log An audit trail of ESP Workload Manager activity. It stores information on
administrative activities, operator commands, and Application and Event
processing. The audit log is in the job log.
ESP-5.4-UG-05 405
AUTOVAR Automatic variable representing lines of JCL, data, or comments that ESP
Workload Manager automatically includes at the beginning or end of a job’s JCL.
Calendar Used to specify what day is the first day of the week and what are the workdays.
A collection of definitions of holidays and special days that are unique to your
installation.
CCCHK Statement used to detect condition codes. Using it, you can immediately stop a
failing job, without running any subsequent steps regardless of the conditional
operands.
CCFAIL Abbreviation for condition code fail. CCFAIL statements define conditions that,
if met, cause the job to fail.
CLANG Control language. This is a high level programming language developed for ESP
Workload Manager.
Command A request made to ESP Workload Manager. The most frequent types of
commands are:
• General commands—are issued without general restrictions
• OPER commands—must be preceded by the word OPER
• Authorized commands—can be issued by users authorized in the security
system
• Authorized OPER commands—can be issued by users authorized in the
security system and must be preceded by the word OPER
Commands and statements are listed alphabetically in the ESP Workload
Manager Reference Guide.
Consolidated Status An ESP Workload Manager facility for displaying and manipulating the
Facility (CSF) workload in ISPF.
COPYJCL A user data set containing a copy of the JCL for jobs submitted by ESP Workload
Manager when you specify the COPYJCL statement.
Critical path The longest path to a workload object representing a critical point in the ESP
Application. It is based on historical execution time.
DJC Dependent Job Control. A Cybermation product used to control resources and
job networks at the initiator level.
DJC job network A group of related jobs where dependencies are controlled at the initiator level.
Enqueue Provides the capability for a job to request exclusive or shared use of a resource
without the need to define the resource explicitly in advance. ESP Workload
406 ESP-5.4-UG-05
Glossary
Manager will prevent jobs with mutually exclusive requests from executing
concurrently. ESP ENQUEUE behaves like the z/OS enqueues.
ESP Agent Software running on a distributed platform allowing ESP Workload Manager or
ESP Espresso to control workload on distributed platforms, such as UNIX, OS/
400, or Windows NT, or in distributed environments, such as SAP or
PeopleSoft.
ESP Application A specific instance of a group of related workload objects. It is generated from
one or more ESP Procedures when an Event is triggered and runs under the
control of ESP Workload Manager. ESP Applications include the scheduling
relationship between workload objects.
ESP Encore ESP Encore is a rerun/restart product that works with ESP Workload Manager to
restart batch jobs with a minimum amount of intervention. ESP Encore makes
the necessary adjustments to batch JCL to allow for an error-free restart. ESP
Encore can automatically clean up data sets or back out batch jobs. ESP Encore
can also predict errors.
ESP Procedure A source list of statements and commands entered by users. ESP Workload
Manager reads one or more ESP Procedures when an Event is triggered. ESP
Procedures containing the APPL statement are used by ESP Workload Manager
to generate ESP Applications. ESP Procedures are used to specify how the
workload is scheduled.
ESP Workload Manager A decision-making product running on z/OS. It manages the workload across the
enterprise.
ESP Workload Manager ESP Workload Manager High Availability Option takes full advantage of the
High Availability Option IBM clustering sysplex technology to increase enterprise IT performance by
(HAO) improving the availability of system resources throughout the organization. It
includes:
• Shadow manager: to provide your environment with the ability to shift the
workload to another ESP Workload Manager master, so processing can
continue.
• Support for the IBM Automatic Restart Management (ARM) function of
OS/390.
• XCF status monitoring: to monitor ESP Workload Manager XCF members’
activity for any possible problems.
• XCF routing service: to connect an ESP Workload Manager slave and the
ESP Workload Manager master, enabling ESP Workload Manager clients
connected to the ESP Workload Manager slave the ability to route subsystem
requests to the ESP Workload Manager master.
• XCF scoreboard service: to connect between an ESP Workload Manager
slave and the ESP Workload Manager master, enabling ESP Workload
Manager clients connected to the ESP Workload Manager slave to view the
ESP Workload Manager scoreboard.
ESP-5.4-UG-05 407
ESP Workload Manager ESP Workload Manager High Performance Option optimizes workload to
High Performance significantly increase the performance of the enterprise IT environment. It
Option (HPO) includes:
• Expedite: to define actions specifying how a job should be accelerated based
on criteria you specify.
• Resource balancing: to enable ESP Workload Manager to monitor all the
ESP Workload Manager resources in the ESP resource topology for
availability and utilization.
• Workload balancing: to select where to run workload.
• XCF status monitoring: to monitor ESP Workload Manager XCF members’
activity for any possible problems.
• XCF routing service: to connect an ESP Workload Manager slave and the
ESP Workload Manager master, enabling ESP Workload Manager clients
connected to the ESP Workload Manager slave the ability to route subsystem
requests to the ESP Workload Manager master.
• XCF scoreboard service: to connect between an ESP Workload Manager
slave and the ESP Workload Manager master, enabling ESP Workload
Manager clients connected to the ESP Workload Manager slave to view the
ESP Workload Manager scoreboard.
ESP Workstation A graphical user interface for defining, monitoring, and controlling the entire
enterprise workload. It is a significant productivity tool for those defining and
scheduling applications and for the data-center production personnel who
manage them.
Event An anticipated scheduling milestone. Events include the conditions under which
they are triggered and the commands to be performed when they are triggered.
Events are used to determine the conditions under which workload objects are
scheduled. An Event starts a function such as sending a message or invoking an
ESP Procedure.
Event initiator class Event initiator classes classify ESP Workload Manager workload into distinct
streams.
External job A job defined in an ESP Application that ESP Workload Manager submits from
another Application.
File trigger A workload object used to build a dependency between an ESP Application and
file activities for a file located in an environment controlled by an ESP Agent.
Initialization parameter A request made to ESP Workload Manager at initialization time. Initialization
parameters are listed alphabetically in the ESP Workload Manager Installation and
Configuration Guide.
408 ESP-5.4-UG-05
Glossary
JCLLIB A user data set containing the JCL for jobs submitted by ESP Workload
Manager.
Job ID An identification assigned automatically to every job by JES. The format of the
Job ID varies according the following rules:
Condition Format
JES2 not running in z2 mode JOBnnnnn
(with large job numbers disabled)
JES2 running in z2 mode (with Jnnnnnnn
large job numbers enabled)
JES3 For job numbers less than
100000:
JOBnnnnn
For job numbers greater than
99999:
Jnnnnnnn
Note: The same format is used for the JES job identifier used by JOBONQ.
Job monitor An ESP Workload Manager facility for monitoring a job’s progress at any stage of
processing and for taking action at significant points. ESP Workload Manager
can automatically trigger an Event when a job reaches a particular stage in
processing, such as the end of a step or job.
Logical day A day defined by your organization that begins at a time different than 00.00.
Note: Cybermation recommends you use absolute days because of their ease of
use and because they can handle almost all scheduling requirements.
Manual job A dependency on a job that ESP Workload Manager does not submit either as
part of an ESP Application or a DJC/JES3 job network.
Master An ESP Workload Manager subsystem that centrally controls the workload
across multiple z/OS images.
Notwith A mechanism to prevent mutually incompatible jobs from running at the same
time.
Page mode A method to communicate with ESP Workload Manager using ISPF, producing
scrollable output from ESP Workload Manager.
ESP-5.4-UG-05 409
Pnode Processing node. A processing stage through which a job must pass during its
time on the system. At installation time, the input, exec and output Pnodes are
defined. ESP tracks jobs through these Pnodes automatically. You can define
additional (manual) Pnodes, for example, bursting of output, distribution, and
so on.
Pnode Application states How ESP Workstation represents the Application Pnode. The Application Pnode
is determined with a hybrid method that uses the status information supplied by
ESP Workload Manager and the status of its workload objects.
Positional operand Variable that is passed to a script at the time it is invoked, and is assigned in the
order it is passed.
Post To mark a workload object complete at a specific Pnode. For example, you can
post a job complete.
Predecessor A workload object that must complete before another workload object can be
submitted.
PROCLIB A user data set containing ESP Workload Manager procedural code, for defining
work to be performed by ESP Workload Manager. This includes Application
workload object definitions.
Qualifier An addition to the job’s name. It can be used to uniquely identify jobs with the
same name. It is used only within the ESP Application. The qualifier has no
meaning to the operating system that the object runs on.
REXX A high level, procedural language. You can invoke the REXX language interpreter
from ESP Workload Manager to extend ESP Workload Manager capabilities.
410 ESP-5.4-UG-05
Glossary
SADGEN A user data set containing scheduled activity information on jobs. This data set is
used for reports.
Schedule criteria Conditions related to date, time, or frequency, used to identify eligibility of
workload for execution.
Shadow Manager Provides your environment with the ability to transfer the control to another ESP
Workload Manager master, so processing can continue seamlessly. Requires
HAO.
Proxy An ESP Workload Manager subsystem that captures SMF data for the workload
running on that z/OS image and transmits that data to the master.
Special day A custom defined day with special significance for scheduling at your
installation.
Special period A period of processing with special significance for scheduling at your
installation. A special period is the time between two identically named special
days. An example is a fiscal month.
Successor A workload object that awaits the completion of another workload object before
it can be submitted.
Sysmsg A facility used to intercept system messages as they are written to the system
message data set, and to take action subsequently.
Task A placeholder in your Application. A task may represent a process that requires
manual intervention.
TEMPLIB A user data set containing temporary or override JCL to be used when you
specify the TEMPLIB statement.
Tracking model A centralized definition of the attributes and processing phases of a group of jobs.
ESP-5.4-UG-05 411
User data sets See COPYJCL, DOCLIB, JCLLIB, PROCLIB, SADGEN, SYMLIB, and
TEMPLIB.
Workday Calendar definitions representing a site’s workdays. The default workdays are
Monday trough Friday excluding any holiday that has been defined for the site.
Workload object Workload objects represent the work to be scheduled. For example, these objects
can represent z/OS jobs, UNIX scripts, AS/400 programs, NT and OS/2
command files, data set and file trigger objects, commands, tasks, and links.
412 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 413
workload object, 18 browsing
APPLHOLD, Pnode field, 223 COPYJCL (CSF), 233
Application, See ESP Application last executed JCL (CSF), 233
APPLJOB built-in functions
command, 216 definition, 117
example example
bypassing a job, 217 calculating the length of a symbol, 123
completing an Application, 217 checking available cartridge drives, 127
inserting a link to add a job relationship, 217 checking if CICSPROD is active, 124
requesting a job, 217 combined functions, 128
options, 217 DAYS_BETWEEN to
APPLWAIT, Pnode field, 223 calculate weeks, 120
Arithmetic DAYS_BETWEEN to
expression, 115 calculate workdays, 119
operations, 115 DAYS_FROM, 119
ARM DAYS_TO, 119
and shadow manager, 399 defining an undefined variable, 123
couple data set, 398 extracting the last character
how it works, 398 of a variable length symbol, 124
registration, 398 JOBONQ, 126
ARMELEM, definition, 398 selecting a job when
audit log, definition, 405 another is not selected, 122
automated framework message, 405 selecting one job based on another, 122
Automatic Restart Management TAPES, 127
ARMELEM initialization parameter, 398 TODAY, 120
description, 398 TOMORROW, 121
AUTOVAR, definition, 406 using a substring of a
time variable, 124
YESTERDAY being a holiday, 121
B
YESTERDAY being first day of month, 121
batch summary by function, 117
convert an existing PDS job testing for a true condition, 118
documentation library, 271 using calendaring functions, 118
creating history report in, 276 using functions for job selection, 122
creating schedule activity report in, 299 using functions for symbolic variables, 123
defining a repetitive holiday, 66 ACTIVE, 124
example of explicit-data-set trigger DAYS_BETWEEN, 119
notification, 90 DAYS_FROM, 119
executing ESP Workload Manager DAYS_TO, 118
commands in, 38 DEFINED, 123
executing program CYBESDT1 in, 88 ESP Procedure, 117
invocation of ESP Workload Manager, 38 JOBONQ, 125
issuing commands in, 4 LENGTH, 123
MAPGEN command, 304 SELECTED, 122
specifying input parameters SUBSTR, 124
of CYBESDT1, 88 TAPES, 126
use of hyphen, 276, 288 TODAY, 120
using JOBMAP in, 306 TOMORROW, 120
using JOBTREE in, 309
414 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 415
using for job documentation, 258 SADUPD, 301
using in ESP Procedures, 110 SCHEDULE, 77
CLANG, definition, 406 SEND, 131
CLASS, Event command, 100 SHADGOAL, 396
CLIST SIGCYCLE, 131
calling ESP Workload Manager from, 40 SIGPOST, 131
invoking the ESP Workload Manager SIMULATE, 101
command from, 39 SUBMIT, 131
to access ESP Workload Manager, 40 SUSPEND, 81
Coding RESDEF with WLM operand, 383 SYMLIB, 96
command TEST, 57
definition, 406 TRIGGER, 102
entering, 2 USE, 35
example, 4, 212 VS, 95
issuing, 211 XCF SPIN TRACE, 374
issuing from console, 4 XCF START SERVICE, 371
ALTCAL, 62 comments
APPLJOB, 216 adding in an Event, 98
CALENDAR, 59, 61, 97 ESP Procedure, 3, 109
COPYJCL, 94 how to include, 3
DEFHOL, 65 in job documentation, 258
DEFSPEC, 67 procedure syntax, 109
DELCAL, 64 comparison operators, definition and list of, 116
ENQSELF, 171 COMPLETE
EVENT, 74 condition, 254
EXPECT, 99 Pnode field, 223
HOLD, 104 scheduling term, 50
INFOMSG, 37 STATUS, 293
INVOKE, 93, 131 complete, post, 410
JOBMAP, 305 completing
JOBTREE, 309 an Application, example of, 217
LDTE, 84 jobs, 242
LDXE, 84 Consolidated Status Facility, definition, 406
LIBSUB, 92, 131 Consolidated Status Facility, See CSF
LIST, 101 continuation character
LISTCAL, 62 ESP Procedure, 2, 109
LISTHOL, 63 use of, 2
LISTSCH, 98 copying JCL, 94
LISTSPEC, 63 COPYJCL
LOAD, 40 changing the copy, 95
LSAR, 300 command, 94
NOSCHED, 78 compressing, 95, 148
QUIESCE, 396 definition, 406
RESDEF, 335 editing, 234
RESREFR, 337 example of using, 95
RESUME, 81 specifying a COPYJCL library, 147
ROUTING, 389, 401 suppressing, 148
SADGEN, 298 using the JOBID operand, 95
416 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 417
keywords, 250 example, 11
relational operators, 253 job specific creation, 82
term syntax, 248 running a compress
inserting a job job after 100 closures of a data set, 84
IJ option, 236 user specific creation, 83
IW option, 236 waiting on multiple data sets, 83
logic applied to multiple filtering limiting data set activity to a job, 82
conditions, 228 limiting data set activity to a user, 83
Pnode fields, 223 multiple closures, 83
presentation column length, 230 multiple data sets, 83
presentation titles, 230 process flow, 82
presenting information, 229 usage, 81
removing job dependencies, 239 waiting for any closure of a data set, 82
rerunning multiple jobs, 238 waiting on multiple closures
resetting a time dependency, 240 of the same data set, 83
resetting the User Status field to null, 226 waiting on multiple data sets, 83
resubmitting a job, 237 XCF Service, 371
selecting color options, 231 data-set-trigger workload object
selecting views, 232 controlling, 197
setting and resetting the user status field, 244 displaying data-set-triggering information, 197
setting the user status field, 225 example
setting up views, 222 data-set-trigger has a dependency, 197
sort sequence, 230 job specific creation, 195
sorting information, 230 user specific creation, 197
status fields, 225 waiting for a data set creation, 194
storing views, 226 waiting for any closure of a data set, 195
updating a view, 231 waiting on more than one data set, 196
usage of extensions, 247 waiting on multiple closures of a data
using other commands, 247 set, 196
customizing CSF, 20 limiting data set activity to a job, 195
CYBESDT1 limiting data set activity to a user, 196
See also explicit-data-set triggering preparing to use, 193
definition, 88 setting up in an Application, 193
input parameters, 202 using, 193
return codes, 203 visual perspective, 194
syntax for submitting, 88 waiting for any closure of a data set, 194
waiting on multiple closures of the
same data set, 196
D
waiting on multiple data sets, 195
DAILY, scheduling term, 50 data-set-triggered Events
data object, definition, 406 displaying, 84
data set, prefix, 42 holding, 80
data-set names in ESP Procedure, 3, 109 specifying, 81
data-set triggering DAYS_BETWEEN, built-in function, 117, 119
abnormal closures, 82 DAYS_FROM, built-in function, 117, 119
any closure, 82 DAYS_TO, built-in function, 117, 118
concept, 10 DD, CSF command, 234
data-set creation, 82 DEFCAL
displaying Events, 84
418 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 419
usage, 167 identifying JCL libraries, 143
use by NOTWITH feature, 166 inheriting job relationships, 177
enqueue inter-Application dependency, 178
displaying, status, 169 keeping active, 186
manipulating enqueue list of a specified limiting the use of temporary JCL, 147
job in a generated Application, 170 notification on submit and abend, 207
enqueue, definition, 406 notifying when complete, 187
enqueues, modifying, 234 overdue notification, 207
entering selecting jobs for submission
commands, 2 with RUN, 175
statements, 2 selecting jobs for submission
ESP Agent, definition, 407 with SELECT, 175
ESP Application tagging high priority jobs, 205
anticipated end times, 156 tagging jobs with Application name, 205
changes tagging jobs with the scheduled
that take effect for the next Application day of week, 205
generation, 218 using a different TEMPLIB based on year
that take effect immediately, 218 and day, 147
changing definition, 218 using COPYJCL, 148
changing ownership of an, 367 excluding default resources for an, 335
changing ownership of an, dynamically, 368 generating a report for a specific, 307
coding a job-dependency relationship, 166 generation number, 140
completing, example of, 217 generation phase, 139
compressing COPYJCL, 148 getting notified of progress, 206
controlling, 216 home and distant, 178
controlling concurrent processing identifying, 142
of multiple generations, 142 identifying JCL libraries, 143
controlling the use of temporary JCL, 146 identifying jobs, 149
creating an ESP Application that optimizes identifying that a job is part of another
the Distributed Manager's capabilities, 366 Application, 178, 182
creating distributed, 365 inheriting job relationships, 176
critical path, 208 inserting a job in an active, 235
defining, 14, 140 inserting additional workload into
defining ownership of an, 366 an active, 234
definition, 13, 137, 407 introduction, 138
definition example, 141 invoking, 219
deselecting jobs, 176 invoking via an ESP Event, 219
displaying, 215 job types in an, 177
dueout times, 157 limiting the use of temporary JCL, 147
dynamically changing ownership of an, 368 manipulating the enqueue list
ESP Procedure statements, 140 in a generated, 170
example, 14 mutually exclusive run, 166
an Event invokes an ESP Procedure naming, 142
to create an Application, 219 optimizing to use distributed manager, 359
deselecting jobs for submission owner of an, 365
with DESELECT, 176 phase status, 139
deselecting jobs for submission phases, 139
with NORUN, 176 planning to optimize distributed manager, 360
420 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 421
master, 394 names and times of the
ESP Workstation current schedule cycle, 98
benefit of XCF scoreboard service, 391, 403 names or definitions, 101
changing the ownership of an Application, 368 the schedule, 98
defining the ownership of an Application, 366 when it will execute, 99
definition, 21, 408 duplicate, 75
entering commands, 2 edit in CSF, 235
graphical user interface, 21 example, 10
ROUTING command, 390, 402 altering system identifier, 105
working with Applications, 215 changing processing, 79
ESP XCF commands, 370 deleting, 106
ESP_APPL_GEN, 139 displaying the next execution time, 99
ESP_APPL_PROC, 139 displaying the schedule, 98
ESPAPQUAL, 266 expected time, 99
EVENT holding, 104
command, 74 holding a data-set-triggered Event, 80
Event naming, 76
accessing, 75 overdue, 105
adding comments in, 98 sending a message, 91
adding executions, 103 setting symbol libraries, 96
advance/delay/ignore/processing, 79 specifying a calendar, 97
altering, 105 starting tasks, 96
browse in CSF, 235 submitting a job, 92
bypassing submitting multiple jobs, 92
a scheduled, 103 suspending, 104
execution of, 104 using comments, 98
one execution, 103 expected time, 99
CALENDAR command, 59 explicit-data-set trigger, 87
canceling FTP data-set trigger, 11
for specific day, 78 FTP data-set-triggered, 84
next execution, 103 function
changing characteristics, 105 issuing operator command, 95
classes, 105 sending message, 91
commands and their function, 100 specifying, 91
comments, 98 submitting job, 91
controlling scheduling, 79 global-variable-table triggering, 12
data-set triggering, 10 held and suspended, 81
data-set-triggered, 82 holding and releasing, 104
defining holding from being processed at
example, 74 a particular time, 80
how, 74 information in MAPGEN, 304
system identifier, 76 initiator class, definition, 408
when it will execute, 76 invoking
where it will execute, 76 an Application, 219
definition, 408 an ESP Procedure, 93, 108
deleting, 106 issuing operator commands, 95
displaying job mapping, 303
data-set-triggered Events, 84 listing names or definitions, 101
422 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 423
notification batch, 90 specific Application, specific period
invoking CYBESDT1 from page mode or line ending in the future, 316
mode, 90 specific Event, specific date, 316
notification utility program, 88 graphical representation, 312
specifying, 87 Report generation, 314
explicit-data-set-trigger workload object Report headings, 315
example Report organization, 314
explicit data-set trigger notification sample JCL and report, 317
batch, 204 freeform filtering
explicit data-set trigger notification definition, 247
Connect:Direct (NDM) run task to display the critical path, 211
example, 204 FTP data-set triggering
invoking CYBESDT1 from page mode ANYCLOSE, 87, 200
or line mode, 203 definition, 11
notification utility program (CYBESDT1), 201 direction, 85, 198
using, 201 dsname, 87, 200
expression Event, 84
comparing, 116 example, 11
definition, 115 FTP RECEIVE and SEND, 85
logical, 115 host specific creation, 85
usage, 115 logon specific creation, 86
EXTERNAL job user-specific creation, 86
authorization string, 181 with operands, 87
controlling, 179 HOST, 85, 198
definition, 408 limiting data set activity to a host, 85
forced complete, 181 limiting data set activity to a user ID, 86
job qualifiers usage, 181 limiting data-set activity
marking complete, 179 to a logon ID, 86
posting options, 181 LOGON, 86, 199
specifying an Application, 180 operand
usage, 178 ANYCLOSE, 87
USERMOD 30, 181 dsname, 87
EXTERNAL, Pnode field, 223 RENAME, 87
EXTMON, definition, 408 RECEIVE, 85, 198
RENAME, 87, 200
SEND, 85, 198
F specifying, 84
FAIL, Pnode field, 223 specifying the direction
file trigger, definition, 408 of the transfer, 85
first day of week, 49 USER, 86, 199
FIRST, scheduling term, 51 workload object, 198
FLOWDOC FTP data-set-trigger workload object
components, 313 example
data base generation, 313 FTP RECEIVE and SEND, 198
data generation, 313 host specific creation, 199
definition, 312 logon specific creation, 200
example sending a message, 200
specific Application sorted by days, 317 user-specific creation, 199
specific Application, specific period, 316
424 ESP-5.4-UG-05
Index
limiting data set activity to a logon ID, 199 defining held jobs, 153
limiting data-set activity to a host, 198 Event command, 100
limiting data-set activity to a user ID, 199 field in reports, 315
specifying the direction of the transfer, 198 hold count, 138
using, 198 hold count field in reports, 315
Functions of ESP Workload Manager, 8 holding a data-set-triggered Event, 80
holding an Application in CSF, 233
holding an Event, 104
G holding and releasing an Event, 104
generation holding subApplication in CSF, 233
number, of an application, 140 listing jobs on, 125
phase of an Application, 139 manual hold Pnode, 223
GENTIME, 57 operand of JOB, 153
global variable table postponing execution of an Event, 104
definition, 22 suppressing hold count field in reports, 308
retrieving a variable from, 114 holiday
triggering, 12 defining, 65
triggering, example, 12 defining a holiday using a panel, 66
global variable, definition, 408 defining a repetitive, 66
graphical user interface, 20 defining a static, 129
groups, 332 displaying, 63
Event processing of, 66
H example
HAO advancing / delaying a job, 67
ARM support, 398 defining, 65
definition, 393, 407 defining a repetitive, 66
XCF routing, 400 defining using a panel, 66
XCF status monitoring, 399 job processing of, 67
HELP facility, 33 LISTHOL command to list, 63
Help panels, 35 start date, 65
High Availability Option, 393, 407 time duration, 65
High Performance Option, 377, 408 using to schedule, 66
history HOLIDAYS, scheduling term, 51
example of report, 28 HOST
fields to use as selection criteria limiting data set activity to a, 85, 198
for reporting, 28 security check (EXPEDITE), 380
reporting, 28, 276 security programs, 30
history reporting field HOURLY, scheduling term, 51
accumulating, 297 HPO
list, 289 definition, 377, 408
numeric, 296 expedite, 378
HOLD resource balancing, 382
an Event from being processed at XCF routing, 388
a particular time, 80 XCF status monitoring, 387
and APPLEND, 190
application hold Pnode, 223 I
command, 104 IF
controlling Event scheduling, 79 statement in Procedure, 110
ESP-5.4-UG-05 425
use in documentation, 268 generate a copy for every job, 147
using instead of TEMPLIB, 146 identifying JCL libraries, 143
using parenthesis, 115 issuing commands in batch, 4
IF-THEN-ELSE limiting the use of temporary, 147
example of use, 112 routing jobs to other systems, 329
in job documentation, 266 specifying a library, 143
indentation, 3 specifying a library for a single job, 145
index entries, displaying, 234 specifying a temporary library, 144
info records, displaying, 234 submitting in an Event, 91
INFOMSG command, 37 submitting JCL from Librarian and
inheriting, job relationships, 14 Panvalet data set, 92
initialization parameter, definition, 408 tailoring, 22
Input line entry, 36 writing to a GDG, 148
INPUT, Pnode field, 223 JCL, editing the last executed, 234
interception, system message, 26 JCLLIB, definition, 409
INVOKE JES status of a job, displaying, 234
an ESP Procedure, 93, 109, 219, 264 JES, format of job ID, 409
command, 131 job
command, in Event, 93 bypassing, 160
ISPF interface canceling a PeopleSoft, 235
controlling Events, 100 changing job attributes, 192
retrieving information, 269 completing, 233
screen, 32 CRITICAL operand, 153
ISPF option, 32 defining
ISPF panels conditional jobs, 153
accessing, 100 critical jobs, 153
exiting ESP Workload Manager, 40 held jobs, 153
special periods, 69 requirements, 155
Issuing operator command, using Event, 95 with different attributes, 192
IW, CSF command, 234 delay
release
using the RELDELAY statement, 156
J
submission, 155
JANCWAIT, Pnode field, 223 different types, 177
JCL displaying
control the use of temporary, 146 resources, 234
copying, 94 duplicate names, 150
creating a copy, 94 example
example changing a job attribute, 192
creating a scheduled activity data set, 301 combined statement, 150
report generation, 317 delaying submission of a job from
reporting in batch, 288 ready time, 156
tailoring, 22 identifying a delayed submission time, 156
updating a scheduled activity data set, 301 multiple runs of a job, 150
executing ESP Workload Manager on-request, 152
commands in batch, 38 qualified jobs, 150
FLOWDOC data base generation, 313 sending messages at different stages, 154
FLOWDOC data generation, 313 specifying a due-out time, 158
FLOWDOC report generation, 314
426 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 427
job submitting how to work in, 39
from Librarian, 92 invoking CYBESDT1, example, 90, 203
using Event, 91 invoking ESP Workload Manager
job tracking, XCF Service, 371 in, from CSF, 247
JOB, statement, 149 retrieving job-documentation information, 270
JOBENQ, example, 170 link
JOBMAP, command, 305 definition, 16, 409
JOBONQ example, 17
built-in function, 118, 125 issuing a command, 186
example, 126 keeping an Application active, 186
returning values, 125 notifying when an Application
using with REEXEC, 126 completes, 187
variables, 125 sending messages, 185
JOBRES, 338 simplifying job relationships, 185
JOBTREE, command, 309 starting a task, taking action after
JUMPTO, statement in Procedure, 112 completion, 187
LINK operand of JOB statement, 184
owner, 365
L
usage, 16, 184
label uses, 186
customizing for job documentation, 260 vs. task, 185
in ESP Procedures, 110 LIST
in job documentation, 259 command, 101
use in ESP Procedures, 110 Event command, 100
LABEL, command of GENDOC, 272 listing Events, 101
LAST, scheduling term, 51 RESDEF command operand, 340
LDTE, command, 84 LISTCAL
LDXE command, 62
command, 84 display a calendar, 62
example, 197 displaying holidays and special days, 63
to display data-set-triggering information, 197 LISTHOL, command, 63
LENGTH LISTSCH
built-in function, 118, 123 command, 98
example displaying scheduled Events, 98
calculating the length of a symbol, 123 LISTSPEC, command, 63
extracting the last character of a LOAD
variable length symbol, 124 command, 40
LESS, scheduling term, 51 example, loading diagnostic commands
Librarian from a data set, 41
data sets load a report definition, 281
as input, 42 load an Event definition, 74
ESP Procedure, 3, 109 loading commands, 40
submitting jobs, 92 logical calendar, 65
data-set prefix, 42 logical day
submitting a job directly from defining your organization, 64
a Librarian data set, 92 specifying, 64
LIBSUB, command, 92, 131 vs. absolute day, 49
line mode logical day, definition, 409
exiting ESP Workload Manager in, 40
428 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 429
OR, scheduling term, 52 EXEC, 223
overdue Event, 78, 105 EXTERNAL, 223
OVERDUE, scheduling term, 52 FAIL, 223
INPUT, 223
JANCWAIT, 223
P MANHOLD, 223
page mode MANSUB, 223
benefit, 32 PREDWAIT, 223
comparing with ISPF Browse, 36 READY, 223
displaying informational messages, 37 RESWAIT, 223
displaying informational messages SANCWAIT, 223
where they occur in the input instead of SUBDELAY, 223, 224
at the top of the screen, 37 SUBERROR, 223, 224
exiting ESP Workload Manager in, 40 SYSERROR, 223
how to use, 36 TASK, 223
invoking CYBESDT1, 90, 203 WAITING, 223
retrieving job-documentation Pnode Application states, definition, 410
information in, 270 positional operand, definition, 410
returning informational messages post, definition, 410
to the top of the screen, 38 POSTREQ, statement, 165
screen example, 36 predecessor, definition, 410
switch to from main menu, 34 PREDWAIT, Pnode field, 223
usage, 36 PREMEND operand, notification and alerting
using JOBMAP in, 306 process, 162
using JOBTREE in, example, 309 PREREQ, statement, 165
using other commands in CSF, 247 previous line, re-entering, 36
using the screens, 37 PRIORITY statement, using, 332
page mode, definition, 409 Procedure, See ESP Procedure
Panvalet data sets PROCLIB, definition, 410
as input, 42 propagating dueout times
ESP Procedures, 3, 109 example, 159
submitting JCL from, 92 how to, 158
submitting jobs, 93 proxy, definition, 411
Panvalet, prefix for data sets, 42 purging a service, example (XCF), 373
PeopleSoft, canceling a job, 235
period, See special period
planning Q
Applications to optimize qualifier, definition, 410
Distributed Manager, 360 QUEUE file, 371
calendars, 60 QUIESCE, command, 396
example, planning for a system shutdown, 353 QUIT
PLUS, scheduling term, 52 encountered, SUBERROR Pnode, 225
Pnode example, 113
definition, 410 statement in Procedure, 112
list of, 223
APPLHOLD, 223
R
APPLWAIT, 223
BYPASSED, 223 READY, Pnode field, 223
COMPLETE, 223 REALNOW
430 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 431
sections, 277 displaying requirements for jobs not yet
separating data into different files, 284 submitted in an active Application, 341
setting up job mapping, 304 displaying the resources associated with
setting up schedule forecasting, 298 a job and determine what jobs have
specifying an output data set, 284 resources allocated, 340
specifying fields to display, 285 displaying the resources of a job, 234
specifying input criteria, 281 dropping default, 332
specifying other formats, 286 dropping requirements, 331
specifying output criteria, 284 example
specifying the date format, 285 ABSORB statement, 343
specifying the selection criteria, 282 adding requirements, 331
specifying the sort criteria, 286 Application with absorption, 344
specifying the time range, 282 Application with absorption (CSF), 344
structuring, 276 changing, 337
suppressing fields, 308 controlling access to a data base, 349
testing and using the GENFLOW feature, 321 controlling access to an online system, 346
testing and using the GENPROJ feature, 319 controlling mutually exclusive
using a history file other than current, 281 groups of jobs, 350
using job mapping, 303 controlling mutually exclusive jobs, 345
using the JOBMAP command, 305 default scratch tape resource, 334
using the JOBTREE command, 309 defining a real resource, 337
reporting defining a renewable resource, 336
definition, 27 defining a threshold resource, 336
history, 28, 276 dropping default, 332
in batch, 276 dropping requirements, 332
REQUEST, 151 long resource name with no restrictions, 336
RESDEF with MONITOR(CPU) operand, planning for a system shutdown - Part
coding, 385 1, 353
RESDEF, command, 335 planning for a system shutdown - Part
resetting, User Status field, 235 2, 354
resource real devices, 328
absorption, 342 requesting resources, 331
adding requirements, 331 routing jobs on other systems, 329
balancing, 382 running jobs on a particular system, 349
changing, 337 schedule dependency, 356
default, 333 setting priority for more than one job, 333
default assignments, 334 setting priority for one job, 333
defining, 335 STEPEND statement, 342
defining a real resource, 336 time periods for low priority jobs, 347
defining using the RESDEF command, 335 using a resource for a self-completing
definition, 326, 410 task, 348
deleting, 339 examples of different, 326
depletable, 327 excluding default resources for
determining a default assignment, 334 an Application, 335
device counts, 328 gravity, 329
displaying information about a resource, 340 in reports, 315
displaying one or more resources, 340 job requiring multiple, 329
managing jobs, 329
432 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 433
using the first day of the week, 49 STARTING, 52
using workdays, 49 TIMES, 51
where you can use, 44 TODAY, 52
scheduled activity, report, 29, 300 TOMORROW, 53
scheduled Event UNTIL, 53
adding execution, 103 WEEKDAYS, 53
bypassing, 103 WEEKENDS, 53
displaying, 98 WITHIN, 53
SCHEDULED, operand of JOB statement, 180 workday, 49
scheduling WORKDAYS, 53
controlling Event, 79 YEARLY, 53
Event, 77 YESTERDAY, 53
example SCOPE
a job on the last day of the month, 132 operand of JOB statement, 154, 180
an hourly Event during a time range, 81 report heading, 315
one-time Event, 77 suppressing field in a report, 308
time and date, 9 screen
time zone abbreviations for, 46 ISPF interface, 34
scheduling term Main Menu, 32
list, 50 Page mode, 36
using in calendars, 64 script, definition, 411
ABSOLUTE, 50 security
AND, 50 authorized commands, 3
ANYDAY, 50 authorized OPER commands, 3
COMPLETE, 50 calendar, 58
DAILY, 50 definition, 30
EACH, 50 for Applications, 142
ENDING, 50 for EXPEDITE statement, 380
EVERY, 50 FTP transfer-triggered Event, 200
EXCEPT, 51 limiting data set activity to a user, 83
FIRST, 51 limiting data-set activity to a user ID, 86, 199
first day of week, 49 naming Events, 74
HOLIDAYS, 51 use of the Event prefix, 75
HOURLY, 51 SELECT, vs. RUN, 176
LAST, 51 SELECTED
LESS, 51 built-in function, 117, 122
LOGICAL, 51 built-in function syntax, 122
MIDDAY, 51 example
MIDNIGHT, 51 selecting a job when
MONTHLY, 51 another is not selected, 122
NOW, 51 selecting one job based on another, 122
OF, 52 SEND
ONCE, 52 command, 131
OR, 52 example, sending messages at different
OVERDUE, 52 stages, 154
PLUS, 52 using Events to send messages, 91
REALNOW, 52 sending messages, 91
ROUND, 52 services
434 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 435
PREREQ, 165 symbol library
PRIORITY, 332 setting, 96
QUIT, 112 specifying in Event, 96
RELEASE, 165 symbolic variable
RESOURCE, 330 %SHADOW, 395
STEPEND, 341 ‰ESPAPTAG, 205
TAG, 205 ‰ESPATIME, 203
THEN, 110 ‰ESPTRDSN, 81
status of ENQSELF, 171 ‰ESPTRGDG, 203
STEPEND, statement syntax, 341 as qualifiers, 149
step-level statistics, displaying, 234 attributes of, 21
STEPLIB, 38 definition, 21, 412
stopping XCF services, 372 determining length, 123
subApplication embedding in strings, 114
controlling, 214 ESP_APPL_PROC, 139
definition, 411 ESPAPQUAL, 266
displaying, 214 example
example notifying when an
coding, 213 Application completes, 187
requesting a subApplication, 214 representing a scheduled date, 22
identifying, 212 usage, 114
selecting, 213 using a different TEMPLIB based on year
using, 212 and day, 147
SUBDELAY, Pnode field, 223 generating with GENTIME, 57
SUBERROR, Pnode field, 223 MAXRUNTIME, 162
SUBMIT MINRUNTIME, 162
command, 91 stored in SYMLIB, 411
Event command, 131 substring, 123
submitting multiple jobs, example, 92 symbol introducer, 110
using Events to submit JCL, 91 to tailor JCL, 22
SUBSTR using function for, 123
built-in function, 118, 123 using in ESP Procedures, 113
example SYMLIB
extracting the last character command, 96
of a variable length symbol, 124 setting symbol libraries, 96
using a substring of a time variable, 124 SYMLIB, definition, 411
subsystem name, 38 syntax conventions, 5
successor, definition, 411 SYSERROR, Pnode field, 223
SUSPEND sysmsg, definition, 411
bypassing execution of an Event, 104 SYSTEM calendar
command, 81 definition, 59
Event command, 100 example
example changing the first
scheduling an hourly Event day of the week, 62
during a time range, 81 defining, 61
suspending an Event, 104 displaying, 63
usage, 104 referencing, 64
symbol introducer character, 110, 114 search order, 97
436 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 437
limiting data set activity to a user, 83, 196 (Agent) requirements, 339, 385
limiting data set activity to a user (Agent) scenario using, 386
ID, 86, 199 (WLM) requirements, 338, 382
user (WLM) scenario using, 384
setting and resetting the status field, 245 description, 382
setting the status field, 225 workload object
user data sets, definition, 412 definition, 137, 412
user-defined variables, definition, 113 establishing ownership of a, 364
owner of a distributed, 365
type in history file, 295
V
Workstation, See ESP Workstation
variable writing session data, 37
AUTOVAR, definition, 406
definition, 412
example X
basic, 21 XCF
defining an undefined variable, 123 command examples, 397
retrieving a variable from commands, 370
a global variable table, 114 Display Service connections, 372
using a substring of a time variable, 124 displaying the members in the XCF group
using symbolic variables, 114 and their respective states, 374
global, definition, 412 how status monitoring works, 387, 399
length, 123 manually moving control, 397
symbolic, definition, 412 member failure, 388, 400
use of symbol introducer, 114 member or group member termination, 396
using, 21 migrating from QUEUE file, 371
viewing ESP Encore panels, 234 Purging a Service, 373
VS QUEUE file migration, 371
command, 95 routing service, 388, 400
Event command, 131 benefit, 389, 401
issuing an operator command, 95 description, 389, 401
overview, 388, 400
Services, 371
W
Start Service, 372
WAITING, Pnode field, 223 State awareness, 373
WEEKDAYS, scheduling term, 53 status monitoring, 387, 399
WEEKENDS, scheduling term, 53 Stop Service, 372
wildcard, masking, 3 stopping all the XCF members in the
WITHIN, scheduling term, 53 XCF group simultaneously, 374
WLM workload balancing stopping an XCF member, 374
introduction, 382 Trace, 374
scenario using, 384 XCF ROUTING
using, 338 command syntax, 389, 401
workday enabling, 389, 401
default, 60 ROUTING command, 389, 401
using, 49 XCF SCOREBOARD, 390, 402
workday, definition, 412 XCF service
WORKDAYS, scheduling term, 53 description, 370
workload balancing displaying, 372
438 ESP-5.4-UG-05
Index
ESP-5.4-UG-05 439
440 ESP-5.4-UG-05