Eqqc 1 MST
Eqqc 1 MST
This edition applies to version 9, release 3, modification level 0 of IBM Workload Scheduler for z/OS (program
number 5698-T08) and to all subsequent releases and modifications until otherwise indicated in new editions.
© Copyright IBM Corporation 1999, 2016.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract
with IBM Corp.
© Copyright HCL Technologies Limited 2016, 2019.
Contents
Figures . . . . . . . . . . . . . . vii RCLOPTS . . . . . . . . . . . . . . 130
RCLSKIP . . . . . . . . . . . . . . . 137
Tables . . . . . . . . . . . . . . . ix RESOPTS. . . . . . . . . . . . . . . 138
RESOURCE . . . . . . . . . . . . . . 143
RODMOPTS. . . . . . . . . . . . . . 143
About this publication . . . . . . . . xi ROUTOPTS . . . . . . . . . . . . . . 147
What is new in this release . . . . . . . . . xi SERVOPTS . . . . . . . . . . . . . . 152
Who should read this publication . . . . . . . xi TCPOPTS . . . . . . . . . . . . . . 158
Accessibility . . . . . . . . . . . . . . xi TOPOLOGY . . . . . . . . . . . . . . 162
Technical training . . . . . . . . . . . . xii TRGOPT . . . . . . . . . . . . . . . 162
Support information . . . . . . . . . . . xii TRROPTS . . . . . . . . . . . . . . 164
Conventions used in this publication . . . . . . xii USRREC . . . . . . . . . . . . . . . 166
How to read syntax diagrams . . . . . . . . xii XCFOPTS . . . . . . . . . . . . . . 167
Contents v
Recovering from failure . . . . . . . . . . 349 Factors influencing performance . . . . . . 383
What to do when data files fill up . . . . . . 349 JCC . . . . . . . . . . . . . . . 384
Cleanup subtask . . . . . . . . . . . . 350 Tuning the TCP/IP server . . . . . . . . . 384
Restart and cleanup . . . . . . . . . . . 385
Chapter 12. Disaster recovery
planning . . . . . . . . . . . . . 351 Part 4. Appendixes . . . . . . . . 387
Designing your IBM Workload Scheduler for z/OS
DRP . . . . . . . . . . . . . . . . 351 Appendix A. IBM Workload Scheduler
Secondary-center options . . . . . . . . 351
for z/OS macros . . . . . . . . . . 389
Standardizing the environment . . . . . . 352
Implementing your IBM Workload Scheduler for
z/OS DRP . . . . . . . . . . . . . . 353 Appendix B. Sample library
Recovery to start-of-day processing . . . . . 354 (SEQQSAMP) . . . . . . . . . . . 391
Recovery to a predefined recovery point . . . 356 EQQUSIN samples . . . . . . . . . . . 394
Recovery to point-of-failure . . . . . . . 359 IBM Workload Scheduler for z/OS exits . . . . 394
DASD mirroring considerations . . . . . . 362 Start or stop exit . . . . . . . . . . . 394
Considerations about testing disaster recovery in Job-submit exit . . . . . . . . . . . . 395
an end-to-end environment . . . . . . . . . 362 Job-library-read exit . . . . . . . . . . 395
Event-filtering exit. . . . . . . . . . . 395
SYSOUT archiving exit . . . . . . . . . 396
Part 3. Tuning . . . . . . . . . . 363
Incident-record-create exit . . . . . . . . 396
Operation-status-change exit . . . . . . . 396
Chapter 13. Analyzing performance 365 Operation-initiation exit . . . . . . . . . 397
Setting performance objectives. . . . . . . . 365 JCL-variable-substitution exit . . . . . . . 397
Measuring performance . . . . . . . . . . 366 Job-tracking log write exit . . . . . . . . 397
Performance Reporter for MVS and Tivoli EQQDELDS/EQQCLEAN catalog-exit . . . . 397
Decision Support for OS/390 . . . . . . . 366 EQQCLEAN GDG resolution exit
RMF . . . . . . . . . . . . . . . 367 (EQQUXGDG) . . . . . . . . . . . . 398
ACF/VTAM . . . . . . . . . . . . . 368 Application-description-validation exit . . . . 398
VSAM . . . . . . . . . . . . . . . 369 DP batch scheduling environment exit . . . . 398
IBM Workload Scheduler for z/OS performance Job-tailoring prevention exit . . . . . . . 398
data . . . . . . . . . . . . . . . 369 Time Dependent Operation user exit . . . . 398
Open Systems integration . . . . . . . . . 399
Chapter 14. Basic tuning activities 371 Tracker for VM . . . . . . . . . . . . 399
System resources . . . . . . . . . . . . 371 Tracker for OS/2 . . . . . . . . . . . 400
I/O activity . . . . . . . . . . . . . 371 Tracker for AIX . . . . . . . . . . . . 400
Processor . . . . . . . . . . . . . . 375 IBM Workload Scheduler for z/OS auditing
Processor storage . . . . . . . . . . . 375 package . . . . . . . . . . . . . . . 401
Common Storage Area allocated for user Viewing output from the ended-in-error list . . . 404
connections . . . . . . . . . . . . . 376 NetView samples . . . . . . . . . . . . 405
Indicators for performance-related problems . . . 376 Deadline WTO message . . . . . . . . . 405
Preventing bottlenecks . . . . . . . . . . 377 Responding to WTO operations . . . . . . 405
Changing operation status from NetView . . . 405
Chapter 15. Tuning the controller, the z/OS hiperbatch support . . . . . . . . . 405
Deleting data sets based on JCL disposition and
tracker, and the TCP/IP server . . . . 379
catalog status . . . . . . . . . . . . . 406
Tuning the controller . . . . . . . . . . . 379
Miscellaneous samples . . . . . . . . . . 406
Job submission . . . . . . . . . . . . 379
MASS update samples . . . . . . . . . . 407
Job tracking . . . . . . . . . . . . . 380
Dialog response . . . . . . . . . . . 381
Background batch processing . . . . . . . . 382 Notices . . . . . . . . . . . . . . 409
Recognizing the indicators . . . . . . . . 382 Trademarks . . . . . . . . . . . . . . 411
Recommendations . . . . . . . . . . . 382 Terms and conditions for product documentation 411
Tuning the tracker . . . . . . . . . . . . 383
Event creation and communication . . . . . 383 Index . . . . . . . . . . . . . . . 413
Your workload can run on various platforms, but you control it from a central
z/OS® system that runs the IBM Workload Scheduler for z/OS controller.
The term scheduler, when used in this publication, refers to IBM Workload
Scheduler for z/OS. The term DB2®, when used in this publication, refers to
DATABASE 2 and DB2 Universal Database™.
For information about the new or changed functions in this release, see Overview,
section Summary of enhancements.
For information about the APARs that this release addresses, see the Program
Directory and the Dynamic Workload Console Release Notes at
http://www-01.ibm.com/support/docview.wss?rs=672&uid=swg27045183.
To use this publication effectively, you need a working knowledge of z/OS and JES
concepts and facilities. You should be familiar with the Interactive System
Productivity Facility (ISPF), the Interactive System Productivity Facility/Program
Development Facility (ISPF/PDF), and the Time-Sharing Option (TSO). A good
working knowledge of Virtual Storage Access Method (VSAM) is desirable but not
essential.
To implement security, you must know the Resource Access Control Facility
(RACF®) or a similar product. To implement IBM Workload Scheduler for z/OS
exits or subroutines, you must know job control language (JCL) and have a good
working knowledge of a programming language, for example, assembler or PL/I.
You can use programming languages that support OS/390® linkage conventions
and that can load and delete an assembler program.
Accessibility
Accessibility features help users with a physical disability, such as restricted
mobility or limited vision, to use software products successfully.
With this product, you can use assistive technologies to hear and navigate the
interface. You can also use the keyboard instead of the mouse to operate all
features of the graphical user interface.
© Copyright IBM Corp. 1999, 2016 xi
For full information, see the Accessibility Appendix in the IBM Workload Scheduler
User's Guide and Reference.
Technical training
Cloud & Smarter Infrastructure provides technical training.
Support information
IBM provides several ways for you to obtain support when you encounter a
problem.
If you have a problem with your IBM software, you want to resolve it quickly. IBM
provides the following ways for you to obtain the support you need:
v Searching knowledge bases: You can search across a large collection of known
problems and workarounds, Technotes, and other information.
v Obtaining fixes: You can locate the latest fixes that are already available for your
product.
v Contacting IBM Software Support: If you still cannot solve your problem, and
you need to work with someone from IBM, you can use a variety of ways to
contact IBM Software Support.
For more information about these three ways of resolving problems, see the
appendix about support information in IBM Workload Scheduler: Troubleshooting
Guide.
The publication uses several typeface conventions for special terms and actions.
Technical changes to the text are indicated by a vertical line to the left of the
change. These conventions have the following meanings:
► ►
KEEP KEEP
AVAIL ( RESET ) DEVIATION ( amount )
NO RESET
YES
► ►
KEEP YES
QUANTITY ( amount ) CREATE ( NO )
RESET
► ►◄
0
TRACE ( trace level )
Read the syntax diagrams from left to right and from top to bottom, following the
path of the line.
►► STATEMENT ►◄
optional item
v An arrow returning to the left above the item indicates an item that you can
repeat. If a separator is required between items, it is shown on the repeat arrow.
– If choosing one of the items is optional, the entire stack appears below the
main path:
►► STATEMENT ►◄
optional choice 1
optional choice 2
– A repeat arrow above a stack indicates that you can make more than one
choice from the stacked items:
►► STATEMENT ▼ ►◄
optional choice 1
optional choice 2
optional choice 3
v Parameters that are above the main line are default parameters:
default
►► STATEMENT ►◄
alternative
option 1
default
optional choice 1 ( alternative )
default
optional choice 2 ( alternative )
Note:
1. If an abbreviation matches more than one keyword on a statement, IBM
Workload Scheduler for z/OS writes to the message log the TSO-parser
message IKJ56704I parameter IS AMBIGUOUS. This can cause a subtask to end
or IBM Workload Scheduler for z/OS itself to end.
2. The names of RODM classes, objects, and fields are case-sensitive. Ensure you
preserve the case if you specify RODMOPTS statements in the parameter
library. Also, if a name contains anything other than alphanumeric or national
characters, you must enclose the name in double quotation marks.
To use the end-to-end scheduling with fault tolerance capabilities, you must also
define the job definition statements for fault-tolerant workstations in the SCRPTLIB
library as described in Table 2 on page 7.
Table 1. Defining the appropriate initialization statements
Data
Name Tracker Controller Server Store Batch PIF Specifies options for
“ALERTS” on U U Generating NetView®, IBM®
page 7 Tivoli® Monitoring, message log,
and WTO alerts.
“AROPTS” on U Automatic job recovery.
page 11
“AUDIT” on U Creating audit information for
page 14 changes to IBM Workload
Scheduler for z/OS data.
Table 2 shows the statements you must define for the jobs running on fault-tolerant
workstations. For detailed information, see IBM Workload Scheduler for z/OS:
Scheduling End-to-end with Fault Tolerance Capabilities.
Table 2. Defining the initialization statements for end-to-end scheduling with fault tolerance capabilities
Name Description
JOBREC Fault-tolerant workstation job properties
VARSUB Variable substitution options
RECOVERY Recovery for a job whose status is in error and the error
code is not FAIL
Refer to the following sections for a detailed syntax and description of each
initialization statement, listed in alphabetical order.
ALERTS
Purpose
The ALERTS statement specifies the conditions under which IBM Workload
Scheduler for z/OS generates an alert. You can specify this statement for a tracker,
controller, or standby controller. You can use these alert actions when an alert
condition occurs:
v Send a generic alert to NetView.
v Write a message to the IBM Workload Scheduler for z/OS message log.
v Generate a WTO (write-to-operator) message.
v Send an alert to IBM Tivoli Monitoring (Tivoli Enterprise Portal).
Format
►► ALERTS ►
,
GENALERT ( ▼ DURATION )
ERROROPER
LATEOPER
OPCERROR
QLIMEXCEED
MLOG ( ▼ DURATION )
ERROROPER
LATEOPER
QLIMEXCEED
RESCONT
► ►
, YES
MONOPER ( NO )
MONALERT ( ▼ DURATION )
ERROROPER
LATEOPER
OPCERROR
QLIMEXCEED
SPECRES
WLMOPER
► ►
NETVALRT
RECEIVERID ( Alert Receiver ID )
► ►◄
,
WTO ( ▼ DURATION )
ERROROPER
LATEOPER
OPCERROR
QLIMEXCEED
RESCONT
Parameters
GENALERT(error condition,...,error condition)
Defines the conditions under which IBM Workload Scheduler for z/OS sends a
generic alert to NetView.
MLOG(error condition,...,error condition|OPCERROR)
Defines the conditions under which IBM Workload Scheduler for z/OS writes
a message to the message log.
MONALERT(error condition,...,error condition)
Defines the conditions under which IBM Workload Scheduler for z/OS sends a
generic alert to the IBM Tivoli Monitoring agent. This parameter is significant
only if the MONOPTS statement is provided.
MONOPER(YES|NO)
Defines if the following error conditions specified in the MONALERT
parameter are in effect for monitored jobs only (default) or for all jobs. The
error conditions are ERROROPER, LATEOPER, DURATION, and WLMOPER.
RECEIVERID(Alert Receiver ID|NETVALRT)
Defines the NetView alert receiver that generic alerts are sent to. Specify this
keyword if the alert receiver in NetView address space that handles IBM
Workload Scheduler for z/OS alert automation does not have the NetView
default ID, NETVALRT.
Error conditions
You can specify one or more of the following error conditions for each alert type.
Note that only OPCERROR and QLIMEXCEED are applicable to a tracker; other
error conditions are ignored if you specify them.
DURATION
The alert action is taken when an operation in the current plan is active for
an unexpectedly long time. This means that an operation that has started
(extended status S) must be active longer than its estimated duration
multiplied by either the following values:
v The alert action limit that you set for ALEACTION (for details, see
“JTOPTS” on page 77).
-OR-
v The duration feedback limit that you set for LIMFDBK (for details, see
“JTOPTS” on page 77). This value is used if ALEACTION is not set.
then divided by 100.
For example, if an operation has an estimated duration of 10 minutes and
the limit for the alert action is 200, the alert action is taken if the operation
is active for longer than 20 minutes. The alert action is also taken if the
operation has been started but the associated job or started task has not yet
started to run after 10 minutes (no A2/B2 event has been received), that is,
the operation has had status/extended status SU and SQ totally for more
than 10 minutes. The alert action is taken only for operations that have
started status.
For MLOG and WTO alert actions, message EQQE028I is issued for an
operation at a general workstation and EQQE038I for an operation at a
computer or printer workstation for long running operations. Message
EQQE039I is issued for computer operations that have been submitted but
have not started.
Notes:
1. The value used to select the operations for which a long duration alert
must be issued is set with the ALEACTION keyword in the “JTOPTS”
on page 77 statement. If ALEACTION is not specified, the value set for
LIMFDBK is used instead. In this case, the value for the feedback limit
that you can optionally enter in the application description is ignored.
2. If the alert action limit is 0 or the alert action limit is not specified and
the feedback limit is 0, the alert action is taken as soon as the operation
is active longer than its estimated duration.
3. If the estimated duration of an operation is 99 hours, 59 minutes and 01
seconds, no duration alert is sent for this operation.
ERROROPER
The alert action is taken when an operation in the current plan is set to
ended-in-error status. For MLOG and WTO alert actions, message
EQQE026I is issued for an operation at a general workstation, and
EQQE036I for an operation at a computer or printer workstation.
LATEOPER
The alert action is taken when an operation in the current plan becomes
Note: Use LATEOPER only when deadlines are accurate because it can
affect the performance of IBM Workload Scheduler for z/OS.
OPCERROR
The alert action is taken when an IBM Workload Scheduler for z/OS
subtask or IBM Workload Scheduler for z/OS subsystem ends
unexpectedly. For MLOG and WTO alert actions, message EQQZ045W and
EQN019E are issued. If GENALERT action is specified and the EQQN019E
alert condition occurs, then the subtask-failed alert is sent to NetView.
Examples
AROPTS
Purpose
The AROPTS statement defines run-time options for automatic job and started-task
recovery. It is used by a controller or standby controller where OPCOPTS
RECOVERY(YES) is specified.
Format
►► AROPTS ►
JCLUSER NO
AUTHUSER ( GROUP ) CHKRESTART ( YES )
JCLEDITOR
OWNER
► ►
2359 NOAR
ENDTIME ( hhmm ) EXCLUDECC ( code )
► ►
6
EXCLUDERC ( highest no-recovery return code )
► ►◄
0000 NO
STARTTIME ( hhmm ) USERREQ ( YES )
Parameters
AUTHUSER(GROUP|JCLEDITOR|OWNER|JCLUSER)
Defines where IBM Workload Scheduler for z/OS retrieves the name that is
used for authority checking in automatic recovery:
GROUP
The authority group ID of the failing occurrence.
JCLEDITOR
The name in the JCL repository (EQQJSnDS) file. If the JCL has not
been updated through the dialogs or PIF, IBM Workload Scheduler for
z/OS does not perform authority checking. The name in the ISPF
statistics of the job library (EQQJBLIB) is not used.
OWNER
The owner ID of the failing occurrence. Owner ID is truncated if it is
more than 8 characters.
JCLUSER
The name of the user who created or last updated the JCL. JCLUSER is
the default value. If the JCL has not been updated through the dialogs
or PIF, IBM Workload Scheduler for z/OS uses the name in the ISPF
statistics of the job library (EQQJBLIB). If no statistics exist, IBM
Workload Scheduler for z/OS does not perform authority checking.
CHKRESTART(YES/NO)
Usually the Automatic Recovery function postpones the recovery actions,
whenever cleanup type is Immediate, until any cleanup actions have been
successfully completed. This is done even if the recovery actions do not require
the operation to be restarted, for example when ADDAPPL is the required
recovery action. This is the default behavior and corresponds to AROPTS
CHKRESTART(NO).
If you want the postpone mechanism (wait for cleanup actions to complete) to
occur only when recovery actions require a job or step restart, you must
specify AROPTS CHKRESTART(YES). When AROPTS CHKRESTART(YES) is
specified, and the recovery actions do not require a restart, the recovery actions
are performed immediately and then the immediate cleanup actions start, but
there is no waiting for their completion.
Cleanup types None and Immediate are compatible with Automatic Recovery
in all scenarios. Cleanup types Manual and Automatic are only compatible
with Automatic Recovery if AROPTS CHKRESTART(YES) is specified and the
recovery actions do not require a job or step restart (recovery proceeds, in this
case). If AROPTS CHKRESTART(NO) is specified, or the recovery actions
require a job or step restart and the failing operation cleanup type is Manual or
Automatic, the Automatic Recovery function issues an appropriate error
message and stops processing the related operation.
ENDTIME(hhmm|2359)
Defines the end of the time range for which automatic recovery is performed
for jobs and started tasks that contain a RECOVER statement without a TIME
Examples
AUDIT
Purpose
The AUDIT statement defines how changes to IBM Workload Scheduler for z/OS
data is logged. You can specify this statement for a controller or standby controller.
You can also use more than one AUDIT statement to define IBM Workload
Scheduler for z/OS auditing actions.
When you request logging of accesses to JCL data, logging is performed if the JCL
is present in, or is inserted into, the JCL repository.
Note:
1. Changes to current plan, current-plan-extension, and event-triggering records
are always logged for IBM Workload Scheduler for z/OS restart purposes. Read
accesses to these resources are not logged, and you cannot prevent the logging
of update accesses.
2. If you set AMOUNT(DATA) or AMOUNT(KEY), auditing records are written to
the job-tracking-log data set and this affects how often IBM Workload
Scheduler for z/OS performs a current-plan-backup process. Keep this in mind
when specifying a value for the BACKUP keyword of JTOPTS. Also consider
auditing records when allocating the job-tracking-log data sets, especially if you
specify AMOUNT(DATA).
3. The AUDIT records contain a field to indicate whether or not they are related
to a real data change. Based on that field, EQQAUDIT program reports only
those records that actually changed from an external point of view. For
example, when a dialog user selects a data item in a list through the M
(Modify) row command and exits using the PF3 key, without changing the data
item, the process rewrites related data records to keep any change that the
scheduler performed for internal purposes. In this case, the scheduler creates an
AUDIT record for a data item that the external user did not really change,
however EQQAUDIT does not report that record. In particular, using the J row
command always causes the JCL to be written to the JS file, even if the dialog
user did not change the JCL.
| The IBM Workload Scheduler for z/OS sample library contains a program that can
| format reports of job-tracking, track-log, and extended-auditing records. See “IBM
| Workload Scheduler for z/OS auditing package” on page 401 for more
| information.
► FILE ( ALL ) ►◄
AD
CAL
JLIB
JS
JV
LT
OI
PER
RD
RG
VAR
WS
WSCL
Parameters
ACCESS(READ|UPDATE)
Defines when IBM Workload Scheduler for z/OS tracks accesses to the file.
Specify UPDATE to track all changes to the file. Specify READ to track all
accesses.
AMOUNT(DATA|EXTENDED|KEY)
Defines how much data is to be logged by IBM Workload Scheduler for z/OS
for accesses to the file.
Specify KEY to log only the VSAM key (this is enough to identify the
resource). Specify DATA to log the VSAM key and record.
| Specify EXTENDED to use the extended auditing feature. In this case, all data
| about the database changes is logged in the EQQDBnn data sets (instead of
| EQQJTnn). The EQQDBnn data sets are created by the EQQPCS14 sample and
| provide the input for the extended auditing feature. The EXTENDED argument
| applies only to the following files:
| v AD
| v CAL
| v JV
| v OI
| v PER
| v RD
| v RG
| v WS
FILE(name of IBM Workload Scheduler for z/OS file)
Defines the name of the file for which auditing is being defined. A separate
AUDIT statement is required to identify each file for which you want auditing
information recorded. Specify one of these files:
AD Application description
CAL Calendar definition
JLIB JCL in a job library
JS JCL in the JS VSAM file
JV JCL variable table
Examples
AUDITCP
Purpose
The following statements are optional because the related TRL records are used
only for monitoring and not for JT reapply processing.
Format
►► AUDITCP ►
NO NO
CONDSTATUS ( YES ) CDEPSTATUS ( YES )
► ►◄
NO NO
CDEPSTEPEND ( YES ) UNEXPECTEDRC ( YES )
Parameters
CONDSTATUS(YES|NO)
If you set this parameter to YES, every time a condition automatically changes
its status, the scheduler creates a data record TRLBDY45 in the JT log.
If you use the default, the scheduler performs the standard process for
TRLBDY45 records, that is creates them only to track condition status change
after a MCP request.
AUTHDEF
Purpose
The AUTHDEF statement specifies the IBM Workload Scheduler for z/OS
resources that are defined to a security product. For a description about how you
use IBM Workload Scheduler for z/OS security features to protect IBM Workload
Scheduler for z/OS functions and data, see Chapter 3, “Implementing security,” on
page 185.
You can specify this statement for a controller, a standby controller, or a tracker.
Format
►► AUTHDEF ►
OPCCLASS
CLASS ( name of resource class )
| ► ►
COMMAND1, ...., COMMAND9 ( list of commands )
► ►
ALL
LISTLOGGING ( FIRST )
NONE
SUBRESOURCES ( ▼ AD.ADNAME )
AD.ADGDDEF
AD.GROUP
AD.JOBNAME
AD.NAME
AD.OWNER
AD.RESNAME
AD.SECELEM
AD.UFVAL
CL.CALNAME
CP.ADD
CP.ADDOPER
CP.ADNAME
CP.COMMAND1, ...., CP.COMMAND9
CP.CPGDDEF
CP.DELETE
CP.DELOPER
CP.GROUP
CP.JOBNAME
CP.MODDEP
CP.MODIFY
CP.MODOPER
CP.MODOPSTAT
CP.NAME
CP.OWNER
CP.SECELEM
CP.UFVAL
CP.WSNAME
CP.ZWSOPER
ET.ADNAME
ET.ETNAME
JL.DSNAME
JL.MEMBER
JS.ADNAME
JS.GROUP
JS.JOBNAME
JS.OWNER
JS.WSNAME
JV.OWNER
JV.TABNAME
LT.ADNAME
LT.LTGDDEF
LT.OWNER
OI.ADNAME
PR.PERNAME
RD.RDNAME
RG.RGNAME
RG.OWNER
RL.ADNAME
RL.GROUP
RL.OWNER
RL.WSNAME
RL.WSSTAT
SR.SRNAME
WS.WSNAME
Parameters
CLASS(name of resource class|OPCCLASS)
Defines the name of the security resource class that protects IBM Workload
Scheduler for z/OS resources. The value is valid until you specify a different
value and restart the IBM Workload Scheduler for z/OS address space.
Consider the following checklist when using this parameter:
v The resource class must be defined in the RACF class descriptor and routing
tables.
v New definitions in the RACF class descriptor and routing tables require an
IPL.
v If multiple controller subsystems require separate policies, they require
separate classes.
v IBMOPC is a predefined class that you can use with no need for an IPL if
only one class is required.
v After a RACF migration, consider redefining any class you defined in a
previous version of RACF.
v The default class OPCCLASS is not already defined in RACF. Before using
this class, make sure there are the necessary entries in the RACF class
descriptor and routing tables.
| COMMAND1, ..., COMMAND9(list of commands)
| Defines the list of commands to which you want to authorize a user. If the
| same command is listed in more than one COMMANDn parameter and
| different levels of authorization are assigned, the authorization with the higher
| level of privileges is always applied to the command.
| You can specify any combinations of the following occurrence and operation
| commands:
| Table 3. Occurrence commands that you can specify in the Commandn parameter
| Command Description
| C Complete an occurrence
| CG Complete group
| DG Delete group
| R Rerun
| RG Remove from group
| W Set waiting
|
| Table 4. Operation commands that you can specify in the Commandn parameter
| Command Description
| ARC Attempt Automatic Recovery
| BND Bind Operation
| DJ Delete JCL
| EX Execute
Examples
BATCHOPT
Purpose
The BATCHOPT statement defines run-time options for IBM Workload Scheduler
for z/OS batch jobs. BATCHOPT is defined in its own member of the EQQPARM
library. The member is referenced by IBM Workload Scheduler for z/OS batch jobs
at run time.
Format
►► BATCHOPT ►
DEFAULT NO NO
CALENDAR ( calendar name ) CHECKSUBSYS ( YES ) CKPTREFRESH ( YES )
► ►
this subsystem
CONTROLLERTOKEN ( subsystem name )
NO NO
CPDATASPACE ( YES ) CRITOPMSGS ( YES )
► ►
YY/MM/DD STOP
DATEFORM ( date format in reports ) DB2AVAIL ( CONTINUE )
► ►
DB2SYSTEM ( DB2 subsystem ) 2
DPALG ( daily planning algorithm )
► ►
SYSPRINT YES NO
DPROUT ( daily plan report ddname ) DYNAMICADD ( NO ) DYNAMICDEL ( YES )
► ►
GLOBAL ⌂ NO
GTABLE ( table ID ) HDRS ( list of report header lines ) IGNOREDEADL ( YES )
► ►
NO STOP NO
JRUNHISTORY ( YES , CONTINUE ) KEEPCOMPDEPS ( YES )
► ►
0 5000
LTPREMSHIFT ( number of days ) MAXHISTORYROWS ( number of rows )
► ►
32767 YES NO N
MAXOCCNUM ( nnnnnnn ) NCPTROUT ( NO ) OCPTROUT ( YES ) OPERDALL ( Y )
CMP
► ►
NO N 55
OPERHISTORY ( YES ) OPERIALL ( Y ) PAGESIZE ( page size for reports )
► ►
6 PREDWS ( default predecessor workstation name )
PLANHOUR ( planning period start )
► ►
YES NO NO 0
PREVRES ( NO ) RCLEANUP ( YES ) REMDSREC ( YES ) RETAINOPER ( days )
► ►
OPCA SUCCWS ( default successor workstation name )
SUBSYS ( subsystem name )
► ►◄
NO TPLGPARM ABEND
TIMEDEPCHK ( YES ) TPLGYPRM ( member name ) VALEACTION ( END )
WARN
Parameters
CALENDAR(calendar name|DEFAULT)
Defines the IBM Workload Scheduler for z/OS default calendar. You can
specify a name, from 1 to 16 characters, referencing a calendar in the calendar
database.
The IBM Workload Scheduler for z/OS planning functions use this calendar:
v During long-term plan batch processing, to determine run days for an
application if no calendar is specified in the application description.
v When extending the current plan, if the specified input parameters indicate
that only work days are considered in the extension period.
v During long-term plan processing and Mass Update, to validate that the
EVERY options specified for an application run cycle is consistent with the
application calendar work day end time.
If no default calendar is specified, or if the specified calendar does not exist in
the calendar database, a calendar with the name DEFAULT is used as the
default calendar. If no calendar with the name DEFAULT exists, all days are
considered work days and the work day end time is set to 00.00.
If the specified calendar does not exist in the calendar database, Mass Update
does not check for the EVERY options.
CHECKSUBSYS(YES|NO)
Controls whether the daily planning program checks that it can synchronize
with the processing in the controller address space. The synchronization is
performed using ENQ locking with scope SYSTEMS. The synchronization can
fail because:
v The controller is not started.
v The controller is not executing within the same GRS complex as the daily
planning program.
v The SUBSYS keyword does not identify the correct controller.
v The SUBSYS keyword does not identify the correct controller.
Note: The default value is NO and the checkpoint data set keeps a record for
each remote destination defined in the ROUTOPTS and connected at least once
with the Controller. Thus, if you are going to add some new destinations or
change some names already defined in the ROUTOPTS statements, it would be
advisable to set this parameter to YES at least once, after completing the
planned changes. Message EQQN036I can help to determine when the 1000
limit is getting close and suggest that it is time to refresh the checkpoint data
set.
CONTROLLERTOKEN(subsystem name|this subsystem)
This parameter is used for the history function. The subsystem name is a key
for the history information. When the current plan is extended, the
BATCHOPT CONTROLLERTOKEN value is used to write the information.
When the information is retrieved from the database, the OPCOPTS
CONTROLLERTOKEN value is used, so you can rerun jobs initiated from
another subsystem current plan (for example, when a standby system takes
over) by specifying the correct token after takeover.
If you specify OPERHISTORY(NO) or omit the OPERHISTORY keyword, the
CONTROLLERTOKEN keyword is ignored.
| CPDATASPACE(YES|NO)
| Specify YES for the daily planning program to load portions of the in-storage
| operations and occurrences into the data space, when building the network of
| data to simulate the scheduling.
| Setting this parameter to YES is particularly helpful when you generate a
| current plan including more than one million operations, because it optimizes
| the use of storage. With a CP of this size, you must also:
| v Allocate the following data sets as extended VSAM:
| – EQQACPDS
| – EQQCP1DS
| – EQQCP2DS
| – EQQNCPDS
| – EQQSCPDS
| v In the batch jobs of the daily plan, allocate the EQQDIN data set with
| DSTYPE LARGE.
| For more details about managing a current plan with one million jobs, see
| Managing the Workload.
Examples
BKPTOPTS
Purpose
The optional BKPTOPTS statement defines the local attributes for the TCP/IP
communication between the primary controller (that is, a subsystem with
OPCOPTS OPCHOST set to YES, PLEX, or STANDBY) and the backup controller.
Define this statement on both controllers.
Note: If in ROUTOPTS you set that the primary controller uses HTTP or HTTPS
communications to reach a destination, ensure that you set the same protocol for
the backup controller to communicate.
Format
| ►► BKPTOPTS ►
NO 60
CHECKROLE ( YES ) CONNTIMEOUT ( TCPIP timeout interval )
► ►
EQQSECP1 EQQRECP1
CP1DUMPPROC ( dump procedure name ) CP1RESTPROC ( restore procedure name )
► ►
EQQSECP2 EQQRECP2
CP2DUMPPROC ( dump procedure name ) CP2RESTPROC ( restore procedure name )
| ► ►
60 426
KEEPALIVE ( seconds ) LOCPORTNUMBER ( TCPIP port )
► ►
EQQSENLT EQQRESLT
LTPDUMPPROC ( dump procedure name ) LTPRESTPROC ( restore procedure name )
► ►
EQQSENCP EQQRENCP
NCPDUMPPROC ( dump procedure name ) NCPRESTPROC ( restore procedure name )
► ►
511 512
PEERHTPPORT ( HTTP port number ) PEERHTSPORT ( SSL port number )
► ►
PEERHOSTNAME ( hostname ) 426
IP address PEERPORTNUMBER ( TCPIP port )
► ►
CAONLY tws
SSLAUTHMODE ( STRING ) SSLAUTHSTRING ( SSL string )
► ►
SSLKEYSTORE ( SSL keystore db file name )
► ►
SSLKEYSTOREPSW ( SSL keystore pw file name ) OFF
SSLLEVEL ( FORCE )
► ►◄
TCPIP
TCPIPJOBNAME ( TCPIP started task )
Parameters
| CHECKROLE(NO|YES)
| Determines if the controller configured as primary (with OPCHOST(YES) set
| in the OPCOPTS statement) performs a check about the backup controller
| activity, before starting.
| The primary controller tries to connect to the backup controller host name and
| port number as a TCP/IP client. If the connection is established, it means that
| the backup controller is running as the primary controller after a takeover
| occurred. In this case, the primary controller starts as the backup controller.
| If the connection is not established, it means that the backup controller is not
| running as the primary controller, therefore the primary controller continues its
| normal startup processing.
CONNTIMEOUT(TCPIP timeout interval|60)
It defines how many seconds a TCP/IP connection attempt waits before a
timeout occurs. It is expressed in seconds. Valid values are from 1 to 10000.
The default is 60.
To avoid any communication error, specify the same SSLLEVEL value for the
scheduler started tasks that are to communicate with each other.
SSLAUTHSTRING(SSL string|tws)
The string used to verify the certificate validity when you set SSLAUTHMODE
to STRING. The string is up to 64 characters. The default is tws.
SSLKEYSTORE(SSL keystore db filename)
Identifies the database containing keys and certificates. It consists of an SSL
working directory name and file name, in the format SSLworkdir/TWS.kbd. It
is case sensitive. This field is required if the SSLLEVEL parameter is set to
FORCE.
SSLKEYSTOREPSW(SSL keystore pw filename)
Identifies the file containing the key password. It consists of an SSL working
directory name and file name, in the format SSLworkdir/TWS.sth. It is case
sensitive. This field is required if the SSLLEVEL parameter is set to FORCE.
Examples
In this example, the BKPTOPTS statement is set on the backup controller, with the
following meanings:
▌1▐ The TCP/IP started task name set to the default value.
▌2▐ The IP address of the backup controller.
▌3▐ The number of the local port to communicate with the primary controller.
▌4▐ The IP address of the primary controller.
▌5▐ The number of the port of the primary controller.
CPUREC
Purpose
For a detailed description of this statement, see IBM Workload Scheduler for z/OS:
Scheduling End-to-end with Fault Tolerance Capabilities.
The DBCSOPTS statement defines the format options for the IBM Workload
Scheduler for z/OS Japanese language feature. You can specify this statement for a
controller or standby controller.
For the online environment, DBCSOPTS appears in the same member of the
EQQPARM library as the statement. For the batch environment, it appears in the
same parameter library member as the BATCHOPT statement.
Important: Use the same DBCSOPT statement definition for both online and batch
initialization.
Format
►► DBCSOPTS ►
EBCDIC EBCDIC
APPLID ( DBCS ) OWNERID ( DBCS )
► ►◄
KS
SORTORDER ( KR )
Parameters
APPLID(DBCS|EBCDIC)
Defines the format for storing the application ID field and group definition ID
field in the IBM Workload Scheduler for z/OS database. Specify DBCS if these
fields are stored in DBCS bracketed format. Specify EBCDIC if these fields are
stored in EBCDIC format.
Note: You cannot use the Job Description dialog if you specify DBCS, because
the job name cannot be specified in DBCS format.
OWNERID(DBCS|EBCDIC)
Defines the format for storing the owner ID field in the IBM Workload
Scheduler for z/OS database. Specify DBCS if the owner ID is stored in DBCS
bracketed format. Specify EBCDIC if it is stored in EBCDIC format.
SORTORDER(KR|KS)
Defines the DBCS order to be used when sorting fields containing DBCS data.
You can specify one of the following types:
KR Kanji basic radical stroke-count
KS Kanji basic total stroke-count.
Examples
DBOPT
Purpose
Format
►► DBOPT ►
10
CLEANUPPOLICY ( days )
► ►
IBM – 037 DBPSW ( password )
CODEPAGE ( host system codepage )
► ►
DBURL ( url ) DBUSER ( userid )
| ► ►
NO
EXTENDEDARC ( YES )
150
LONGDURPOLICY ( nnn )
► ►
SMOOTHPOLICY ( percentage ) TIMEZONE ( timezone_string )
► ►◄
0 WRKDIR ( working directory )
TRACELEVEL ( level )
Parameters
CLEANUPPOLICY (days|10)
The number of days for which the historical run data is kept in the database.
Data older than the number of days specified is deleted. The default value is
10 days.
CODEPAGE (host system codepage|IBM–037)
The name of the host code page, used by the archiving process. You can
provide the IBM–nnn value, where nnn is the EBCDIC code page. The default
value, IBM–037, defines the EBCDIC code page for US English, Portuguese,
and Canadian French. The following list shows the EBCDIC code pages:
IBM–939
Japan Extended
IBM–937
Taiwan
IBM–935
China
The following list shows the EBCDIC code pages for EURO support:
IBM–1140
Finland, Sweden
IBM–1141
Austria, Germany
IBM–1142
Denmark, Norway
IBM–1143
USA
IBM–1144
Italy
IBM–1145
Spain, spanish-speaking Latin America
Ensure that jdbc:db2 is written in lowercase format, and replace the variables
as follows:
server TCP/IP address or host name of the system where the database
resides.
port SQL port number used by the DB2 server.
database
Name of the target database.
| Note: When the archiving routines process a job, they do not process it again
| at the next archiving run. This means that if you set EXTENDEDARC(NO), the
| occurrences that were not stored during the current run will not be stored
| during the next run, even if you change the setting to EXTENDEARC(YES).
LONGDURPOLICY (nnn|150)
The policy used to decide if a job is a long duration job, based on the formula:
AD >= (ED * LDP / 100) where:
AD Actual duration.
Specify a value in the range 100 to 999. The default value is 150.
SMOOTHPOLICY (percentage)
The policy used to calculate the average duration of a job. It sets the weighting
factor that favors the most recent job run, when calculating the average
duration for a job. This is expressed as a percentage. For example, a value of
40 applies a weighting factor of 40% to the most recent job run, and 60% to the
existing average. If you do not set this parameter, the smoothing is not used
and the average duration is calculated as the total elapsed time divided by the
number of successful runs.
TIMEZONE (timezone_string)
The local time zone of the z/OS system where the controller runs, for example
TIMEZONE(’Europe/Rome’). It is the format used in standard zoneinfo files at
distributed side. Do not specify the time zone in a three-letter format, because
this results in an incorrect time zone from Java APIs during daylight saving
time.
This parameter is required and does not have a default value.
TRACELEVEL (level|0)
Trace level for internal logging and traces. Possible values are:
0 To receive error messages only.
1 To receive error and warning messages.
2 To receive error, warning, and informational messages.
3 Indicates the fine level, to receive the most important messages with
the lowest volume.
4 Indicates the finer level, to activate entry and exit traces.
5 Indicates the finest level, to receive the most detailed tracing output.
The default value is 0.
WRKDIR (working directory)
The complete path of the working directory for the archiving process. Each
subsystem must have its own working directory. You can use the same
working directory used for end-to-end scheduling with fault tolerance
capabilities. This parameter is required and does not have a default value.
Run EQQPCS08 to customize the content of the working directory.
This parameter is required and does not have a default value.
DOMREC
Purpose
The DOMREC statement begins a domain definition. You must specify one DOMREC
for each IBM Workload Scheduler domain you intend to add to the end-to-end
with fault tolerance capabilities network, with the exception of the master domain.
The domain name used for the master domain is MASTERDM. The master domain
For a detailed description of this statement, see IBM Workload Scheduler for z/OS:
Scheduling End-to-end with Fault Tolerance Capabilities.
DSTOPTS
Purpose
The DSTOPTS statement defines the run time options for the data store.
Format
►► DSTOPTS ►
0
CINTERVAL ( interval time )
► ►
EQQCLNPA 1
CLNPARM ( member name ) DELAYTIME ( nn )
► ►
DSTLUNAM(LU Name) CTLLUNAM(LU Name)
DSTGROUP(XCFGroupName) CTLMEM(XCFMemName) DSTMEM(XCFMemName)
CTLHOSTNAME ( hostname ) CTLPORTNUMBER(TCPIP port)
IP address
► ►
FAILDEST JOBNAME
FAILDEST ( destination ) HDRJOBNAME ( value )
► ►
STEPNAME PROCSTEP
HDRSTEPNAME ( value ) HDRPROCNAME ( value )
► ►
13,21 22,30
HDRJOBLENGTH ( length ) HDRSTEPLENGTH ( length )
► ►
31,39 120
HDRPROCLENGTH ( length ) HDRSTEPNOLENGTH ( length )
► ►
HOSTCON ( SNA ) 0
XCF MAXSTOL ( nnnnn )
TCP
► ►
4096 1
MAXUNPAGES ( nnnnn ) NWRITER ( nn )
► ►
15 1
QTIMEOUT ( nnnnn ) RETRYCOUNTER ( nn )
► ►
NO IMMEDIATE
SMSMODDELETE ( YES ) STORESTRUCMETHOD ( DELAYED )
► ►
NO OPC
STOUNSD ( YES ) SYSDEST ( destination )
► ►◄
30
WINTERVAL ( nnnn )
Parameters
CINTERVAL(interval time|0)
Defines the cleanup task wake-up interval time, expressed in minutes. Valid
values are from 0 to 1440. 0 is the default and means that the Data Store
CleanUp subtask is started at data store initialization, but never runs.
CLNPARM(member name|EQQCLNPA)
Defines the parameter member name that will contain the CleanUp task
criteria. The default is EQQCLNPA.
This parameter is meaningful only if CINTERVAL is greater than 0;
nevertheless it is required at data store startup because the data store loads the
information contained in the member only at startup time and, even if you
initially set CINTERVAL(0), you might later modify this value with an operator
command.
CTLLUNAM(LU Name)
Defines the VTAM® application LU name that identifies the controller in the
SNA connection between the controller and data store. It is mandatory if the
SNA connection is used between the controller and data store, and must be the
same as that specified in the controller FLOPTS CTLLUNAM statement.
CTLMEM(XCFMemName)
XCF member name, identifying the controller in the XCF connection between
controller and data store. It is mandatory if XCF connection is used and must
be the same specified in the controller FLOPTS CTLMEM statement.
CTLHOSTNAME(hostname|IP address)
The host name or IP address of the remote controller. Valid values are
fully-qualified names, up to 52 characters.
CTLPORTNUMBER(TCPIP port|423)
The TCP/IP port number used to communicate with the remote controller.
Valid values are from 0 to 65535. The default is 423.
Note: The User Sysout field in the Restart and Cleanup Operation Details
(EQQAMRCL) panel for an operation must be set to Y, otherwise the user
sysout will not be written to the data store for that operation.
MAXMVSPAGES(nnnn|4096)
Defines the maximum size (in number of pages) allowed for the MVS™ part of
a job log (JESJCLIN, JESJCL, JESMSGLG, JESYSMSG) to be managed by the
process. If the MVS part of the job log exceeds this value, the job log is not
stored, parser processing is not performed, and the job log is queued again to
the failure destination, as set by the FAILDEST keyword.
For example, if Tot_Rec is the number of records in the job log, the number of
pages for the job log is calculated as (Tot_Rec*135)/4096. Valid values are from
0 to 4096. The default value is 4096.
MAXSYSL(nnnn|0)
Defines the maximum number of user sysout (not lines of sysout) the data
store can send back to the controller. Valid values are from 0 to 10000. If 0 is
specified no user sysout is sent back to the controller. 0 is the default.
User sysout information is NOT required for restart and cleanup processing. A
nonzero value should only be specified if it is necessary to view user sysout
data when a job log is retrieved using the "L" row command (for example if a
user sysout contains information needed by operations to determine how to
rerun a job).
Specifying a nonzero value could cause a large amount of data to be written to
the data store UDF files, so you might need to increase the size or the number
of UDF files.
DSTUTIL
Purpose
The DSTUTIL statement defines the possible maintenance actions that can be done
on the data store database, and are usually invoked by a batch program.
Format
► ►
SEARCH2(value) SEARCH3(value) SEARCH4(value)
► ►
SEARCH5(value) SEARCH6(value) SEARCH7(value)
► ►
SEARCH8(value) SEARCH9(value) SEARCH10(value)
► ►◄
REPLACE(YES|NO)
Parameters
DELSTRUC|DELUNSTR|DELBOTH
Defines the criteria for deleting sysout from the data store database. It is
possible to specify whether structured data (DELSTRUC) or unstructured data
(DELUNSTR) are to be deleted. You can require to delete both types specifying
DELBOTH.
The keyword DDNAME, if coded, identifies the DD name of a data set where
the records will be copied before they are deleted from the database. When
DELBOTH is coded, you must specify two DDnames, for the two different
types of data: the first one is for the unstructured data, the second one is for
the structured data).
The copy on a data set is allowed only in batch mode.
The SEARCHnn keyword (where nn can be a value from 1 to 10) identifies the
criteria selected. The string value has the following format:
CodeNameComparisonOperFieldName
CodeName can assume the following values:
JBNM Job name
JBDT Date
JBTM Time
JBID Job ID
DSID data set ID
STNM
Step name
PSNM
Procedure step name
DDNA
DD name
SYCL SYSOUT class
OLDR Older than
ComparisonOper can assume the following values:
EQ Equal
NE Not equal
Note: All dates must be specified in the format yyyymmdd. For example, the
22nd of July 2002 is coded as 20020722.
All the terms inside the SEARCHn key are logical ANDs, so they must be all
true to select the sysout for the operation. The different search criteria
(SEARCH1 to SEARCH10) are logical ORs, so at least one must be true to run
the command.
EXPSTRUC|EXPUNSTR|EXPBOTH
Defines the criteria for exporting sysout records from the data store database.
It’s possible to specify whether structured data (EXPSTRUC) or unstructured
data (EXPUNSTR) are to be exported.
The keyword DDname is always required and identifies the DD name of a
data set where the records will be exported. You can require to export both
types specifying EXPBOTH: in this case, you must specify two different
ddnames as values in the DDNAME clause. The first one is for the
unstructured data, the second one is for the structured data).
The keywords used in the same clause have the same meaning specified for
the parameters DELSTRUC/DELUNSTR/DELBOTH.
You can also specify selection criteria, coding the SEARCHnn keyword.
IMPORT
Defines the criteria for importing sysout records (previously stored in a
sequential data set) into the data store database.
The keywords have the same meaning as those specified for the previous
parameters. In addition, the REPLACE keyword specifies whether matching
sysout records in the data store data base should be overwritten. The default is
NO. One data set at a time can be imported (only one DDname can be coded).
If both structured and unstructured data is to be imported, you must codify
the parameter IMPORT twice, to process separately the structured and the
unstructured export files. IMPORT can be used by the batch program only
when data store is not operating.
You can also specify selection criteria, coding the SEARCHnn keyword.
RECOVER(PRIMARY)
Indicates that the batch program extracts a data set of keys for all sysout
records stored in the data store database, to enable the recovery of a corrupted
primary key data set. The EQQPKREC DD statement in the batch JCL
identifies the name of the extracted data set. It can be used by the batch
program only when the data store is not operating.
ERDROPTS
Purpose
Format
►► ERDROPTS ERSEQNO ( event reader sequence number ) ►
► ►
10
ERWAIT ( wait limit )
► ►◄
RELDDNAME ( ddname of submit/release data set )
Parameters
ERSEQNO(event reader sequence number)
Defines which event reader is being started. This number must be in the range
1 to 16 and defines the ddname of the input event data set.
The ddname of the corresponding input event data set has the format
EQQEVDnn, where nn is the event-reader sequence number specified as a
2-digit number. If the sequence number is less than 10, you must add a leading
zero. For example, if you specify ERSEQNO(1), the ddname should be
EQQEVD01. Ensure that this ddname is in your JCL procedure.
Note: You can start only one event reader for each input event data set. You
must not specify the same number for ERSEQNO and the event-writer
sequence number (EWSEQNO) if both tasks are active on the same system.
ERWAIT(wait limit|10)
Defines how long the event reader waits (in seconds) before rechecking the
input event data set after all event records have been read. It will influence the
rate with which the ready list is updated.
RELDDNAME(ddname of submit/release data set)
RELDDNAME is used in a shared DASD configuration, where the target
system uses the hold/release function. It identifies the submit/release data set
to which the controller writes release commands. RELDDNAME is required if
events are not created on the same system that the event reader is started on.
The ddname is the same name that you specify in the workstation destination
field and the DASD keyword of ROUTOPTS.
Examples
EWTROPTS
Purpose
The EWTROPTS statement defines run-time options for the event-writer task.
EWTROPTS is required when you specify OPCOPTS EWTRTASK(YES). This
statement is used by a tracker.
Format
(1)
►► EWTROPTS ►
EWSEQNO ( event data set sequence number )
► ►
(2) 10 NO
EWWAIT ( wait limit ) HOLDJOB ( USER )
YES
► ►
END LAST
PRINTEVENTS ( NO ) RETCODE ( HIGHEST )
ALL
► ►
SDEPFILTER ( startpos,stringvalue )
► ►
(2) 860101 (2) 0000
SKIPDATE ( yymmdd ) SKIPTIME ( hhmm )
► ►
ABEND NO
STEPEVENTS ( ALL ) STEPINFO ( YES )
NZERO
► ►◄
NO
SUREL ( YES )
Parameters
EWSEQNO(event data set sequence number)
Starts an event writer with an event-reader function, where the tracker has a
non-DASD connection with the controller. That is, where the tracker is
connected by a VTAM, XCF, or TCP/IP link or where the event writer is
started in the same address space as the controller. You cannot specify
EWSEQNO where HOSTCON(DASD) is specified on the TRROPTS statement.
EWSEQNO eliminates the need for a separate event-reader task. The event
writer writes job-tracking events to the event data set, and also forwards the
events to the task handling communication with the controller. This function
can enhance performance because IBM Workload Scheduler for z/OS need not
write events to the event data set and then read them back again.
If the tracker cannot communicate with the controller, the event writer
continues to collect events and writes them to the event data set. When the
connection is restored, these events are forwarded to the controller for
processing.
Valid values for EWSEQNO are from 1 to 16. If any EVENT READERS is
configured to this same started task, then the value specified for EWTROPTS
EWSEQNO() must be different from any ERDROPTS ERSEQNO() value for
this task. If this task has no ERDROPTS statements, then the EWSEQNO entry
serves only as a flag and its actual value is not important.
Note: EWSEQNO is not used to build the event-writer ddname in the tracker
JCL procedure, as happens with the ERSEQNO keyword of the ERDROPTS
statement for a controller. The ddname is always EQQEVDS.
EWWAIT(wait limit|10)
Defines how long the event writer waits (in seconds) before rechecking the
submit/release data set after all records are read. The wait-limit value is used
only when SUREL(YES) has been specified.
HOLDJOB(USER|YES|NO)
The HOLDJOB keyword tells the IBM Workload Scheduler for z/OS event
writer whether it should place jobs in hold status as they enter this system so
that they can be released at a later time. This might be necessary if some of
your IBM Workload Scheduler for z/OS-planned jobs are submitted by a
non-IBM Workload Scheduler for z/OS process. To prevent such jobs from
running before their predecessors are complete, they should be held as they
enter the system and then released at the correct time.
Use HOLDJOB(NO) when your IBM Workload Scheduler for z/OS-planned
jobs are always submitted automatically by IBM Workload Scheduler for z/OS.
This is the preferred method of running jobs because it is the simplest and
involves the least overhead. When you specify HOLDJOB(NO), no jobs are
held and released.
Use HOLDJOB(USER) if you have IBM Workload Scheduler for z/OS-planned
jobs that must be submitted by a non-IBM Workload Scheduler for z/OS
Note:
| 1. Starting from z/OS V2.2, you can hold jobs until a specific time by setting
| HOLDUNTL in the new JCL statement SCHEDULE. If you set both the
| HOLDUNTL and HOLDJOB(YES) parameters, HOLDUNTL is ignored.
2. IBM Workload Scheduler for z/OS does not use VTAM, XCF, or TCP/IP
connections to transmit release commands for non-IBM Workload Scheduler
for z/OS jobs. If you specify HOLDJOB(YES), release commands for held
jobs that are not in the current plan are transmitted through NJE to a
tracker system. The tracker must be part of the same NJE network as the
controller.
3. If you specify HOLDJOB(USER), this value is valid even if the event writer
subtask is not active. For HOLDJOB(YES), the default value NO is used
when the event writer subtask is not active.
PRINTEVENTS(NO|ALL|END)
Defines how IBM Workload Scheduler for z/OS should create print events
(type 4).
Specify NO if you do not intend to track print operations. No print events are
created.
Note: With z/OS 1.13 and later the JOBRC keyword can be added in the JCLs.
If JOBRC is defined in a JCL with the MAXRC or LASTRC values, the value
entered for RETCODE is overwritten by the JOBREC value. If JOBRC is
defined with the STEP value, it is ignored, and the value entered for
RETCODE is used instead.
SDEPFILTER(startpos,stringvalue)
Defines if and how the scheduler must check the JOB card programmer name,
to decide if a step-end event has to be produced. It is useful in particular if
you use step-level dependency, to avoid specifying STEPEVENTS(ALL), that
might affect the scheduler performance.
It consists of two elements:
startpos
An integer from 1 to 20, which is the maximum length of JOB card
programmer name.
stringvalue
A character string with a maximum length of 20 characters.
If the programmer name contains special characters, such as an imbedded
apostrophe, when specifying startpos consider the final form of the name and
exclude control characters. For example, if the programmer name contains
’T.O’’NEILL’, specify SDEPFILTER(5,NEILL) to filter by NEILL.
If this keyword is omitted, the scheduler does not check the JOB card
programmer name; otherwise the scheduler checks it, by using startpos as the
start position from which to look for a match with stringvalue.
If a match is found, the step-end event is always produced, independently
from other specified criteria, such as the STEPEVENTS value or EQQUX004
exit parameters.
Note: The keyword value is valid until you specify a different value and
restart IBM Workload Scheduler for z/OS.
STEPINFO(YES|NO)
Specify YES to create all the step events related to the jobs you run, and send
them to the primary controller. The default is NO.
SUREL(YES|NO)
Specify YES if a controller submits jobs to this system through a
submit/release data set. YES can be specified only if OPCHOST(NO) is also
specified in the OPCOPTS statement (for details, see “OPCOPTS” on page 110).
The submit/release data set is defined by the EQQSUDS ddname.
Examples
EXITS
Purpose
The EXITS statement defines exit options to IBM Workload Scheduler for z/OS. It
applies to IBM Workload Scheduler for z/OS exits whose names are prefixed with
EQQUX0. You can use the EXITS statement to stop IBM Workload Scheduler for
z/OS from attempting to load a particular exit. You can also use EXITS to change
the default name of the load module. By default, the tracker attempts to load the
EQQUX000, EQQUX004, EQQUX005, and EQQUX006 exits. By default, the
controller attempts to load the EQQUX000, EQQUX001, EQQUX002, EQQUX003,
EQQUX007, EQQUX009, EQQUX011, EQQUX013, EQQUX014 and EQQUXSAZ
exits.
Format
►► EXITS ▼ ►
YES
CALL nn ( NO )
X
► ▼ ►◄
EQQUX0 nn
LOAD nn ( module name )
Parameters
CALLnn(NO|X|YES)
Specifies whether an exit should be loaded. The exit is either the IBM
Workload Scheduler for z/OS exit with suffix nn, or its alternative as specified
by the LOAD nn keyword. The value 'X' allows EQQUX007 to see the
extended status 'X' (waiting for special resource). If you specify this value with
the CALL07 statement, exit EQQUX007 is called and every time an operation
changes its status, IBM Workload Scheduler for z/OS scans the chain of special
resources to see if an operation is waiting for any of them. Use this feature
only when strictly necessary so as not to decrease performance.
Examples
For more information about IBM Workload Scheduler for z/OS exits, see
Chapter 4, “IBM Workload Scheduler for z/OS exits,” on page 215.
FLOPTS
Purpose
The FLOPTS statement defines the options for Fetch Job Log (FL) task.
Format
►► FLOPTS ►
CTLLUNAM ( LU Name ) CTLMEM ( XCFMemName )
► ►
DSTGROUP ( XCFGroupName )
► ►
,
SNADEST ( TrackerDest.DSTdest )
► ►
,
TCPDEST ( TrackerDest.DSTdest )
Parameters
CTLLUNAM(LU Name)
Defines the VTAM application LU name identifying the controller in the SNA
connection between the controller and data store. It is required if the SNA
connection is used between the controller and data store, and must be the
same specified in the data store DSTOPTS CTLLUNAM statement.
You must specify at least the keyword CTLLUNAM, or the keywords
DSTGROUP and CTLMEM.
CTLMEM(XCFMemName)
Defines the XCF member name identifying the controller in the XCF
connection between the controller and data store. It must be specified together
with the DSTGROUP keyword. It is required if the XCF connection is used
between the controller and data store and must be the same specified in the
data store DSTOPTS CTLMEM statement.
DSTGROUP(XCFGroupName)
Defines the XCF group name identifying the controller in the XCF connection
between the controller and data store. It must be specified together with the
CTLMEM keyword. It is required if the XCF connection is used between the
controller and data store.
The XCF group defined to connect the controller to the data store must be
different from the one defined in the XCFOPTS group to connect the controller
to the z/OS tracker.
SNADEST(TrackerDest.DSTdest)
Defines a table of pairs of tracker destinations and data store destinations, each
pair separated by a period, when the data store destinations are LU names.
SNADEST is used by the FL (Fetch Job Log) task to decide from which data
store the job log will be retrieved. Several tracker destinations can be
associated to the same data store only in a system where the spool is shared
(for example, JES2 MAS). The tracker destination of 8 asterisks (********)
identifies the data store associated with a tracker running in the same address
space as the controller. You can connect the controller to SNA and XCF data
stores at the same time, that is, you can specify SNADEST and XCFDEST
together, but you cannot specify the same tracker or data store destinations in
SNADEST and XCFDEST. You must specify at least SNADEST or XCFDEST.
When using a shared DASD connection, you must specify the DDname of the
submit/release dataset. When using a SNA connection, you must specify the
tracker LU name.
TCPDEST(TrackerDest.DSTdest)
Defines a table of pairs of tracker destinations and data store destinations, each
pair separated by a period, when the destinations are TCP/IP destinations. The
following rules apply to the destination sub-values:
v The TrackerDest name can be up to 8 alphanumeric characters. In association
with the host name or IP address, it is used to identify the communication
partners. This sub-value is required.
v The DSTdest consists of a host name or IP address and optionally a port
number:
Examples
HTTPOPTS
Purpose
The HTTPOPTS statement defines the options for tracking jobs and for retrieving
job execution logs that are issued on IBM Workload Scheduler for z/OS Agents.
Format
►► HTTPOPTS ►
10
CLNTHREADNUM ( number of threads )
► ►
15
CONNTIMEOUT ( HTTP timeout interval )
► ►
NO local hostname
ENABLEFIPS ( YES ) HOSTNAME ( hostname )
IP address
► ►
511
HTTPPORTNUMBER ( HTTP port )
► ►
JLOGHDRTEMPL ( member name )
► ►
1
JLOGTHREADNUM ( number of threads )
► ►
100
JOBLOGMAXLINES ( number of lines )
► ►
ONDEMAND
JOBLOGRETRIEVAL ( ONERROR )
► ►
0
PULSEIVL ( heartbeat checking interval )
► ►
10
SRVTHREADNUM ( number of threads )
► ►
CAONLY tws
SSLAUTHMODE ( STRING ) SSLAUTHSTRING ( SSL string )
► ►
SSLKEYRING ( SSL key ring db filename )
► ►
SSLKEYRINGPSW ( SSL key ring psw filename )
► ►
SAF 512
SSLKEYRINGTYPE ( USS ) SSLPORT ( SSL port number )
► ►
TCPIP
TCPIPJOBNAME ( TCPIP started task )
► ►
300
TCPIPTIMEOUT ( TCPIP timeout interval )
► ►
USRINFO
USRMEM ( member name )
► ►
GLOBAL NO
VARTABLES ( APPL ) VARFAIL ( YES )
table1,table2,...
► ►◄
NO
VARSUB ( YES )
Parameters
CLNTHREADNUM(number of threads|10)
The number of threads that are used by the HTTP client task to send more
than one request at the same time. Valid values are from 5 to 100.
CONNTIMEOUT(HTTP timeout interval|15)
The time (in seconds) that an HTTP connection waits before a timeout occurs.
Valid values are from 1 to 10000.
ENABLEFIPS(NO|YES)
Indicates whether the SSL communication must comply with FIPS standards.
INCLUDE
Purpose
The INCLUDE statement reduces the size of the parameter library member that
contains the OPCOPTS and JTOPTS statements. Also, this statement reduces the
maintenance activities for this member.
By using the INCLUDE statement, the definition of the NOERROR table can be
provided by several members of the EQQPARM library. Each of these members
could reside in a different data set. Each data set could be protected by a different
RACF profile.
The net effect is that it becomes possible to divide the NOERROR information into
several parts, each requiring a different access authority.
Note: If you specify multiple members, you cannot use the NOERRMEM
command to update the NOERROR list. Changes to the NOERROR list comes into
effect when the controller is restarted.
Format
,
Examples
INIT
Purpose
The INIT statement defines the run-time options for processing requests that are
sent to IBM Workload Scheduler for z/OS from a PIF application. The parameters
specified in the INIT statement override the settings specified in the INIT request
of the PIF application. INIT is defined in the parameter file identified by the
EQQYPARM DD statement in the JCL of the PIF application and in the parameter
file identified by the EQQPARM DD statement in the server procedure.
Note: If you plan to run PIF applications many times per day from a long-running
non-TSO address space (for example, NetView), to prevent a storage shortage do
not specify the EQQYPARM ddname. Instead, specify the parameters either in the
PIF application or in the controller INTFOPTS initialization statement. When you
run a PIF application by specifying the EQQYPARM ddname, a TSO environment
must be established each time and some of the resources remain allocated until the
task ends. This might lead to a storage shortage, if the commands are issued many
times.
Format
►► INIT ►
N ADOPSEG ( VERS0 )
ADOICHK ( Y )
► ►
CALENDAR ( calendar name )
► ►
CWBASE ( base year for PIF century window )
► ►
N 711231
DATINT ( Y ) HIGHDATE ( 991231 )
cccccc
► ►
REMHOSTNAME ( hostname )
IP address
► ►
425
REMPORTNUMBER ( TCPIP port )
► ►
SUBSYS ( subsystem name ) 0
TRACE ( 4 )
8
| ► ►
USRLEV ( 9 ) NO
10 VERADGRD ( FULL )
YES
► ►◄
NO
VERSRWSN ( FULL )
YES
Parameters
ADOICHK(Y|N)
Use this option to specify whether or not you want AD/OI consistency checks
to be made every time an application is deleted or modified.
Consistency checks involve looking in the application description database for
matches for all the operator instructions in the application. Any operator
instructions without a match are deleted.
The checks are made immediately after the application description PIF action
has completed with a zero return code.
Y Consistency checks are performed whenever an application description
record is deleted or replaced using the PIF.
N (default)
Consistency checks are not performed.
ADOPSEG (VERS0)
PIF applications can use this option to keep the values for certain fields in the
operation part of application descriptions at a Replace.
The ADOPSEG can be used for programs that do not define the fields
following the ADOPWSINFO fields in the ADOP segment, and that do not
keep the value in the empty field at the segment end.
When updating an application description, Replace, the fields following the
ADOPWSINFO in the ADOP segment are not updated, their current values are
kept. When creating an application description, or adding an operation to an
application description, the fields following the ADOPWSINFO fields in the
ADOP segment are given default values.
Examples
The INTFOPTS statement defines the global run-time options for handling requests
from programming interfaces, for example PIF application requests. Specify this
statement for a controller or standby controller. This is a required statement.
Format
►► INTFOPTS ►
00
PIFCWB ( base year for PIF century window )
711231
► PIFHD ( 991231 ) ►◄
cccccc
Parameters
PIFCWB(base year for PIF century window|00)
Defines the origin for the PIF century window. Valid values are 00-99.
The origin is the year that you want to be represented as 00 in the 00 to 99
year span (century window). For example, if the PIFCWB is 72, then 1972 is
treated as 00, 1992 as 20, and 2002 as 30.
Internally IBM Workload Scheduler for z/OS works with a two-digit year
format, so dates are represented as 00 to 99. In order to handle dates before
and after 2000, IBM Workload Scheduler for z/OS has chosen 72 as its base
year. This means that internally, 1972 is represented as 00, 1995 as 23, and 2071
as 99.
When you use PIF applications, the internal dates are presented to PIF
applications. The PIFCWB defines whether the dates are presented as they are
stored, or if they are translated into some other base.
If you choose 72 as the PIFCWB, the dates are presented as stored, 1995 will be
presented as 22 and 2071 as 99. Choosing 72 makes it possible to sort in the
right order dates that are before and after 2000.
If you choose 00 as the PIFCWB, the dates are presented as displayed in the
ISPF dialogs; 1995 as 95, and 2071 as 71. This is the default.
Note: The global PIFCWB setting is overridden if a PIF program specify the
CWBASE parameter of the INIT statement.
PIFHD(991231|711231|cccccc)
Specifies the high date value presented in the default valid-to fields of
applications and run cycles. This date only affects default valid-to dates. You
can select one of these values:
991231 Use this value together with PIFCWB(72).
711231 As displayed in the IBM Workload Scheduler for z/OS dialog. This
date represents 31 December 2071.
Examples
JCCOPTS
Purpose
Format
►► JCCOPTS ►
A
CHKCLASS ( SYSOUT classes )
► ►
INCDSN ( incident file dsname )
► ►
112
JCCQMAX ( maximum queue size )
| ► ►
0
JCCREQUD ( JCC requested delay )
| ► ►
10
JCSAMECHK ( same sysout check limit )
► ►
⌂ 50
SYSOUTDISP ( D ) UMAXLINE ( number of lines )
H x
R
R x
► ►◄
JOB
USYSOUT ( ALWAYS )
NEVER
Parameters
CHKCLASS(SYSOUT classes|A)
Defines the SYSOUT classes that IBM Workload Scheduler for z/OS uses to
check whether SYSOUT is available. You can specify a maximum of 16
SYSOUT classes. The SYSOUT classes are defined as a character string of valid
SYSOUT classes, one character for each SYSOUT class. SYSOUT selection is
also influenced by the value of the SYSOUTDISP keyword.
Any SYSOUT class can be specified in a JES2 system. In a JES3 system, you
must define any SYSOUT class that is to be processed by the job completion
checker:
v As an external-writer SYSOUT class
v As HOLD=EXTWTR and TYPE=PRINT in the JES3 SYSOUT initialization
statement
If you define the SYSOUT CLASS as TYPE=DSISO, IBM Workload Scheduler
for z/OS will be able to process only SYSTEM SYSOUT data sets. For both
JES2 and JES3, the sysout classes defined by CHKCLASS cannot be used by
a sysout archival product, or JES offload, or any other process which could
delete the output before the JCC has processed it.
For example when you need to have a configuration with the data store
subsystem and the tracker with the JCC task active on the same z/OS
system image, there could be compatibility problems if the JCC task options
ask IBM Workload Scheduler for z/OS to delete the sysout output data sets
after the usual analysis. This is because the JCC task might also delete the
duplicated sysout copy created for the data store before it has been
successfully stored. In this specific configuration, to avoid this problem and
to improve the JCC performance (that would be scanning the same sysout
data sets twice), you need to provide a JES class associated to the tracker
destination, to be used for the JCC processing of the sysout data sets, in
CHKCLASS option of JCCOPTS. The mandatory requirement is that it must
not be one of the sysout classes specified in the RCLOPTS parameter
keyword DSTCLASS. In this way the JCC task will never process the output
data sets meant for data store processing. For more information, see
DTCLASS.
No more than one JCC task can process a particular SYSOUT class.
Note: The keyword value is valid even if IBM Workload Scheduler for z/OS
or the JCC subtask is stopped. It is not changed until you specify a different
value and restart IBM Workload Scheduler for z/OS or the JCC subtask.
Notes:
1. The keyword value is valid even if IBM Workload Scheduler for z/OS or
the JCC subtask is stopped. It is not changed until you specify a different
value and restart IBM Workload Scheduler for z/OS or the JCC subtask. If
the data store is used, no requeue will be done.
2. When blank or D is specified, this keyword affects the restart and cleanup
functions and RCLOPTS DSTCLASS keyword should be specified. See
RCLOPTS statement for details.
UMAXLINE(number of lines|50)
Defines how many lines to scan in each user SYSOUT data set. You can specify
0 through 2 147 328 000 lines. The value 0 requests the scanning of all lines.
If you write system dumps to SYSOUT, ensure dump records are not scanned.
USYSOUT(ALWAYS|NEVER|JOB)
Requests scanning of user SYSOUT data sets:
ALWAYS
User SYSOUT data sets are always scanned.
NEVER
User SYSOUT data sets are never scanned.
JOB User SYSOUT data sets are scanned only if there is a job-specific
message table. See “JCC message tables” on page 299 for information
about message tables.
Examples
The JTOPTS statement defines how operations behave at workstations and how
they are submitted and tracked. This statement is used by a primary, backup, or
standby controller.
Format
►► JTOPTS ►
100 000
ALEACTION ( alert action limit , )
nnn
► ►
400 NO
BACKUP ( backup frequency ) CONDSUB ( YES )
NO
► ►
YES CURRENT
CRITJOBS ( NO ) CURRPLAN ( NEW )
► ►
100
DLIMFDBK ( limit for deadline feedback )
► ►
50 NO
DSMOOTHING ( deadline smoothing factor ) DUAL ( YES )
► ►
, NO
ETT ( YES )
ERRRES ( ▼ error code )
► ►
YES
ETTGENSEARCH ( NO , )
JOBONLY
SRONLY
► ►
NO 0
ETTNEWDEP ( YES ) EVELIM ( nnnn )
► ►
NO YES
FIRSTFDBK ( YES ) FTWJSUB ( NO )
► ►
4
HIGHRC ( highest no-error return code )
► ►
YES YES
JOBCHECK ( NO ) JOBSUBMIT ( NO )
SAME
► ►
5 YES
JTLOGS ( nn ) LARGEUSERBUFFER ( NO )
► ►
100
LIMFDBK ( limit for duration feedback )
► ►
0
MAXJSFILE ( maximum size of JS data set )
NO
► ►
32767 NO
MAXOCCNUM ( nnnnnnn ) MCPDATASPACE ( YES )
► ►
30
NEWOILIMIT ( days operator instructions are new )
► ►
,
► ►
1 IP
OFFDELAY ( delay time ) OPINFOSCOPE ( ALL )
► ►
Y Y
OPREROUTEDEFAULT ( N ) OPRESTARTDEFAULT ( N )
► ►
FINAL 0
OUTPUTNODE ( ANY ) OVERCOMMIT ( nnnn )
► ►
6
PLANSTART ( planning period start )
► ►
YES 5
PRTCOMPLETE ( NO ) QUEUELEN ( queue length )
► ►
YES RISKCONFIDENCE ( 1 - 99 )
RECCPCOMPL ( NO )
► ►
, 0
STATIM ( nn )
STATMSG ( ▼ CPLOCK )
EVENTS
WSATASK
GENSERV
► ►
NO R
STEPINFO ( YES ) SUBFAILACTION ( C )
E
RH
XC
XE
XR
► ►
R 0
SUPPRESSACTION ( C ) SUPPRESSPOLICY ( nnn )
E
► ►
ALL ANY
TRACK ( OPCASUB , READYFIRST )
JOBOPT READYONLY
► ►
OCCNAME NO
TWSJOBNAME ( JOBNAME ) USINRC ( YES )
EXTNOCC
EXTNAME
► ►
R
UX001FAILACTION ( )
► ►
LEAVE LEAVE MANUAL
WSFAILURE ( ERROR , , )
RESTART REROUTE IMMED
► ►
LEAVE LEAVE IMMED
WSOFFLINE ( ERROR , , )
RESTART REROUTE MANUAL
► ►
YES
ZCENJSUB ( NO )
► ►◄
YES
ZCHIGHRC ( NO )
DEF (HIGHEST NO ERROR RC)
Where:
NDL The new deadline estimated for the run cycle or operation (considered
as offset in minutes from the IA) to be stored in the application
description database.
ODL The old deadline estimated for the run cycle or operation (considered
as offset in minutes from the IA) currently stored in the application
description database.
ADL The actual deadline, considered as the elapsed minutes between the IA
and the completion time of the occurrence or operation.
DSF The deadline smoothing factor.
Note:
1. IBM Workload Scheduler for z/OS converts the decimal value of a user
abend code to a hexadecimal error code. For example, user abend 123 is
shown as error code X'U07B'.
2. The OSEQ error code is a special case and cannot be reset by ERRRES.
3. With PQ87904 APAR, the ERRRES logic does not apply if the error code is
generated by the EQQCLEAN step, that is a step inserted into a restarted
job by the Restart and Cleanup function.
4. The ERRRES keyword applies also to operations that are run on z-centric
agent workstations.
5. The only valid error codes are those listed in the appendix of Managing the
Workload.
For example, a user submits a job outside of IBM Workload Scheduler for
z/OS for which an operation exists in the current plan. The job abends with
code S806, which is specified in the ERRRES list. IBM Workload Scheduler for
z/OS sets the operation to status A. If the user then resubmits the job after
correcting the error, IBM Workload Scheduler for z/OS again automatically
tracks the job. The status of the operation is changed from A to S when the job
is started.
An operation that has been automatically reset by ERRRES processing is not
resubmitted by IBM Workload Scheduler for z/OS even if SUBMIT=Y is
specified for the operation. Therefore, if an operation that is normally
submitted by IBM Workload Scheduler for z/OS is reset, manually change the
status to R (ready) using the MCP dialog, or through PIF, if you want IBM
Workload Scheduler for z/OS to submit the job again.
If you stop and restart IBM Workload Scheduler for z/OS, or if a new daily
plan has been created, operations that have been reset will have their error
reset indication removed and will be eligible for submission.
ETT (YES|NO)
Specify YES if the event-triggered-tracking function should be initially active
when IBM Workload Scheduler for z/OS is started. Specify NO if the ETT
| If the first keyword value is YES and the second keyword is not specified,
| the best generic match is applied to both job events and special resource
| events.
ETTNEWDEP (NO|YES)
Determines the input arrival time used by the scheduler when solving
dependencies for occurrences that:
v Are being added through ETT.
v Correspond to applications defined with a run cycle referring to the period
ETTRCY1. In this condition, to resolve dependencies the scheduler uses the
input arrival time associated to the run cycle, instead of using the actual
input arrival time, that is the time when the occurrence is added.
The ETTNEWDEP parameter affects the selection of any successor added in the
current plan in the previous conditions. ID does not apply to the resolution of
mandatory successors (because the successor intervals are created before the
predecessor occurrence is added).
Specify YES to have the scheduler use the ETTRCY1 input arrival time both for
the occurrences that are being added to the current plan and the candidate
successors, provided that the successor is an occurrence added through ETT
and corresponding to an application with run cycle referring to ETTRCY1.
Specify NO to have the scheduler use the ETTRCY1 input arrival time only for
the occurrences that are being added to the current plan. In this case, for the
candidate successors the scheduler uses the actual input arrival time.
EVELIM (nnnn)
This keyword defines how often statistic messages related to the STATMSG
keyword are issued.
It is considered only if the value of STATIM is 0, and it defines the number of
events that the event-manager task must process before issuing a new set of
messages.
Valid values are from 0 to 9999.
Note: With PQ87904 APAR, the HIGHRC logic does not apply when the error
return code is generated by the EQQCLEAN step, that is a step inserted into a
restarted job by the Restart and Cleanup function. In this case the operation
status is set to ended in error.
| HOSTJSUB (NO|YES)
| Specify YES if IBM Workload Scheduler for z/OS should submit jobs, start
| started tasks, and issue write-to-operator messages for WTO operations.
| Specify NO if IBM Workload Scheduler for z/OS should not perform these
| functions automatically. This parameter is incompatible with JOBSUBMIT.
| The job-submit option can be changed through the Service Functions dialog
| while IBM Workload Scheduler for z/OS is running.
ITOM (YES|NO)
YES specifies that IBM Tivoli Output Manager and IBM Workload Scheduler
for z/OS are integrated so that the job logs of operations run by IBM Workload
Scheduler for z/OS can be viewed and managed with Tivoli Output Manager.
With this configuration setup, IBM Workload Scheduler for z/OS inserts a
particular string in the log of every operation. The string contains a ><TWS
OCCURRENCE heading followed by this information:
v ID of the application
v Number of the operation
v Input arrival date and time
For example:
//TWSEF020 JOB ACCT,TWS,CLASS=A,MSGCLASS=Q
//*><TWS OCCURRENCE-->DEVAPP 020 1311050201
This string is then located by Tivoli Output Manager, trimmed of the heading,
and used as Output Manager archive name.
The feedback limit used to select the operations for which a long duration alert
must be issued is the value specified for ALEACTION. If ALEACTION is not
set, the value for LIMFDBK is used instead. In this case, the value for the
feedback limit that you can optionally enter in the application description is
ignored.
MAXJSFILE(NO|maximum size of JS data set|0)
IBM Workload Scheduler for z/OS uses a primary and alternate data set for
the JCL repository. IBM Workload Scheduler for z/OS reorganizes the JCL
repository data set that is in use by copying it to the inactive data set and then
switching to the newly copied data set. The value you specify on the
MAXJSFILE keyword defines whether the JCL repository should be
automatically copied and determines how frequently the automatic copy
process should occur.
Specify a maximum size if you want IBM Workload Scheduler for z/OS to
copy automatically. This value also defines how large the current JCL
repository data set is allowed to become before it is automatically copied to the
alternate data set. The size must be specified in megabytes (1MB equals 1,024
kilobytes). The maximum value you can specify is 67 108 864 megabytes. Any
greater values produce unpredictable results. The value specified is converted
into cylinders and rounded to the next whole number. Any value equivalent to
less than 2 cylinders (other than the default value) is set to 2 cylinders. If you
do not specify MAXJSFILE or specify the default value 0, IBM Workload
Scheduler for z/OS performs a copy after the first 50 jobs have been inserted
since it was started. The size of the data set (converted into cylinders) after this
first copy, plus the equivalent of one cylinder, is then used as the value for
MAXJSFILE. After every 50 inserts, IBM Workload Scheduler for z/OS checks
the size of the JS file using an algorithm that is based on the high_used_RBA.
If the high_used_RBA is equal to or greater than the value of MAXJSFILE, a
copy is performed. Specify NO if you do not want IBM Workload Scheduler
for z/OS to copy automatically. If you specify NO, ensure that you request
backups at regular intervals, depending on the workload at your installation.
You can request that IBM Workload Scheduler for z/OS performs a copy
process using the BACKUP command or EQQUSIN or EQQUSINB subroutine,
regardless of the value specified on the MAXJSFILE keyword. For more
information about the BACKUP command, see Managing the Workload. For
more information about the EQQUSIN and EQQUSINB subroutines, see
Chapter 6, “Reporting events to IBM Workload Scheduler for z/OS,” on page
273.
MAXOCCNUM(nnnnnnn|32767)
IBM Workload Scheduler for z/OS maintains an upper limit on the number of
occurrences in the current plan. When this limit is reached, no more
occurrences can be added, either by dialog, the program interface, the event
Note: Do not use this parameter to dynamically rebuild the NOERROR table
using a modify command with the NEWNOERR or NOERRMEM option. If
you need to dynamically rebuild the NOERROR table, use the NOERROR
statement as described in “Purpose” on page 106.
OFFDELAY(delay time|1)
The OFFDELAY parameter defines, in minutes, the time that IBM Workload
Scheduler for z/OS delays actions defined in the WSOFFLINE parameter when
a workstation changes status to offline. The status of the workstation changes
immediately as a response to the offline event being received at the controller,
but IBM Workload Scheduler for z/OS does not take reroute or restart actions
| Note: When the controller has the Dynamic Critical Path feature active, any
| SMOOTHING value that is greater than 100 is internally managed as if the
| smoothing factor default value was set (50). For example, if the smoothing
| factor is set to 200 and the Dynamic Critical Path is active, the affected
| durations will be updated by applying the SMOOTHING default value 50.
IBM Workload Scheduler for z/OS uses the value you specify on the
SMOOTHING keyword if you do not specify a smoothing factor in the details
of an operation. The smoothing factor is in the range 0 to 999. A value of 0
means that the operation is not updated. A value of 100 means that the actual
duration replaces the existing estimated duration of the operation. The new
estimated duration is calculated as follows:
where:
ND The new estimated duration to be stored in application description database.
OD The old estimated duration currently stored there.
AD The actual duration.
SF The smoothing factor.
STATMSG(option list)
Defines the status message types that IBM Workload Scheduler for z/OS will
produce. You can specify one or more of the these values:
CPLOCK
The event-manager subtask issues messages EQQE004I and EQQE005I,
which describe how often different tasks have referenced the
current-plan data set.
EVENTS
The event-manager subtask issues messages EQQE000I, EQQE006I, and
EQQE007I, which describe how many events were processed and
provide statistics for different event types.
WSATASK
The event manager task issues messages EQQE008I and EQQE009I,
which describe statistic information collected by the WSA task.
All these messages are issued according to the following criteria:
v If STATIM has been set to a value different from 0 (by specifying
STATIM(n) in the JTOPS keyword, or by using the modify command
/f procname,STATIM=n), the message is issued approximately every n
minutes, if any events have been processed.
v Otherwise, if EVELIM has been set to a nonzero value (by specifying
EVELIM(n) in the JTOPS keyword, or by using the modify command
/f procname,EVELIM=n), the message is issued approximately every n
events.
v Otherwise, the message is issued approximately once every n events,
where n is half the JTOPTS BACKUP keyword value (default
BACKUP value is 400).
GENSERV
The general-service subtask issues messages EQQG010I to EQQG013I,
which describe how often different tasks have been processed and how
long the general-service queue has been. IBM Workload Scheduler for
z/OS issues these messages every 30 minutes, or every n minutes if the
value of STATIM is nonzero (by specifying STATIM(n) in the JTOPTS
keyword, or by using the modify command /f procname,STATIM=n), if
any requests have been processed.
For more information about any of these messages, refer to Messages and Codes.
STATIM(nn)
Defines the time interval, in minutes, to be used for issuing the statistic
messages related to the STATMSG keyword. Valid values are from 0 to 99.
If this keyword is omitted, or if 0 is specified, the time interval is not used,
and statistic messages are issued every n events, where n is the EVELIM values
or half of the BACKUP value if EVELIM is set to 0. The value for STATIM can
be dynamically updated using the modify command, /f procname,STATIM=nn.
STEPINFO(YES|NO)
The suppress actions are not all applicable to the operations defined on
fault-tolerant workstations in an end-to-end with fault tolerance capabilities
environment: for operations with the centralized script option, the applicable
Note:
1. For operations running on fault-tolerant workstations, status E is allowed
only for centralized scripts. However, for the controller and fault-tolerant
agent the status does not match until a batch DP job (Symphony Renew, CP
extend, CP replan) is run.
2. IBM Workload Scheduler for z/OS considers the time buffer created by the
SUPPRESSPOLICY keyword when deciding if a time-dependent operation
is late.
Note:
SUPPRESSPOLICY(nnn|0)
Specifies how IBM Workload Scheduler for z/OS should control
time-dependent operations with the suppress-if-late option. You can use
SUPPRESSPOLICY to create an input-arrival buffer for these time-dependent
operations rather than a specific input-arrival time.
The SUPPRESSPOLICY value is a percentage in the range 0 to 999. A value of
0 means that IBM Workload Scheduler for z/OS does not try to start the
operation if its input-arrival time has passed. If you specify a nonzero value,
IBM Workload Scheduler for z/OS multiplies the estimated duration of the
operation by this percentage. If the resulting figure lies within the time
remaining until the operation deadline, the operation is started. Otherwise, the
operation is considered late and is not started by IBM Workload Scheduler for
z/OS.
The following examples show how SUPPRESSPOLICY is used. In these
examples, an operation has become ready. The input-arrival time of the
operation passed 15 minutes ago, and its deadline will expire in 45 minutes.
The operation has an estimated duration of 60 minutes.
SUPPRESSPOLICY(0)
The operation is considered late because the input-arrival time has
passed. The action specified on the SUPPRESSACTION keyword is
taken.
SUPPRESSPOLICY(50)
The operation is started because 30 minutes (50% of 60 minutes) is less
than the 45 minutes remaining to the deadline.
SUPPRESSPOLICY(100)
The operation is considered late because 60 minutes (100% of 60
minutes) is greater than the time remaining to the deadline. The action
specified on the SUPPRESSACTION keyword is taken.
SUPPRESSPOLICY(200)
The operation is considered late because 120 minutes (200% of 60
minutes) is greater than the time remaining to the deadline. The action
specified on the SUPPRESSACTION keyword is taken.
The suppress-if-late option on operations defined on fault-tolerant workstations
with no centralized script option and not using any special resource is not
handled directly by the Controller, but is stored in the Symphony® file as "until
time", see the IBM Workload Scheduler for z/OS: Reference Guide. The until time
value is set using the SUPPRESSPOLICY with the same algorithm as for the
where:
X Can be one of the following values:
v J, for normal operations
v P, for jobs representing pending predecessors
v R, for recovery jobs
Num The operation number.
Ext A sequential decimal number that is increased every time an operation
is deleted and re-created
ApplicationName
The name of the occurrence to which the operation belongs.
If you set EXTNAME, EXTNOCC, or JOBNAME the job name in the
Symphony file is made up according to either of the following formats:
X_Num_JobInfo
When the job is created.
X_Num_Ext_JobInfo
When the job is deleted and re-created in the current plan.
where:
X Can be one of the following values:
v J, for normal operations
v P, for jobs representing pending predecessors
v R, for recovery jobs
For jobs representing pending predecessors, the job name is in all cases
generated by using the OCCNAME criterion. This is because, in the
case of pending predecessors, the current plan does not contain the
required information (excepting the name of the occurrence) to build
the Symphony name according to the other criteria.
Num The operation number.
Ext The hexadecimal value of a sequential number that is increased every
time an operation is deleted and re-created
JobInfo Depends on the chosen criterion:
For EXTNAME
JobInfo is filled with the first 32 characters of the extended job
Note: Using the job name (or the extended name as part of the job name) in
the symphony file implies that it becomes a key for identifying the job. This
means also that the extended name or job name is used as a key for addressing
all the events directed to the agents. For this reason, be aware of the following
facts for the operations included in the symphony file:
v Editing the extended name is inhibited for operations created when the
TWSJOBNAME keyword is set to EXTNAME or EXTNOCC.
v Editing the job name is inhibited for operations created when the
TWSJOBNAME keyword is set to EXTNAME or JOBNAME.
| USINRC(YES|NO)
| Specify YES if you want that the ERROR_CODE field set by a status change
| program (for example, the EQQUSIN subroutine invoked by System
| Automation) is processed, even if the operation status was changed to C
| (Complete). The error code, when set, is used to evaluate any conditional
| dependency defined for the operation.
| The default value is No, meaning that the ERROR_CODE field set by a status
| change program for a complete operation is always ignored.
UX001FAILACTION(R)
This keyword is specified when the EQQUX001 exit is involved.
Note:
1. If you set the restartable option of an operation to NO, the operation is
not processed. It remains in the started status.
2. Consider this note if you use a standby controller, running with the
TAKEOVER(HOSTFAIL) parameter in the XCFOPTS statement. If you
selected the WSFAILURE(RESTART,REROUTE,IMMED) options and the
controller abnormally ends or is cancelled, while the LPAR that the
controller is running on remains active, jobs might be submitted again
even though they are currently running, resulting in the same job being
run twice.
3. For dynamic and remote engine workstation types, this keyword
supports only the value LEAVE. If you specify any other value, it is
forced to LEAVE.
v The second keyword value defines reroute actions for workstation failure
situations. Specify REROUTE to route operations, whose reroutable option is
YES, to the alternate workstation. Specify LEAVE to leave operations to be
scheduled on the original workstation; this is the default value. Rerouting
does not occur for these operations.
v The third keyword value defines the action to be taken when a workstation
becomes active again after a failure situation. Specify IMMED to
automatically set the status of the workstation to available and withdraw
any rerouting immediately when an event indicates that the workstation is
operational. Specify MANUAL to indicate that the status of the workstation
should be changed manually when a workstation available indication is
received; this is the default value. IBM Workload Scheduler for z/OS issues
an MLOG message to inform the operator that the event has been received.
WSOFFLINE(ERROR|RESTART|LEAVE, REROUTE|LEAVE, MANUAL|IMMED)
Defines the actions that are to be taken when a workstation offline situation
occurs (unless the workstation is 'waiting for connection' at start and no
previous offline situation occurred). This means that the controller cannot
communicate with the tracker at the destination defined for the workstation.
This might occur because the tracker has not been started yet (having
Note:
1. If you set the restartable option of an operation to NO, the operation is
not processed. It remains in the started status.
2. Consider this note if you use a standby controller, running with the
TAKEOVER(HOSTFAIL) parameter in the XCFOPTS statement. If you
selected the WSOFFLINE(RESTART,REROUTE,IMMED) options and the
controller abnormally ends or is cancelled, while the LPAR that the
controller is running on remains active, jobs might be submitted again
even though they are currently running, resulting in the same job being
run twice.
3. For dynamic and remote engine workstation types, this keyword
supports only the value LEAVE. If you specify any other value, it is
forced to LEAVE.
v The second keyword value defines reroute actions for workstation offline
situations. Specify REROUTE to route operations, whose reroutable option is
YES, to the alternate workstation. Specify LEAVE to leave operations to be
scheduled on the original workstation; this is the default value. Rerouting
does not occur for these operations.
v The third keyword value defines the action to be taken when a workstation
becomes active again. Specify MANUAL to indicate that the status of the
workstation should be changed manually when a workstation available
indication is received. IBM Workload Scheduler for z/OS issues an MLOG
message to inform the operator that the event has been received. Specify
IMMED to automatically set the status of the workstation to available and
withdraw any rerouting immediately when an event indicates that the
workstation is operational; this is the default value.
| ZCENJSUB (NO|YES)
| Specify YES if IBM Workload Scheduler for z/OS should submit jobs running
| on z-centric, dynamic, and remote engine workstations. Specify NO if IBM
| Workload Scheduler for z/OS should not automatically submit jobs running on
| z-centric, dynamic, and remote engine workstations. This parameter is
| incompatible with JOBSUBMIT.
| The job-submit option can be changed through the Service Functions dialog
| while IBM Workload Scheduler for z/OS is running.
Examples
MONOPTS
Purpose
The MONOPTS statement defines monitoring options needed for IBM Workload
Scheduler for z/OS to work with IBM Tivoli Monitoring. This statement is used by
a controller.
The MONOPTS statement defines the information needed to activate an IBM Tivoli
Monitoring activity. If this statement is provided, the controller starts the
monitoring task used to send events to the Tivoli Enterprise Portal client interface.
Format
►► MONOPTS MONHOSTNAME ( hostname ) ►
NO IP address
BULKDISC ( YES )
Parameters
BULKDISC YES|NO)
Describes the bulk discovery policy. Valid values are YES and NO, the default
is NO.
NO IBM Workload Scheduler for z/OS does not perform an automatic
discovery. A discovery is possible only manually using the TSO
command.
YES A bulk discovery is performed each time a daily planning action is
requested. A discovery can also be requested manually.
MONHOSTNAME(hostname|IP address)
Specifies the hostname or the IP address of the remote monitoring application.
For the integration with IBM Tivoli Monitoring, this is the hostname of the
system where the IBM Tivoli Monitoring agent is installed. This parameter is
mandatory.
MONPORT(value|7500)
This parameter identifies the port number of the remote monitoring
application. This is the port number used by the IBM Tivoli Monitoring agent.
If not specified, the default value of 7500 will be used. The value specified here
must correspond to the value defined on the Tivoli Monitoring agent.
Examples
MONPOL
Purpose
The MONPOL statement defines the monitoring policy based on which IBM
Workload Scheduler for z/OS operations are automatically monitored. The
operations satisfying the specified policy, together with all operations manually
flagged using EXTERNAL MONITOR=YES, constitute the current set of monitored
operations. One or more values can be specified for the MONPOL statement.
This statement is only used in conjunction with the MONOPTS statement (used by
IBM Tivoli Monitoring) or when EXTMON = YES has been specified in the
OPCOPTS statement (used by Tivoli Business Systems Manager).
Parameters
(OPERATION CRITICAL||ERROR|LATE|DURATION|MANUAL)
Defines the criteria used to select operations to be monitored by IBM Tivoli
Monitoring or by Tivoli Business Systems Manager
CRITICAL
The scheduler will monitor operations that are:
v Eligible for WLM assistance.
v Included in a critical network. In particular, when the scheduler
recalculates a critical path or changes the risk level of an operation,
it sends an event to the IBM Tivoli Monitoring agent.
v Added to the hot list.
ERROR
All operations that ended in error will be monitored. This is the default
value.
LATE All late operations will be monitored. An operation is considered late if
it reaches its latest start time and is not started, complete, or deleted.
DURATION
All operations that run beyond their estimated duration time will be
monitored.
MANUAL
Only those jobs explicitly flagged by the user as "monitored" will be
selected. This value excludes all other values specified, with the
exception of CRITICAL.
Note:
1. The MONPOL statement is not retroactive. Based on the specified policy,
operations will be selected for monitoring only when their next change of
status matching the MONPOL criteria occurs. If an operation is in one of
the specified states before MONPOL is in effect, it will not be monitored.
2. When an operation has been promoted to "monitored" for a LATE or
DURATION condition, it will continue to be monitored even if the
EXTERNAL MONITOR flag for the operation is subsequently changed to
NO.
Examples
NOERROR
Purpose
The NOERROR statement defines a list of error codes that, for job-tracking
purposes, are treated as normal completion codes. This statement is used by a
controller or standby controller. It can be specified more than once.
The NOERROR statement performs the same function as the NOERROR keyword
on the JTOPTS statement. You can use NOERROR statements with, or instead of,
the NOERROR keyword. By creating NOERROR statements, you can specify a
greater number of error codes than is possible with only the NOERROR keyword
of the JTOPTS statement. You might also find it useful to group error codes on
different NOERROR statements.
For example, to delete all NOERROR codes defined by member M1, change M1 to
contain only comments and enter the command:
F ssnm, NOERRMEM(M1)
Note:
1. If you used either of the previous commands to dynamically update the
NOERROR table, and you need to restart the controller with
CURRPLAN(NEW) in the JTOPTS initialization statement, update the
NOERROR definitions also in the EQQPARM library, before stopping and
restarting the controller. If you do not do this, the scheduler does not keep the
updated data when restarting.
2. If you use the command:
F ssnm, NOERRMEM(member)
the scheduler replaces any entry for the same member in the current
NOERROR table, provided that the entry is correct and consistent with the
previous ones.
3. If you want to delete an entry from the current NOERROR table, perform the
following steps:
a. Delete or comment out that entry in the same member you used to define
it, for example M1 member.
b. Use the command
F ssnm, NOERRMEM(M1)
4. Do not use the asterisk (*) and percent sign (%) as part of the error code when
it is not a numeric return code (for example, CAN, JCLI, and so on) and when
relational operators, different from EQ or NE, are specified.
Parameters
LIST(error code entry, ...,error code entry)
Specify one or more error codes that, for job-tracking purposes, are treated as
normal completion codes. Entries in the list are in two formats: a general
format that applies to all jobs and started tasks; and a specific format that
applies to a single job or started task, or to a set of jobs or started tasks.
A general entry can be:
v A 4-digit job or started-task return code (nnnn)
v A system abend code (Sxxx)
v A user abend code (Uxxx)
v An IBM Workload Scheduler for z/OS-defined code.
A specific entry has the following format:
jobname.stepname.procstepname.errorcode
jobname
The name of a job or started task as specified in the job-name field of
the operation. The maximum length is 8 characters.
stepname
The name of a step that invokes an in-stream or cataloged procedure.
This is always the name of an EXEC PROC statement. The maximum
length is 8 characters.
This value is meaningless for an IBM Workload Scheduler for z/OS
Agent workstation.
procstepname
The name of a step that invokes a program. This is always the name of
an EXEC PGM statement. The maximum length is 8 characters.
This value is meaningless for an IBM Workload Scheduler for z/OS
Agent workstation.
errorcode
The error code that is not to be considered an error. The error code can
be a positive or negative number. For negative numbers, you can
specify -n where n is a number starting with the minus (-) symbol with
a maximum of 4 digits. For positive numbers, you can specify n where
n is a number with a maximum of 4 digits; in this case the plus (+)
symbol can be omitted.
operator
The name of the relational operator to be used together with the
specified error code. This field is optional and can be up to two
characters in length. Valid values are:
EQ Equal to (this is the default).
GE Greater than or equal to.
GT Greater than.
LE Less than or equal to.
When you include an entry in the specific format, the first four names are
required. That is, there must be at least three periods.
You can use the asterisk (*) and percent sign (%) as part of the names to create
a generic name that can match many values.
An asterisk can represent a character string of unknown length. A single
asterisk matches against any name, including a blank name. Two adjacent
asterisks match the same values as a single asterisk. More than two adjacent
asterisks match a specific error code range, but for this purpose you are
recommended to use the operator TO. For example, to match the error codes
from 0 to 999, from 1000 to 1999, from 2000 to 2999, and from 3000 to 3999,
you specify either of the following:
NOERROR LIST(********.********.********.0*** ,
********.********.********.1*** ,
********.********.********.2*** ,
********.********.********.3*** )
OR
NOERROR LIST(*.*.*0.TO.3999)
The second statement, using the operator TO, is preferred and does not require
the processing of redundant multiple asterisks.
Use a percent sign to represent a single character. A single percent sign
matches any character in a specific position, except blank.
The scheduler parsing process performs the following logical checks:
v Duplicate entries, for example
(*.*.*.10.EQ, *.*.*.10.EQ)
v Overlapping and consistent entries, for example
(*.*.*.10.TO.50, *.*.*.15.EQ)
v Inconsistent entries, for example:
–
(*.*.*.100.EQ, *.*.*.100.NE)
–
(J*.S*.P%S*.120.GE,*.*.*.115.GT)
–
Note:
| 1. IBM Workload Scheduler for z/OS-defined error codes OSUB, OSUF, OSUP,
| OJCV, OSEQ, and JCLI are always treated as errors.
2. To use the NOERROR keyword for a specific job or started task steps, the
event writer options, as specified in the EWTROPTS initialization
statement, must be set as follows:
v The STEPEVENTS keyword must specify either ALL or NZERO.
v The RETCODE keyword must specify HIGHEST.
3. With PQ87904 APAR, error codes generated by the EQQCLEAN step, that
is a step inserted into a restarted job by the Restart and Cleanup function,
cannot be suppressed by the NOERROR logic.
4. When you set the errorcode name to an IBM Workload Scheduler for
z/OS-defined code (for example JCLI), set the operator name to EQ.
5. The only acceptable error codes are those listed in Appendix E of Managing
the Workload.
6. If JCC EID processing can be done for a job, you must not perform a
NOERROR checking for the same job, even for a different EID return code.
Examples
and
*.*.*.10.TO.15
, the scheduler issues a warning message and does not add the second
entry.
▌7▐ Any job that ends with an abend code greater than 0C6, is treated as
having ended normally.
OPCOPTS
Purpose
The OPCOPTS statement defines run-time options to IBM Workload Scheduler for
z/OS. This statement is used by a tracker, controller, standby controller, or backup
controller.
Format
►► OPCOPTS ►
NO NO
APPCTASK ( YES ) ARM ( YES )
► ►
STDAR MLOG
ARPARM ( member name ) AUTOMATIONMSG ( SYSLOG )
BOTH
NONE
► ►
BUILDSSX ( MERGE ) IBM-037
REBUILD CODEPAGE ( host system codepage )
► ►
this subsystem
CONTROLLERTOKEN ( subsystem name )
► ►
40
CPBPLIM ( CP buffer pool size , PS )
► ►
DB2SYSTEM ( DB2 subsystem ) NO
E2EOSEQ ( YES )
► ►
STDERDR 1
, ERDRTASK ( number of event readers )
► ►
0 NO
EXIT01SZ ( number of JCL lines ) EXTMON ( YES )
► ►
STDEWTR NO
EWTRPARM ( member name ) EWTRTASK ( YES )
► ►
YES 0
GDGNONST ( NO ) GMTOFFSET ( offset value )
► ►
5 GLOBAL
GSTASK ( number of parallel requests ) GTABLE ( table ID )
► ►
STDJCC NO
JCCPARM ( member name ) JCCTASK ( YES )
► ►
, 5000
JESPLEX ( System Name ) MAXHISTORYROWS ( number of rows )
► ►
0 EQQMLOG
MAXSUBJOBS ( number of jobs ) MLOGPROCNAME ( procedure name )
► ►
NCFAPPL ( VTAM LU name ) NO
NCFTASK ( YES )
► ►
YES YES
NOERRCONCHECK ( NO ) OPCHOST ( NO )
MSG BACKUP
STANDBY
PLEX
► ►
NO STDOSLC
OPERHISTORY ( YES ) OSLCPARM ( member name )
► ►
OUTCOL ( started task name ) NO
OUTPUTWTRID ( YES )
► ►
NO NO
RCLEANUP ( YES ) RCLPASS ( YES )
► ►
400 NO
REAPPLYCOUNT ( number of reapplied events ) RECOVERY ( YES )
► ►
NO STDRODM
REMJCLDIRECTIVES ( YES ) RODMPARM ( member name )
► ►
NO NO
SECHECK ( ALL ) SERESETJS ( YES )
OPERONLY
► ►
, NO
SPIN ( YES )
SERVERS ( ▼ Started task name )
► ►
TEMPORARY NO
SSCMNAME ( module name , PERMANENT ) SUPPRESSENF ( YES )
► ►
0 1
SWITCHMLOGLIM ( number of records ) SYSPLEXID ( Sysplex Id )
► ►
YES TPLGYSRV ( server name )
TASKUSR ( NO )
► ►
SCAN VARFAIL ( & % ? ) NO
VARSUB ( YES ) VARPROC ( YES )
NO
► ►
0
WAITREL ( waiting time )
► ►◄
20
WLMJOBPR CONDITIONAL ( percent )
WLM ( class name , policy name )
DURATION
DEADLINE
LATESTSTARTTIME
Parameters
APPCTASK(YES|NO)
Specify YES if an AS400 tracker is used or there are programs using the API
interface. The appctask is not required for the IBM Workload Scheduler for
z/OS Server communication. You can specify APPCTASK for a tracker and a
controller.
ARPARM(member name|STDAR)
Defines the name of the member in the EQQPARM data set that contains an
AROPTS statement for the automatic job-recovery task.
ARM(YES|NO)
The z/OS Automatic Restart Manager (ARM) can reduce the impact of an
unexpected error to IBM Workload Scheduler for z/OS because z/OS can
restart it automatically, without operator intervention.
Specify YES if automatic restart of the failed IBM Workload Scheduler for z/OS
component should be activated, and define the component in the ARM policy.
The element name comprises the string "OPC" , the SYSTEMID, and the
SUBSYSTEM name. ARM recovery of the failed IBM Workload Scheduler for
z/OS component is possible in the same image (restart-in-place). This feature
allows the recovery of the tracker and a fast restart of the controller and the
server. In addition, restart-in-place does not reduce the number of standby
controllers when there is a controller failure. You can customize the number of
Note that message EQQE123I is logged into MLOG, regardless of the value
you set for this keyword. This option is valid only if you run System
Automation version 3.1 (with the appropriate maintenance level installed), or
later.
BUILDSSX(MERGE|REBUILD)
Defines if the subsystem communication vector table (CVT) extension for IBM
Workload Scheduler for z/OS, the SSX, should be rebuilt at a new level when
the address space is started. The SSX is created at subsystem initialization by
the EQQINITM module. If the EQQINITM module has since been updated, by
maintenance or because you are installing a new release or modification level
of IBM Workload Scheduler for z/OS, use the BUILDSSX keyword to avoid a
z/OS IPL.
Specify MERGE when operational data, such as the event-writer queue, should
be copied to the new SSX. This ensures that the new event-writer queue is
primed with events queued to the old SSX block. Use this option when starting
an IBM Workload Scheduler for z/OS address space after installing
maintenance updates.
Specify REBUILD when you are migrating to, or falling back from, a new
release or modification level of IBM Workload Scheduler for z/OS. The
event-writer queue from the old SSX is not referenced in the new SSX. Ensure
you also identify the new subsystem communication module name using the
SSCMNAME keyword.
Note:
1. The PTF coverletter ++HOLD section identifies the service updates that
require the SSX be rebuilt.
2. MERGE cannot be used when the old and new SSX blocks are built for
different FMIDs. Do not use MERGE when migrating to, or falling back
from, a new release or modification level of IBM Workload Scheduler for
z/OS.
3. If you specify BUILDSSX(REBUILD) to migrate to, or fallback from, a new
release or modification level of IBM Workload Scheduler for z/OS, ensure
you also specify the SSCMNAME keyword.
4. The BUILDSSX parameter should be removed after the next IPL of the
z/OS system as it is no longer required.
CODEPAGE(host system codepage|IBM – 037)
The name of the host code page. This value is used by the monitoring task to
The following is a list of the EBCDIC code pages for EURO support:
IBM–1140
Finland, Sweden
Note:
1. If no event-reader tasks should be started, you must specify ERDRTASK(0).
2. On controller side, separate event-reader tasks must be started when there
are trackers connected via shared DASD.
3. On tracker side, it is recommended (for performance reasons) not to start a
separate event-reader task by setting ERDRTASK(0). The event reader
function should be activated in an event-writer task by specifying
EWSEQNO on the EWTROPTS statement.
EWTRPARM(member name|STDEWTR)
Defines the name of the member in the EQQPARM data set that contains an
EWTROPTS statement for the event-writer task.
EWTRTASK(YES|NO)
Specify YES if the IBM Workload Scheduler for z/OS subsystem should start
an event-writer task to create events in an event data set.
GDGNONST(YES|NO)
If you set this keyword to No, IBM Workload Scheduler for z/OS tests the
JCFGDG section to recognize if a data set is a GDG member. This means that
the data set triggering function does recognize as GDG the data set referenced
in the JCL in expanded format.
Note: The restart and cleanup function might not work properly wih GDG.
If you set this keyword to Yes, IBM Workload Scheduler for z/OS assumes that
a data set having its last qualifier syntax compatible with a GDG member, is a
GDG member.
| E2EOSEQ(YES|NO)
| In end-to-end scheduling with fault tolerance capabilities, determines if the
| event related to a manual status change is sent. If you set it to NO (default),
| the events are not sent; this prevents an error code OSEQ from being issued
| when you manually modify an operation within an end-to-end with fault
| tolerance environment, after a Symphony renew was already run.
| If you set it to YES, the events related to a manual status change are always
| sent. This might result in additional AWSBHT019E messages issued, for
| example when the event about an operation status change is sent and that
| operation in the Symphony file is already in that status; the status change
| event is then discarded.
EXIT01SZ(number of JCL lines|0)
This keyword, if specified with a nonzero value, tells IBM Workload Scheduler
for z/OS that the JCL size can be changes using user exit 01, and that the new
JCL size cannot be greater than the value specified.
Note: This parameter only enables IBM Workload Scheduler for z/OS to
bypass GMT synchronization processing, and does not enable the correct
interpretation of the timestamp in events received from the tracker when the
connection is established. So the actual start time and end time of related
operations are deviated by the amount of the specified offset.
GSTASK(number of parallel requests|5)
Defines the number of dialog requests that can be handled simultaneously by
the general-service subtask to a maximum of 5. So GSTASK(1) does not permit
parallel processing of requests, but GSTASK(5), the default value, allows
maximum parallel processing.
GTABLE(table ID|GLOBAL)
Defines the name of the global JCL-variable table for the IBM Workload
Scheduler for z/OS complex. This table contains JCL variable definitions that
can be used for any operation within the IBM Workload Scheduler for z/OS
complex. The global variable table is searched when a table (or variable within
a table) that is referenced by an operation cannot be found.
If you schedule end-to-end with fault tolerance capabilities, set this keyword to
the same value as the value of the GTABLE keyword in the BATCHOPT
statement
You can specify only one table ID for the IBM Workload Scheduler for z/OS
complex. IBM Workload Scheduler for z/OS uses the default name GLOBAL if
you do not specify a table ID.
JCCPARM(member name|STDJCC)
Defines the name of the member in the EQQPARM data set that contains a
JCCOPTS statement for the job-completion-checker task.
JCCTASK(YES|NO|)
Specify JCCTASK (YES) if the job-completion checker function is to be used.
Specify JCCTASK (NO) if the job-completion checker function is not to be
used.
JESPLEX(list of system names)
Provides a list of the system names within the JESplex where the tracker
belongs. Each system name can be up to 8 characters.
where procname is the name of the IBM Workload Scheduler for z/OS JCL
procedure and nnnn is the maximum number of jobs.
MLOGPROCNAME(procedure name|EQQSMLOG)
The name of the procedure that the controller must run to copy the inactive
MLOG file into the GDG data set (previously defined by the EQQPCS12
sample) following an MLOG switching routine.
EQQSMLOG is the default procedure name. It is available in the EQQSMLOG
installation sample that you can install with the EQQJOBS installation aid,
customize, and add in the user.proclib to make it accessible by the controller.
See also Using two message log (MLOG) data sets in IBM Workload Scheduler
for z/OS: Planning and Installation.
NCFAPPL(VTAM LU name)
Specify the VTAM LU name associated with the subsystem. This keyword is
required if NCSK(YES) is specified.
NCFTASK(YES|NO)
Specify YES if the subsystem should start a network communication function
(NCF) task. That is, communication is through VTAM.
NOERRCONCHECK(YES|NO|MSG)
Defines which level of check the scheduler performs when adding entries to
the NOERROR table. Specify one of the following:
YES A consistency check is active. The scheduler does not add inconsistent
entries to the NOERROR table and issues EQQN069W messages in the
controller message log to indicate the inconsistencies. It is the default
setting.
NO To force the scheduler to update the NOERROR table even after
detecting inconsistent entries. Related EQQN069W messages are not
issued. EQQN098I message (informing that the table has been updated
Note: If you specify RECOVERY(NO), you cannot use the Service Functions
dialog to activate the automatic-job-recovery task.
REMJCLDIRECTIVES(YES|NO)
Defines if JCL directives are to be removed from the JCL at submission time.
Specify YES to remove the directives from the JCL at submission time. In this
case, the scheduler removes the directives before submitting the JCL, therefore
the job output does not contain the directives.
Specify NO to keep the directives in the JCL at submission time. In this case
the job output contains the directives.
RODMPARM(member name|STDRODM)
Specifies the member in the EQQPARM data set that contains RODMOPTS
statements for the RODM (resource object data manager) subtask.
RODMPARM is not used by a tracker.
RODMTASK(YES|NO)
IBM Workload Scheduler for z/OS support for RODM (resource object data
manager) lets you associate fields of special resources in the current plan with
fields of RODM classes or RODM objects. Support for RODM requires that:
v A tracker is started on the same z/OS image as the RODM subsystem that
requests are sent to, and RODMTASK(YES) is specified for both the tracker
and the controller.
v An event writer is started in the IBM Workload Scheduler for z/OS address
space that communicates with RODM. This address space creates resource
events (type S) from RODM notifications, which IBM Workload Scheduler
for z/OS uses to update the current plan.
v The controller is connected to the tracker through XCF, NCF, TCP/IPor a
submit/release data set.
v Each address space has a unique RACF user ID if more than 1 IBM
Workload Scheduler for z/OS address space communicates with a RODM
Note: When the JOB card is tailored to insert or replace the JESLOG=NOSPIN
keyword, any comments on the right might be ignored and could show
truncated in the submitted JCL.
SSCMNAME(module name,PERMANENT|TEMPORARY)
The first keyword value defines the name of the subsystem communication
module to be used instead of EQQSSCMM that was loaded at IPL. The second
keyword value specifies if the module should replace the one loaded at IPL.
Use this keyword to load an updated version of the module before a scheduled
IPL. The module you specify must reside in an APF-authorized library defined
by either the STEPLIB ddname or LNKLSTnn concatenation. If SSCMNAME is
not specified or specifies a module that cannot be located in an authorized
library, IBM Workload Scheduler for z/OS events continue to be generated by
the EQQSSCMM loaded at IPL.
Note:
1. The PTF cover letter ++HOLD section identifies service updates that require a
new subsystem communication module to be loaded.
2. Ensure you specify this keyword when BUILDSSX(REBUILD) option is
used to migrate to, or fallback from, a new release or modification level of
IBM Workload Scheduler for z/OS.
3. The SSCMNAME keyword should be removed after the next IPL as it is no
longer required.
SUPPRESSENF(YES|NO)
Specifies if activation of the ENF 57 and ENF 41 listener exits must be
cancelled.
YES Exits ENF 57 and ENF 41 are not to be activated although it is marked
for activation (because a value other than NO was specified for
SECHECK).
NO Activation of the exits is not to be cancelled. This is the default.
You should not set this parameter to YES on trackers located in a
sysplex that is not the one where the controller is. You can cancel
activation of the exits on trackers that belong to the same sysplex as
the controller only if there is a tracker in the same MVS image as the
controller and the ENF exits are active (SECHECK is not set to NO).
SWITCHMLOGLIM(number of records|0)
Specifies how many records must be in the active message log (MLOG) before
the MLOG switching function is started. The MLOG switching function stops
the running MLOG file, copies it into a GDG data set, and starts the alternate
MLOG file. The alternate MLOG file records upcoming messages until the
SWITCHMLOGLIM value is reached again, and the process is repeated.
The default value is 0. It means that the MLOG switching function is not to be
run. If the value is greater than 0, the function is activated; however, if no DD
EQQMLOG2 is defined in the started task JCL, or if the name is already
locked, the function cannot be activated and the following message is issued:
EQQZ408W SWITCHMLOGLIM PARAMETER IS SPECIFIED BUT EQQMLOG2 DATA SET IS NOT AVAILABLE.
MLOG SWITCH FUNCTION IS NOT ACTIVATED.
Note: The fact that a job exceeds its expected duration does
not necessarily imply that it is running late or that it will
negatively impact the plan as a whole. Specifying this policy
could mean that extra resource is dedicated to a job when not
strictly necessary.
DEADLINE
When a critical job runs beyond its deadline time (calculated as
Latest Start Time + Duration), IBM Workload Scheduler for
z/OS moves it to a higher-performance service class.
Note: If you use the default member name for ARPARM, ERDRPARM,
EWTRPARM, JCCPARM, or RODMPARM, you must define the member.
Examples
Use this statement to configure the integration with products that provide you
with an OSLC interface to create and manage tickets, for example IBM SmartCloud
Control Desk.
Format
►► OSLCOPTS PASSWORD ( pwd ) ►
ALL
POLICY ( MONITORED )
CRITICAL
► ►
3 TDWCURI ( basic url )
PRIORITY ( n )
► ►◄
NO
USERFLD ( YES )
Parameters
PASSWORD (pwd)
The password associated with the user set in USER, it can be up to 31
characters. The password is stored in plaintext, meaning that it is not
encrypted. To encrypt it, run the sample EQQBENCO JCL provided in the
EQQSAMP library. For details about how to encrypt the password, see
Managing the Workload.
This parameter is required and does not have a default value.
POLICY(ALL|MONITORED|CRITICAL)
The policy applied to open tickets for jobs that ended in error. The default
value is ALL, meaning that a ticket is opened for any job that ends in error. Set
this parameter to MONITORED to open tickets only for the jobs that have the
monitored flag; set it to CRITICAL to open tickets only for critical jobs or jobs
that belong to a critical network.
PRIORITY (n|3)
The priority assigned to the tickets that will be opened for jobs that ended in
error. Valid values are from 1 (highest) to 5 (lowest), the default is 3.
TDWCURI(basic url)
The basic URL to launch the Dynamic Workload Console in context, allowing
you to view the job in error and take the appropriate action. This parameter is
required if you want to use the &TWDCLINK variable in the string set for
TKTDESC.
For example, a basic URL might be:
https://mypc:29443/ibm/console/xLaunch.do?pageID=
com.ibm.tws.WebUI.External.navigation&showNavArea=false
&action=BrowseJobs&hostname=webuidev&port=31217&server=C851
OUCOPTS
Purpose
The OUCOPTS statement defines the options for storing in a JES SYSOUT class the
job logs retrieved by Output collector from the z-centric environment. See IBM
Workload Scheduler for z/OS: Scheduling End-to-end with z-centric Capabilities for
information about sending job logs to the JES SYSOUT.
OUCOPTS must stay in a separate member of the EQQPARM library that is parsed
by the output collector alone.
► ►
10
MINTHREADSPOOL ( number of threads )
► ►
5
MAXSOCKETFORDEST ( number of job logs )
► ►
100
MAXTHREADSPOOL ( number of threads )
► ►◄
WRITER ( WRITER task name )
Parameters
CNTPARMS(member name)
The name of the member in the EQQPARM data set that contains the
OPCOPTS, ROUTOPTS, and HTTPOPTS initialization statements.
JESCLASS(JES class name)
The name of the JES SYSOUT class where Output collector is to write the job
logs after retrieving them from the z-centric environment. The default is the
CLASS name specified in the EQQJOBSC (Create sample job JCL) panel or the
default class defined for the JES spool.
MINTHREADSPOOL(number of threads|10)
The minimum number of threads that Output collector can open to copy the
job logs to JES.
MAXSOCKETFORDEST(number of job logs|5)
The maximum number of job logs that Output collector can retrieve
concurrently from the same agent or dynamic domain manager in the z-centric
environment.
MAXTHREADSPOOL(number of threads|100)
The maximum number of threads that Output collector can open to copy the
job logs to JES.
RETAINPEND(hours|24)
The time (in hours) that Output collector will attempt to get the log of a job
run by a dynamic agent that is temporarily unavailable.
SUBSYS(controller subsystem name)
The name of the controller subsystem for which Output collector is started.
WRITER(WRITER name)
The user ID associated with the WRITER task that Output collector calls to
write the job logs to the JES spool after retrieving them from the z-centric
environment. If no value is specified here or in the EQQJOBSC (Create sample
job JCL) panel, the default WRITER task is used.
Chapter 1. Defining initialization statements 129
RCLDDP
Purpose
The RCLDDP statement defines a list of protected DD names so that the data set
related to them is not deleted by the restart and cleanup function.
Format
,
Parameters
DDNAME(list of DD names)
Defines the list of the protected DD names.
RCLDSNP
Purpose
The RCLDSNP statement defines a list of protected data set names that are not
deleted by the restart and cleanup function.
Format
,
Parameters
DSNAME (list of data set names)
Defines the list of the protected data set names. You can use the asterisk (*) as
a wild character for partial matching, as explained for the RCLOPTS
DSNPROT keyword
RCLOPTS
Purpose
The RCLOPTS statement defines all the options used by IBM Workload Scheduler
for z/OS during the restart and cleanup functions. It is used only by the controller.
Format
►► RCLOPTS ►
‘OPC’
CLNJOBCARD ( Job card info )
► ►
EQQCL DDALWAYS ( DDlist )
CLNJOBPX ( Job name )
► ►
DDNEVER ( DD List ) DDNOREST ( DD List )
► ►
DDPRMEM ( member name ) DDPROT ( DD List )
► ►
DSNPRMEM ( member name ) DSNPROT ( DSN List )
► ►
DSTCLASS ( destination:class )
► ►
DSTDEST ( OPC destination ) NO
DSTRMM ( YES )
► ►
DUMMYLASTSTEP ( STEPNAME/'IBM50941' )
► ►
NO FIRSTSTEP
GDGSIMAUTO ( YES ) IMMEDLOGIC ( BESTSTEP )
► ►
ONDEMAND
JOBLOGRETRIEVAL ( ONERROR )
► ►
ONDEMAND
RESTARTINFORETRIEVAL ( ONERROR )
► ►
SKIPINCLUDE ( member name ) STEPLIB ( dsname )
► ►◄
YES
STEPRESCHK ( NO )
Parameters
CLNJOBCARD(job card info|’OPC’)
Defines the Job card to be used by the controller while creating stand-alone
cleanup jobs. The default job card is the following:
//jobname JOB 'OPC'
where procname is the IBM Workload Scheduler for z/OS JCL procedure name.
DDPROT(DD List)
Defines the list of the DD names that identify the protected data sets. It is
optional.
DSNPRMEM (member name)
When specified, it contains the name of the partitioned data set member of the
parameter library that lists the protected data set names. The syntax inside the
member is the following:
v RCLDSNP
v DSNAME (list of data set names)
You can use the * (asterisk) as a wild character for partial matching as
explained for the DSNPROT keyword. DSNPRMEM is mutually exclusive with
where procname is the IBM Workload Scheduler for z/OS JCL procedure name.
DSNPROT(DSN List)
An optional keyword that defines the list of data set names protected from
unintentional deletion. The data sets specified in this list are excluded from the
cleanup action list (you will see these data sets marked as X, excluded, in the
ISPF panel listing the data sets to be deleted).
You can use the asterisk (*) as a wildcard character for partial matching,
provided that you specify it as the last character of the data set name. Any
character following the asterisk is ignored. For example, to protect the data set
name MYDSN.DATASET and all the GDGs with root MYGDG.ROOT, you can
specify the following:
DSNPROT (MYDSN.DATASET,MYGDG.ROOT*)
The result will be that all the GDG data set names MYGDG.ROOT.GnnnnVnn
are protected in addition to the data set name MYDSN.DATASET.
If you specify:
DSNPROT (P*.PROD.FILE)
all the files beginning with the letter P are taken into account, regardless of
what is specified in the rest of the data set name. It has the same result as if
you specify DSNPROT (P*).
DSTCLASS(destination:class)
When you need to have a configuration with the data store subsystem and the
tracker with the JCC task active on the same z/OS system image, there could
be compatibility problems if the JCC task options ask IBM Workload Scheduler
for z/OS to delete the SYSOUT output data sets after the usual analysis. This
is because the JCC task might also delete the duplicated SYSOUT copy created
for the data store before it has been successfully stored. In this specific
configuration, to avoid this problem and to improve the JCC performance that
would be scanning the same SYSOUT data sets twice, you need to provide a
JES class associated to the tracker destination, to be used for the duplicated
copy of the SYSOUT data sets created for data store processing.
The duplicated copy of the SYSOUT will be temporarily added to this class
until the data store retrieves, stores, and deletes it. It does not need to be a
reserved class: the only mandatory characteristic is that it must not be one of
the classes specified in the JCC parameter CHKCLASS. In this way the JCC
task will never process the output data sets meant for data store processing.
In a JES3 system, you must define the DSTCLASS as HOLD=EXTWTR and
TYPE=PRINT.
You should use the same class for all the trackers and systems, as it is in
general easier and less exposed to potential error situations. This suggestion
becomes a requirement if the configuration is in a JES MAS complex or if the
user specified NJE statements to route the output after the job execution.
The keyword value is specified in pairs; the tracker destination followed by the
JES class.
Values of destination and class pairs are specified as in this format:
Dest1:Class1
Note: This mechanism will allow JCC and data store to work correctly at the
same time but it will not prevent the JCC task from deleting the user SYSOUT
of the jobs. So, the user SYSOUT, after being checked by JCC, will not be
displayed with the rest of the system sysout.
When the scheduler selects an operation for submission, the DSTCLASS()
values are checked to determine if a CLASS= parameter has to be inserted in
the output JCL statement that is automatically added to the original JCL.
Remember to specify a pair in the ********:X format to obtain the CLASS=X
parameter generated for jobs scheduled on the same processor as the controller,
that is, on computer workstations with blank destination. For example:
RCLOPTS DSTCLASS(********:Q,TRKRSYS1:Q,TRKRSYS2:Q)
This example specifies a pair list suitable for a two-member JES2 MAS, with a
tracker on the same LPAR where the controller runs and another tracker on the
other LPAR. The tracker destinations are TRKRSYS1 and TRKRSYS2
respectively. If you omit the first pair, jobs scheduled on workstations with
blank destinations will be submitted without CLASS=Q added to the generated
output statement.
DSTDEST(OPC destination)
Defines the destination required in the JCL to create a sysout copy for data
store. Its value must be equal to the data store SYSDEST parameter of the
DSTOPTS statement.
The DSTDEST value should be reserved for the scheduler's use.
If the JES2 DESTDEF statement specifies NODENAME=REQUIRED, then the
destination specified in the DSTDEST parameter must be defined as JES2. You
can dynamically define it as JES by using the following command:
$ADD DESTID(XXXXXXXX),DEST=XXXXXXXX
where,
STEPNAME
A string of characters with maximum length of 8. If you leave it blank,
the default value, IBM50941, is used.
Note:
v No check is performed to determine if a last dummy step already exists with
the same name.
v If an end of job is found within the JCL, all the JCL lines starting from end
of job are commented out except the last dummy step you just added.
v No check is performed to determine if the maximum number of steps within
the JCL has been reached.
If you have a JCL with this problem:
– If the JCL does not need data set cleanup actions, or the JCL has no
DISP=PASS files, add the following line to the JCL to prevent the tailoring
and comment it out with the asterisk (*):
// EQQJHDMY SKIP
You can add this statement anywhere in the JCL, even after the end of the
job, except not inside an INCLUDE member or an external or nest
procedure. Ensure that there is only one blank between EQQJHDMY and
SKIP.
– If cleanup is needed, consider restructuring the JCL to reduce the number
of steps.
GDGSIMAUTO (YES|NO)
This keyword applies only to operations having clean up type automatic. It
defines if the GDG simulation process is applied when operations are rerun
internally and expanded jcl is not used. For details about the GDG simulation
process, see Managing the workload - restart and clean up - GDG resolution. When
rerun is started by dialogue, the GDG simulation is done accordingly to the
dialogue rules that are:
STEP RESTART
Always applied if expanded jcl is not used
JOB RESTART
Never applied
Note that, when we say that the GDG simulation is applied, it means that
whenever needed by the submitted job jcl definitions, the GDG data set is
simulated. NO is the default. YES means that we apply the GDG simulation
process to all operations having automatic clean up type for internal rerun and
that expanded jcl is not used.
where procname is the IBM Workload Scheduler for z/OS JCL procedure name.
STEPLIB (dsname)
Defines the name of the data set that has to be over written by the one
specified in the //STEPLIB DD card of your EQQCLEAN procedure. This
keyword is optional, but if you specify it, you must always define a STEPLIB
in your EQQCLEAN procedure, as a DD dummy one. If this parameter is not
specified, no change would be made to the EQQCLEAN procedure at all.
STEPRESCHK (NO|YES)
Specifies the possibility to select a step restart range overriding the product
logic (for example, a possible restart step could be a non-restartable step). If
you specify NO, the product logic check is not performed. The default value is
YES. This kind of behavior might lead to JCL errors and it is up to the user to
decide when the override is needed.
RCLSKIP
Purpose
The RCLSKIP statement lists the INCLUDEs that you want to keep at the
beginning of a JCL when it is tailored by the Restart and Cleanup function. You
must write RCLSKIP in the partitioned data set member whose name is specified
by the RCLOPTS SKIPINCLUDE keyword (for details about SKIPINCLUDE, see
“SKIPINCLUDE(member name)” on page 136).
Parameters
INCLNAME (member name)
Lists the member names specified on the MEMBER=keyword of one or more
INCLUDE statements. You can use the asterisk (*) as a wild character for
partial matching as follows:
As the last character
For example, if you specify ABC* all the INCLUDEs whose names
begin with ABC are left at the top of the JCL.
As the first character
For example, if you specify *ABC all the INCLUDEs whose names end
with ABC are left at the top of the JCL.
As the only character
If you specify only the asterisk (*), all the INCLUDEs are left at the top
of the JCL.
As a wildcard, you can use the asterisk only once. For example, if you specify:
RCLSKIP INCLNAME(*A*B)
all the INCLUDEs whose names end with A*B are considered as matching the
search criteria, because the second asterisk is considered as a normal character.
If you specify:
RCLSKIP INCLNAME(A*B)
all the INCLUDEs whose names begin with A are considered as matching the
search criteria, because the asterisk is considered as the last character.
If you specify:
RCLSKIP INCLNAME(JOBINCL,ZZZ*)
the INCLUDE named JOBINCL and all the INCLUDEs whose names start with
ZZZ (for example, ZZZ1, ZZZABC, and so on) are considered as matching the
search criteria.
The EQQCLEAN pre-step will be added only after these INCLUDEs by the
JCL tailoring process (for details about SKIPINCLUDE, see
“SKIPINCLUDE(member name)” on page 136).
RESOPTS
Purpose
The RESOPTS statement defines special resource options that the controller uses to
process ready operations and special resource events.
► ►
YES NOCHANGE
DYNAMICADD ( EVENT ) DYNONCOMPLETE ( YES )
OPER NO
NO RESET
► ►
0 NOCHANGE
LOOKAHEAD ( percentage ) ONCOMPLETE ( YES )
NO
RESET
► ►◄
FREESR
ONERROR ( FREESRS )
FREESRX
KEEPSR
Parameters
CONTENTIONTIME(number of minutes|30)
CONTENTIONTIME determines how long an operation remains on the
waiting queue for a special resource before IBM Workload Scheduler for z/OS
issues message EQQQ515W.
Specify a number of minutes (1 to 9999) that an operation must wait before
IBM Workload Scheduler for z/OS issues message EQQQ515W. Once issued,
the message is not repeated for the same special resource and operation,
although IBM Workload Scheduler for z/OS can issue more than one message
for an operation if it is on more than one waiting queue.
Note: You must also specify an alert action for resource contention on the
ALERTS statement or the message will not be issued. The ALERTS statement is
described in “ALERTS” on page 7.
DYNAMICADD(EVENT|OPER|NO|YES)
If a special resource is not defined in the current-plan extension file or special
resource database, DYNAMICADD determines if IBM Workload Scheduler for
z/OS creates a special resource in response to an allocate request from a ready
operation or to a resource event created through the EQQUSIN or EQQUSINS
subroutine, SRSTAT TSO command, API CREATE request, or a RODM
notification.
Specify YES, which is the default value, if IBM Workload Scheduler for z/OS
should create a special resource in the current plan; the special resource
database is not updated. IBM Workload Scheduler for z/OS uses defaults to
create the resource. When creating the resource, IBM Workload Scheduler for
z/OS selects field values in this order:
1. Values supplied by the allocating operation or event. An operation can
specify a quantity, an event can specify quantity, availability, and deviation.
2. IBM Workload Scheduler for z/OS defaults.
Note:
1. If IBM Workload Scheduler for z/OS subscribes to a RODM class or object
for a resource that does not exist in the current plan, the event created from
the data returned by RODM causes a dynamic add of the resource, if
DYNAMICADD has the value YES or EVENT.
2. It is strongly recommended that, if the feature of dynamic addition of
special resources is used, because almost always a special resource
dynamically added does not match the previously listed criteria of being
automatically deleted, DYNAMICDEL(YES) be specified in the BATCHOPT
statement of the DP batch job.
DYNONCOMPLETE(YES|NO|RESET|NOCHANGE)
This keyword defines the value to which the global availability of the special
resource is reset when the operation that uses that resource completes. It
applies only to special resources that are dynamically added. This value is
used by IBM Workload Scheduler for z/OS only if the On Complete field is
blank in the operation definition and special resource definition.
You can specify these values:
NOCHANGE
No action is taken. This is the default.
YES The global availability of the special resource is reset to YES.
NO The global availability of the special resource is reset to NO.
RESET
The global availability of the special resource is reset to blank.
LOOKAHEAD(percentage|0)
Specify this keyword if you want IBM Workload Scheduler for z/OS to check
before starting an operation whether there is enough time before the resource
becomes unavailable. You specify the keyword as a percentage of the estimated
duration. For example, if you do not want IBM Workload Scheduler for z/OS
to start an operation unless the required special resource is available for the
whole estimated duration, specify 100. Specify 50 if at least half the estimated
duration must remain until the resource is due to be unavailable. If you specify
LOOKAHEAD(0), which is also the default, the operation is started if the
special resource is available, even if it will soon become unavailable.
IBM Workload Scheduler for z/OS uses this keyword only if the special
resource is used for control.
ONCOMPLETE(YES|NO|RESET|NOCHANGE)
This keyword defines the value to which the global availability of the special
resource is reset when the operation that uses that resource completes. This
value is used by IBM Workload Scheduler for z/OS only if the On Complete
field is blank in the operation definition and special resource definition.
You can specify these values:
NOCHANGE
No action is taken. This is the default.
YES The global availability of the special resource is reset to YES.
NO The global availability of the special resource is reset to NO.
Examples
The RESOURCE statement identifies special resources that reports are required for.
You can specify more than one RESOURCE statement. RESOURCE statements are
used when a daily planning job requests special resource reporting. A special
resource is included in a report if it exists and if its name matches a value on a
RESOURCE statement. If you do not specify RESOURCE, no reports are produced.
You specify RESOURCE statements in the member of the parameter library that
contains the BATCHOPT statement.
Format
,
Parameters
FILTER(special resource name,...,special resource name)
FILTER values identify special resources that IBM Workload Scheduler for
z/OS includes when planned or actual resource-utilization reports are
requested by a daily planning job. Each value is compared with special
resources known at planning time. If a special resource name matches a filter
value, it is reported on. A special resource is selected only once if it matches
more than one filter value, even if the values are on different RESOURCE
statements. Each value is 1–44 characters and must not contain embedded
blanks.
You can specify asterisk (*) and percent (%) anywhere in a value. An asterisk
matches any character and any number of characters. A percent sign matches
any 1 character.
Examples
RODMOPTS
Purpose
Note:
1. The names of RODM classes, objects, and fields are case-sensitive. Ensure you
preserve the case when specifying RODMOPTS statements in the parameter
library. Also, if a name contains anything other than alphanumeric or national
characters, you must enclose the name in double quotation marks.
2. If IBM Workload Scheduler for z/OS subscribes to RODM for a resource that
does not exist in the current plan and the DYNAMICADD keyword of
RESOPTS has the value YES or EVENT, the event created from the data
returned by RODM causes a dynamic add of the resource. DYNAMICADD is
described in the list of RESOPTS“Parameters” on page 139.
Format
►► RODMOPTS ►
DESTINATION ( tracker destination ID )
► ►
LAST RODMOBJECT ( RODM object name )
RODMLOST ( RESET )
field value
► ►
RODMUSER ( USERID )
► ►◄
,
Parameters
DESTINATION(tracker destination ID)
Specifies the destination ID of a tracker that is started on the same z/OS image
as the RODM subsystem. This is the same name that you specify on the
ROUTOPTS statement.
Do not specify DESTINATION if the tracker and controller are started in the
same address space.
OPCFIELD(AVAILABLE|DEVIATION|QUANTITY)
Specify the field name in the special resource that you want to monitor
through RODM. When RODM notifies a change, IBM Workload Scheduler for
z/OS updates:
Examples
ROUTOPTS
Purpose
You can specify more than one ROUTOPTS statement to define routing options,
but each destination must be unique. Do not specify the same name in DASD,
USER, SNA, XCF, TCP/IP, or HTTP parameters. If a destination is repeated on a
following ROUTOPTS statement, the last definition is used. You can specify a
combined total of 1000 destinations, but you cannot specify more than 16
destinations for the DASD keyword.
You can include as many destinations as you want within the parentheses. They
must be separated by commas.
Format
| ,
HTTP|HTTPS ( ▼ destination )
,
PROXY ( ▼ destination )
,
SNA ( ▼ destination )
,
TCPIP ( ▼ destination )
,
USER ( ▼ destination )
,
XCF ( ▼ destination )
► ►◄
10
PULSE ( pulse frequency )
Where:
dest name
The name assigned to the destination, up to 8 alphanumerical
characters.
IP address or hostname
The fully qualified host name or IP address used to communicate with
the agent workstations. It can be up to 52 alphanumeric characters.
port The port number used to communicate with the agent workstations.
type The HTTP destination type is required only if the destination is used to
define a remote engine workstation or a dynamic domain manager. It
can be one of the following:
D for a distributed remote engine
Z for a z/OS remote engine
B for a dynamic domain manager
pulseivl
The frequency in minutes that the controller checks the status of the
specific z-centric agent or dynamic domain manager. The value can
range from 0 (feature inactive) to 1440 minutes and overrides any
value specified globally by the PULSEIVL keyword of the HTTPOPTS
statement.
Remember: For z-centric agents the type is blank, so you must write
two consecutive slash (/) characters before the pulseivl value.
| proxy name
| Valid for z-centric agents only. The destination that is defined in the
| “PROXY(destination,...,destination) ” parameter.
You can modify, add, or delete an HTTP or HTTPS destination while IBM
Workload Scheduler for z/OS is running.
| PROXY(destination,...,destination)
| Defines the destinations of the proxies through which the z-centric agents are
| connected to the controller.
| The syntax of each destination is as follows:
| proxy name:’IP address or hostname’/port
| Where:
Examples
SERVOPTS
Purpose
The SERVOPTS statement is for a server which handles transactions directed to the
controller subsystem name on the same z/OS system as the server.
Format
►► SERVOPTS ►
NO IBM – 037
ARM ( YES ) CODEPAGE ( host system codepage )
► ►
DBOPT local hostname
DBOPTPRM ( member name ) JSCHOSTNAME ( hostname )
IP address
► ►
425 ,
PORTNUMBER ( value ) APPC
PROTOCOL ( ▼ E2E )
TCP
► ►
YES TPLGPARM
TASKUSR ( NO ) TPLGYPRM ( member name )
► ►◄
USERMAP ( parameters library member )
This section describes parameters that apply to all connection types. Parameters
that are specific to a connection type are described separately in the sections that
follow.
ARM (YES|NO)
The z/OS Automatic Restart Manager (ARM) can reduce the impact of an
unexpected error to IBM Workload Scheduler for z/OS because z/OS can
restart it automatically, without operator intervention.
Specify YES if automatic restart of the failed IBM Workload Scheduler for z/OS
component should be activated. ARM recovery of the failed IBM Workload
Scheduler for z/OS component is possible in the same image (restart-in-place).
This feature allows the recovery of the tracker and a fast restart of the
controller and the server. In addition, restart-in-place does not reduce the
number of standby controllers when there is a controller failure. The number of
restarts and the period of a restart are parameters that can be customized for
each IBM Workload Scheduler for z/OS component in the z/OS ARM policy.
CODEPAGE (host system codepage|IBM–037)
The name of the host code page. You can provide the IBM–nnn value, where
nnn is the EBCDIC code page. The default value, IBM–037, defines the EBCDIC
code page for US English, Portuguese, and Canadian French. If you specify a
codepage value different from the default value, a check has been implemented
to use the default codepage if the first four characters of the codepage you
specify are different from "IBM-". The following is a list of the EBCDIC code
pages:
IBM–939
Japan Extended
IBM–937
Taiwan
IBM–935
China
IBM–933
Korea
IBM–975
Greece
IBM–971
Iceland
IBM–970
Latin 2
IBM–838
Thai
IBM–500
International
IBM–424
Israel
IBM–297
France
IBM–285
UK
IBM–284
Spain - Latin America
IBM–280
Italy
The following is a list of the EBCDIC code pages for EURO support:
IBM–1140
Finland, Sweden
IBM–1141
Austria, Germany
IBM–1142
Denmark, Norway
IBM–1143
USA
IBM–1144
Italy
IBM–1145
Spain, spanish-speaking Latin America
IBM–1146
UK
IBM–1147
France
IBM–1148
Belgium, Switzerland
IBM–1149
Iceland
DBOPTPRM(member name|DBOPT)
Indicates the member of the PARMLIB that contains the parameters to connect
to the database and manage the historical data archiving process.
JSCHOSTNAME (JSChostname|IP address| local hostname)
Specifies the host name or IP address that is used by a remote application to
connect to the server, when PROTOCOL=TCP. It can be up to 52 alphanumeric
characters. The default is the host name returned by the operating system.
You can define a virtual IP address for each server of the active controller and
the standby controllers. If you use a dynamic virtual IP address in a SYSPLEX
environment, when the active controller fails and the standby controller takes
over the communication, the remote application automatically switches the
communication to the server of the standby controller.
Note: Although you can configure one server task to handle multiple
protocols, for example PROTOCOL(E2E,APPC,TCP), consider having multiple
server tasks, each one with one PROTOCOL function. By using separate server
tasks, you can:
v Maximize the time that the server is up and running; you do not need to
shut down the server to configure another PROTOCOL value.
v Minimize the occurrence of storage handling problems.
SCHEDULER (scheduler name)
Identifies the name of the server as an APPC scheduler. This parameter is used
only if PROTOCOL is set to APPC. If you omit this parameter, the started task
name is used as scheduler name.
SUBSYS (controller subsystem name)
Identifies the controller for which this server is started.
TASKUSR(NO|YES)
Specifies if a started task is to be run with the user ID associated with the task,
instead of the user ID associated with the job name.
YES The task is run with the user ID associated with the started task name.
This is the default.
NO The task is run with the user ID associated with the job name.
TPLGYPRM(member name|TPLGPARM)
Specify this parameter to activate the end-to-end scheduling with fault
tolerance capabilities feature, when you set PROTOCOL to E2E.
Important:
v Updates to the USERMAP require a stop and restart of the TCP/IP server to
become active. But if you use the wildcards, and you want to add a
Dynamic Workload Console user that falls within an already wildcarded
definition, this does not require to restart the server. For example, this would
be the case if the USERMAP already contains the following entry:
USER ’RSO*@ITSWB20’ RACFUSER(RSO&)
In this example, the new user RSO115@ITSWB20 (who has already been
defined to RACF as RSO115) can connect to IBM Workload Scheduler for
z/OS without the need of a USERMAP update and of a server restart.
v The '*' and '&' characters respectively represent the '5C' and '50' hexadecimal
characters of the 037 codepage. If you run on a different codepage, replace '*'
and '&' with the characters that match '5C' and '50' HEX on that codepage.
v When the '&' character is processed at runtime to match the string
wildcarded in z/OS_connector_user_ID, the resulting RACFUSER entry may
exceed the 8-character limit. For example, to add user:
john.smith@mydomain.com
The optional TCPOPTS statement defines local attributes for a product component
acting as partner in a TCP/IP communication. Decide whether to specify it by
considering each component according to a client-server model:
Client role
It is the role of:
v The tracker started task, in a tracker-to-controller communication.
v The data store started task, in a data store-to-controller communication.
v The remote interface (ISPF dialog or PIF program), in a remote
interface-to-server communication.
Server role
It is the role of:
v The controller started task, in a tracker-to-controller or data
store-to-controller communication.
v The server started task, in a remote interface-to-server communication.
TCPOPTS does not apply to connections with z-centric agents. Use ROUTOPTS to
define options for connecting with these agents.
SSLKEYSTORE SSLKEYSTORE
SSLKEYSTOREPSW SSLKEYSTOREPSW
SSLAUTHMODE SSLAUTHMODE
SSLAUTHSTRING SSLAUTHSTRING
Specify the same values for Specify the same values for
all the communication all the communication
partners. partners.
Tivoli Enterprise Portal TCPIPJOBNAME valid for
interface controller started task
You can define the TCPOPTS statement in the parameter file identified by the
following DD statements:
v EQQPARM, in the controller procedure.
v EQQPARM, in the tracker procedure.
v EQQPARM, in the data store procedure.
v EQQPARM, in the server procedure.
v EQQYPARM, in the TSO logon procedure of the dialog user.
v EQQYPARM, in the JCL used to run the PIF application.
Format
►► TCPOPTS ►
60
CONNTIMEOUT ( TCPIP timeout interval )
► ►
PortNumber NO
DSTPORTNUMBER ( TCPIP port ) ENABLEFIPS ( YES )
► ►
local hostname 425
HOSTNAME ( hostname ) SRVPORTNUMBER ( TCPIP port )
IP address
► ►
CAONLY tws
SSLAUTHMODE ( STRING ) SSLAUTHSTRING ( SSL string )
► ►
SSLKEYSTORE ( SSL keystore db file name )
► ►
SSLKEYSTOREPSW ( SSL keystore pw file name ) OFF
SSLLEVEL ( FORCE )
► ►◄
TCPIP PortNumber
TCPIPJOBNAME ( TCPIP started task ) TRKPORTNUMBER ( TCPIP port )
To avoid any communication error, specify the same SSLLEVEL value for the
scheduler started tasks that are to communicate with each other.
SSLAUTHSTRING(SSL string|tws)
Defines a string used to verify the certificate validity when you set
SSLAUTHMODE to STRING. The string is up to 64 characters. The default is
tws.
SSLKEYSTORE(SSL keystore db filename)
Identifies the database containing keys and certificates. It consists of an SSL
working directory name and file name, in the format SSLworkdir/TWS.kbd. It
is case sensitive. This field is required if the SSLLEVEL parameter is set to
FORCE.
SSLKEYSTOREPSW(SSL keystore pw filename)
Identifies the file containing the key password. It consists of an SSL working
directory name and file name, in the format SSLworkdir/TWS.sth. It is case
sensitive. This field is required if the SSLLEVEL parameter is set to FORCE.
SSLLEVEL(FORCE|OFF)
The SSL authentication type. Specify one of the following values:
OFF The scheduler component does not support SSL authentication for its
connections. This is the default value.
FORCE
The scheduler component uses SSL authentication for all its
connections. It refuses any incoming connection, if it is not SSL.
To avoid communication errors, specify the same SSLLEVEL value for the
scheduler started tasks that are to communicate with each other.
TCPIPJOBNAME(TCPIP started task|TCPIP)
The name of the TCP/IP started task running on the z/OS system where you
run the scheduler component. Set this parameter when you have multiple
TCP/IP stacks or a TCP/IP started task with a name different from TCPIP.
TRKPORTNUMBER(TCPIP port|PortNumber)
The local TCP/IP port number used by the TCP/IP communication subtasks of
the controller and tracker. Valid values are from 0 to 65535. The default
PortNumber value can be one of the following:
424 It applies to the controller only.
0 It applies to the tracker, meaning that the process returns the actual
value.
Examples
TOPOLOGY
Purpose
The TOPOLOGY statement defines the passwords for the users who need to
schedule jobs to run on Windows workstations. Omit it if your scheduling
environment does not include these workstations.
For a detailed description of this statement, refer to the IBM Workload Scheduler for
z/OS: Scheduling End-to-end with Fault Tolerance Capabilities manual.
TRGOPT
Purpose
Format
►► TRGOPT ►
IBM – 037
CODEPAGE ( host system codepage )
► ►◄
0 WRKDIR ( working directory )
TRACELEVEL ( level )
Parameters
CODEPAGE (host system codepage|IBM–037)
The name of the host code page. You can provide the IBM–nnn value, where
nnn is the EBCDIC code page. The default value, IBM–037, defines the EBCDIC
code page for US English, Portuguese, and Canadian French. The following is
a list of the EBCDIC code pages:
IBM–939
Japan Extended
IBM–937
Taiwan
IBM–935
China
IBM–933
Korea
IBM–975
Greece
IBM–971
Iceland
IBM–970
Latin 2
The following is a list of the EBCDIC code pages for EURO support:
IBM–1140
Finland, Sweden
IBM–1141
Austria, Germany
IBM–1142
Denmark, Norway
IBM–1143
USA
IBM–1144
Italy
IBM–1145
Spain, spanish-speaking Latin America
IBM–1146
UK
IBM–1147
France
IBM–1148
Belgium, Switzerland
TRACELEVEL (level|0)
TRROPTS
Purpose
Include TRROPTS in the statements for each z/OS tracker in your IBM Workload
Scheduler for z/OS configuration, except where the tracker and controller are
started in the same address space. Use TRROPTS where OPCOPTS OPCHOST(NO) is
specified.
Format
►► TRROPTS ►
BKPHOSTNAME ( backup controller hostname )
backup controller IP address
► ►
, TCPHOSTNAME ( hostname )
IP address
SNAHOST ( ▼ VTAM LU name )
► ►◄
424
TCPPORTNUMBER ( TCPIP port )
Parameters
BKPHOSTNAME (backup controller hostname|backup controller IP address)
The host name, or IP address in IPv4 or IPv6 format, of the remote backup
controller. Valid values are fully-qualified names up to 52 alphanumeric
characters. This parameter is required only if you want to connect to a backup
controller; in this case the HOSTCON parameter, which is used to connect to
the primary controller, must be set to TCP or XCF.
BKPPORTNUMBER (value|424)
The TCP/IP port number used to communicate with the remote backup
controller. Valid values are from 0 to 65535. If not specified, the default value
of 424 is used. This parameter is required only if you want to connect to a
backup controller; in this case the HOSTCON parameter, which is used to
connect to the primary controller, must be set to TCP or XCF.
HOSTCON(DASD|SNA|TCP|XCF)
The HOSTCON keyword identifies the connection that is used when
transmitting events to the controller.
If you specify HOSTCON(DASD), you cannot specify EWSEQNO on the
EWTROPTS statement.
If you specify HOSTCON(SNA), the SNAHOST keyword must contain the
NCF LU name of the controller. This tracker must also have the NCFAPPL
keyword specified in the OPCOPTS statement.
If you specify HOSTCON(XCF), the XCFOPTS statement must also be present.
If you specify HOSTCON(TCP), set also TCPHOSTNAME to identify the
remote controller.
SNAHOST(VTAM LU name,...,VTAM LU name)
The SNAHOST keyword is required for trackers connected to the controller
through an SNA link. This keyword defines the VTAM LU name of the
controller and any standby controllers. In a hot standby configuration, you can
specify several LU names. At initialization, the tracker logs on to the LU at the
SNAHOST that becomes active first. That is, the tracker attempts to
communicate with the first IBM Workload Scheduler for z/OS started task that
is identified as the controller. If you specify the SNAHOST keyword, the
HOSTCON keyword must be SNA.
TCPHOSTNAME (hostname|IP address)
The host name or IP address in IPV4 or IPV6 format of the remote controller.
Valid values are fully-qualified names up to 52 alphanumeric characters. This
parameter is required.
Examples
In this example:
▌1▐ The tracker is connected to the controller through a VTAM link.
▌2▐ The name of the NCF LU used by the controller is NCFAPPL1.
In this example:
▌1▐ The tracker is connected to the primarycontroller through an XCF link.
▌2▐ The host name of the backup controller to which the tracker is connected.
▌3▐ The TCP/IP port number used by the tracker to communicate with the
remote backup controller.
USRREC
Purpose
This statement defines the passwords for the users who need to schedule jobs to
run on Windows workstations. Omit it if your scheduling environment does not
include these workstations or if you choose to define the Windows user ID and
password locally on the workstations (in this latter case, you must set
LOCALPSW(YES) in the TOPOLOGY statement).
The XCFOPTS statement defines run-time options for IBM Workload Scheduler for
z/OS systems that use services of the cross-system coupling facility (XCF). Specify
this statement for a tracker, controller, or standby controller that uses XCF for
communication.
Format
►► XCFOPTS GROUP ( XCF group name ) MEMBER ( XCF member name ) ►
► ►◄
,
TAKEOVER ( ▼ HOSTFAIL )
SYSFAIL
Parameters
GROUP(XCF group name)
The name of the XCF group that the IBM Workload Scheduler for z/OS system
should join. This is an alphanumeric name consisting of 1 to 8 characters
where the first character is alphabetic.
The name of this XCF group must be different from the one defined in the
DSTOPS and FLOPTS groups.
MEMBER(XCF member name)
The XCF member name that identifies the IBM Workload Scheduler for z/OS
system. This is an alphanumeric name consisting of 1 to 8 characters where the
first character is alphabetic.
The member name must be unique within the group. If an IBM Workload
Scheduler for z/OS system tries to join a group with the same name as an
existing member, an error message is issued, and IBM Workload Scheduler for
z/OS ends.
TAKEOVER(HOSTFAIL,SYSFAIL)
The TAKEOVER keyword applies to an IBM Workload Scheduler for z/OS
system where you specify OPCHOST(STANDBY) on the OPCOPTS statement.
It defines the situations when the standby system automatically takes over
from the host IBM Workload Scheduler for z/OS system if the host fails. If you
have not specified TAKEOVER, IBM Workload Scheduler for z/OS sends a
WTO message to the operator console asking the operator to manually start
takeover actions. You can specify either one or both of the takeover conditions.
HOSTFAIL
Automatic takeover occurs when the controller fails.
SYSFAIL
Automatic takeover occurs when the system that the IBM Workload
Scheduler for z/OS controller is running on fails.
Table 7 shows statements described in this chapter and functions that they relate
to. Chapter 1, “Defining initialization statements,” on page 3 describes all
statements in detail.
Table 7. Initialization statements and related functions
Statement Information about related functions
ALERTS “Performance” on page 176 and“External monitoring” on page 182
AROPTS “Security” on page 171 and Chapter 2, “Identifying related initialization-statement parameters”
AUDIT “Security” on page 171, “Generating audit information (JT log data)” on page 172, and
“Performance” on page 176
AUTHDEF “Security” on page 171, “Generating audit information (JT log data)” on page 172, and
“Performance” on page 176
BATCHOPT “Generating audit information (JT log data)” on page 172, “Reporting” on page 177 and
Chapter 2, “Identifying related initialization-statement parameters”
CPUREC “End-to-end scheduling with fault tolerance capabilities” on page 178
ERDROPTS “Configuration” on page 170
EWTROPTS “Configuration” on page 170, “Generating audit information (JT log data)” on page 172,
“Determining the success or failure of a job” on page 172, Chapter 2, “Identifying related
initialization-statement parameters,” and “Performance” on page 176
FLOPTS Chapter 2, “Identifying related initialization-statement parameters” and, “Job log retrieval” on
page 175
JCCOPTS “Determining the success or failure of a job” on page 172
JOBREC “End-to-end scheduling with fault tolerance capabilities” on page 178
JTOPTS “Generating audit information (JT log data)” on page 172, “Determining the success or failure of
a job” on page 172, Chapter 2, “Identifying related initialization-statement parameters,”
“Performance” on page 176, and “Reporting” on page 177
Configuration
These statements and parameters specify your IBM Workload Scheduler for z/OS
configuration. They identify IBM Workload Scheduler for z/OS subsystems and the
connections between them.
Table 8. Configuration-related parameters
Statement Keywords Description
OPCOPTS OPCHOST Specifies the subsystem type (tracker, controller, or standby controller).
NCFTASK Starts NCF for communication through VTAM.
EWTRTASK Starts an event writer to collect events from the z/OS system.
ERDRTASK Starts an event reader to transfer events to the event.
SERVERS Starts one or more server queues at the controller.
TPLGYSRV Starts the IBM Workload Scheduler end-to-end enabler task.
EWTROPTS EWSEQNO Event writer also performs event reader function. Separate event reader is
not required.
SUREL Specifies if the event writer reads a submit/release data set.
ERDROPTS ERSEQNO Specifies the event reader and defines the ddname of the input event data
set.
RELDDNAME Specifies the submit/release data set that release commands are written to
in a shared DASD environment.
ROUTOPTS Identifies routes from the controller to tracker destinations.
TRROPTS Identifies the route from a tracker to the controller.
XCFOPTS Identifies XCF connections and specifies when a standby controller
performs take over.
Security
You specify these parameters to protect IBM Workload Scheduler for z/OS
functions and data, and to record access to IBM Workload Scheduler for z/OS
data.
Table 9. Security-related parameters
Statement Keywords Description
AUTHDEF Specifies how IBM Workload Scheduler for z/OS resources are defined to
RACF
AROPTS AUTHUSER Specifies where IBM Workload Scheduler for z/OS retrieves a name for
authority checking
USERREQ Specifies if a valid user ID is required
AUDIT Specifies when access to IBM Workload Scheduler for z/OS data is
recorded
JTOPTS JOBCHECK Specifies if the job name in JCL must match the operation job name
USRREC USRNAM Specifies the user name.
USRPSW Specifies the user password.
SERVOPTS USERMAP Defines a member that contains all the associations between Dynamic
Workload Console users (via IBM Workload Scheduler for z/OS connector)
and matching RACF user IDs.
TOPOLOGY LOCALPSW Specifies if the user ID and password to be used for Windows
workstations are to be found locally, when missing from the Symphony
file.
You set up the security environment when you install IBM Workload Scheduler for
z/OS. You can then customize IBM Workload Scheduler for z/OS security by
specifying particular levels of protection. If you use RACF, you perform these
steps:
v Add IBM Workload Scheduler for z/OS to the started-procedure table,
ICHRIN03. If you use RACF 2.1, you can instead add IBM Workload Scheduler
for z/OS to the STARTED class. You need not perform this action if you run
IBM Workload Scheduler for z/OS as a batch job.
v Add each IBM Workload Scheduler for z/OS subsystem name to the APPL class.
This determines the level of access to the subsystem.
v Add a general resource class for IBM Workload Scheduler for z/OS to the class
descriptor table. If you use RACF 2.1, you can use the general resource class
supplied for IBM Workload Scheduler for z/OS, IBMOPC.
v Update the router table, ICHRFR01, to specify what action is taken for the
resource class.
You can then specify levels of protection for particular IBM Workload Scheduler
for z/OS functions and data. The Planning and Installation describes how you set
up the security environment. Chapter 3, “Implementing security,” on page 185
describes in detail how to protect IBM Workload Scheduler for z/OS.
The information is written to the job-tracking log and can be copied at daily
planning to the tracklog data set (EQQTROUT). You can invoke AUDIT directly
from ISPF dialog, when appropriately customized (for details, see IBM Workload
Scheduler for z/OS: Planning and Installation).
Table 10. Auditing-related parameters
Statement Keywords Description
AUDIT Record access to IBM Workload Scheduler for z/OS data.
BATCHOPT NCPTROUT Specifies if track-log records are copied to EQQTROUT from the NCP at
daily planning.
OCPTROUT Specifies if track-log records are copied to EQQTROUT from the old CP at
daily planning.
LOGID Specifies the numeric identifier placed in all records on the track log
(EQQTROUT).
EWTROPTS STEPEVENTS Specifies when IBM Workload Scheduler for z/OS creates events for
ending job-steps.
PRINTEVENTS Specifies if IBM Workload Scheduler for z/OS creates events for print
tasks (type 4).
JTOPTS PRTCOMPLETE Specifies when IBM Workload Scheduler for z/OS sets print operations to
complete.
JTLOGS
AUTHDEF LISTLOGGING Specifies how much data RACF stores for accesses to IBM Workload
Scheduler for z/OS data.
The information is written to the extended-auditing data log and can be copied at
daily planning to the tracklog data set (EQQDBOUT).
Table 11. Extended auditing-related parameters
Statement Keywords Description
AUDIT Record access to IBM Workload Scheduler for z/OS data.
JTOPTS JTLOGS Specifies the number of auditing logs that IBM Workload Scheduler for
z/OS must open when it is started.
IBM Workload Scheduler for z/OS processes the options in this order when a job
or started task ends:
1. EWTROPTS RETCODE - create job-end event.
2. JCC - the event is passed to JCC if it is active. The JCC can set a new value for
the return code. After JCC processing, the event passes to the controller.
The event reaches the event queue at the controller.
3. Return code 0 - Operation status set to C. Or continue checking.
4. ERROR TRACKING - If operation details specify no error tracking, the
operation status is set to C. Or continue checking.
5. NOERROR - If the return code matches a NOERROR entry, the operation status
is set to C. Or continue checking.
IBM Workload Scheduler for z/OS checks all NOERROR statements and the
NOERROR keyword of JTOPTS for a matching entry.
6. HIGHRC - If the return code is less than or equal to HIGHRC, the operation
status is set to C. Or continue checking.
IBM Workload Scheduler for z/OS first uses the HIGHRC value in the
operation details. If blank, JTOPTS HIGHRC is used.
7. ERRRES - If the return code matches an ERRRES entry, the operation status is
set to A.
If no match has occurred, the operation status is set to E. Recovery processing can
then occur.
Workload restart
Table 16. Workload-restart-related parameters
Statement Keywords Description
JTOPTS WSFAILURE System-level actions for workstation failure
WSOFFLINE System-level actions for workstation offline
OPRESTARTDEFAULT Action if restartable field in operation details is blank
OPREROUTEDEFAULT Action if reroutable field in operation details is blank
OFFDELAY Elapsed time before offline actions are taken
Performance
These statements and parameters can affect the performance of IBM Workload
Scheduler for z/OS.
Table 17. Performance-related parameters
Statement Keywords Description
AUDIT Specifies how much audit information is produced
ALERTS LATEOPER Use only when deadlines are accurate
AUTHDEF SUBRESOURCES Specifies subresources that you want to check
EWTROPTS STEPEVENTS Specifies when IBM Workload Scheduler for z/OS creates events for ending
job-steps
PRINTEVENTS Specifies if IBM Workload Scheduler for z/OS creates events for print tasks
(type 4)
HOLDJOB Specifies if IBM Workload Scheduler for z/OS holds and releases jobs on
the JES queue
EWWAIT Specifies the time between reads of a submit/release data set
JTOPTS BACKUP Specifies if a CP backup is performed automatically and how many records
are written to the JT log between backups
EVELIM Specifies how often statistics messages related to the STATMSG keyword
are issued
MAXJSFILE Specifies if a JS backup is performed automatically and how large the JCL
repository file grows before IBM Workload Scheduler for z/OS performs a
backup
QUEUELEN Specifies the number of operations IBM Workload Scheduler for z/OS starts
when the workstation analyzer subtask gets the CP lock
STATIM Specifies when statistics messages are issued
STATMSG Determines if IBM Workload Scheduler for z/OS issues performance
statistics for the current plan, event manager, general service, and WSA task
TRACK Determines which jobs IBM Workload Scheduler for z/OS tracks
OPCOPTS RCLEANUP Specifies if the restart and cleanup function is active. Performance is
affected when the user chooses to archive the user sysouts for the majority
of the operations.
VARSUB Determines which jobs are scanned for JCL variables and directives
TOPOLOGY LOGLINES Specifies the maximum number of lines that the Job Log Retriever returns
for a single Job Log.
Reporting
These statements and parameters affect the reports that are produced by daily
planning batch jobs.
Table 18. Reporting-related parameters
Statement Keywords Description
BATCHOPT DATEFORM Date format in reports
DPROUT The ddname of the file that reports are written to
HDRS Character strings used as report headers
PAGESIZE Number of lines per page
PLANHOUR Start of a plan period for reporting purposes
PREVRES Previous period results (the 24 hours before PLANHOUR)
JTOPTS PLANSTART Start of a plan period for reporting purposes
RESOURCE FILTER Specifies which special resources should be reported on
You can also specify in a workstation description the ddname of a file that daily
planning writes reports to for that workstation. This value overrides DPROUT only
for reports for the workstation.
You select which report types IBM Workload Scheduler for z/OS produces when
you run a daily planning job.
RODM monitoring
IBM Workload Scheduler for z/OS support for RODM lets you use established
resource monitoring. Through subscriptions to RODM, you can monitor the status
of real resources used by IBM Workload Scheduler for z/OS operations.
Table 19. RODM-related parameters
Statement Keywords Description
OPCOPTS RODMTASK Starts the RODM subtask
RODMPARM Specifies where RODMOPTS statements are stored
EWTRTASK Starts an event writer to collect resource events
RODMOPTS Specifies subscription parameters
ROUTOPTS Specifies routes to tracker destinations
Job definitions
Table 22. Job definition-related parameters
Statement Keywords Description
JOBREC JOBSCR Specifies the name of the shell script or executable file to run
JOBCMD Specifies the name of the shell command to run
JOBUSR Specifies the name of the user submitting the script or command
INTRACTV Specifies that a Windows job runs interactively on the Windows desktop
RCCONDSUC Specifies a Boolean expression which determines the return code (RC)
required to consider a job successful.
Regional settings
Missing or incorrect code page and time zone settings might cause unexpected
results, such as garbage in retrieved job logs or incorrect job run times. The
following sections provide a simple checklist to prevent this kind of problem.
Code page
At host side, you can set the code page by specifying TOPOLOGY(CODEPAGE())
in the server and batch initialization statements. The input translator and the fault
tolerant agent (FTA) use the specified value to convert received data, from UTF-8
format to EBCIDIC format and conversely.
At distributed side, to verify the active code page you can use operating system
specific commands, for example the chcp command for Windows and locale for
UNIX. Moreover:
v Verify that the TWS_TISDIR environment variable is set to the name of the IBM
Workload Scheduler home directory.
v To handle jobs containing some national characters on a Windows workstation,
add the chcp code_page command to the TWS_home\jobmanrc file, where
code_page is the code page including those national characters.
Time zone
In an end-to-end with fault tolerance capabilities environment, the work is
scheduled in terms of controller local time.
When adding time-dependent jobs to the Symphony file, the scheduler converts
that time to the local time of the FTA. The conversion is first from controller local
time to GMT, then from GMT to FTA local time. The conversion succeeds only if
the following conditions occur:
v At host side:
WLM integration
This statement and these keywords determine how IBM Workload Scheduler for
z/OS integrates with Workload Manager (WLM) to run operations.
Table 23. WLM integration-related parameters.
Statement Keywords Description
OPCOPTS WLM Provides information about the WLM service class integration function
(class name, policy name).
SECHECK Specifies if and how integration with the WLM scheduling environment is
to be activated.
| SERESETJS Specifies if the JCL must be replaced in the JS file, when the WLM
scheduling environment becomes available; in this way, any variables
contained in the JCL are updated with the most up-to-date values.
JESPLEX Specifies the list of systems comprising the JESplex to which the tracker
belongs.
SYSPLEXID Specifies the number identifying the sysplex to which the tracker belongs.
SUPPRESSENF Specifies if activation of the ENF 57 and ENF 41 listener exits is to be
suppressed.
External monitoring
These statements and these keywords specify the configuration options for IBM
Workload Scheduler for z/OS to work with Tivoli Business Systems Manager and
IBM Tivoli Monitoring through the Tivoli Enterprise Portal component.
Table 24. Parameters related to integration with external monitors
Statement Keywords Description
ALERTS MONALERT Defines the conditions under which a generic alert will be sent to IBM
Tivoli Monitoring.
MONOPER This parameter determines whether the error conditions specified by the
MONALERT keyword will be in effect for monitored jobs only or for all
jobs. It is used with IBM Tivoli Monitoring.
OPCOPTS EXTMON Specifies if Integration with Tivoli Business Systems Manager is enabled.
CODEPAGE Specifies the host code page to be used for the data collected by the
monitoring task
Before you use IBM Workload Scheduler for z/OS security features, you must
define and enable the security environment. For details, see Planning and
Installation.
When you have determined your security requirements, implement security access:
Table 26. Security implementation
Task Reference
Topic
Verify that the environment is set up. Ensure Refer to IBM Workload Scheduler for z/OS
that you have: Planning and Installation
v Defined the user ID of the IBM Workload
Scheduler for z/OS in the STARTED class.
v Defined the IBM Workload Scheduler for
z/OS subsystem name as a resource in the
APPL class.
v Used the resource class reserved for IBM
Workload Scheduler for z/OS, IBMOPC.
Specify access to the subsystem. “Controlling access to the IBM Workload
Scheduler for z/OS subsystem” on page 190
Specify fixed resources. “Controlling access to IBM Workload
Scheduler for z/OS fixed resources” on page
190
Specify subresources. “Controlling access to IBM Workload
Scheduler for z/OS subresources” on page
191
Implement security access through the IBM “Controlling access to IBM Workload
Workload Scheduler for z/OS API, if you Scheduler for z/OS from APPC” on page
use this function. 193
Implement security access through the IBM “Controlling access to IBM Workload
Workload Scheduler for z/OS server, if you Scheduler for z/OS from APPC” on page
use this function. 193
Specify subresources on the AUTHDEF “AUTHDEF” on page 17
statement.
Specify resource names on the AUDIT “AUDIT” on page 14
statement, if you need audit information.
The RACROUTE options that IBM Workload Scheduler for z/OS uses invoke these
RACF functions:
RACINIT
Provides RACF user identification and verification when IBM Workload
Scheduler for z/OS services are requested. (IBM Workload Scheduler for
z/OS does not have its own logon panel or user IDs.)
RACLIST
Builds in-storage profiles for resources defined by RACF, which improve
performance for resource authorization checking.
Note: Some security products do not support this function. If you are
using such a product, RACLIST is effectively a no operation.
RACHECK
Provides authorization checking when you request access to a
RACF-protected resource, for example, when you access:
v Data (such as the current plan)
v A function (such as REFRESH)
For more information about resources that you can protect, see “Functions
and data that you can protect” on page 199.
FRACHECK
Provides authorization checking in the IBM Workload Scheduler for z/OS
subsystem.
Identifying users
RACF controls the interaction between users and resources. You define resources
and the level of access allowed by users to these resources in RACF profiles. A
user is an alphanumeric user ID that RACF associates with the user.
IBM Workload Scheduler for z/OS needs access to non-IBM Workload Scheduler
for z/OS resources for the work it schedules. The user ID associated with IBM
Workload Scheduler for z/OS can be obtained from:
v The IBM Workload Scheduler for z/OS address space that accesses data sets
used by the work it schedules, and that submits work and issues JES and MVS
commands.
v The user= parameter on the JOB card of a batch job.
v The IBM Workload Scheduler for z/OS job-submit exit, EQQUX001, which is
called when IBM Workload Scheduler for z/OS is about to submit a job or start
a started task, and which can pass back a user ID.
v The USRREC statement, which specifies the name and password of the user on a
supported Windows workstation.
v The LOCALPSW statement, which specifies whether the name and password of
a user on a Windows workstation is defined either on z/OS using the USRREC
statement (LOCALPSW set to NO) or on the Windows workstation using a local
User IDs that access IBM Workload Scheduler for z/OS resources can be:
v A TSO user ID that accesses the IBM Workload Scheduler for z/OS dialogs,
submits batch jobs that access IBM Workload Scheduler for z/OS resources, and
issues IBM Workload Scheduler for z/OS TSO commands.
v An IBM Workload Scheduler for z/OS address space, which must be permitted
access to IBM Workload Scheduler for z/OS resources.
v Other started-task address spaces that pass requests to an IBM Workload
Scheduler for z/OS address space.
v A user ID supplied by a transaction program (TP) that uses the IBM Workload
Scheduler for z/OS API to communicate with the controller.
v A user ID defined by the USERMAP keyword of the SERVOPTS statement to
work with Dynamic Workload Console.
Also consider which resources you use to restrict access. For example, you can
protect application descriptions through the application ID, the owner ID, and the
authority group ID.
Note: Some IBM Workload Scheduler for z/OS fields that can be used for security
verification permit characters not acceptable to RACF. For example, the characters
for semicolon, comma, and blank cannot be specified in a RACF resource name
regardless of the FIRST and OTHER specifications in the ICHERCDE MACRO, but
are acceptable as part of an IBM Workload Scheduler for z/OS owner ID.
With RACF user groups, you need not change access lists of different profiles as
often. When you must make a change, you add or remove a user ID in the group,
or move the user ID to another group.
Also consider using generic profiles when specifying RACF resource names.
Resources protected by generic profiles have similar names and identical security
requirements.
Some users might need to allocate, delete, or reorganize IBM Workload Scheduler
for z/OS data sets. RACF and IBM Workload Scheduler for z/OS facilities let you
give individual users the level of access they need while protecting your data from
accidental or malicious damage.
IBM Workload Scheduler for z/OS needs update access to catalogs and alter access
to data sets for all work that it tracks, which uses the restart and cleanup function.
But if you permit IBM Workload Scheduler for z/OS access to all your systems, a
user might gain unauthorized access through IBM Workload Scheduler for z/OS,
because any job submitted by IBM Workload Scheduler for z/OS can access the
data. So if you use RACF 1.9 or later, consider surrogate job submission to authorize
jobs submitted by IBM Workload Scheduler for z/OS. By specifying IBM Workload
Scheduler for z/OS as a surrogate user for each of your systems, you can avoid
violations from other users. For more information, refer to Planning and Installation
and RACF Administrator's Guide
If you use the IBM Workload Scheduler for z/OS hot standby facilities, consider
the security environment on any potential standby system. If the standby is
invoked, you must access IBM Workload Scheduler for z/OS data sets, dialogs,
resources, and subresources from the standby system.
If you use the workload restart function, ensure that rerouted work can access the
required resources on the system where the work is performed. IBM Workload
Scheduler for z/OS work that is submitted at a particular destination has the
authority of IBM Workload Scheduler for z/OS at that destination or, if the
EQQUX001 exit is used, the authority of the submitting user.
You can track access to IBM Workload Scheduler for z/OS resources by specifying
parameters on the AUDIT initialization statement. When a user accesses a
nominated resource, a record is written to the current job-tracking-log data set. The
AUDIT statement is described in “AUDIT” on page 14.
The level of access given to a user at one level determines the default access that
the user has at remaining levels. For example, if a user has update access to the
IBM Workload Scheduler for z/OS subsystem, then that user has, by default,
update access to all fixed resources. A user's access to fixed resources in turn
determines the default access to subresources. The default value is used when a
resource has not been specifically protected.
If you use the IBM Workload Scheduler for z/OS API, you can also use the
security functions of APPC/MVS to protect access to the controller. See
“Controlling access to IBM Workload Scheduler for z/OS from APPC” on page
193, for more information.
Carefully review your security requirements, and specify the levels of protection
that you require. Do not specify extra levels of protection if they are not needed.
When a dialog user tries to access a subsystem (for example, OPCC), RACF looks
in the APPL class to see if this resource is defined. If the resource is defined and
the access authority is read or update, the user can continue. If the resource is not
defined, the dialog user has update access to all IBM Workload Scheduler for z/OS
fixed resources.
Any TSO user with either read or update access to the subsystem resource in the
RACF APPL class can enter the IBM Workload Scheduler for z/OS dialogs. By
default, the user has the same access (read or update) to IBM Workload Scheduler
for z/OS fixed resources.
Table 29 on page 200 shows the fixed resources that you can protect.
When you define the resource names of the IBM Workload Scheduler for z/OS
fixed resources you want to protect, you grant a level of access to users. These
access levels are meaningful:
ACCESS(NONE)
ACCESS(READ)
ACCESS(UPDATE)
ACCESS(ALTER) has no code support in IBM Workload Scheduler for z/OS for
either fixed resources or subresources. ALTER gives the same level of access as
UPDATE.
If you change a user's access level or remove the user's profile entirely, the change
does not take effect until the user exits the IBM Workload Scheduler for z/OS
dialog and tries to enter it again. Remember that the default access to IBM
Workload Scheduler for z/OS fixed resources is determined by the user's level of
access to the IBM Workload Scheduler for z/OS subsystem.
RACF does not check for a RACF class until that class is activated. You can
activate a class by using the ACTIVATE parameter of the SETROPTS command.
If you do not specify subresources, access to IBM Workload Scheduler for z/OS
data is determined by a user's access to fixed resources or, if fixed resources are
not defined, by the user's access to the IBM Workload Scheduler for z/OS
subsystem. To implement specific protection of IBM Workload Scheduler for z/OS
data, you must:
v Give users access to the fixed resource that owns the subresource.
v Add the subresource to the list of SUBRESOURCES on the AUTHDEF statement.
v Define to RACF the RACF resource name that corresponds to the IBM Workload
Scheduler for z/OS subresource name.
v Set up the required RACF profile for the resource.
Table 29 on page 200 shows the subresources that you can protect.
If you change a profile for a subresource while IBM Workload Scheduler for z/OS
is active, the change does not take effect immediately. Three ways to effect the
change are:
v Stop and restart IBM Workload Scheduler for z/OS.
The AUTHDEF statement uses the IBM Workload Scheduler for z/OS subresource
name to activate RACF checking for an IBM Workload Scheduler for z/OS
subresource. For example, if you want IBM Workload Scheduler for z/OS to verify
authorization for application descriptions by checking the application name, you
specify the value AD.ADNAME on the SUBRESOURCES keyword of the
AUTHDEF statement. The resource name that RACF then checks consists of a
3-character code identifying the subresource, followed by a name specifying the
particular data to be protected. For example, to protect application descriptions
whose application name is PAYROLL, you define a RACF resource,
ADA.PAYROLL, in the RACF resource class that is specified on the AUTHDEF
statement.
Here is an example that shows how you could protect the JCL and job library file
(JS). This example assumes that:
v The file is protected against update but can be read by any user.
v The owner ID is used to protect access. Table 29 on page 200 shows the other
names that you can select to protect the JS fixed resource.
v User CASHIER has update access to data with owner PAYROLL but has only
read access to other data.
v OPCCLASS is the RACF resource class used to protect IBM Workload Scheduler
for z/OS resources. This name is specified on the AUTHDEF statement.
v The required resources are not defined.
To implement protection:
1. Define the fixed resource that owns the subresource and give universal read
access to it:
RDEFINE (OPCCLASS) JS UACC(READ)
2. Give user CASHIER update access to the JS fixed resource:
PERMIT JS ID(CASHIER) ACCESS(UPDATE) CLASS(OPCCLASS)
3. Define a RACF resource, JSO.PAYROLL, to RACF and give universal read
access to JSO.PAYROLL:
RDEFINE (OPCCLASS) JSO.PAYROLL UACC(READ)
JSO is the 3-character code that RACF uses for JS.OWNER.
4. Give user CASHIER update access to JSO.PAYROLL:
PERMIT JSO.PAYROLL ID(CASHIER) ACCESS(UPDATE) CLASS(OPCCLASS)
5. Define a subresource JSO.* to RACF and give universal read access to this
subresource:
RDEFINE (OPCCLASS) JSO.* UACC(READ)
If you base your subresources on application names or owner IDs and these do not
have consistent naming standards, you might need hundreds or even thousands of
RACF profiles. This would make your subresources difficult to maintain. It would
also slow IBM Workload Scheduler for z/OS processing, particularly at startup
time when all profiles are read in. You can dramatically reduce the number of
profiles you need by using consistent naming standards, or RACF generic profiles,
or both.
Note:
1. If you define only fixed resources, a user who asks for a list of occurrences sees
the names of all occurrences. If you define subresources, only the occurrences
that the user has access to are listed. So two IBM Workload Scheduler for z/OS
users asking for the same list on the same panel could see different lists.
2. If you use subresource protection, you can control the number of access
violations that are logged for list requests through the LISTLOGGING keyword
of AUTHDEF.
3. The check for a subresource authority does not depend on LISTLOGGING or
the order of the subresources in the AUTHDEF statement. When more than one
subresource is specified, a check for each one is issued. The check process stops
at the first failure and no check is performed for the other subresources.
Access to IBM Workload Scheduler for z/OS through the API or the server can be
controlled in two distinct ways: through security provided by:
v APPC/MVS and RACF
v IBM Workload Scheduler for z/OS and RACF
Access to IBM Workload Scheduler for z/OS through the API, or GUI uses a
non-trusted allocation. As an extra level of security, these accesses use a transaction
program that must have a security type of PGM or SAME. For GUI, these
definitions are made in the Communications Manager.
You must also ensure that a RACF user profile exists in the RACF database for the
user ID that is passed in an allocate request.
IBM Workload Scheduler for z/OS recognizes the following transaction program
names:
Name Supplied by
EQQTRK
Trackers that communicate with the controller through APPC
EQQAPI
User programs (ATPs) that communicate with IBM Workload Scheduler for
z/OS through the API
EQQDIA
The IBM Workload Scheduler for z/OS ISPF dialogs
The z/OS connector performs a security check when a user tries to use Dynamic
Workload Console of IBM Workload Scheduler for z/OS, by checking the user ID
and password. The z/OS connector associates each user ID and password with an
administrator.
IBM Workload Scheduler for z/OS resources are currently protected by RACF.
The Dynamic Workload Console user should have to enter only a single user ID
and a password combination, and not provide two levels of security checking (at
z/OS connector level and again at IBM Workload Scheduler for z/OS level).
The security model is based on z/OS connector security handling initial user
verification, and, at the same time, obtains a valid corresponding RACF user ID.
This makes it possible for the user to work with the security environment in z/OS.
z/OS security is based on a table that maps the administrator to a RACF user ID.
When a z/OS connector connects to IBM Workload Scheduler for z/OS, the z/OS
connector administrator is mapped to the corresponding user ID. Therefore, ensure
that the administrator ID is associated with a RACF user ID in the USERMAP
parameter of the SERVOPTS initialization statement. The RACF user ID does not
need to have particular permissions to the IBM Workload Scheduler for z/OS
resources. For details about how to map a user ID to a RACF user ID, see “Using a
server initialization parameter to associate a RACF user ID” on page 197.
For any operations performed through Dynamic Workload Console, ensure that the
Dynamic Workload Console user ID is associated with a corresponding RACF user
ID. The RACF user ID must have the permissions required to access the IBM
Workload Scheduler for z/OS resources.
IBM Workload Scheduler for z/OS server uses the RACF user ID to build the
RACF environment to enable the user to access IBM Workload Scheduler for z/OS
services.
You can obtain the RACF user ID in either of the following ways:
v Using the RACF Tivoli-supplied and predefined resource class TMEADMIN. For
details, see “Creating the TMEADMIN class to associate a RACF user ID” on
page 196.
v Using a server initialization parameter (SERVOPTS USERMAP) to define a
member in the file identified by the EQQPARM DD statement in the server
startup job. If the USERMAP parameter is specified for the SERVOPTS
statement, the TMEADMIN RACF class is ignored. For details, see “Using a
server initialization parameter to associate a RACF user ID” on page 197.
This example shows the authentication process performed by the z/OS connector
when you connect as a Dynamic Workload Console user. Suppose that:
where TSOuser is the TSO user ID with which the IBM Workload Scheduler for
z/OS dialogs are run.
When GRAPHUSR performs an operation, the z/OS connector uses these credentials,
therefore it is required that both GRAPHUSR and ZCONN1 are associated with a RACF
user ID. The RACF user ID associated with the z/OS connector user does not need
to have particular permissions to the IBM Workload Scheduler for z/OS resources,
while the RACF user ID associated with the console user needs the permissions to
perform the required operations.
The following table shows the relationship between security products and the
security selections.
Table 27. Relationship between security products and security selections
Security Product used Solution Prerequisite
Security Server (RACF) TMEADMIN None (TMEADMIN class provided in
z/OS base)
Other SAF-compliant TMEADMIN Manually define TMEADMIN class
(using EQQ9RFDE and EQQ9RF01
samples)
All security products ID mapping table
Note: If RACF is your security product and your operating system does not
have the Security Server feature, you can use the supplied samples to create the
following:
v RACF TMEADMIN class EQQ9RFDE. Use the following macro, which you
can access in the EQQ9RFDE member of SEQQSAMP library:
TMEADMIN ICHERCDE CLASS=TMEADMIN,
ID=129,
MAXLNTH=246,
FIRST=ALPHANUM,
OTHER=ANY,
POSIT= 26,
OPER=NO,
DFTUACC=NONE,
DFTRETC=8,
RACLIST=ALLOWED,
GENLIST=ALLOWED
Note: In the following tasks, which are for mapping the administrator to
RACF user IDs, it is recommended that each administrator maps to a unique
RACF user ID.
5. Activate the TMEADMIN class by typing the following command: SETROPTS
CLASSACT (TMEADMIN).
6. In the TMEADMIN class, use the following string to define a unique RACF
user ID for each Tivoli administrator who will perform Dynamic Workload
Console operations: userid@hostname. For example, for a user with the
identifier SCOT at the host pelican you would use SCOT@pelican.
7. Enter the following command to define a general resource profile in the
TMEADMIN class to associate the administrator with a RACF user ID (in this
example, SCOT):
RDEFINE TMEADMIN SCOT@hostname APPLDATA(’SCOT’)
Also, use the % sign instead of the special character. For example, for the Italian
code page, the character @ (hex'B5') is not accepted by RACF. So, for
SCOT@pelican, you should type SCOT%pelican.
When searching a list of TMEADMIN files for a match, RACF looks for the most
similar generic profile.
When the z/OS connector opens a connection with the IBM Workload Scheduler
for z/OS server, the WebSphere® Application Server authenticates the
communication by means of the WebSphere Application Server user identity.
Depending on your configuration, the server user identity can be one of the
following:
v An automatically generated server identity that is not stored in a user repository
(for example SERVER:TIPCELL_TIPNODE_SERVER1).
v A server identity that is stored in the repository.
In either case you need to associate the server user identity to a RACF ID. You can
modify your configuration to use the administrator ID as the server user identity
by editing the changeSecurityproperty WebSphere Application Server tool
(TWA_home/wastools or TWA_home\wastools) where you set
UseRegistryServerId=true and you specify the administrator user ID and
password in the ServerID and ServerPassword keys.
Table 28 on page 199 shows the commands and the resources that they need access
to.
The authority of the requester is verified by the subsystem name identified in the
command, if an AUTHDEF statement is defined for that subsystem. If the request
is broadcast, each IBM Workload Scheduler for z/OS subsystem on the z/OS
system that the command is directed to will attempt to verify the authority of the
requester, before it generates an event. It could be rejected by one subsystem and
accepted by another. A user must have update authority to the required resource to
use TSO commands. Managing the Workload describes TSO commands in detail.
Fixed resources are always checked as part of the IBM Workload Scheduler for
z/OS dialog. Subresources are checked only if they are defined in the “AUTHDEF”
on page 17statement.
Table 29 on page 200 describes all fixed resources and subresources. Use the table
to determine which resources you should define to RACF. You use Table 31 on
page 206 to determine what access is required to the defined resources for each
user.
Note: The subresource name and the RACF resource name are not the same. You
specify the subresource name shown in column 2 on the SUBRESOURCES
keyword of AUTHDEF to start subresource verification. The corresponding RACF
resource name shown in column 3 must be defined in the general resource class
used by IBM Workload Scheduler for z/OS, which is specified on the CLASS
keyword of “AUTHDEF” on page 17.
AD AD Application-description file
AD.ADNAME ADA.name Application name
AD.ADGDDEF ADD.name Group-definition-ID name
AD.NAME ADN.name Operation extended name in application-description
AD.OWNER ADO.name Owner ID
AD.GROUP ADG.name Authority group ID
AD.JOBNAME ADJ.name Operation job name in application description
AD.RESNAME ADR.resname Special resource name
AD.SECELEM ADM.name Security element name
AD.UFVAL ADU.field_name.field_value User field name and value.
ADEP ADEP Selecting all dependencies in the QCP dialog
CL CL Calendar data
CL.CALNAME CLC.name Calendar name
| CP CP Current-plan file
| CP.ADD CP.ADD Add workload
| CP.DELETE CP.DELETE Delete workload
| CP.MODIFY CP.MODIFY Modify workload
| CP.ADDOPER CP.ADDOPER Add operation
| CP.DELOPER CP.DELOPER Delete operation
| CP.MODOPER CP.MODOPER Modify operation
| CP.MODDEP CP.MODDEP Modify dependencies
| CP.MODOPSTAT CP.MODOPSTAT Modify operation status
| CP.COMMANDn CP.COMMANDn List of commands
| CP.ADNAME CPA.name Occurrence name
| CP.CPGDDEF CPD.name Occurrence group-definition-ID
| CP.NAME CPN.name Operation extended name
| CP.OWNER CPO.name Occurrence owner ID
| CP.GROUP CPG.name Occurrence authority-group ID
| CP.JOBNAME CPJ.name Occurrence operation name
| CP.WSNAME CPW.name Current plan workstation name
| CP.ZWSOPER CPZ.name Workstation name used by an operation
| CP.SECELEM CPM name Security element name
| CP.UFVAL CPU.field_name.field_value Operation user field name and value
| CP.RESNAME CPR.resname Special resource name
| LT LT Long-term-plan file
| LT.ADNAME LTA.name Occurrence name
| LT.LTGDDEF LTD.name Occurrence group-definition ID
| LT.OWNER LTO.name Occurrence owner ID
| OI OI Operator-instruction file
| OI.ADNAME OIA.name Application name
| PR PR Period data
| PR.PERNAME PRP.name Period name
| WS WS Workstation data
| WS.WSNAME WSW.name Workstation name in workstation database
| As shown in Table 29 on page 200, these items exist only as fixed resources:
| Name Protects
| ADEP The use of ALL DEP inquiry from EQQSOPGD panel in the Query Current
| Plan (QCP) dialog. To use this function, you need read or update authority
| to the ADEP fixed resource.
| ARC The ACTIVATE/DEACTIVATE automatic recovery function in the IBM
| Workload Scheduler for z/OS Service Functions dialog. To use this
| function, you need update authority to the ARC fixed resource.
| BKP The use of the BACKUP command. BACKUP lets you request a backup of
| the current plan data set or JCL repository data set. To use this command,
| you need update access to the BKP fixed resource on the system where the
| command is issued.
| BUL The use of the BULKDISC command. BULKDISC allows you to initiate a
| bulk discovery. To use this command you need update access to the BUL
| fixed resource on the system where the command is issued.
| CMAC
| The Restart and Cleanup function in the IBM Workload Scheduler for
| z/OS panels. To use Step Restart, Job Restart and Start Cleanup update
| authority is needed to the CMAC fixed resource. No authority is required
| to CMAC for use of Display Cleanup.
| CONT
| The RACF RESOURCES function in the IBM Workload Scheduler for
| z/OS Service Functions dialog. This lets you activate subresources that are
| defined after IBM Workload Scheduler for z/OS started. To use this
| function, you need update authority to the CONT fixed resource.
| ETAC The ACTIVATE/DEACTIVATE ETT function in the Service Functions
| dialog. To use this function, you need update authority to the ETAC fixed
| resource.
| EXEC The use of the EX (execute) row command. You can issue this command
| Note: Ensure that you restrict access to these fixed resources to users who require
| them. REFR is particularly important because this function deletes the current plan.
| There are some things to consider when working with fixed resources and
subresources that control objects:
v The AD.JOBNAME and CP.JOBNAME subresources protect only the JOBNAME
field within an application or occurrence. You use these subresources to limit the
job names to which the user has access during job setup and similar tasks. If
you do not use these subresources, a dialog user might obtain greater authority
by using IBM Workload Scheduler for z/OS to perform certain functions. For
example, a user could submit an unauthorized job by adding an application to
the current plan, changing the job name, and then letting IBM Workload
Scheduler for z/OS submit the job.
For these subresources, only the ACCESS(UPDATE) level is meaningful.
v The subresources AD.GROUP, CP.GROUP, JS.GROUP, and RL.GROUP are used
to protect access to IBM Workload Scheduler for z/OS data based on the
authority group ID and not application description groups.
v The subresource data is passed to SAF without modifications. Your security
product might have restrictions on which characters it allows. For example,
RACF resource names cannot contain asterisks, embedded blanks, or DBCS
characters.
v The EQQ9RFDE member in the sample library updates the class-descriptor
tables with an IBM Workload Scheduler for z/OS-specific class called
OPCCLASS.
v Use the CP.ZWSOPER subresource if you want to protect an operation based on
the name of the workstation where the operation will be started. You must have
update access to this subresource if you want to modify an operation. If you
Table 31 shows the resource access that you need for each dialog function.
For example, to permit user CASHIER to add applications to the current plan, you
need to:
1. Find the Modify Current Plan (MCP) dialog in the table.
2. Find the add function.
3. Give user CASHIER access to the fixed resources shown for MCP add: read
access to the AD and JS profiles and update access to the CP profile.
Access is not required to the other resources shown for MCP add, unless
CASHIER also needs to use the functions that they protect when adding an
application. A numeric suffix identifies the note that describes the function. The
notes are listed after the table.
If you use subresources, the user must also have access to the subresource owned
by the fixed resource.
Table 31. Access requirements to fixed resources for dialog users
Dialog Function Fixed resource Access type
Work Station Browse workstation WS Read
Update workstation
WS Update
WSCL Read 1
Browse workstation closed WSCL Read
Update workstation closed WSCL Update
Print None None
Calendar Browse CL Read
Update CL Update
Print None None
Period Browse PR Read
Update
PR Update
JV Read 2
Print CL Read
Note:
Chapter 3. Implementing security 209
1. If you are modifying open intervals for one day
2. If you specify or update a JCL variable table name
3. If you are browsing operator instructions
4. If you are modifying operator instructions
5. If sorted in workstation order
6. If you want to change status
7. If you request a review of details
8. If you want to modify JCL
9. If you want to browse operator instructions
10. If you perform job setup using JCL variable substitution
11. If you want to browse JCL
12. If you want to issue the EX (execute) command
13. If you want to browse special resources
14. If you want to specify special resource allocations
15. If you want to add or update special resources
16. To issue the HIST (history) command, you need at least READ access
Your security strategy probably falls somewhere between these two extremes.
The only outside IBM Workload Scheduler for z/OS users are at the printer pool,
where operators report progress on a print ready list. Machine room operators do
not have IBM Workload Scheduler for z/OS tasks; people in the IBM Workload
Scheduler for z/OS area perform reruns and JCL corrections themselves.
During the second and third shifts, machine-room operators take care of reruns
and JCL corrections for all departments.
Many RACF resource names must be defined in the OPCCLASS resource class to
protect the data of every owner. Each subresource has its own profile, unless some
subresources can be grouped under generic profiles. For example, the owner IDs
PAYROLL, PAYROLL-A, and PAYROLL-02, can be grouped as PAYROLL*.
Defining profiles might seem like a lot of work, but the number of owners is
usually limited, and you can often use generic profiles. Because you can have
many more job names than owner IDs, generic definitions of job names are even
more important. Most jobs can be handled with a small number of generic profiles.
Exits with name prefix EQQUXnnn (where nnn is a number) are called when IBM
Workload Scheduler for z/OS is started. Exits with name prefix EQQUXxxx (where
xxx is not a number) are not called by the scheduler. For example, EQQUXCAT is
called (if present) by the EQQDELDS sample or by the EQQCLEAN program,
while EQQUXPIF is called by a PIF program during the application description
update (INSERT AD or REPLACE AD).
Each exit is loaded if the exit module exists, if the exit has not been disabled, and
if the exit has not been replaced by another exit name on the EXITS statement. See
“EXITS” on page 57 for a detailed description of the EXITS statement.
The EQQDPUE1 exit is used by daily planning batch jobs and is not affected by
the EXITS statement. The batch jobs use the exit if it is available. If the exit is not
found, a message is written to the message log of the batch job.
Exits are invoked using standard linkage conventions. When the exit is entered,
register 1 points to a parameter list. Each address in this list points to a parameter
that is passed to the exit. Table 33 contains information about the IBM Workload
Scheduler for z/OS exits.
Table 33. IBM Workload Scheduler for z/OS exits
AMODE at RMODE when
Exit name Loaded by entry linking Exit description
EQQUX000 tracker and controller 31 ANY IBM Workload Scheduler for
z/OS start/stop
EQQUX001 controller 31 24 Job submit
EQQUX002 controller 31 24 Job library read
EQQUX003 controller 31 ANY Application description
feedback
EQQUX004 tracker 24 24 Event filtering
EQQUX005 tracker 24 24 JCC SYSOUT archiving
EQQUX006 tracker 24 24 JCC incident-record create
EQQUX007 controller 31 ANY Operation status change
EQQUX009 controller 31 ANY Operation initiation
EQQUX011 controller 31 ANY Job-tracking log write
EQQUX013 controller 31 ANY Job-tailoring prevention
EQQUX014 controller 24 24 Scheduler time adjustment
Note:
1. All exits are entered with the RACF authority of the IBM Workload Scheduler
for z/OS subsystem.
2. Calling the program-interface module, EQQYCOM, from exits that are taken by
the controller address space is not recommended and will cause unpredictable
results if attempted.
See Appendix B, “Sample library (SEQQSAMP),” on page 391 and Diagnosis Guide
and Reference for more information about the running environment of the exits.
The following pages describe the IBM Workload Scheduler for z/OS exits and
include information about:
v Conditions that cause the exit to be called
v The mapping of each parameter (described in assembler-language format).
See also the section Limitation on the number of job steps in the IBM Workload
Scheduler for z/OS: Managing the Workload manual.
Application-description-validation (EQQUXPIF)
EQQUXPIF is invoked by a PIF program during the application description update
(INSERT AD or REPLACE AD).
This exit can be invoked for all new operations that do not run on a fault-tolerant
workstation. The exit is optional: the daily plan batch attempts to load it, and
when it finds it, it puts it to use. The exit should be used with care as it could
affect system performance.
EQQDPX01 parameters
FUNC DS CL6 (Function type)
ADID DS CL 16 (Name of current application)
OPNUM DS F (Operation number)
JOBNAME DS CL8 (Job name)
WSNAME DS CL4 (Operation workstation name)
SPECNR DS H (Number of special resources)
SPECBUF DS A (Special resource buffer)
WSCHENV DS CL 16 (Scheduling Environment Name)
MCAUSERF DS A (User field)
If the load module performs any input or output, it must be link-edited with
RMODE(24) according to normal z/OS restrictions. Otherwise, it can be link-edited
with RMODE(ANY). IBM Workload Scheduler for z/OS invokes the exit in
AMODE 31. The AMODE parameter specified at link-edit time has no effect.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
The sample library SEQQSAMP that was created during installation contains the
EQQUX0N exit, which is a sample of start/stop exits. For information about this
library and its samples, see Appendix B, “Sample library (SEQQSAMP),” on page
391.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX000 parameters
ACTION DS CL8 (Start/stop action)
MCAUSERF DS A (User field)
ACTION has the value START when the exit is called during IBM Workload
Scheduler for z/OS start. MCAUSERF is zero for this initial call. Normally, this exit
will perform exit initialization functions for the start call when you start IBM
Workload Scheduler for z/OS. If the exit needs to allocate storage that is used
while IBM Workload Scheduler for z/OS is active, you should update MCAUSERF
to address this storage. ACTION has the value STOP when the exit is called during
IBM Workload Scheduler for z/OS termination. Normally, this exit performs exit
termination functions for the stop call when you stop IBM Workload Scheduler for
z/OS. If MCAUSERF is updated by the start call, the same value is passed to the
exit for the stop call.
The sample library SEQQSAMP that was created during installation contains the
EQQUX001 exit, which is a sample of job-submit exits. For information about this
library and its samples, see Appendix B, “Sample library (SEQQSAMP),” on page
391.
IBM Workload Scheduler for z/OS invokes the exit in the addressing mode defined
by the load module's AMODE attribute. When the exit is called in bit addressing
mode, the job stream passed to the exit resides above the 16M line. When the exit
is called in 24 bit addressing mode, the job stream passed to the exit resides below
the 16M line.
Control is passed to the exit using the BASSM instruction. The exit must return to
its caller using the address passed to it in general register 14. The exit can return in
any addressing mode.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
Note: EQQUX001 is also called when a job is resubmitted to perform a Restart and
Cleanup. In this case, JCL changes are ignored. The JCL area is passed to the exit
but no changes are applied. Only the exit's user ID and return code information is
processed.
JOBNAME
The name of the job that is about to be submitted.
JCLLEN
The size, in bytes, of the job.
JCLAREA
The JCL records in the job.
LATEOUT
The latest-start-time value that IBM Workload Scheduler for z/OS has
calculated for the job.
ESTDUR
The estimated duration of this job.
NUMPS
The number of parallel servers required.
NUMR1
The amount of workstation resource 1 required.
Note: When an operation is defined with more than one special resource,
the SPECRES parameter contains the resource which is physically first in
the ADR record in the EQQADDS data set. This is initially the special
resource defined first for this operation, but is subject to change any time
that a user adds or removes a special resource from the operation.
ADID The name of the application that the job is part of.
MCAUSERF
A user field that is also passed to the EQQUX000 exit. IBM Workload
Scheduler for z/OS does not use or update the MCAUSERF field.
GROUP
The name of the authority group that the current operation belongs to.
RUSER
The name of the RACF user that owns the job. This parameter contains 8
blanks when the exit is called. The exit can update this parameter, if
required, to cause the job to be submitted under the specified user ID.
The returned RUSER value is stored in the CP file. It guarantees that,
whenever a stand-alone cleanup job is submitted, it has the same owner as
the original job.
Different ways to set it are suggested in the EQQUX001 sample job
contained in the SEQQSAMP library. A code sample extracting the value of
the USER parameter from the JOB card is included as well. Refer to the
comments in the sample for more details.
You can also use this parameter to modify the user submitting a job with a
centralized script. If you use this keyword to specify the name of the user
who submits the specified script or command on a Windows fault-tolerant
workstation, you can:
v Associate this user name to the Windows workstation in the USRREC
initialization statement.
v Set LOCALPSW(YES) in the TOPOLOGY statement, then use the user
utility to define the name and password of the user in a local file on the
Windows workstation.
This parameter is supported even if the job is sent to another system via a
submit/release data set. So, there is a possibility that the SUBMIT
SUBTASK of the controller or of the tracker which is submitting a given
job may abend while executing under that RUSER-supplied user ID rather
than under the user ID associated with the IBM Workload Scheduler for
z/OS started task. If this should occur, DUMPTASK may fail with an
ABEND913 if the user ID in control does not have WRITE access to the
SYSMDUMP data set. For this reason, SYSMDUMP data sets should be
defined with a UACC of UPDATE, that is they should be
WRITE-ENABLED to all user IDs under which an IBM Workload
Scheduler for z/OS-scheduled job might possibly be submitted.
If RUSER is blank and the job card does not specify the USER keyword,
the job is submitted with the authority of the IBM Workload Scheduler for
z/OS started task.
USRFAREA
USRFNAME DS CL16 (User field name)
USRFVAL DS CL54 (User field value)
The sample library SEQQSAMP that was created during installation contains the
EQQUX002 exit, which is a sample of job-library-read exits. For information about
this library and its samples, see Appendix B, “Sample library (SEQQSAMP),” on
page 391.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX002 parameters
TYPE DS CL1 (Constant = J)
FUNC DS CL1 (Constant = G)
JOBNAME DS CL8 (Job name)
IOAREA DS A (Address of I/O area)
IOAREAL DS F (Size of I/O area)
RETCODE DS X (Return code)
DATAL DS F (Amount of data returned)
ERRDATA DS CL78 (Error message returned)
ADID DS CL16 (Name of current application)
USRAREA DS A (User field, 0 at first call)
JCLUSER DS CL8 (Last user updating this job)
OPNUM DS F (Operation number)
IATIME DS CL10 (Occurrence input-arrival time, YYMMDDHHMM)
VAROCCP DS A (Address of occurrence data if operation is in CP)
VAROPRP DS A (Address of operation data if operation is in CP)
VARWSP DS A (Address of workstation data if operation is in CP)
MCAUSERF DS A (Address set by the user in the EQQUX000 exit)
OCCPTR DS A (Address of occurrence data)
OPRPTR DS A (Address of operation data)
WSPTR DS A (Address of workstation data)
AUTHGROU DS CL8 (Authority group)
MEMPRO DS CL1 (Indicator of memory problems)
TASKPTR DS A (Address of TCB of caller task)
XINFO DS A (Extended information address)
XJNAMLEN DS F (Extended job name length)
USRFNR DS F (Number of user fields)
USRFAREA DS A (User fields area address)
Note: If you modify the message library entry for EQQJ576 or EQQJ580 to
generate a WTO, you must ensure that no more than 70 characters of
message text are defined for each line. Reorganize the text, if required.
Also, ensure that ERRDATA itself does not exceed 70 characters.
ADID The name of the current application.
USRAREA
Is zero the first time the exit is called to retrieve a job. The exit can set this
parameter to any value. IBM Workload Scheduler for z/OS does not use or
update this parameter.
The exit should use the USRAREA parameter whenever it returns a return
code 0 or 44. Normally, the USRAREA parameter is used to contain the
address of a work area that the exit has performed a GETMAIN on. This
work area should contain enough information to enable the exit to
continue processing the same job.
JCLUSER
Is zero the first time the exit is called. The exit should set this parameter to
the name of the TSO user that is used for authority checking when the JCL
contains automatic recovery statements.
OPNUM
The operation number of the operation representing this job.
IATIME
The input-arrival time of the application occurrence that this job belongs
to.
VAROCCP
The address of occurrence data. The storage at this address is mapped by
the segment CPOC of the program interface (PIF).
VAROPRP
The address of operation data. The storage at this address is mapped by
the PIF segment CPOP.
VARWSP
The address of workstation data. The storage at this address is mapped by
the PIF segment CPWS.
Note: OCCPTR, OPRPTR, and WSPTR always contain valid addresses. The
data in these areas is read from the application description and
workstation description databases, if the operation associated with the JCL
does not exist in the current plan.
AUTHGROU
The name of the authority group.
MEMPRO
The indicator of memory problems.
TASKPTR
The address of the task control block of the caller task.
If the exit needs to access its own files, these files must be opened on the first call
for a job (USRAREA value=0) and closed in either of the following ways:
v Before returning control to the scheduler for the last time (before return code 4 is
set)
v When an error occurs that does not allow IBM Workload Scheduler for z/OS to
acquire further memory, IBM Workload Scheduler for z/OS informs the exit by
setting mempro to:
X'04' If the limit of 608 000 bytes is reached (EQQJ582 issued)
X'08' If there is not enough storage available (EQQJ577 issued)
XINFO
Is the address of the data specified in the Extended Info field of the
Current Plan for the corresponding operation. If its value is 0, no
extended information is available in the current plan.
XJNAMLEN
Is the length that you specify in the Operation Extended Name field of
the Current Plan for the corresponding operation. It is a sub-field of the
extended information available in the current plan.
USRFAREA
USRFNAME DS CL16 (User field name)
USRFVAL DS CL54 (User field value)
When the EQQUX002 exit is called to retrieve a job for the first time, the I/O area
is 32 000 bytes. If the exit has retrieved the entire job and it fits in the buffer space
available, the exit can update the I/O area, return the amount of data in the job,
and set a return code 4.
If the exit has not retrieved the entire job, it can update the I/O area, return the
amount of data in the job, and set a return code 0 to indicate that there is more
data to be returned. The next time the exit is called, the address and the size of the
I/O area will be updated because the I/O area is partly used by data from an
earlier call. The exit should continue this process until there is no more data to
return and then set a return code 4 to indicate that the entire job has been
retrieved.
Because the available space in the buffer is reduced for each call, it is possible that
the exit must set a return code 44 to indicate that the amount of free space is not
enough. When return code 44 is returned, the exit is called again with a job name
of eight equal signs (========). This is a reset call. The exit then prepares to
process the job from the beginning.
No data can be returned on the reset call. When the exit is called again after the
reset call, the I/O area is 32 000 bytes larger than before. This process of returning
a “not-enough-space” condition can be repeated up to 19 times for a job. This
means that the maximum buffer size that can be requested by the EQQUX002 exit
is 608 000 bytes. This corresponds to a job of 7599 card images. When the 608 000
byte limit is reached, IBM Workload Scheduler for z/OS issues message EQQJ582,
and the exit is called a 20th time if MEMPRO is set to 4.
The exit can also get more buffer space by using all available space in the current
buffer. When this happens and return code 0 is set, the exit is called again with
32 000 bytes free in the buffer. The reset call is not used in this case; the exit
should continue processing the current job normally. Extending the buffer in this
manner can be continued to a maximum buffer size of 608 000 bytes.
The sample library SEQQSAMP that was created during installation contains the
EQQUX003 exit, which is a sample of application-description-feedback exits. For
information about this library and its samples, see Appendix B, “Sample library
(SEQQSAMP),” on page 391.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX003 parameters
ADID DS CL16 (Name of current application)
OPIA DS CL10 (Input arrival of current operation, YYMMDDHHMM)
OPID DS CL6 (Workstation name, operation number (binary))
OLDDUR DS F (Old estimated duration, in minutes)
CURDUR DS F (Duration of current operation, in minutes)
NEWDUR DS F (New estimated duration, in minutes)
This exit is commonly used to filter the events created by nonproduction work. If
you run a significant number of test jobs and other work, and your job naming
standards let you do so, consider using EQQUX004 to filter the nonproduction
work. The sample library SEQQSAMP that was created during installation contains
the EQQUX004 exit, which is a sample of event-filtering exits.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 24; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
If the exit abends, it is flagged as not executable; IBM Workload Scheduler for z/OS
does not try to call the exit again.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX004 parameters
JOBNAME DS CL8 (Name of current job)
RETCODE DS F (Return code)
EXR DS CL80 (Exit record)
CDSP DS A (Address of data set information)
CCMACT DS CL1 (Catalog management action, blank or D)
JOBNAME
The name of the job for which a job-tracking event has been recognized
and for which an event record is about to be written to the event data set.
RETCODE
Is set by the exit. These values are recognized by the job completion
checker:
0 Normal return. The event writer continues normal processing; the
This exit is commonly used to change the defined SYSOUT disposition, depending
on the success or failure of the job. EQQUX005 is a tracker exit, although the
success or failure of an operation is ultimately determined by the controller. The
sample library SEQQSAMP that was created during installation contains the
EQQX5ASM exit, which is a sample of SYSOUT archiving exits. For more
information about this sample, see “SYSOUT archiving exit” on page 396.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 24; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
If the exit abends, it is flagged as not executable; IBM Workload Scheduler for z/OS
does not try to call the exit again.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX005 parameters
CALLTYPE DS CL1 (Call type)
RETCODE DS F (Return code)
JOBNAME DS CL8 (Name of current job)
JOBNUM DS CL8 (Current job number)
CLASS DS CL1 (Current SYSOUT class)
SIZE DS F (Size of current SYSOUT record)
RECFM DS X (Current record format)
USERAREA DS A (Address of job related info)
RECORD DS X (Current SYSOUT or event record)
ERRCODE DS H (Current error code)
SYSDISP DS CL2 (Job SYSOUT disposition)
CALLTYPE
Defines the circumstances under which the exit is called:
B The exit is called to process a SYSOUT record that has not been
processed by the JCC because the JCC is skipping forward in the
current SYSOUT data set.
C The JCC is ending. The exit is called for the last time.
E There is no more output for the current job. This is the last call for
the current job.
F The exit is called because the JCC is starting to process a job that
has failed.
I The JCC is starting. The exit is called for the first time.
J The JCC is starting to process a new job. This is the first call for
the current job.
N A normal SYSOUT record is passed to the exit.
S The exit is called because the JCC has found an error while
processing the current SYSOUT data set.
T The exit is called to process a SYSOUT record that has caused an
incident record to be created in the JCC incident log data set.
RETCODE
Is set by the exit. These values are recognized by the JCC:
0 Normal return. The JCC continues normal processing.
4 Stop scanning the current SYSOUT data set. The JCC continues
USERAREA map
JOBNAME DS CL8 (Job name)
JOBSTART DS CL8 (Job start time, format HH.MM.SS)
JOBEND DS CL8 (Job end time, format HH.MM.SS)
DATE DS CL8 (Current date, format YY/MM/DD)
SYSTEM DS CL5 (Name of z/OS system)
TRKID DS CL8 (Tracking identification)
STEPNAME DS CL8 (Step name from IEF450I)
DSNAME DS CL44 (SYSOUT data set name)
SYSCODE DS CL4 (System abend code from IEF450I)
USERCODE DS CL5 (User abend code from IEF450I)
JOBNUM DS CL8 (Job number)
RECORD
The current SYSOUT record. SIZE should be used to determine the size of
the current record.
ERRCODE
The error code for the current job. In JES2, the error code is nonzero only
when the exit is called for a SYSOUT record that has set a nonzero EID
after matching a JCC table entry. Subsequent calls for the same job will
have ERRCODE set to zero, unless a new EID is set by a subsequent
match. When the exit is called is because JCC has started to process a new
job.
SYSDISP
The SYSOUT disposition information in effect for the current job. See the
description of SYSOUTDISP in the list of JCCOPTS “Parameters” on page
74 for more information about this parameter. The exit can change the
SYSOUT disposition for a job at any time, but the normal disposition will
be restored when the JCC starts to process the next job.
The sample library SEQQSAMP that was created during installation contains a
sample of incident-record-create exits. The sample consists of two members in the
sample library:
EQQX6ASM
Sample EQQUX006
EQQX6JOB
Sample batch-job JCL skeleton to be used by the sample EQQX6ASM.
This sample creates records in the incident data set like these:
IBM Workload Scheduler for z/OS invokes the exit in AMODE 24; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
If the exit abends, it is flagged as not executable; IBM Workload Scheduler for z/OS
does not try to call the exit again.
EQQUX006 parameters
AREA DS CL1024 (Record build area)
NRECS DS F (Number of records created)
RSIZE DS F (Incident data set record size)
DATE DS CL8 (Current date, format YY/MM/DD)
JOBNAME DS CL8 (Job name)
JOBNUM DS CL8 (Job number)
JOBSTART DS CL8 (Job start time, format HH.MM.SS)
JOBEND DS CL8 (Job end time, format HH.MM.SS)
SYSTEM DS CL5 (Name of z/OS system)
EID DS CL8 (Error code)
TID DS CL8 (Tracking identification)
STEPNAME DS CL8 (Step name)
RFLAG DS CL1 (Record flag)
RECORD DS CL72 (Start of current SYSOUT record)
RETCODE DS F (Return code)
AREA The record build area to be updated by the exit. This area is blank when
the exit is called.
NRECS
Is set by the exit to tell the JCC how many records have been built in the
record build area.
RSIZE Gives the size of each record built. The exit must build these records in the
build area, each record must be contiguous to the preceding one, and the
exit must not update storage outside the build area.
DATE The date of the job that caused the incident-record-create exit to be called.
JOBNAME
The name of the job that caused the incident-record-create exit to be called.
JOBNUM
The job number of the job that caused the incident-record-create exit to be
called.
JOBSTART
The start time of the job that caused the incident-record-create exit to be
called.
JOBEND
The end time of the job that caused the incident-record-create exit to be
called.
SYSTEM
Identifies the system that the job was run on.
EID Contains the error code that is set for this job.
TID Contains tracking information from the current message-table entry.
STEPNAME
Identifies the name of the step in the current job that the exit is called for.
RFLAG
Has the value T if the incident-record-create exit is called because a match
has been found in a message table for a SYSOUT record. If RFLAG has any
other value, the exit is called for an incident that does not relate to a
particular SYSOUT record.
The IBM Workload Scheduler for z/OS sample library that was created during
installation contains a sample EQQUX007 exit written in assembler language. This
sample exit reports batch-job errors to the Information Management product. The
sample consists of two members in the sample library:
EQQX7ASM
Sample EQQUX007 assembler language program and JCL to assemble and
link it
EQQX7JOB
Sample batch-job JCL skeleton to be used by the sample EQQUX007.
Note: Because the same event might be processed a second time in a recovery
situation and during current plan turnover, this must be considered when coding
the exit. If invocation of the exit is NOT wanted during IBM Workload Scheduler
for z/OS recovery or turnover, code the exit to check if the CALLER is NMM. The
only circumstance when NMM calls EQQUX007 is during current-plan recovery
and daily-plan turnover.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX007 parameters
NEWSTAT DS CL1 (New operation status)
OLDSTAT DS CL1 (Old operation status)
OPNUM DS H (Operation number)
CALLER DS CL4 (Caller identification)
ERRCODE DS CL4 (Error code)
WSNAME DS CL4 (Workstation name)
ADNAME DS CL16 (Application name)
OWNER DS CL16 (Application owner name)
GROUP DS CL8 (Authority group name)
JOBAREA DS A (Address of job-related data)
OPERAREA DS A (Address of operation-related data)
USRAREA DS A (User-defined field)
EXSTAT DS CL1 (Operation extended status)
OCCPTR DS A (Address of occurrence data)
OPRPTR DS A (Address of operation data)
UFNUM DS F (Number of user fields)
UFPTR DS A (User fields area address)
NEWSTAT
Defines the new status for the current operation. These values are possible:
A Arrived at the workstation
C Complete
E Ended with errors
I Interrupted
R Ready for processing
* Ready for processing (predecessor at nonreporting workstation
complete)
S Active (started)
W Waiting.
JOBAREA
JOBNAME DS CL8 (Job name)
JOBNUM DS CL8 (Job number)
DATE DS CL8 (Current date, format YY/MM/DD)
JOBSTART DS CL8 (Job start time, format HH.MM.SS)
JOBEND DS CL8 (Job end time, format HH.MM.SS)
STEPNAME DS CL8 (Step name)
ABCODE DS CL4 (System abend code, format Shhh)
USRCODE DS CL5 (User abend code, format Uhhh)
ORIGNJE DS CL8 (Name of origin NJE node)
PSTEPNAM DS CL8 (Procedure step name)
The JOBNAME and DATE fields are always present for status changes at
automatically reporting computer and printer workstations. JOBNUM is
present when an operation at one of these workstations changes its status
from S to C. When the job is submitted by a fault-tolerant workstation, the
first three characters of the JOBNUM value are set to UNX by IBM
Workload Scheduler for z/OS.
The status is changed to S (started). The JOBNUM value can change only if
the operation is rerun. JOBSTART is present when the new status at
automatically reporting computer and printer workstations is S (started), C
OPERAREA
OPERTEXT DS CL24 (Operation description)
APPLIA DS CL10 (Application input arrival,format YYMMDDHHMM)
OPERIA DS CL10 (Operation input arrival, format YYMMDDHHMM)
PSTART DS CL10 (Planned start, format YYMMDDHHMM)
PLEND DS CL10 (Planned end, format YYMMDDHHMM)
DEADLINE DS CL10 (Operation deadline, format YYMMDDHHMM)
USERDAT DS CL16 (User data field)
RSPRES DS CL1 (Y=there is reason data, N=no reason data)
RSERR DS CL4 (The error code set by the dialog user)
RSUSER DS CL16 (The user data from the dialog: this is
* the same as USERDAT at entry to exit)
RSREASN DS CL300(The dialog ’reason for restart’ data)
RSPANEL DS CL8 (The panel where the restart was initiated)
XJNAME DS CL54 (Job extended name)
SAWS DS CL1 (New automation work station)
USRAREA
A user field that is also passed to the EQQUX000 exit. It contains valid
data only if you have an EQQUX000 exit that places some data in it. IBM
Workload Scheduler for z/OS does not use or update this field.
EXSTAT
Defines the extended status code of the operation. Refer to IBM Workload
Scheduler for z/OS Managing the Workload for a description of the valid
codes.
For performance reasons, user exit EQQUX007 does not currently provide
the extended status 'X' (waiting for resource). A new value, 'Z', valid for all
current status codes and types of workstation, has been added to signal
that an error has occurred in the DOA updating process. In this case,
message EQQE106I is issued in EQQMLOG.
OCCPTR
The address of the common data of record CPLREC3C.
OPRPTR
The address of the common data of record CPLREC3P.
USRFNR
The number of user field records in USRFAREA.
USRFAREA
The address of the user field area. It is laid out as follows:
You can use EQQUX009 to communicate with operating environments that do not
support a Tivoli OPC tracker. The IBM Workload Scheduler for z/OS sample
library that was created during installation contains these sample programs to
demonstrate how you can use EQQUX009:
EQQUX9N
Sample EQQUX009 using NJE to communicate with VM
EQQX9OS2
Sample EQQUX009 using TCP/IP to communicate with OS/2
EQQX9AIX
Sample EQQUX009 using TCP/IP to communicate with AIX®.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
If the exit abends, it is flagged as not executable; IBM Workload Scheduler for z/OS
does not try to call the exit again.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
If the exit returns a value in RETC that is not considered valid, it will be
ignored, and IBM Workload Scheduler for z/OS will treat the RETC as if 0
had been returned. In this case message EQQF010I is issued to the
controller message log.
If the exit abends, it is flagged as not executable, and message EQQF011 is issued.
The status of the operation that the exit was processing is set according to the
SUBFAILACTION keyword.
The sample library SEQQSAMP that was created during installation contains the
EQQUX011 exit, which is a sample of job-tracking log write exits. For information
about this library and its samples, see Appendix B, “Sample library (SEQQSAMP),”
on page 391.
The load module can be link-edited with RMODE(24) or RMODE(ANY). The load
module must be link-edited with at least reusable attribute.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit returns to the
caller using the address and addressing mode passed to it in general register 14.
If the exit abends, it is flagged as not executable; IBM Workload Scheduler for
z/OS does not try to call the exit again.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX011 parameters
MCAUSERF DS A (User field)
JTLOGNUM DS F (Current job-tracking log number)
SIZE DS F (Size of current job-tracking log record)
Notes:
1. The scheduler performance might be degraded if the exit requires lengthy
processing time.
2. While this exit has control, the scheduler does not process any new requests
requiring update of the job-tracking log.
3. System waits, including implied waits for I/O operations, should be avoided.
4. The scheduler Job-Tracking log writes is done by several different tasks,
therefore the exit will be called from different tasks interchangeably.
5. The above remarks should be taken into account when designing the exit.
IBM Workload Scheduler for z/OS invokes the exit in the addressing mode defined
by the load module’s AMODE attribute, that is 31 bit addressing mode, therefore
the job stream passed to the exit resides above the 16M line.
Control is passed to the exit using the BASSM instruction. The exit must return to
its caller using the address passed to it in general register 14. The exit can return in
any addressing mode.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUX013 parameters
JOBNAME DS CL8 (Job name)
JCLLEN DS F (Size, in bytes, of current job stream)
JCLAREA DS n * CL80 (All records in job stream)
LATEOUT DS CL10 (Latest start, format YYMMDDHHMM)
ESTDUR DS CL4 (Estimated duration, format HHMM)
NUMPS DS H (Number of parallel servers required)
NUMR1 DS H (Amount required of workstation resource 1)
NUMR2 DS H (Amount required of workstation resource 2)
SPECRES DS CL8 (First 8 characters of first sr name)
ADID DS CL16 (Name of current application)
MCAUSERF DS A (User field)
GROUP DS CL8 (Name of current authority group)
RUSER DS CL8 (Name of RACF user submitting the job)
OPERTYPE DS CL1 (J or S, for job or started task)
UPDAT DS C (Y or N, defines job origin)
JCLUSER DS CL8 (Last user updating this job)
JCLUTIME DS CL10 (Time or last update, format YYMMDDHHMM)
OPNUM DS F (Operation number)
IATIME DS CL10 (Occurrence input-arrival time, YYMMDDHHMM)
OWNER DS CL16 (Application owner name)
Note:
1. To allow more flexibility in determining the jobs that are not to be tailored with
the //TIVDSTxx OUTPUT statements, the JCL of the job being submitted is
provided as input to this exit. However, to work successfully, the exit must not
modify this JCL.
2. A job is not tailored for data store processing, if the EQQUX013 exit returns a
return code 0012 to the Work Station Analyzer.
JOBNAME
Name of the job that is about to be submitted.
JCLLEN
Size, in bytes, of the job.
JCLAREA
JCL records in the job.
LATEOUT
The latest-start-time value that IBM Workload Scheduler for z/OS has
calculated for the job.
ESTDUR
The estimated duration of this job
NUMPS
The number of parallel servers required
NUMR1
The amount of workstation resource 1 required
NUMR2
The amount of workstation resource 2 required
SPECRES
The first 8 characters of the special resource name
ADID Name of the application of which the job is part.
MCAUSERF
A user field that is also passed to the EQQUX000 exit. IBM Workload
Scheduler for z/OS does not use the MCAUSERF field.
RUSER
The name of the RACF user that owns the job
OPERTYPE
Has the value J for job or S for started task.
UPDAT
Has the value Y if the current job was retrieved from the EQQJSnDS data
set. In all other cases, UPDAT has the value N.
GROUP
The name of the authority group that the current operation belongs to
| Then, to dynamically refresh the criteria table, issue the following modify
| command:
| /F subsys,RFRUX14T
| For detailed information about the RFRUX14T command, see how to modify the
scheduler in Managing the Workload.
| Note: If you do not need to edit the criteria table while the controller is running,
| you can leave it in a sequential data set.
Use the table to correlate workstation name and offset value. Optionally, you can
specify filtering rules to exclude selected operations from the process that adds the
offset value to the operation start time. The following layout defines column
ranges to place key data in the UX14IN file:
1-2 Data type. Specify one the following:
WS To correlate workstation name and offset value.
AD To exclude an operation by application name.
IA To exclude an operation by input arrival value.
OP To exclude an operation by operation number.
JN To exclude an operation by job name.
3 A blank character (filler).
4-19 One of the following:
v Workstation name (up to 4 characters) for WS data type. Wildcard
character * is supported.
v Application name (up to 16 characters) for AD data type. Wildcard
character * is supported.
v Input arrival (up to 10 characters) for IA data type. Use the format
YYMMDDHHMM.
v Operation number (up to 3 characters) for OP data type.
v Job name (up to 8 characters) for JN data type. Wildcard character * is
supported.
20 Sign (+ or -) for WS data type only.
21-24 Offset value for WS data type only.
When editing the UX14IN file, specify the data types in the following specific
order:
v All the rows with WS data type first.
v Then all the rows with AD data type (if any).
v Then all the rows with IA data type (if any).
v Then all the rows with OP data type (if any).
v Then all the rows with JN data type (if any).
The sample library SEQQSAMP that was created during installation contains a
sample of EQQUX014 exit. For information about this library and its samples, see
Appendix B, “Sample library (SEQQSAMP),” on page 391.
EQQUX014 parameters
MCAUSERF DS A (User field)
TABPTR DS A (Criteria table address)
NUMROW DS F (Number of rows of the criteria file)
RECSIZE DS F (Criteria file record size)
ADID DS CL16 (Operation application name)
IATIME DS CL10 (Operation input arrival time, format YYMMDDHHSS)
WSNAME DS CL4 (Operation workstation name)
JOBNAME DS CL8 (Operation job name)
OPNUM DS F (Operation number)
TOFFS DS F (Offset to be added to, or subtracted from, the
operation start time)
RCODE DS F (Return code)
MCAUSERF
User field that is also passed to the EQQUX000 exit. The scheduler for
z/OS does not use or update this field.
TABPTR
User field containing the address of the criteria table used by this exit. It is
not allocated by the scheduler. The exit must return a value that is stored
in controller storage and passed back to the exit at each new call.
According to the provided sample, the first time the exit is called TABPTR
must be set to zero, next times it contains the address of the criteria table
to be used by the exit.
NUMROW
User field containing the number of rows of the input criteria file. The first
time the exit is called, the exit must set and return this value, that is stored
in controller storage and passed back to the exit at each new call.
RECSIZE
User field containing the record size of the input criteria file. The first time
the exit is called, the exit must set and return this value, that is stored in
controller storage and passed back to the exit at each new call.
ADID The name of the application that the job becoming ready is part of.
IATIME
The input arrival time of the job becoming ready.
Example
Suppose that:
v CPU1 is a workstation corresponding to Rome that is the location where the
controller runs.
v CPU2 is a workstation corresponding to a branch location in Istanbul.
v There are more workstations Z*, corresponding to different branch locations in
London.
To specify the offset information and your selection criteria, define the following
data in the UX14IN data set:
EDIT TWSTST.TWSIDD1.UX014 Columns 00001 00072
Command ===> Scroll ===> CSR
=COLS> ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
****** ***************************** Top of Data ******************************
000101 WS CPU2 +0060
000102 WS Z* -0060
000103 /* TO EXCLUDE SPECIFIC OPERATIONS
000110 AD MYAPPLID
000120 JN JOBX123
000200 JN MYJOB
****** **************************** Bottom of Data ****************************
When the operation is ready to start, the controller calls the exit and assigns the
specified offsets to any operation associated to CPU2 or Z*, unless:
v The operation belongs to MYAPPLID.
v The operation is defined with job name JOBX123 or MYJOB.
Limitations
The controller uses the returned TOFFS value to update the job start time and
leaves unchanged the latest start time. This might affect latest start time-related
activities such as:
v The processing of the SUPPRESS IF LATE option.
v Alert conditions or critical jobs monitoring. For example, consider a job with 9:00
as start time and 9:30 as latest start time. Supposing that the exit returns +0060
as TOFFS, the job becomes late as soon as it is ready to start.
The sample library SEQQSAMP that was created during installation contains the
EQQUXCAT exit, which is a sample of EQQDELDS/EQQCLEAN exits. For
information about this library and its samples, see Appendix B, “Sample library
(SEQQSAMP),” on page 391.
Control is passed to the exit using the BAL instruction. The exit must return to the
caller using the address and addressing mode passed to it in general register 14.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUXCAT parameters
PDSNAME DS CL44 (data set name)
PMIGR DS CL1 (Y=MIGRATED data set N=otherwise)
PVSAM DS CL1 (Y=VSAM data set N=otherwise)
PTAPE DS CL1 (Y=tape N=otherwise)
PRETCOD DS F (return code)
Note: If a return code different from 0 is returned, the data set action will not be
executed.
For example, suppose you run a JCL with the following step:
//STEP1 EXEC PGM=MYPGM
//DDPRO1 DD DSN=MYGDG.TEST(+1),DISP=(NEW,CATLG)
If you want to rerun this JCL, saving the previously allocated GDG G00015V00 and
allocating a new generation G00016V00, you can:
1. Define DDPRO1 in the DDPROT RCLOPTS controller statement.
2. Customize EQQUXGDG in order to not simulate the data set having DDNAME
equal to DDPROT.
The sample library SEQQSAMP that was created during installation contains the
EQQUXGDG exit, which is a sample of EQQCLEAN exits. For information about
this library and its samples, see Appendix B, “Sample library (SEQQSAMP),” on
page 391.
DDPROT/DSNPROT interactions
You can protect a data set from deletion by setting the DDPROT and DSNPROT
options for the RCLOPTS statement in the controller. You must however consider
the following interactions these have with the EQQUXCAT and EQQUXGDG exits:
v EQQUXCAT (deletion prevention exit) and EQQUXGDG (simulation prevention
exit) become active as soon as they are available to the EQQCLEAN program in
the library. On the contrary, DDPROT and DSNPROT become active only after a
Controller Restart or an appropriate MODIFY command are issued. For this
reason, it may happen that for some jobs the EQQCLEAN exits apply a logic
based on DDPROT/DSNPROT naming that differs from the normal logic of
RCLOPTS.
v The prevention logic of RCLOPTS DDPROT/DSNPROT is applied at the
controller level, so that by the time the EQQCLEAN exits are to be executed, the
controller has already eliminated the protected data set from the action list. At
this point, if the EQQCLEAN exits are called, EQQUXCAT can only protect from
deletion other data sets, but cannot modify the already protected ones.
Control is passed to the exit using the BAL instruction. The exit must return to the
caller using the address and addressing mode passed to it in general register 14.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUXGDG parameters
PJOBNAM DS CL8 (job name)
PSTEPNUM DS CL3 (step number)
PSTEPNAM DS CL8 (step name)
PPROCSTE DS CL8 (proc step name)
PDDNAME DS CL8 (DD name)
PROOT DS CL35 (GDG root)
PABSOLUT DS CL8 (GDG absolute value)
PSIGN DS CL1 (GDG relative number sign)
PRELNUM DS CL7 (GDG relative number)
PRETCODE DS F (return code)
PJOBNAM
The job name of the JCL that is going to be run.
PSTEPNUM
The step number (expressed in character format) where the GDG data set
to be overwritten is located.
PSTEPNAM
The step name where the GDG data set to be overwritten is located.
PPROCSTE
The proc step name where the GDG data set to be overwritten is located.
PDDNAME
The DD name where the GDG data set to be overwritten is located.
PROOT
The GDG Root o f the GDG data set that is going to be overwritten.
PABSOLUT
The absolute value (GnnnnVnn) that is going to be used to overwrite the
input GDG data set.
PSIGN
The sign (+ or – or blank) of the relative number of the GDG data set to be
overwritten.
PRELNUM
The relative number (expressed in character format) of the GDG data set to
be overwritten.
PRETCOD
The return code set by the exit: 0 means execute the overwriting, 4 do not
execute overwriting.
The load module can be link-edited with either the AMODE 24 or AMODE 31
attribute. IBM Workload Scheduler for z/OS invokes the exit in the addressing
mode defined by the exit load module.
The exit is called using the BASSM instruction and must return to its caller using
the address and addressing mode passed to it in general register 14. The
recommended method is to restore all registers to their values on entry to the exit
and return to the caller using a BSM 0,14 instruction.
If the exit abends, it is flagged as not executable, and message EQQJ616E is issued.
IBM Workload Scheduler for z/OS does not try to call the exit again.
Parameters passed to the exit reside below the 16 MB line. Also, addresses passed
to the exit are addresses of areas below the 16 MB line.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to this exit:
JOBNAME
The name of the job that is to be submitted.
The sample library SEQQSAMP that was created during installation contains the
EQQJVXIT exit, which is a sample of variable-substitution exits. For information
about this sample, see “JCL-variable-substitution exit” on page 397.
The exit is called using the BASSM instruction and must return to its caller using
the address and addressing mode passed to it in general register 14. The
recommended method is to restore all registers to their values on entry to the exit
and return to the caller using a BSM 0,14 instruction.
If the exit abends, it is flagged as not executable, and message EQQJ518E is issued.
IBM Workload Scheduler for z/OS does not try to call the exit again.
Parameters passed to the exit all reside below the 16 MB line. Also, addresses
passed to the exit are addresses of areas below the 16 MB line.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to this exit:
VARNAME
The name of the variable for substitution.
VARTAB
The name of the JCL-variable table.
VARLGTH
The required length of the variable value or X'00' if a length is not defined
for the variable.
VARDEF
The default value of the variable as defined in the variable table,
left-justified and padded with X'40'.
VARNVAL
The value of the variable set by the exit.
VAROPRP
The address of operation data. The storage at this address is mapped by
the program-interface (PIF) segment CPOP.
VARWSP
The address of workstation data. The storage at this address is mapped by
the PIF segment WSCOM.
VAROCCP
The address of occurrence data. The storage at this address is mapped by
the PIF segment CPOC.
VARDWEEK
The day of the week when the exit is called. It is a numeric value from 1 to
7, where 1 is Monday.
VARWEEKY
The number of the current week in the year. It is a numeric value from 1 to
53 and is calculated according to the international standard ISO 8601.
VARRETC
The return code set by the exit. These values are valid:
0 Variable processing normal.
8 Stop tailoring. If the exit was called at job submission, the
operation is set to ended-in-error. If it was called at setup via the
online dialogs, an error message is issued at the terminal.
USRFAREA
USRFNAME DS CL16 (User field name)
USRFVAL DS CL54 (User field value)
Note:
1. The exit is not called for setup JCL variables that are defined as promptable.
2. If a value is set in the VARNVAL field, it is used by IBM Workload Scheduler
for z/OS only if VARRETC is zero.
3. The value passed backed to IBM Workload Scheduler for z/OS in the
VARNVAL field must satisfy verification rules defined for the variable.
4. The variable value is taken from the data in the VARNVAL field up to the first
X'40'.
Automatic-job-recovery exit
Automatic-recovery control statements can include the JCL rebuild parameter
CALLEXIT. This specifies the name of a program exit module that is called before
the restart. The exit is called for each JCL line starting with the first record in the
JCL file. The exit can decide to accept, modify, or delete the line; or insert one or
more lines. The exit routine can also prevent restart or terminate automatic
recovery. Refer to Managing the Workload for more information on automatic
recovery of jobs and started tasks.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
If the exit abends, it is flagged as not executable; IBM Workload Scheduler for z/OS
does not try to call the exit again.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
The S and PS fields contain blanks if the error occurred in the initialization or
completion phase of the job. The fields are also blank if there is no name on the
EXEC statement.
The return code to be set by the exit (RC) is dependent on the IND value. For
IND=0 and IND=1, the RC values (given as hexadecimal digits) have the following
meaning:
00 Save the record (possibly updated) and return the next one.
04 Insert the record (a new one in REC) and return the same record as last
time.
08 Delete the record and return the next one.
0C No more inspection needed. Update the JS file and continue recovery
actions for this job.
10 Terminate recovery actions for this job after updating the JS file.
14 Terminate recovery actions for this job without updating the JS file.
For IND=2, the RC values (given as hexadecimal digits) have the following
meaning:
00 Invalid.
To inspect all JCL lines before making any changes, copy the JCL lines to your own
area. Return RC=08 until IND=2 is received. Then modify the JCL and return the
lines one by one to IBM Workload Scheduler for z/OS with RC=04 specified. End
by returning RC=0C.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
If the exit abends, it is flagged as not executable; IBM Workload Scheduler for z/OS
does not try to call the exit again.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to its
caller using the address and addressing mode passed to it in general register 14.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. These parameters are
passed to the exit:
EQQUXPIF parameters
REQUEST DS CL8 (Request type)
RESOURC DS CL8 (Resource type)
RECLEN DS F (Record length)
RECPTR DS A (Record address)
RETCO DS F (Return code)
ERRMSG DS CL80 (Error message string)
REQUEST
The type of database request (INSERT or REPLACE)
RESOURC
The type of resource to be validated (AD).
RECLEN
The length of the database record to be validated (AD record, see
DCLADR layout in the IBM Workload Scheduler for z/OS Diagnosis Guide and
Reference).
RECPTR
The address of the record area. It can only be validated.
RETCO
The return code of the exit. If its value is greater than 0 the application
description update (INSERT AD or REPLACE AD) fails and a message
containing the string ERRMSG is displayed.
ERRMSG
The message that explains the reason for the update failure. The message is
displayed only if RETCO is greater than 0.
The system automation exit EQQUXSAZ is called every time an operation defined
on a general and automatic workstation, with the Automation option enabled, is
scheduled. The exit cannot modify any parameters received or other IBM Workload
Scheduler for z/OS data or resources. EQQUXSAZ can examine the parameters
and take some actions external to IBM Workload Scheduler for z/OS, based on the
parameter information.
You can use EQQUXSAZ to send the command request to System Automation for
z/OS, through the NetView PPI interface.
The IBM Workload Scheduler for z/OS sample library that was created during
installation contains a sample EQQUXSAZ exit, written in assembler language.
For details about the System Automation EQQUXSAZ, refer to System Automation
for z/OS publications.
Note:
1. IBM Workload Scheduler for z/OS does not perform any validity or syntax
checking on the request to be routed to System Automation for z/OS.
2. In case of System Automation timeouts, the operation could be marked with
error OAUT on the IBM Workload Scheduler for z/OS side, even if it completes
successfully later, on the System Automation side.
3. For operations defined on automation workstations, the EQQUX007 exit is not
invoked; only EQQUXSAZ is invoked.
| 4. You can disable the loading of the EQQUXSAZ exit by setting CALL12(NO) in
| the EXIT initialization statement. This setting prevents message EQQN102W AN
| OPC USER EXIT LOAD MODULE, EQQUXSAZ, COULD NOT BE LOADED from being
| issued. However, it also prevents you from using any System Automation
| function.
IBM Workload Scheduler for z/OS invokes the exit in AMODE 31; the AMODE
parameter specified at link-edit time has no effect.
Control is passed to the exit using the BAL instruction. The exit must return to the
caller using the address and addressing mode passed to it in general register 14.
The exit is entered in AMODE 31 but must be switched to AMODE 24 before any
input or output operation is performed. Before the exit returns to the caller, switch
it back to AMODE 31.
When the exit is entered, register 1 contains the address of the parameter list. Each
address in this list is used to locate the parameter value. The following parameters
are passed to the exit:
Note: For the command text string (COMMTEXT), any text case is allowed. The
value specified in COMPINFO, AUTOPER, and SECELEM is automatically
changed to uppercase by IBM Workload Scheduler for z/OS.
This chapter describes how you can use IBM Workload Scheduler for z/OS to
control the workload in operating environments that do not support a tracker,
through the operation-initiation exit, EQQUX009. Also, an example is provided of
an alternate method for controlling VM processing.
The exit is responsible for transmitting the required data to the target destination.
There are several methods available to transmit data to the various operating
environments and to report the status of the operation back to the controller. For
example you could use APPC/MVS, TCP/IP, or NetView FTP. One of the sample
exits provided uses TCP/IP to communicate commands to an OS/2 environment.
The SEQQSAMP sample library contains samples that show how you can use IBM
Workload Scheduler for z/OS to communicate with heterogeneous systems.
v EQQOS2TR and EQQX9OS2 provide you with sample programs to communicate
with an OS/2 environment to start commands and report status back to the
controller.
v EQQCMV2 and EQQUX09N allow you to schedule and control the VM
workload by defining operations exactly as you would for your z/OS workload.
v EQQAIXTR and EQQX9AIX provide you with sample programs to communicate
with an AIX environment to start tasks or issue commands and report status
back to the controller. This sample has been developed and tested in an AIX
environment but can be ported to any UNIX environment that uses a compatible
shell script.
Appendix B, “Sample library (SEQQSAMP),” on page 391 contains descriptions of
all samples distributed with IBM Workload Scheduler for z/OS.
You should consider using the start/stop exit EQQUX000 to set workstation status
for user-defined destinations. The sample library member EQQUX0N calls the
EQQUSINW subroutine to set the status of a workstation. See “Start or stop exit”
on page 394 for more information about the EQQUX0N sample.
Under VM, some EXECs must be run in given sequences, and the results must be
checked to ensure that the EXECs have completed successfully. Such work might
be repeated at regular intervals. In addition, some applications might require that
VM processing interface with, or be synchronized with, z/OS processing.
So, there is a need for VM production control mechanisms that correspond to those
that exist under z/OS. Here is one way you can automate control of VM
operations:
1. Set up a z/OS job to send a request to a VM AUTOLOG user to execute an
EXEC; you would normally do this using an NJE-RSCS link. On completion,
the EXEC sends a job back to z/OS, which issues an OPSTAT command to
inform IBM Workload Scheduler for z/OS of the status of the VM operation.
The first z/OS job is scheduled by IBM Workload Scheduler for z/OS in the
same way as any other computer workstation operation.
2. Set up a second operation to represent the execution of the VM EXEC. You
should define the operation on a general workstation with the automatic
reporting attribute, which is set up for this purpose. This is the operation
whose status is changed by the OPSTAT command issued by VM.
You can use this method to plan, control, and track the workload of multiple VM
users at local and remote sites.
This method does not use any IBM Workload Scheduler for z/OS exits or require
other programming effort. The sample library member EQQCVM is maintained for
installations that have implemented this method in OPC/A or previous IBM
Workload Scheduler for z/OS releases.
A sample for controlling VM workload from IBM Workload Scheduler for z/OS is
delivered on the sample file under member name EQQCVM. The sample member
includes these parts:
v Batch loader control statements for defining an application description to run a
VM job.
v An example of JCL to signal VM that a job is to be started.
v A CMS EXEC called OPCWATCH, which is run in the AUTOLOG VM user.
OPCWATCH receives the start signal from z/OS and drives the requested EXEC
on VM.
v A CMS EXEC called OPCSTAT, which can be used by OPCWATCH to signal the
status change of the VM job to IBM Workload Scheduler for z/OS.
To use IBM Workload Scheduler for z/OS to drive VM operations, follow these
steps:
1. Define a new IBM Workload Scheduler for z/OS workstation, for instance VM,
as a general workstation with the automatic reporting attribute. The advantage
of having a separate workstation is that separate ready lists and reports can be
produced for VM operations based on the workstation name.
2. Define an application VMJJJJ with these operations:
CPU1 010 JOBNAME RJJJJ ’SEND START ORDER TO VM’
VM 020 JOBNAME JJJJ ’TRACKS REAL EXECUTION OF EXEC’
The run cycle and other characteristics should be the same as for normal z/OS
applications.
The figure below shows the member RJJJJ in the IBM Workload Scheduler for
z/OS JCL library. This JCL will be executed by the CPU1 operation.
Figure 1. Member RJJJJ in the IBM Workload Scheduler for z/OS JCL library
The first record in the //SYSUT1 data stream contains the name of the EXEC to
be executed, followed by any parameters that should be passed to the EXEC.
3. Set up a VM AUTOLOG user to await the arrival of any reader files. You can
use a wait EXEC to drive the VM AUTOLOG user (such as the OPCWATCH
EXEC supplied in member EQQCVM in the IBM Workload Scheduler for z/OS
Note:
v Each VM EXEC that is processed should set a return code to indicate
whether it has run successfully.
v The wait EXEC depends on the module WAKEUP to invoke its execution.
The WAKEUP module is available in the VM/IPF distribution.
Receives
EXEC name JJJJ
Runs OPCSTAT
which sends
'S' event job
to MVS
Operation VM 020
in 'W' status
Job from VM
sets operation VM 020
to 'S' status
Job from VM
sets operation VM 020
to 'C' or 'E' status
If IBM Workload Scheduler for z/OS running under z/OS fails or if the
communication link fails, a printed workstation plan and an IBM Workload
Scheduler for z/OS ready list from daily planning will still exist. This information
tells which jobs must be run and the order in which they must be run. An IBM
Workload Scheduler for z/OS VM-user log lists the EXECs that have been started
and those that have been completed. With this information, processing can
continue either automatically when the link is reestablished or manually.
The jobs transmitted to and from VM add little additional load to z/OS. To avoid
delays, a dedicated job class and initiator should be reserved for VM
communication.
Because IBM Workload Scheduler for z/OS does not require shared DASD for the
preceding method, this method can be used to drive multiple VM users in different
locations. You can also use this method to drive other z/OS systems. This method
is particularly useful when a remote z/OS system runs a small number of backups
and cleanups that are initiated and controlled from a central site.
IBM Workload Scheduler for z/OS lets you track activities in your data processing
environment. Information about the status of these activities can be reported
manually by dialog users or collected automatically by IBM Workload Scheduler
for z/OS. These activities are known as events. For z/OS systems, IBM Workload
Scheduler for z/OS uses SMF and JES exits to collect event information
automatically. For example, IBM Workload Scheduler for z/OS reports when a
started task has started or when a job has ended. But there might be activities in
your production workload that cannot be detected by JES and SMF exits, which
you want to report to IBM Workload Scheduler for z/OS. You can do this by
supplying event information to IBM Workload Scheduler for z/OS.
For example, assume that an IBM Workload Scheduler for z/OS application is
dependent on a data set that is updated by an online transaction. For such an
application, the batch job that uses the data set must not be started until the data
set has been successfully updated. You ensure this by defining a special resource
that is needed by the batch job but is unavailable. The online transaction can then
make the special resource available by calling the EQQUSIN subroutine or issuing
an SRSTAT command as its last processing step. Alternatively, you can define an
operation at a general automatic workstation that is set to complete by the online
transaction, using EQQUSIN or the OPSTAT command. The batch job, which is
dependent on this operation, does not process before the data set has been
updated.
If you plan to issue the TSO commands many times per day from a long-running
non-TSO address space, for example NetView, it is recommended that you use an
IBM Workload Scheduler for z/OS subroutine instead. When you issue the
For more information about IBM Workload Scheduler for z/OS TSO commands,
refer to Managing the Workload The remainder of this chapter describes how you
use IBM Workload Scheduler for z/OS subroutines.
Diagnosis Guide and Reference describes in detail how events are created and then
processed by IBM Workload Scheduler for z/OS.
Invocation requirements
EQQUSIN has these invocation requirements:
Authorization
APF authorized
Dispatchable unit mode
Task mode
Amode
31-bit
ASC mode
Primary or access register (AR)
Interrupt status
Enabled for I/O and external interrupts
Locks No locks held
Control parameters
All parameters must be addressable by the caller and in the primary
address space.
EQQUSIN parameters
Your program passes parameters to EQQUSIN in an APP buffer. Register 1 must
point to the address of the buffer and the high-order bit must be on. The format of
the buffer is the same as that used to communicate with IBM Workload Scheduler
for z/OS through the application programming interface (API).
EQQUSIN supports multiple requests in the same buffer. The buffer can contain
these sections:
APP Fixed section - identifies the buffer
APPOBJ
Object section - identifies the object (event type)
APPSEL
Selection section - contains a field name that is used in locating one or
more instances of the object
APPVAL
Selection value section - contains a field value that is used in locating one
or more instances of the object
APPFLD
Field section - identifies the field to update in the selected instance of the
object
APPDAT
Data section - contains a new value for each APPFLD section.
Offsets
Dec Hex Type Len Name Description
Offsets
Dec Hex Type Len Name Description
Offsets
Dec Hex Type Len Name Description
Note: The field type depends on the object field name that you specify in
APPSEL_NAME.
Offsets
Dec Hex Type Len Name Description
Offsets
Dec Hex Type Len Name Description
Note: The field type depends on the object field name that you specify in
APPFLD_NAME.
SUBSYSTEM_NAME
The name of the tracker subsystem that the event should be reported to. If
SUBSYSTEM_NAME is not specified or has the value MSTR, the event is
broadcast using the subsystem interface (SSI) to all IBM Workload
Scheduler for z/OS subsystems on the z/OS image where EQQUSIN is
invoked.
Note:
1. You must specify at least OPER_TOKEN, or WS_NAME with either JOBNAME
or APPL_ID.
2. If you do not provide enough information to uniquely identify the operation,
IBM Workload Scheduler for z/OS must determine the most applicable
operation to update. IBM Workload Scheduler for z/OS considers only
operations in status R, A, *, S, I, or E when selecting the operation. IBM
Workload Scheduler for z/OS selects the operation to update by investigating
these characteristics in the stated order:
a. The operation has priority 9.
b. Earliest latest start time.
c. Priority 8-1.
d. Input arrival time specified for the operation or the occurrence input arrival
if the operation does not have input arrival specifically defined.
So from the operations that match the selection criteria, the operation with
priority 9 is updated. If more than one operation has priority 9, the operation
with the earliest latest start time is updated. If latest start is equal, the
operation with the highest priority is updated. If priority is equal, the operation
with the earliest input arrival time is updated. If input arrival is also equal, the
update is performed on a first-in-first-out basis.
SUBSYSTEM_NAME
The name of the tracker subsystem that the event should be reported to. If
SUBSYSTEM_NAME is not specified or has the value MSTR, the event is
broadcast using the subsystem interface (SSI) to all IBM Workload
Scheduler for z/OS subsystems on the z/OS image where EQQUSIN is
invoked.
SR_NAME
The name of the special resource.
SUBSYSTEM_NAME
The name of the tracker subsystem that the event should be reported to. If
SUBSYSTEM_NAME is not specified or has the value MSTR, the event is
broadcast using the subsystem interface (SSI) to all IBM Workload
Scheduler for z/OS subsystems on the z/OS image where EQQUSIN is
invoked.
WS_NAME
The name of the workstation.
JOBNAME
The name of the job that an event is being reported for.
APPL_ID
The name of the current application.
Note: If the OPINFOSCOPE keyword of the JTOPTS statement is IP, which is the
default, you must specify WS_NAME. If OPINFOSCOPE is ALL, you must specify
either APPL_ID or JOBNAME. The OPINFOSCOPE keyword is described in the
list of JTOPTS “Parameters” on page 80.
SUBSYSTEM_NAME
Is the name of the tracker subsystem that the event should be reported to.
If SUBSYSTEM_NAME is not specified or has the value MSTR, the event is
broadcast using the subsystem interface (SSI) to all IBM Workload
Scheduler for z/OS subsystems on the z/OS image where EQQUSIN is
invoked.
FILENAME
Is either CP (current plan) or JS (JCL repository).
Note: The APPSEL values are sufficient to create a BACKUP event. The APPFLD
and APPDAT sections are not used for this event type.
STATUS
New status of the operation. The following values are valid:
C Set the status of the operation to complete.
E Set the status of the operation to ended-in-error.
I Set the status of the operation to interrupted.
Q Set the extended status of a started operation to Q to indicate that
the operation is queued awaiting execution.
S Set the status of the operation to started.
T Set the extended status of a started operation to S to indicate that
the operation is executing.
X Reset the current status for this operation.
ERROR_CODE
Error code for an operation that is reported as ended-in-error.
ACT_DUR
Duration, in hours and minutes, of an operation that is reported as
286 IBM Workload Scheduler for z/OS: Customization and Tuning
complete or ended-in-error. The operation duration cannot be 0000. If you
set it to 0000 (0 hours, 0 minutes), a default duration value of 1 minute is
used instead.
ACT_END_TIME
Time the operation is reported as complete or ended-in-error.
EV_CREATION_DATE
Date of the event that is being reported. If the field contains all binary
zeros (X'00'), IBM Workload Scheduler for z/OS uses the current date.
EV_CREATION_TIME
Time of the event that is being reported. If the field contains all binary
zeros (X'00'), IBM Workload Scheduler for z/OS uses the current time.
JOB_NUMBER
A number that you can provide for the job. JOB_NUMBER is valid only for
operations at general automatic workstations and workstations that have a
user-defined destination. Do not specify JOB_NUMBER for operations that
are submitted through a tracker.
Note:
v You must specify at least STATUS. The remaining field names are optional.
| v To use the value set in ERROR_CODE even if the operation status is set to
| Complete, ensure that the ERROR_CODE field is properly set. For a Complete
| operation, set ERROR_CODE to 0 or blank unless it is differently required. If
| ERROR_CODE is set to a value different from 0, it is processed as the original
| return code even if the operation status is set to Complete.
| To enable ERROR_CODE processing on Complete operations, you must have set
| USINRC=YES in the JTOPTS statement.
AVAILABLE
Is the availability status of the special resource. Y indicates that the
availability status of the resource should be set to YES; N indicates that the
status should be NO. R (RESET) sets the status to the planned availability
status in the current plan. K (KEEP), the default, does not change the
status.
QUANTITY
Is a numeric value (1–999 999) that updates the Quantity field in the
special resource, which overrides interval and default values. QUANTITY
and QUANTITY_OPTION fields are mutually exclusive. If you specify
both fields, the event is ignored.
Note: When you set the quantity or availability of a resource through EQQUSIN
(or other interfaces such as the SRSTAT TSO command or the MCP dialog), the
specified value lasts over interval boundaries, even though the next interval can
specify a different value. Specify RESET to restore the planned value.
USERDATA
Is the 16-character user-data information that is to be updated for the
specified operation.
WS_STATUS
Is the status you want reported for the workstation:
A Active
O Offline
F Failed.
STARTED_FAIL_OPT
When the workstation status is set to offline or failed, you can specify
what IBM Workload Scheduler for z/OS should do with operations that
are currently in started status at this destination (workstation):
R Restart operations automatically on the alternate workstation
L Leave the operations in started status
E Set all started operations to ended-in-error.
REROUTE_OPT
When the workstation status is set to offline or failed, you can specify Y
for operations to be rerouted to the alternate workstation, or N for no
rerouting if you want to leave the operations at the inactive workstation.
ALT_WS
When the workstation status is set to offline or failed, you can specify an
alternate workstation where rerouted operations should be started.
Note:
1. You must specify at least WS_STATUS.
2. If the value provided for WS_STATUS is equal to the current status, the event is
ignored.
If an error occurs when IBM Workload Scheduler for z/OS processes the event,
check the message log (EQQMLOG) of the controller for information about the
error.
Note: APAR PQ74854 has changed the addressing mode of the following
subroutines from Amode(24) to Amode(ANY), which provides the possibility to
use the 31-bit addressing mode before calling z/OS subroutines.
Using EQQUSINB
You use EQQUSINB to request IBM Workload Scheduler for z/OS to copy a
resource data set.
Invocation requirements
EQQUSINB has these invocation requirements:
Authorization
APF authorized, or supervisor state, or PSW key 0–7.
Dispatchable unit mode
Task mode.
Amode
24-bit, or ANY if APAR PQ74854 was applied.
ASC mode
Primary or access register (AR).
Interrupt status
Enabled for I/O and external interrupts.
Locks No locks held.
Control parameters
All parameters must be addressable by the caller and in the primary
address space.
EQQUSINB parameters
The calling program must pass all these parameters to the subroutine. Initialize
RETCODE to zero in the call; it is set by EQQUSINB in the return.
Using EQQUSINO
You use EQQUSINO to request IBM Workload Scheduler for z/OS to feed back
information to the user data of a current plan operation. The current status of the
operation must be R, A, *, S, I, E, C, or W. You can update an operation in status C
or W only if the OPINFOSCOPE keyword of JTOPTS has the value ALL.
OPINFOSCOPE is described in more detail in the list of JTOPTS “Parameters” on
page 80.
Invocation requirements
EQQUSINO has these invocation requirements:
Authorization
APF authorized, or supervisor state, or PSW key 0–7.
Dispatchable unit mode
Task mode.
Amode
24-bit, or ANY if APAR PQ74854 was applied.
ASC mode
Primary or access register (AR).
Interrupt status
Enabled for I/O and external interrupts.
Locks No locks held.
Control parameters
All parameters must be addressable by the caller and in the primary
address space.
EQQUSINO parameters
The calling program must pass all these parameters to the subroutine. If the
OPINFOSCOPE keyword is IP, which is the default, WSNAME is a required
parameter. If OPINFOSCOPE is ALL, you must specify valid values for either the
EQQUSINO parameters
WSNAME DS CL4 (Workstation name)
JOBNAME DS CL8 (Job name)
ADID DS CL16 (Name of current application)
OPNUM DS H (Operation number or zero)
OCIA DS CL10 (Occ input arrival, YYMMDDHHMM, or blank)
FORM DS CL8 (SYSOUT form number or blank)
CLASS DS CL1 (Job or SYSOUT class or blank)
SUBSYS DS CL4 (Name of the Tivoli OPC tracker or blank)
USERDATA DS CL16 (User data to feed back to the operation)
RC DS F (EQQUSINO return code)
WSNAME
Is the name of the workstation defined for the operation.
JOBNAME
Is the job name defined for the operation you want to update.
ADID Is the application ID that contains the operation.
OPNUM
Is the number, in hexadecimal format, of the current operation. You can
specify X'0000' or a number in the range X'0001' to X'00FF' (decimal 1 to
255).
OCIA Is the input arrival date and time of the current occurrence.
FORM
Contains the printer form name for operations at printer workstations.
CLASS
Contains the job class or SYSOUT class defined for the operation.
SUBSYS
Is the name of the Tivoli OPC tracker subsystem that this event should be
reported to. If SUBSYS is blank, the event is broadcast to all IBM Workload
Scheduler for z/OS subsystems defined on the z/OS system where
EQQUSINO is invoked.
USERDATA
Is the 16-character user-data information that is to be updated for the
specified operation.
RC Is set by EQQUSINO and can have one of these values:
0 Normal return. The event has been reported to IBM Workload
Scheduler for z/OS.
8 Error return. There is an error in the information that was passed
to EQQUSINO; no event has been reported to IBM Workload
Scheduler for z/OS.
So if you define only the WSNAME parameter and IBM Workload Scheduler for
z/OS determines that there is more than one operation in the current plan for that
workstation, the operation with priority 9 is updated. If more than one operation
has priority 9, the operation with the earliest latest start time is updated. If latest
start is equal, the operation with the highest priority is updated. If priority is
equal, the operation with the earliest input arrival time is updated.
Using EQQUSINS
You use EQQUSINS to request IBM Workload Scheduler for z/OS to change the
availability of a special resource.
Invocation requirements
EQQUSINS has these invocation requirements:
Authorization
APF authorized, or supervisor state, or PSW key 0–7.
Dispatchable unit mode
Task mode.
Amode
24-bit, or ANY if APAR PQ74854 was applied.
ASC mode
Primary or access register (AR).
Interrupt status
Enabled for I/O and external interrupts.
Locks No locks held.
Control parameters
All parameters must be addressable by the caller and in the primary
address space.
EQQUSINS parameters
The calling program must pass all these parameters to the subroutine. Initialize RC
to zero in the call; it is set by EQQUSINS in the return.
EQQUSINS parameters
SRNAME DS CL44 (Name of the special resource)
SUBSYS DS CL4 (Subsystem name)
AINDIC DS CL1 (Availability indicator, Y or N)
RC DS F (EQQUSINS return code)
Using EQQUSINT
You use EQQUSINT to request IBM Workload Scheduler for z/OS to change the
status of an operation at a workstation. The workstation can be any type except a
workstation with the nonreporting attribute.
Invocation requirements
EQQUSINT has these invocation requirements:
Authorization
APF authorized, or supervisor state, or PSW key 0–7.
Dispatchable unit mode
Task mode.
Amode
24-bit, or ANY if APAR PQ74854 was applied.
ASC mode
Primary or access register (AR).
Interrupt status
Enabled for I/O and external interrupts.
Locks No locks held.
Control parameters
All parameters must be addressable by the caller and in the primary
address space.
EQQUSINT parameters
The calling program must pass all these parameters to the subroutine. Initialize
RETCODE to zero in the call; it is set by EQQUSINT in the return.
TYPE Defines the reason that EQQUSINT is called. These values are valid:
C Set the status of the operation to complete.
E Set the status of the operation to ended-in-error.
I Set the status of the operation to interrupted.
Q Set the extended status of a started operation to Q to indicate that
the operation is queued awaiting execution.
S Set the status of the operation to started.
T Set the extended status of a started operation to S to indicate that
the operation is executing.
X Reset the current status for this operation.
WSNAME
Is the name of the workstation.
JOBNAME
Is the name of the job that an event is being reported for.
ADID Is the name of the current application.
OPNUM
Is the number, in hexadecimal format, of the current operation. You can
specify 0000 or a number in the range 0001 to 00FF (decimal 1 to 255).
OCIA Is the input arrival date and time of the current occurrence.
OPDUR
Is the duration, in hours and minutes, of an operation that is reported as
complete. The operation duration cannot be 0000. If you set it to 0000 (0
hours, 0 minutes), a default duration value of 1 minute is used instead.
OPERR
Is the error code for an operation that is reported as ended-in-error.
FORM
Contains the printer form name for operations at printer workstations.
SCLASS
Contains the SYSOUT class for operations at printer workstations.
SUBSYS
Is the name of the Tivoli OPC tracker subsystem that this event should be
reported to. If SUBSYS is blank, the event is broadcast to all IBM Workload
Scheduler for z/OS subsystems defined on the z/OS system where
EQQUSINT is invoked.
Note:
1. You must specify valid values for the TYPE and WSNAME parameters and
either the JOBNAME or ADID parameters. The remaining values can be
initialized to zeros or blanks.
2. OPDUR is processed only if TYPE has value C.
3. OPERR is processed only if TYPE has value E.
4. If you do not provide enough information to uniquely identify the operation
and IBM Workload Scheduler for z/OS finds more than one operation that
matches the criteria you specified, IBM Workload Scheduler for z/OS
determines the most applicable operation to update. IBM Workload Scheduler
for z/OS chooses the most applicable operation by investigating these
characteristics in the stated order:
a. The operation has priority 9.
b. Earliest latest start time.
c. Priority 8-1.
d. Input arrival time specified for the operation, or the occurrence input arrival
if the operation does not have input arrival specifically defined.
Therefore, if you define only the WSNAME parameter and IBM Workload
Scheduler for z/OS determines that there is more than one operation in the
current plan for that workstation in status R, A, *, S, I, or E, then the operation
with priority 9 is updated. If more than one operation specifies priority 9, then
the operation with the earliest latest start time is updated. If latest start is
equal, then the operation with the highest priority is updated. If priority is
equal, the operation which specifies the earliest input arrival time is updated. If
input arrival is also equal, the update is performed on a first-in-first-out basis.
Using EQQUSINW
You use EQQUSINW to generate a workstation status event for a particular
workstation that specifies a user-defined destination. Workstation status events can
be generated for active, failed, or offline conditions.
Invocation requirements
EQQUSINW has these invocation requirements:
Authorization
APF authorized, or supervisor state, or PSW key 0–7.
EQQUSINW parameters
The calling program must pass all these parameters to the subroutine. Any
parameter except STATUS and WSNAME can be left blank. Initialize RC to zero in
the call; it is set by EQQUSINW in the return.
EQQUSINW parameters
DUMMY DS CL8 (Reserved parameter, value ignored)
WSNAME DS CL4 (Workstation name must be specified)
STATUS DS CL1 (Workstation status)
STARTOPS DS CL1 (Action for started operations or blank)
REROUTE DS CL1 (Reroute indicator or blank)
ALTWS DS CL4 (Alternate workstation name or blank)
SUBSYS DS CL4 (Name of the tracker subsystem or blank)
RC DS F (EQQUSINW return code)
DUMMY
A parameter reserved for future use. Any value supplied is ignored by the
subroutine.
WSNAME
The workstation name.
STATUS
The status you want reported for the workstation, where:
A Active
O Offline
F Failed.
STARTOPS
When the workstation status is set to offline or failed, you can specify
what IBM Workload Scheduler for z/OS should do with operations that
are currently in started status on the destination, or workstation, where:
R Restart operations automatically on the alternate workstation.
L Leave the operations in started status.
E Set all started operations to ended-in-error.
REROUTE
When the workstation status is set to offline or failed, you can specify R
for operations to be rerouted to the alternate workstation or L for no
rerouting; that is, you want to leave the operations at the inactive
workstation.
Note: If the value provided in the STATUS parameter is equal to the current
status, the event is ignored. A value must be supplied for the WSNAME and
STATUS parameters.
IBM Workload Scheduler for z/OS uses the job completion code to determine if an
operation has completed normally. The code is either the highest return code of all
completed steps or the return code of the last completed step, depending on what
you have specified on the RETCODE keyword of the EWTROPTS statement. In
some cases, however, success or failure cannot be determined from this return code
alone.
In these cases, you can use the job completion checker (JCC) to determine if a job
has ended normally. The JCC can scan the SYSOUT data set for a particular job,
and then set the error status, depending on the results of this scan. Because the
JCC has more information about the job, it is better equipped to decide whether a
job has ended normally.
See “Determining the success or failure of a job” on page 172, which describes how
IBM Workload Scheduler for z/OS determines the next status of an operation
when a job or started-task ends.
Note: The JCC process logic is not applied when the failing job has been obtained
by restarting an operation at step or job level and the failure is determined by the
EQQCLEAN step ending with RC>=8. See also “Determining the success or failure
of a job” on page 172.
When the JCC starts to process the output for a job, the EQQJCLIB is searched to
determine if a job-specific message table is available for the job. If a job-specific
message table is found, it is used in conjunction with the general message table.
Each SYSOUT record is evaluated against the message tables in isolation, starting
with the first record. The job-specific message table is used first, followed by the
general message table. The SYSOUT record is evaluated against EVERY condition
defined in the message table, as long as the CA= does not stop checking.
A SYSOUT data set is created by the z/OS system or by a user program. All
records are checked in SYSOUT data sets created by the z/OS system. The value of
the USYSOUT keyword of JCCOPTS determines if a user SYSOUT data set is
checked. The value of the UMAXLINE keyword determines how many lines of a
user SYSOUT data set are checked.
All records in all SYSOUT data sets are passed to the tracker exit, EQQUX005 (the
SYSOUT archiving exit). You can use this exit to copy SYSOUT data sets to a data
set that resides on a disk or tape.
Note:
1. The JCC is a tracker function and is, therefore, independent of the contents of
the controller current-plan data set. The JCC processes all jobs for which a job
termination (3P) event is created in the event data set, regardless of whether
the job is defined in the current plan. To prevent the JCC from processing a job
or a class of jobs, you must use the tracker event-filtering exit, EQQUX004.
2. Because it is possible to send JES2 job SYSOUT, or parts of the SYSOUT, to
several NJE nodes, more than one job termination (A3P) event could be
produced for the same job. Each event could also have different
job-completion-code information, depending on the output sent to a particular
node and the checking that the JCC performs at that node. The status assigned
to the operation depends on which of the A3P events is first processed by the
controller. You should ensure, therefore, that the value FINAL is used for the
OUTPUTNODE keyword of the JTOPTS statement. FINAL is the default value.
If the JESYSMSG part (previously $SYSMSGS, DSID=4) of SYSOUT is copied to
several final destination nodes where the JCC is active, or you specify the value
ANY for OUTPUTNODE, the resulting status of the corresponding operation
will be unpredictable. The OUTPUTNODE keyword is described in the list of
JCCOPTS “Parameters” on page 80.
3. The technique described in note 2 is not used in a JES3 environment. If you
send the output from a JES3 job to different NJE nodes where the JCC is active,
the JCC should perform the same checking at each node. Otherwise, the
resulting status of the corresponding operation will be unpredictable.
The incident log data set is never input to any tracker function. It is referenced
only by the incident-record-create exit. It can, therefore, be shared by several JCC
tasks running on the same or different systems. You can also update and even
reallocate the data set manually while the JCC is active because the JCC reallocates
the data set each time it is to be updated.
Syntax
►► EQQJCCT ►
M = ' message text ' 1
S = start position
► ►
NORMMSG CONT
T = MULTSTA CA = CHECK EID = error code
MULTEND ERROR
MULT2STA ESTOP
MULTMSG STOP
SKIPSTA
SKIPEND
SKIP nnn
SKIPDS
ENDTAB
► ►◄
When coding the EQQJCCT macro, you must follow the IBM assembler language
syntax rules. These rules require that you delimit the macro name, EQQJCCT, by
one or more blanks; that you place a continuation character (any non-blank
character) in column 72 of any statement with a continuation line; and that you
start continuation lines in column 16.
Parameters
M='message text'
Defines a character string that the JCC attempts to find in each SYSOUT
Example 1 shows how to flag a job as having ended in error, with an error
code of 5555, if message IEF287I is issued by any step in the job.
CA-Example 2
EQQJCCT M=’B2 TABLE MISSING’,CA=ESTOP,EID=1111
Example 2 is a specific job message. The JCC signals the error to IBM
Workload Scheduler for z/OS and stops further checking of the message
output of the job.
CA-Example 3
EQQJCCT S=1,T=SKIPSTA,M=’IDCAMS SYSTEM SERVICES’
EQQJCCT S=1,T=SKIPEND,M=’IDC0002I’,CA=CHECK
EQQJCCT S=57,T=NORMMSG,M=’CODE WAS 16’,CA=ERROR
This example shows how to pair error codes and the messages to be printed. If
you specify CA=ERROR or ESTOP but do not specify EID (as in the last line of
the example), the error code is 4 blanks. In this case, job tracking is not notified
about the error, but a record is written to the incident file. You can use this
method to record incidents that do not currently affect the normal processing
of jobs but should be investigated later.
TID=tracking identifier|
Defines a tracking identifier code that can be used in the incident log to group
similar errors with a common identification. The tracking identifier is a
character string with a maximum of 8 characters. The default identifier is 8
blank characters.
TID-Example
EQQJCCT CA=ERROR,EID=XB37,TID=SPACE,M=’IEC030I’
EQQJCCT CA=ERROR,EID=XD37,TID=SPACE,M=’IEC031I’
EQQJCCT CA=ERROR,EID=XE37,TID=SPACE,M=’IEC032I’
This example shows how you ensure that the error is logged on the incident
file and how you match the same comment to different errors.
The following macros generate a general message table that you can use to avoid
most manual checks of JCL. Exceptions for individual jobs are specified in
job-specific message tables, which are not shown here. If you have detailed
standards for completion codes, you need only a few job-specific message tables.
Message-table macros
( 1) EQQJCCT CA=ESTOP,EID=5555,M=’IEF287I’,TID=NOTCTLGX
( 2) EQQJCCT CA=ESTOP,EID=4444,M=’DATASET LIMIT REACHED’, X
S=0,TID=REORG-DB
( 3) EQQJCCT CA=ESTOP,EID=0012,M=’COND CODE 0012’,S=0,TID=RC12
( 4) EQQJCCT CA=ERROR,M=’ICE061A’,S=21,TID=IOERROR
( 5) EQQJCCT T=MULTSTA,M=’IEC501’,S=20 MOUNT PRIVATE
( 6) EQQJCCT T=MULTMSG,M=’PRIVAT’,S=34,CA=ESTOP,EID=6666,TID=PRIVATE
( 7) EQQJCCT T=MULTEND
( 8) EQQJCCT T=MULTSTA,M=’COND CODE 0016’,S=0
( 9) EQQJCCT T=MULTMSG,M=’IBTS’,S=0,CA=ERROR,EID=0000,TID=OK-IBTS
(10) EQQJCCT T=MULTMSG,M=’GISFR’,S=0,CA=ERROR,EID=0000,TID=OK-GIS
(11) EQQJCCT T=MULTEND,CA=ESTOP,EID=0016,TID=RC16
(12) EQQJCCT S=0,T=NORMMSG,M=’SPOOL DATASET IS FULL’,EID=0016, X
TID=IBTSFULL,CA=ESTOP
END
Statement (1)
Detects the IEF287I message, which indicates a not cataloged 2 job
situation. IBM Workload Scheduler for z/OS job tracking regards this as
ended-in-error, with error code 5555.
Statement (2)
Warns that the IMS™ database is full. The job is set to ended-in-error
because successors to this job can never terminate successfully.
In a z/OS environment the data store must be already installed before you can
perform either job log retrieval or restart and cleanup.
When the same operation requires multiple restarts, in order to store only the
sysouts needed by restart and cleanup to optimize data access, a component of the
data store, called Database, is activated within the controller. As a part of the
controller, this component is called local data store. Inside the local data store the
internal cleanup operations are synchronized with the Current Plan extension.
Overview
The data store runs in a separate address space, and is dedicated to the storing and
possible retrieval of SYSOUT data sets belonging to submitted jobs. Key
characteristics of the new data store support are listed below:
v A data store should be installed for each JES spool in a system. In a simple JES
configuration this would mean a data store for each tracker. In systems with
shared spools (for example, JES2 MAS), there will be a data store for each spool,
and there will be fewer data stores than trackers.
v It is necessary for the data store to have a specific output destination. This
destination must be used only by the data store, which will select the sysout,
according to this kind of filter. Note that the reserved destination is unique
inside a controller or data store configuration data store. The output destination
is used to duplicate the sysouts to be stored in the data store database.
v After the storing has been completed, the duplicated sysouts will be deleted.
v Communication between the controller and the data store is analogous to the
controller/tracker communication, although the shared DASD method that is
possible for controller/tracker communication is not possible for controller/data
store communication. The data store type can be defined either as SNA or XCF,
but the same controller can connect to both XCF and SNA data stores. Separate
LU and XCF values for controller/tracker and controller/data store connections
must be used. The controller is identified by two separate LU values: one for the
data stores and one for the trackers. All data stores work on a reserved
destination, which must always have the same name.
The following controller subtasks handle the communication with the data store:
FL task
Sysout Fetch task (including also the XCF communication)
FN task
FL SNA communication task (started only if SNA communication is used)
Prerequisites
The data store function can be used only if the following prerequisites are met:
v An output destination is dedicated to the data store
A data store should be installed for each JES spool involved in the
controller/tracker configuration. To install the data store you must:
v Create and initialize the data store Database. This activity comprises the
following steps:
1. Run the EQQJOBS Clist to create the data store samples
2. Calculate the data store VSAM file sizes
3. Allocate the data store VSAM files
4. Initialize the VSAM files
v Configure the data store. This involves:
1. Specifying the data store initialization parameter values
2. Specifying the parameter values for communication with the controller
v Activating the data store
– Create the startup job for the data store address space
Data Files
The data store distinguishes VSAM data-file (DD) types by their names: structured
DDs are called EQQSDFnn; unstructured DDs are called EQQUDFnn.
Although the datafile structure for these two types is the same, their content and
purpose differ, as described below.
You can calculate the number of pages that you need in this way:
v Calculate the maximum number of job logs that can be stored at a given time.
To do this, multiply the number of jobs running in a day by the number of days
that you want the job logs to be available.
v Calculate the average number of pages that are needed for every job log. This
depends on the average number of lines in every SYSOUT and on the average
SYSOUT-line length. At least one page is needed for every job log.
v Calculate the total number of pages required. To do this, multiply the number of
job logs stored concurrently by the average number of pages for every SYSOUT.
v Calculate the number of pages required for each file. To do this divide the
previous result by the number of Data Files you want to create.
v Determine size of each data file according to the media type and space unit for
your installation.
A decision is made to spread the data over 10 files. The maximum number of logs
stored at a given time 1 is: 1000 * 1 = 1000. As each log is about 4000 lines long,
310 IBM Workload Scheduler for z/OS: Customization and Tuning
and each line is about 80 characters long, the number of bytes of space required for
each is: 4000 * 80 = 320,000 Thus, the total number of bytes of space required is:
320,000 * 1000 = 320,000,000
If 4 files were used, each file would hold the following number of bytes of data:
320,000,000 / 4 = 80,000,000.
If 3390 DASD was used, each file would require this number of tracks: 80,000,000 /
56664 = 1412 or this number of cylinders: 80,000,000 / 849960 = 94
To determine the optimal dimension for the structured data files, follow the
instructions provided for the allocation of the unstructured data file, but take into
account that the user SYSOUTs are not present. For the medium structured
SYSOUTs, apply the criteria used for the unstructured job log: the larger memory
requirement of the small, structured SYSOUTs, compared to the corresponding
unstructured form, is balanced by the larger memory requirement of the
unstructured form when the SYSOUT complexity increases.
Primary index
Every row in the primary index file has a fixed 77-character length. Each row can
represent either one user SYSOUT data set or the three z/OS SYSOUT data sets
together (JESMSGLG, JESJCL, and JESSYSMSG). Each row contains a key showing
the job name, job ID, start reader date, and start reader time, that points to the
data stored in the data files. To set the right size of VSAM Primary Index file,
multiply the average number of SYSOUT data sets per job by the maximum
number of jobs stored concurrently in the database. This value is the maximum
number of rows in the primary index; it should be increased by an adequate
margin to cope with peaks in your workload and to allow for growth.
To find the total space quantity to allocate for VSAM primary index, you should
multiply this adjusted maximum row number by the total length of the record.
Example
The vast majority of the 1000 jobs run daily by the same company of the previous
example generates a single user SYSOUT data set, along with the usual system
data sets. Thus, the maximum number of rows in the index is: 2 * 1000 = 2000.
Allowing 50% for growth, the space required for the index is: 3000 * 77 = 231000
bytes. On a 3390 this is 231000 / 56664 = 4 tracks.
Secondary index
The secondary index is a variable-length key-sequenced data set (KSDS). Because it
can be a single record, that corresponds to a specific secondary-key value, it can
To set the size of the VSAM secondary index file, perform the following steps:
1. Multiply the average number of SYSOUT data sets for each job by the
maximum number of jobs stored currently in the database. The result is the
maximum number of rows in the Secondary index.
2. Increase this value to cope with peaks in workload and to allow for growth.
3. Multiply this adjusted value by the total length of the record. This gives the
total space for allocating for the VSAM secondary index.
Data files
You can create up to 99 structured data files and to 99 unstructured data files. Each
must be identified by a unique ddname in the data store start job.
Primary index
You must define one primary index for each data store and initialize it with a
header record.
This is an example of JCL for the scratch and creation of the primary index file:
Secondary index
You must define one Secondary index for each data store and initialize it with a
header record.
This is an example of JCL for the scratch and creation of the secondary index file:
//DELSKI EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
DELETE OPCDEV.SKI0X CLUSTER PURGE
//*----------------------------------------------------------------
//DEFSKI EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE CLUSTER(NAME(OPCDEV.SKI0X)-
CYLINDERS(2,1)-
VOLUMES(S25PRA)-
KEYS(40,0)-
RECORDSIZE(76,32000)-
CISZ(4096)-
UNIQUE-
INDEXED-
SHR(1,3)-
FREESPACE(10,10))
Data files
You do not need to initialize Data files, they are automatically formatted the first
time that the data store is started.
Primary index
Every primary index file must be initialized with a header record:
POS 1 - 8 blank
POS 9 - 16 ’00010101’
POS 17 - 77 ’b (binary zeros)
This is a sample of JCL that initializes the header record of a primary index file. It
can be run separately or added to the job that creates the VSAM files.
Secondary index
Every secondary index file must be initialized with a header record having the
minimum record length, 76 characters, all set to binary zeroes.
This is a sample of JCL that initializes the header record of a secondary index file.
It can be run separately or added to the job that creates the VSAM files.
//*---------------------------------------------------------------*
//* PREPARE HEADER RECORD
//*---------------------------------------------------------------*
//INIT01 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD *
0
/*
//SORTOUT DD DSN=OPCDEV2.RES.SKIHDR,DISP=(NEW,CATLG),UNIT=SYSDA,
DCB=(RECFM=F,LRECL=76,BLKSIZE=76),SPACE=(TRK,(1))
//DFSPARM DD *
RECORD TYPE=F
SORT FIELDS=(1,1,CH,A)
OUTREC FIELDS=(76X'00')
//*---------------------------------------------------------------*
/* INITIALIZE SECONDARY INDEX
//*---------------------------------------------------------------*
//INIT02 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
REPRO INDATASET(OPCDEV2.RES.SKIHDR)-
OUTDATASET(OPCDEV2.RES.SKI0X)
//*---------------------------------------------------------------*
//* DELETE INPUT FILE
//*---------------------------------------------------------------*
//INIT03 EXEC PGM=IEFBR14
//SORTOUT DD DSN=OPCDEV2.RES.SKIHDR,DISP=(OLD,DELETE,DELETE)
While primary and secondary indexes need to be initialized, data files are
initialized automatically at data store startup. To add a new data file, create it and
add it to the data store startup procedure. However, after a data file has been
initialized, it cannot be removed from the procedure. To reallocate a data file, the
primary and secondary indexes must be reallocated too.
Instead of IDCAMS, you can also use the EXPORT and IMPORT utilities. This
method is slower but reorganizes the data files as well. Reorganizing the data files
means that all the lost space is recovered, although this has no impact on data
store performances.
To reduce the number of data files, use the EXPORT and IMPORT utilities. After
the EXPORT phase, you can DELETE and DEFINE clusters and reduce their
number.
When a primary or secondary index is corrupted, use the RECOVER utility that,
starting from data files, reconstructs them. The recovery of both the primary and
secondary indexes starts from the same utility, which reads data files to recover the
primary index first.
The following shows the JCL statements that are typical of the data store, and
which do not apply to other IBM Workload Scheduler for z/OS components (like
the controller or the tracker):
//OCDST1 JOB CLASS=Y
//OCDST1 EXEC PGM=EQQFARCH,REGION=0M,PARM=’EQQDSTP’,TIME=1440
.
.
.
//EQQSDF01 DD DISP=SHR,DSN=OPCDEV.SDF01
//EQQUDF01 DD DISP=SHR,DSN=OPCDEV.UDF01
//EQQUDF02 DD DISP=SHR,DSN=OPCDEV.UDF02
//EQQPKI01 DD DISP=SHR,DSN=OPCDEV.PKI01
//EQQSKI01 DD DISP=SHR,DSN=OPCDEV.SKI01
All IBM Workload Scheduler for z/OS messages are prefixed by EQQ. They are
normally written to the IBM Workload Scheduler for z/OS message log or ISPF
dialog user. Messages can, however, be routed to other destinations as well. This is
accomplished with the write-to-operator (WTO) routing codes.
Like ISPF messages, messages defined in the IBM Workload Scheduler for z/OS
message library consist of two or more records. The first record holds the message
number and keywords. The second record holds the message text.
To choose another destination, for example, routing code 8, modify this record to:
If you want to eliminate all destinations except the message log, remove the WTO
and ROUTE keywords altogether. You can also add the WTO and ROUTE
keywords to messages that normally appear only on the message log.
Note: When a message is issued as a WTO, the message text cannot exceed 70
characters. For this reason, it may be necessary to reorganize the text in messages
that are modified to include WTO=YES. If the text reorganization adds lines to
accommodate the entire message, be sure to modify or add the LINES keyword to
the message definition.
IBM Workload Scheduler for z/OS messages are stored in members of the message
library data set that is created during installation. This data set contains messages
for both the IBM Workload Scheduler for z/OS message log and the dialog user.
The WTO and ROUTE keywords are not valid for dialog messages, which are read
and displayed by ISPF dialog functions. It is not easy to distinguish between
dialog messages and message-log messages because they use the same format. If
you want to add the WTO or ROUTE keywords to a message, the safest way is to
modify only messages that you have seen on the IBM Workload Scheduler for
z/OS message log. Also, be aware that the messages written by the Daily Planning
batch job in the data set pointed to by the EQQDIN ddname cannot be routed to
the system log when you set the keyword WTO=YES.
The message library is a normal partitioned data set with 80-byte fixed-length
records. If you want to modify one or more messages as described previously, you
should create an additional message library and copy the relevant members to it
from the message library. Then you can modify your own library, and leave the
message library in the same state as when it was installed or updated by
maintenance. You should then include your message library in the JCL for the
started task, concatenated in front of the message library on the EQQMLIB DD
statement.
If you create your own message library in this way, you must review any changes
that occur in the message library as a result of maintenance activity.
Refer to z/OS Routing and Descriptor Codes for more information about routing
codes.
Note: The text MESSAGE IS NOT DEFINED might be replacing the text of any IBM
Workload Scheduler for z/OS issued message id. Moreover, the message type is set
to E although the message manual states it is an I or W message. This occurs if IBM
Workload Scheduler for z/OS is unable to locate the normal text for the message
id in the EQQMLIB library (for example, SEQQMSG0). This might be caused by a wrong
message customization, or by a wrong user setup in the message libraries
concatenation.
The panel library is a normal partitioned data set with 80-byte fixed-length records.
If you want to modify one or more panels you should create an additional panel
library and copy the relevant members to it from the IBM Workload Scheduler for
z/OS panel library. Then you can modify your own library, and leave the IBM
Workload Scheduler for z/OS panel library in the same state as when it was
installed or updated by maintenance. You should then include your panel library
in your ISPF concatenation in front of the IBM Workload Scheduler for z/OS panel
library on the ISPPLIB DD statement.
If you create your own panel library in this way, you must review any changes
that occur in the IBM Workload Scheduler for z/OS panel library as a result of
maintenance activity.
IBM Workload Scheduler for z/OS takes the layout of ended-in-error lists and
ready lists from two sources in the following sequence:
v The ISPF profile data set (ISPPROF), member names EQQELOUT and
EQQRLOUT. These members contain user-defined layouts that each user creates
and maintains individually, using the IBM Workload Scheduler for z/OS dialog.
v The ISPF table input data set (ISPTLIB), member names EQQELDEF and
EQQRLDEF. These members contain installation-defined default layouts. Sample
EQQELDEF and EQQRLDEF tables are shipped with the product in the ISPF
tables (SEQQTBL0) library. SEQQTBL0 is allocated to the ISPTLIB DD statement
during the installation procedure.
Note: Also edit all default layouts that you want to include in the new default
table. You need not update the layouts, but each layout you edit is written to
your ISPF profile data set.
2. Copy the modified table from your ISPF profile library to the IBM Workload
Scheduler for z/OS table library allocated to ISPTLIB, and rename it to the
default table name (EQQELDEF or EQQRLDEF). The layouts you created or
edited will now be the default layouts for all users.
Note: The tables EQQLUOUT (xxxxLUOUT with PQ92255 APAR installed) and
EQQLUDEF can be customized in the same way. For details, see “Setting Up the
ISPF Tables” in the IBM Workload Scheduler for z/OS: Planning and Installation.
Within IBM Workload Scheduler for z/OS, a data set eligible for Hiperbatch is
treated as a special resource. Using the Special Resource Description dialog, you
define a special resource with the name of the data set and specify Y (yes) in the
Hiperbatch field. The DLF exit sample, EQQDLFX, can then make the following
decisions about the DLF component:
v Will this data set be eligible for Hiperbatch?
v Should this operation be connected to this data object?
IBM Workload Scheduler for z/OS issues enqueues on the job and data set name
to notify the DLF exit that the job to be scheduled will use Hiperbatch. When the
job ends, IBM Workload Scheduler for z/OS checks if the same data set is required
by the immediate successor operation or other ready operations. If the data set is
not required, IBM Workload Scheduler for z/OS initiates purge processing (that is,
IBM Workload Scheduler for z/OS removes the data object from Hiperspace™) also
for operations that have ended in error, unless the keep on error value specifies that
the resources allocated to the operations must be kept.
Only the system where the controller is started and systems participating in the
same global resource serialization (GRS) ring interact with DLF. Before you can use
IBM Workload Scheduler for z/OS Hiperbatch support, you must:
1. Install the DLF connect/disconnect exit. SEQQSAMP member EQQDLFX
contains an assembler program that provides control information to DLF based
on information provided by IBM Workload Scheduler for z/OS. Refer to
Planning and Installation
2. Add started-task procedure EQQPROC. When an object in Hiperspace is no
longer needed by the jobs, IBM Workload Scheduler for z/OS initiates a
PURGE of this object. A start command is issued from within IBM Workload
Scheduler for z/OS:
EQQPROC
S EQQPROC, PARM='resource name
(Sample installation JCL for this started task is contained in sample member
EQQPROC.)
3. Create a file containing purge JCL. EQQPROC initiates an IBM Workload
Scheduler for z/OS batch program, EQQPURGE. EQQPURGE requires input
JCL to submit to the JES internal reader. Sample member EQQJCLIN contains
sample input JCL. When the DLF exit is installed on a z/OS system other than
the IBM Workload Scheduler for z/OS controller, the JCL must contain routing
information to transmit the job to the correct z/OS system.
If you change the local time on a tracker, IBM Workload Scheduler for z/OS
updates the GMT clock automatically as follows:
Procedure
1. It creates a new clock record and sends an IBM Workload Scheduler event to
the affected tracker.
2. The event triggers a refresh of the GMT clock.
3. The event is also forwarded to the controller for synchronization.
Results
Note: The auto-detect function works regardless of whether the local time is
changed using the set date or set clock command or using the sysplex timer. The
SMF type 90 record that is required to auto-detect the local time change is created
regardless of how the local time is changed.
IBM Workload Scheduler for z/OS support for RODM lets you subscribe to RODM
fields for fields in special resources. When RODM notifies a change, IBM Workload
Scheduler for z/OS updates resource fields that have a subscription to RODM. You
can subscribe to RODM for these fields:
AVAILABLE
The Available field in the resource. This value overrides the default and
interval values.
QUANTITY
The Quantity field in the resource. This value overrides the default and
interval values.
DEVIATION
The Deviation field. You use this field to make a temporary adjustment to
quantity. IBM Workload Scheduler for z/OS adds quantity and deviation
together to decide the amount that operations can allocate. For example, if
quantity is 10 and deviation is -3, operations can allocate up to 7 of the
resource.
A RODMOPTS statement is required for each field in every resource that you want
to monitor. Each statement is used to subscribe to a field in a RODM class or
RODM object for a field in a special resource. The RODM field value is used to set
the value of the resource field.
RODMOPTS statements are read when the controller is started. When a tracker
that communicates with RODM is started, it requests parameters from the
controller. The controller sends subscription information to the tracker, which then
subscribes to RODM. An event is created when RODM returns a value, which is
used to update the special resource field in the current plan. IBM Workload
Scheduler for z/OS does not schedule operations that use a special resource until
RODM has returned the current field value and IBM Workload Scheduler for z/OS
has updated the resource.
IBM Workload Scheduler for z/OS does not load or maintain data models in the
RODM cache, or require a specific data model. You need not write programs or
methods to use RODM through IBM Workload Scheduler for z/OS, or define
specific objects or fields in RODM. IBM Workload Scheduler for z/OS does not
update RODM-defined data.
RODM fields have several subfields. The RODM field that IBM Workload
Scheduler for z/OS subscribes to must have a notify subfield. Through a
subscription to this subfield, RODM notifies IBM Workload Scheduler for z/OS of
changes to the value subfield. IBM Workload Scheduler for z/OS uses changes to
the value subfield to monitor special resources. But only these data types are valid
for IBM Workload Scheduler for z/OS RODM support:
Table 43. Valid RODM data types for value subfields
Abstract data type Data type ID
CharVar (Char) 4
Integer (Bin 31) 10
IBM Workload Scheduler for z/OS maintains a RODM status for all special
resources in the current plan. You can check the current status in the Special
Resource Monitor dialog. Each special resource has one of these values:
N Not monitored. The special resource is not monitored through RODM.
I Inactive. Monitoring is not currently active. IBM Workload Scheduler for
z/OS sets this status for all subscriptions to a RODM subsystem that the
controller cannot communicate with. This can occur when communication
is lost with RODM or with the tracker. The controller sets the value of each
monitored field according to the RODMLOST keyword of RODMOPTS.
P Pending. IBM Workload Scheduler for z/OS has sent a subscription request
to RODM, but RODM has not returned a value.
A Active. IBM Workload Scheduler for z/OS has received a value from
RODM and the special resource field has been updated.
Note:
1. The names of RODM classes, objects, and fields are case-sensitive. Ensure you
preserve the case when specifying RODMOPTS statements in the parameter
library. Also, if a name contains anything other than alphanumeric or national
characters, you must enclose the name in double quotation marks.
2. If IBM Workload Scheduler for z/OS subscribes to RODM for a resource that
does not exist in the current plan and the DYNAMICADD keyword of
RESOPTS has the value YES or EVENT, the event created from the data
returned by RODM causes a dynamic add of the resource. DYNAMICADD is
described in the list of RESOPTS “Parameters” on page 139.
3. If a request from IBM Workload Scheduler for z/OS cannot be processed
immediately because, for example, long-running programs in RODM access the
same data that IBM Workload Scheduler for z/OS requests need access to, be
aware of possible delays to operation start times.
CASE Specifies the case code to be defined when this macro is invoked. It can be
1 to 4 characters and should follow JCL naming standards.
CODES
Specifies a list of IBM Workload Scheduler for z/OS job completion codes,
return codes, and case codes. The code name in the CASE parameter
represents all the codes in the CODES parameter.
Each macro invocation except the last defines a case code. The last record of the
module must be EQQCASEC END.
The distributed load module defines two case codes, NOAR and SYST. They are
created by the following assembler file:
JCL to run EQQDELDS and details about its parameters are provided in member
EQQDELDI in the SEQQSAMP library. See “Deleting data sets based on JCL
disposition and catalog status” on page 406 for more information.
All AWS and EQQPT messages are normally written to the following log files:
v Both AWS and EQQPT are written to the TWSMERGE.log, E2EMERGE.log, and
NETMAN.log HFS or ZFS files.
v Both AWS and EQQPT messages can be routed to either or both the Server
MLOG and the System Output Console.
The task of submitting and tracking your batch processing is necessarily complex
and involves a number of data sets. For this reason, IBM Workload Scheduler for
z/OS automatically handles the backup and synchronization of the current plans.
This process is explained in detail in Managing the Workload
Your recovery procedures can include the use of IBM Workload Scheduler for
z/OS hot standby facilities. If the z/OS system that your controller resides on fails,
or the controller itself fails, the IBM Workload Scheduler for z/OS controller
function can be transferred to a standby z/OS system. To use this facility, your
systems must be running in a z/OS sysplex using the cross-system coupling
facility (XCF).
Backup procedures
These VSAM data sets should be backed up on a daily basis:
v Application description (AD) data set
v Workstation description (WS) data set
v Operator instruction (OI) data set
v Special resource description (RD) data set
v Side information (SI) data set (if high activity)
v LTP data set
You need not back up the JCL repository (JS) data set on a daily basis for recovery
purposes. IBM Workload Scheduler for z/OS automatically backs up the JS file
based on the value specified for the MAXJSFILE keyword of the JTOPTS statement
for the subsystem. However, you can disable this automatic backup and schedule
JS file backups as job operations using the BACKUP command; for example, if you
want to schedule backups during times when the workload on the system is low.
The JS data set consists of two data sets, one active, the other inactive. Recovery is
simply a matter of copying the inactive data set to the active data set.
You can back up VSAM data sets using the REPRO function of the IDCAMS utility
program. But you cannot use REPRO if the backup is to a sequential file and the
record length is greater than 32 760. Instead, use DFSMSdss, or an equivalent
product, to perform the backup. If you use DFSMS, consider DFSMShsm ABARS
for data backup and restore. ABARS simplifies the backup and recovery process.
Normally, VSAM data sets are unloaded to a sequential data set. A recommended
practice is to use a generation data group as the backup data set. If backup data
sets are allocated on DASD, they must be on a different volume from the VSAM
data set being backed up. On a 3380 direct access storage device, the backup data
set should be on a different head disk assembly from the data set being backed up.
The long-term plan data set principally provides input for the daily plan batch jobs
that create a new current plan. Some of the daily plan batch jobs update the
long-term plan data set to set the status of occurrences in the long-term plan. The
long-term plan and the current plans must synchronize otherwise daily-plan
processing will fail.
IBM Workload Scheduler for z/OS creates a backup of the long-term plan when
long-term plan and daily-planning batch jobs are run. The backup is written to a
VSAM file with the ddname EQQLTBKP.
Before and after the new long-term plan is generated, a backup is made for
long-term batch jobs. This ensures that a usable long-term plan is available in the
backup file with the ddname EQQLTBKP after a long-term plan batch run.
For data processing batch jobs, a long-term backup is made after the new current
plan has been successfully created. This ensures that exists a long-term plan
backup that is synchronized with the new current plan produced in the file with
ddname EQQNCPDS.
| Table 44 summarizes how the data sets are backed up while the controller is
| running.
| Table 44. Backup procedures while the controller is running
| Data set Backup procedure
| Current plan (CP) The controller backs up the CP data set at each turnover or
| when you issue a backup command. However, if you want to
| save an additional copy, run the IDCAMS REPRO function
| against the inactive CP data set. The inactive data set is
| indicated in the FROMDD field of message EQQN057I related
| to the latest backup performed.
| Long-Term plan (LTP) The controller backs up the LTP data set after each LTP and
| DP batch run in the data set pointed by EQQLTBKP DD.
| However if you want to save an additional copy of the LTP
| data set, after the batch run, issue the REPRO command
| against the EQQLTBKP data set.
| Application description Run the IDCAMS REPRO function to copy the data sets when
| (AD), Operation instruction it is appropriate in your environment. To produce a VSAM
| (OI), Special resource backup, run the DP trial with the Copy VSAM option set to Yes.
| description (RD),
| Workstation description
| (WS)
| Side information (SI) Because this data set uses the local shared resources (LSR)
| buffering, to ensure that you copy also the changes processed
| by the buffering technique run the IDCAMS REPRO function
| after the data set has been closed and opened again. This
| occurs when message EQQN018I about the VSAM LSR buffer
| pool successfully built for the EQQSIDS data set is issued.
|
However, the descriptions that follow use these logical terms to describe the CP
and its associated data sets:
Current plan
Used when describing the current plan in general. The current plan
consists of the active current-plan data set and the extension (CX) file.
Active current plan
Refers to the current-plan data set that is currently in use within IBM
Workload Scheduler for z/OS. It is either EQQCP1DS or EQQCP2DS.
Every time a current plan backup is performed, IBM Workload Scheduler
for z/OS switches the active current plan to the other data set. Managing
the Workload describes the current plan backup process.
Current plan extension
Refers to the file that contains special resource information. The extension
The basic principle of IBM Workload Scheduler for z/OS current plan recovery is
that if the active current plan becomes unusable for any reason, IBM Workload
Scheduler for z/OS should always be able to re-create an up-to-date current plan
from the backup current plan and the various job-tracking logs. The way IBM
Workload Scheduler for z/OS actually carries out this task is described in
“Current-plan recovery processing” on page 333.
When IBM Workload Scheduler for z/OS suspects that the active current plan is
unusable, it automatically carries out recovery processing. IBM Workload
Scheduler for z/OS uses the alternate current plan or the new-current-plan data set
(EQQNCPDS) and the active job-tracking log to create a current plan that is fully
up-to-date. Here is a step-by-step description of the current plan recovery process:
1. The current plan is locked to prevent updates from job-tracking events and
dialog users.
2. The active current plan is erased.
3. The alternate current plan or new current plan is copied to the active current
plan. Indicators in the checkpoint data set determine which of the two are
actually used. This is explained further in “Current-plan processing at IBM
Workload Scheduler for z/OS startup” on page 334.
4. The identity of the active job-tracking log is obtained from the checkpoint
record. Every record of the current JT log is used to update the active current
plan.
If recovery is performed from the new current plan, the current JT log and the
JT archive log are used to reapply the events that have occurred since the new
current plan was created.
5. The active current plan is now up-to-date. A current plan backup is performed.
6. Normal IBM Workload Scheduler for z/OS processing starts or continues.
If you are scheduling end-to-end with fault tolerance capabilities, perform the
following manual actions to make sure that the Symphony file is aligned with the
rebuilt current plan:
1. From OPC dialog select the option 3, DAILY PLANNING. The Producing OPC
Daily Plans dialog is displayed.
2. Then, select option 5, SYMPHONY RENEW.
3. Submit the symphony renew batch job to create a Symphony file aligned with
the Current Plan.
If the data space CX file becomes unusable, IBM Workload Scheduler for z/OS
performs these recovery actions:
1. The current plan is locked to prevent updates from job-tracking events and
dialog users.
2. The CX data space is deleted.
3. The CX DASD file is copied to a new data space
4. The identity of the active job-tracking log is obtained from the checkpoint
record. Records in the current JT log are used to update the data space.
5. The data space file is now up-to-date. A current plan backup is performed.
6. Normal IBM Workload Scheduler for z/OS processing starts or continues.
If the CX DASD file becomes unusable, follow the instructions in “Recovering from
errors on the current-plan-extension data set” on page 343.
The checkpoint data set is empty the first time IBM Workload Scheduler for z/OS
is started. It is also empty if it has been deleted and reallocated for some reason,
such as if it was damaged.
When IBM Workload Scheduler for z/OS is started for the first time, the following
occurs:
1. The checkpoint data set is formatted and initial values written to it.
2. When JTOPTS CURRPLAN(CURRENT) is specified, IBM Workload Scheduler
for z/OS will issue message
If you are scheduling end-to-end with fault tolerance capabilities, perform the
following manual actions to make sure that the Symphony file is aligned with the
rebuilt current plan:
1. From OPC dialog select the option 3, DAILY PLANNING. The Producing OPC
Daily Plans dialog is displayed.
2. Then, select option 5, SYMPHONY RENEW.
3. Submit the symphony renew batch job to create a Symphony file aligned with
the Current Plan.
Note: When current plan recovery processing is performed after IBM Workload
Scheduler for z/OS is started with an empty checkpoint data set, IBM Workload
Scheduler for z/OS uses the primary data sets EQQJT01, EQQDL01, and
EQQJS1DS as the active data sets. If a primary data set was not the active data set
at the last shut down, copy the data from the previously active data set to the
primary data set. Or events since the last current plan backup will not be applied.
You can check which data sets were active by reviewing the message log or by
looking for the data sets with the latest time stamp.
When IBM Workload Scheduler for z/OS starts, it reads the checkpoint data set to
determine which is the active current plan and job-tracking log.
The job-tracking log is opened. If no job-tracking records are found, this indicates
that IBM Workload Scheduler for z/OS ended normally because a JT log switch is
performed when the CP backup completes at normal termination.
If there are records on the job-tracking log after the backup position, this indicates
that IBM Workload Scheduler for z/OS did not end normally. In this case, recovery
processing using the backup current plan and CX data set is performed as
described in “Current-plan recovery processing” on page 333. Normal IBM
Workload Scheduler for z/OS processing is then started.
If the Symphony file is not up to date with the Current Plan, select the option 5 on
the panel Producing OPC Daily Plans or submit the Daily Plan batch job.
If IBM Workload Scheduler for z/OS recognizes that the active current plan is
damaged or is no longer accessible, a recovery of the active current plan is
performed automatically. This is described in “Current-plan recovery processing”
on page 333.
The VSAM data sets used by IBM Workload Scheduler for z/OS must be error free
if IBM Workload Scheduler for z/OS is to work normally. If a VSAM data set has
been damaged, then it must be restored from a backup copy.
When re-creating a VSAM data set from a backup, you should allocate a new data
set. But keep the damaged data set for problem determination after normal IBM
Workload Scheduler for z/OS service is resumed. You need to either rename the
damaged file so that you can use the same name for the new data set, or allocate
the data set with a new name.
If you allocate the data set with a new name you must also change the IBM
Workload Scheduler for z/OS JCL procedure and all batch jobs that reference the
damaged data set. You can update the batch jobs by editing affected members in
the ISPF job-skeleton library.
The restore procedure varies a little, depending on which data set is damaged.
These differences are explained in the following sections. All restore procedures
assume that there is a usable backup available.
Note: If you restore a database file, AD, WS, OI, RD, or SI, IBM Workload
Scheduler for z/OS cannot recover updates made since the last backup. You should
consider using the AUDIT statement to log accesses to these files so that you have
a record of the updates that you need to reapply.
You can also try to access the file before you stop IBM Workload Scheduler for
z/OS and sort the list of items on the time of last update in descending order.
Note the items changed since the last backup was created.
Note:
v It is recommended that you back up the EQQSIDS data set while the controller
is down. If the EQQSIDS data set is backed up while the controller is active,
some SI updates might be lost because of LSR buffering.
v The EQQSIDS data set cannot be backed up if a CP backup is in progress,
because of ongoing LSR buffer delete and allocate phase.
v A backup of the EQQSIDS data set taken after the completion of a CP backup,
contains any SI update made prior to the start of the CP backup; any following
backup needs to be manually reapplied by the user.
The way you restore the LTP data set depends on when the backup data set was
created. There is a strong connection between the current plan and the LTP data
set. If possible, the LTP should be restored from a backup that was created after
the last time IBM Workload Scheduler for z/OS took over a new current plan
created by a daily plan batch job.
If such an LTP backup is available, use it to restore the LTP data set:
1. Stop IBM Workload Scheduler for z/OS.
2. Allocate a new LTP data set.
3. Copy the backup data set to the LTP data set. Use the data set with ddname
EQQLTBKP.
4. If you allocated the data set with a new name, update all JCL (ddname
EQQLTDS) to reference the new LTP data set.
5. Start IBM Workload Scheduler for z/OS.
6. Enter the Long-Term Plan dialog to verify that occurrences are correctly
defined. All occurrences added since the LTP backup was created must be
added again.
If the LTP backup that matches the current plan is unusable, you must restore the
LTP as described previously and create a new current plan from the restored LTP.
If the current plan has, for some reason, become unusable, you can build a new
current plan from the long-term plan after using the REFRESH function.
Attention: You should use the REFRESH function only when you have no
alternative because it deletes your current plan. Make sure that you cannot recover
using the backup current plan or new current plan before you use REFRESH.
Note: If the refresh function is selected in error, you can re-create the current plan
from the new current plan. See “Re-creating the current plan from the
new-current-plan and the JT archive log” on page 340.
If all current plan data sets have been damaged or lost but the new current plan
still exists and is valid, it is possible to get IBM Workload Scheduler for z/OS to
take over the new current plan again. This is a better alternative than using refresh
because the resulting current plan will normally be up-to-date.
If you are scheduling end-to-end with fault tolerance capabilities, perform the
following manual actions to make sure that the Symphony file is aligned with the
rebuilt current plan:
1. From OPC dialog select the option 3, DAILY PLANNING. The Producing OPC
Daily Plans dialog is displayed.
2. Then, select option 5, SYMPHONY RENEW.
3. Submit the symphony renew batch job to create a Symphony file aligned with
the Current Plan.
IBM Workload Scheduler for z/OS automatically recovers from read errors on a
job-tracking log during restart. If the error occurs on the first record of the log, the
NMM task regards the job-tracking log as empty. A read error on a record other
than the first is treated as end-of-file.
When there are write errors on a job-tracking log, IBM Workload Scheduler for
z/OS tries recovery. If an inactive job-tracking log is available, IBM Workload
Scheduler for z/OS switches to that data set and continues processing. You can
then shut down IBM Workload Scheduler for z/OS to correct the problem with the
data set. If IBM Workload Scheduler for z/OS is unable to switch to an inactive JT
log, you need to:
1. Stop IBM Workload Scheduler for z/OS.
2. Reallocate the job-tracking-log data set.
If you are not using the dual-logging function, you will lose the job-tracking data,
but your current plan should not be impacted. But there might be an impact if
recovery is required at a later stage of the current plan. So extend or replan the
current plan as soon as possible.
When IBM Workload Scheduler for z/OS finds an error with a dual job-tracking
data set, the dual-logging process is disabled. The IBM Workload Scheduler for
z/OS current plan and normal job-tracking logs continue as normal. You should
stop IBM Workload Scheduler for z/OS, and reallocate the dual JT log data set.
The dual-logging function is activated again when the controller is started.
Attention: Do not start IBM Workload Scheduler for z/OS with the
CURRPLAN(NEW) keyword specified on the JTOPTS statement until a new
current plan is taken over by IBM Workload Scheduler for z/OS.
If there is a write error on the checkpoint data set, follow this procedure:
1. Stop IBM Workload Scheduler for z/OS.
2. Rename the checkpoint data set to a temporary name.
3. Allocate a new checkpoint data set.
4. Copy the old checkpoint data set into the new data set. This can be done by
ISPF COPY or by IDCAMS REPRO.
If there is a read error on the checkpoint data set, follow this procedure:
v If a good new-current-plan does not exist:
1. Stop IBM Workload Scheduler for z/OS.
2. Delete the checkpoint data set and reallocate it.
3. Re-create the current plan using the refresh procedure. See “Re-creating the
current plan from the long-term plan” on page 339.
v If a good new-current-plan data set exists:
1. Stop IBM Workload Scheduler for z/OS.
2. Check which job-tracking log is the current one. This can be done by
reviewing the messages in the message log, or by browsing the JT log and
checking the time stamp in position 13 in the first record of the data set. The
data set with the latest time stamp in the first record is current.
3. Copy the data from the active job-tracking log into the job-tracking log
referenced by the EQQJT01 ddname.
4. Determine which JS file was active. If EQQJS1DS defines the current data set,
then continue with the next step. Otherwise, either copy the EQQJS2DS to
the EQQJS1DS or switch the ddnames in the JCL procedure.
5. Delete and reallocate the IBM Workload Scheduler for z/OS checkpoint data
set.
6. Change the JTOPTS statement to specify JOBSUBMIT(NO) and
CURRPLAN(NEW), and start the scheduler.
7. Enter the Modify Current Plan dialog to set correct status for all operations
in the current plan.
8. When all operations have correct status, enter the SERVICE FUNCTIONS
panel and enable job submission again. Restore the JTOPTS statement if you
changed it.
If you are scheduling end-to-end with fault tolerance capabilities, perform the
following manual actions to make sure that the Symphony file is aligned with the
rebuilt current plan:
1. From OPC dialog select the option 3, DAILY PLANNING. The Producing OPC
Daily Plans dialog is displayed.
2. Then, select option 5, SYMPHONY RENEW.
3. Submit the symphony renew batch job to create a Symphony file aligned with
the Current Plan.
Procedure
1. Stop any IBM Workload Scheduler for z/OS subsystem that is writing to or
reading from the data set.
2. Rename the event data set, and allocate a new data set.
3. Start IBM Workload Scheduler for z/OS again.
Note: The first time IBM Workload Scheduler for z/OS is started with a newly
allocated submit/release data set, an SD37 error occurs when IBM Workload
Scheduler for z/OS formats the data set. Expect this; do not treat it as an error.
4. Enter the Modify Current Plan dialog, and check the status of operations in the
current plan. Concentrate on computer workstations that are connected to the
controller via the failing submit/release data set. If you determine that a job
submission action has been missed, reset the operation to READY status.
If the EQQNCPDS and EQQNCXDS data sets are valid, perform these actions:
1. Cancel IBM Workload Scheduler for z/OS.
2. Allocate a new CX data set.
3. If you allocated the data set with a new name, update all JCL (ddname
EQQCXDS) to reference the new data set.
4. Specify CURRPLAN(NEW) on the JTOPTS statement.
5. Start IBM Workload Scheduler for z/OS.
6. Remove CURRPLAN(NEW) from the JTOPTS statement.
If you are scheduling end-to-end with fault tolerance capabilities, perform the
following manual actions to make sure that the Symphony file is aligned with the
rebuilt current plan:
1. From OPC dialog select the option 3, DAILY PLANNING. The Producing OPC
Daily Plans dialog is displayed.
2. Then, select option 5, SYMPHONY RENEW.
Chapter 10. Backup and recovery of data sets 343
3. Submit the symphony renew batch job to create a Symphony file aligned with
the Current Plan.
If the EQQNCXDS data set is valid but no valid EQQNCPDS data set exists,
perform these actions:
1. Cancel IBM Workload Scheduler for z/OS.
2. Allocate a new CX data set.
3. If you allocated the data set with a new name, update all JCL (ddname
EQQCXDS) to reference the new data set.
4. Copy EQQNCXDS to EQQCXDS.
5. Specify CURRPLAN(CURRENT) on the JTOPTS statement. CURRENT is the
default value.
6. Start IBM Workload Scheduler for z/OS.
If both EQQNCPDS and EQQNCXDS cannot be used, you must create a new
current plan from the LTP. “Re-creating the current plan from the long-term plan”
on page 339 describes how you do this.
The standby system to which control is passed must have all the data used by the
original controller available to it. This usually requires the use of shared DASD
between the two systems. The new controller system must also have access to all
other systems in the IBM Workload Scheduler for z/OS complex via XCF, VTAM,
or shared SUBMIT/RELEASE data sets. You must ensure that these links are
available.
Also, the RACF environment of the new controller z/OS system must be set up
correctly to ensure that the level of user access to data from the standby system is
correct.
For more details on IBM Workload Scheduler for z/OS hot standby, refer to
Planning and Installation.
You specify whether the message is produced, and its destination, using the
ALERTS statement. For detailed information about this statement, see “ALERTS”
on page 7.
If the process for creating the Symphony fails, you can create a new Symphony file
based on the current plan, if the plan is up-to-date. For more information about
creating the Symphony file from the current plan see“Current-plan recovery
processing” on page 333.
When the Symphony file is created by the batch job, it is distributed to the
fault-tolerant workstation in order to start the scheduling activity again.
An exception is made only for the cleanup utility, which can run also as a subtask
of the data store. In this case, called 'online mode', the utility will run on a periodic
basis, and delete selected records from the database. It is highly recommended that
this mode is used, to ensure a regular cleanup of old SYSOUT records and to keep
the database at a reasonable size. See below for a full discussion of the cleanup
subtask.
For both primary and secondary index another utility, the reorg, can be obtained
by combining an export and an import utility.
It is not possible to code separate cleanup actions for structured and unstructured
data because the data store cleanup subtask accepts only one DSTUTIL statement.
Therefore, to delete structured and unstructured data with different DSTUTIL
statements, use the batch cleanup utility (EQQDSCL batch cleanup sample). The
cleanup batch job can run only if the data store is stopped. If you decide to
schedule data store cleanup using the EQQDSCL job, set DSTOPTS CINTERVAL(0).
For details, see “DSTUTIL” on page 48.
Example:
or
or
JobId = ’JOB00467’
Example:
DSTUTIL IMPUNSTR DDNAME(EQQEXP01)
SEARCH1(JBNMLKJOB*CC*,JBDTGE19990501)
SEARCH2(JBDTGE19990515)
This command exports the records that match the criteria to a sequential file
identified by the DDNAME EQQEXP01:
JobName LIKE ’JOB*CC*’ and jobdate greater than or
equal to 01/05/1999
or
Example:
This command imports all SYSOUT records contained in the export file identified
by DDNAME EQQEXP01. The only condition specified is a wildcard filter that will
match every record in the file:
JobId LIKE ’*’
You can import separately structured and unstructured data by codifying the
command IMPORT with two different ddnames. The import utility recognizes the
export data type (structured and unstructured) because of the header record that
provides it.
Example
DSTUTIL IMPORT DDNAME(EQQEXPST) REPLACE(YES) ← struct. exp. file SEARCH1(JBIDLK*)
DSTUTIL IMPORT DDNAME(EQQEXPUN) REPLACE(YES) ← unstruct. exp. file SEARCH1(JBIDLK*)
Note: The command shown above can be used after the whole database, has been
reorganized after a previous mass export.
Chapter 11. Cleanup and recovery of data store data sets 349
Cleanup subtask
The cleanup subtask is not a batch utility, but an online component of the data
store that is responsible for regularly eliminating superfluous records from the
database. The records that are to be selected for deletion are identified according to
user-defined criteria, which are specified in a member of the data store parameter
library. Typically, records older than a certain interval of time, for example 1 day,
are deleted, but the selection criteria allow you to treat some jobs differently from
others.
The name of the member that contains the cleanup selection criteria is specified in
the CLNPARM initialization statement for the data store. The syntax for the
selection criteria is identical to that described for the batch cleanup utility above.
When coding the selection criteria, be sure to include a catch-all criteria that
matches all records and ensures that after a certain period of time all records are
eventually deleted. This is essential to prevent the database from growing over
time until it fills up and cannot store any more data. Syntax errors in the cleanup
selection criteria cause the closure of the task, and cleanup actions are not therefore
performed. In this case, you should correct the errors and restart the cleanup task
manually, specifying S=ARCU on the modify command (P=ARCU stops the
subtask). The cleanup subtask is activated on a periodic basis. The frequency with
which it is activated is governed by the CINTERVAL initialization statement. A
value of zero means that the Data Store Cleanup subtask is started at data store
initialization, but never runs. Therefore, if CINTERVAL(0) is set, the user must
schedule regular batch cleanups, otherwise the data store UDF and SDF files grow
with no limits.
Before you plan for the recovery of data, have a good understanding of the
comprehensive built-in recovery actions provided by IBM Workload Scheduler for
z/OS. This reading is recommended:
v The Planning and Installation chapter on IBM Workload Scheduler for z/OS
configurations
v Current plan reference information in the chapter about producing the current
plan, which is described in Managing the Workload
v Chapter 10, “Backup and recovery of data sets,” on page 329.
Under normal circumstances, the DP center handles the processing of six business
systems. Only four of these systems provide off-site recoverability. Three of the
four send backups off-site each hour; the other system creates backups only when
processing is complete each day. The IBM Workload Scheduler for z/OS DRP
required to support this environment must generate off-site backups each hour.
After IBM Workload Scheduler for z/OS is recovered to the most recent backup in
the secondary center, application occurrences for those systems that recover to
start-of-day are reset to waiting status. Occurrences not required are deleted from
the current plan.
Secondary-center options
The secondary center determines how quickly you can get an IBM Workload
Scheduler for z/OS environment active:
Hot backup
A secondary data center already operational and available for immediate
switch-over
The distance between the centers is often the determining factor in your
installation's choice of communication options. Data must be brought regularly to
the secondary data center from the primary data center to provide disaster backup
and recovery. This can be done by:
v Physical transportation of data on media (tape, paper)
v Telecommunication lines
v Channel-to-channel connections
v Fiber-optic channel extenders.
If you have shared DASD with the secondary center either through
channel-to-channel connectors or fiber-optic channel extenders, you can recover
IBM Workload Scheduler for z/OS to point-of-failure by using the dual
job-tracking facilities of IBM Workload Scheduler for z/OS.
Unless your secondary center is a hot backup that exactly mirrors your primary
data center, you must identify the IBM Workload Scheduler for z/OS configuration
needed to support the environment. With your system programmer, identify the
IBM Workload Scheduler for z/OS subsystems required.
Naming conventions
Try to use the same subsystem names, NCF LU names, and XCF destination
names. This can save you time in the recovery process and lets you use the same
initialization statements that you normally use in the primary center.
Library requirements
The SYS1.PARMLIB requirements to support your secondary-center configuration
should be permanently defined on the SYSRES used for the DRP exercise. Also
maintain up-to-date IBM Workload Scheduler for z/OS software libraries in the
secondary center.
JCL considerations
Where possible, standardize JCL requirements for symbolic variables, such as input
and SYSOUT classes between the primary and secondary centers. If differences are
unavoidable, consider using the IBM Workload Scheduler for z/OS JCL variable
substitution function to reduce the impact of these changes.
Symbolic variables can be permanently defined in the global table for input classes,
SYSOUT classes, and SMS storage classes. Utilization of JCL variable substitution
for these items can also prevent JCL changes in your primary center. For detailed
information, see Managing the Workload.
If both your primary and secondary data centers use DFSMS, consider using
DFSMShsm ABARS for data backup and restore. ABARS simplifies the backup and
recovery process. Also, if you define backups for all data sets with a particular
high-level data set name, you can ensure that all required data sets are backed up.
Backup requirements
Table 45 defines the backup intervals required to ensure that you can successfully
restore IBM Workload Scheduler for z/OS to start-of-day processing. N/A shows
that a backup is not applicable for DRP purposes.
Table 45. Backup cycle for start-of-day DRP
ddname Format Defines Backup interval
EQQADDS VSAM Applications and JCL variables Daily
EQQCKPT PS Checkpoint data set N/A
EQQCP1DS VSAM Current-plan-1 data set N/A
EQQCP2DS VSAM Current-plan-2 data set N/A
EQQCXDS VSAM Current-plan-extension data set N/A
EQQDLnn PS Dual job-tracking-log data set N/A
EQQEVDS PS Event data set for the N/A
event-writer task
EQQEVDnn PS Event data set for an event-reader N/A
task
EQQHTTP0 PS Event data set for end-to-end N/A
scheduling with z-centric
capabilities
EQQINCWK PS JCC incident work file N/A
EQQJBLIB PDS JCL library data set Minimum weekly, daily if high
activity
EQQJCLIB PDS JCC message-table data set Minimum weekly, N/A if
same as primary
EQQJS1DS VSAM JCL-repository-1 data set N/A
EQQJS2DS VSAM JCL-repository-2 data set N/A
EQQJTARC PS Job-tracking-archive data set N/A
EQQJTnn PS Job-tracking-log data set N/A
EQQLDDS VSAM Work data set for long-term-plan See note 1 on page 355
batch jobs
EQQLTBKP VSAM Long-term plan backup See note 1 on page 355
EQQLTDS VSAM Long-term plan data set See note 1 on page 355
EQQMLIB PDS Message library N/A (already in secondary)
EQQMLOG PS Message log N/A
EQQNCPDS VSAM New-current-plan data set N/A
EQQNCXDS VSAM New-current-plan extension data N/A
set
EQQOIDS VSAM Operator-instruction database Minimum weekly, daily if high
activity
Initialization-statement-
parameter library
EQQPRLIB PDS Automatic-recovery-procedure Minimum weekly, daily if high
library activity
EQQRDDS VSAM Special resource descriptions Daily
EQQSCLIB PDS Scripts and Command library Minimum weekly, daily if high
activity
EQQSIDS VSAM ETT criteria and configuration Minimum weekly, daily if high
data activity
EQQSTC PDS Started-task-submit data set N/A
EQQSUDS PS Submit/release data set N/A
EQQTWSCS PDSE End-to-end data set for N/A
centralized script support
EQQTWSIN PS Input events for end-to-end N/A
scheduling with fault-tolerance
capabilities
EQQTWSOU PS Output events for end-to-end N/A
scheduling with fault-tolerance
capabilities
EQQWSDS VSAM Workstation, calendar, and period Minimum weekly, daily if high
definitions activity
EQQYPARM PDS Initialization statements Minimum weekly, daily if high
parameter library activity
STEPLIB PDS IBM Workload Scheduler for N/A (already in secondary)
z/OS load-module library
user-defined PS Submit/release data set N/A
Note:
1. When an LTP or daily-planning batch job runs a copy of the LTP is written to the EQQLTBKP data set. Use
EQQLTBKP for your DRP backup to ensure that no updates have occurred before the backup is taken. Perform
the DRP backup daily. The contents of the LT, LD and LB data sets must be kept in synch in case a new LTP
needs to be re-created from scratch.
2. IBM Workload Scheduler for z/OS issues message EQQN057I to show that a CP backup is complete. You should
update the message to include WTO=YES so you can use NetView to trigger DRP data set backups. Message
EQQN051I shows why the CP backup occurred. The DRP backups can be triggered when the scheduler issues
message EQQN057I following message EQQN051I with reason "DP END". In fact, now, EQQLTBKP,
EQQNCPDS and EQQNCXDS are all synchronized with the other scheduler data.
Recovery process
About this task
Follow the steps listed below to recover your IBM Workload Scheduler for z/OS
environment to start-of-day processing.
1. Allocate all required data sets. The JCL required should be based on the sample
library (SEQQSAMP) members EQQPCS01 and EQQPCS02.
This backup and recovery process can be used when the DRP strategy calls for
recovery to a particular time or to a certain point in the processing cycle. This
could be once per day or hourly. The process is the same regardless of the
regularity with which you need to take backups.
Backup Requirements
Table 46 defines the backup intervals required to ensure you can successfully
restore IBM Workload Scheduler for z/OS to a predefined recovery point. Not all
data sets must be backed up at the acknowledged point in processing. Those that
must should be backed up only after BACKUP commands for both CP and JS
resources have been processed by the controller. N/A shows that a backup is not
applicable for DRP purposes.
Table 46. Backup cycle for predefined recovery point DRP
ddname Format Defines Backup interval
EQQADDS VSAM Applications and JCL variables Daily
EQQCKPT PS Checkpoint data set N/A
EQQCP1DS VSAM Current-plan-1 data set N/A
EQQCP2DS VSAM Current-plan-2 data set N/A
EQQCXDS VSAM Current-plan-extension data set N/A
EQQDLnn PS Dual job-tracking-log data set N/A
EQQEVDS PS Event data set for the N/A
event-writer task
EQQEVDnn PS Event data set for an event-reader N/A
task
Initialization-statement-
parameter library
EQQPRLIB PDS Automatic-recovery-procedure Minimum weekly, daily if high
library activity
EQQRDDS VSAM Special resource descriptions Daily
EQQSCLIB PDS Scripts and Commands Minimum weekly, daily if high
description library activity
EQQSIDS VSAM ETT criteria and configuration Minimum weekly, daily if high
data activity
EQQSTC PDS Started-task-submit data set N/A
EQQSUDS PS Submit/release data set N/A
EQQTWSCS PDSE End-to-end data set for N/A
centralized script support
EQQTWSIN PS Input events for end-to-end N/A
scheduling with fault tolerance
capabilities
Recovery process
About this task
Follow the steps listed below to recover your IBM Workload Scheduler for z/OS
environment to a predefined point in processing.
1. Allocate all required data sets. The JCL required should be based on the sample
library (SEQQSAMP) members EQQPCS01 and EQQPCS02.
2. Data backed up daily or weekly should be recovered from the most recent
backup. LTP and NCP should also be recovered from the most recent backup.
3. Restore data backed up at the predefined point. Copy the backup of JS to both
EQQJS1DS and EQQJS2DS.
4. Specify JOBSUBMIT(NO) and CURRPLAN(NEW) on the JTOPTS statement and
then start the controller address space. Start additional address spaces required
for the Tivoli OPC tracker subsystems.
5. Use the IBM Workload Scheduler for z/OS dialogs to delete or complete
occurrences that you do not need to process in the secondary center. Check the
status of all occurrences and special resources before starting job submission.
6. Change CURRPLAN(NEW) to CURRPLAN(CURRENT) on the JTOPTS
statement.
If you are scheduling end-to-end with fault tolerance capabilities, perform the
following manual actions to make sure that the Symphony file is aligned with the
rebuilt current plan:
1. From IBM Workload Scheduler for z/OS dialog select the option 3, DAILY
PLANNING. The Producing OPC Daily Plans dialog is displayed.
2. Select option 5, SYMPHONY RENEW.
Recovery to point-of-failure
This backup and recovery process is used to recover the IBM Workload Scheduler
for z/OS environment to point-of-failure. The strategy relies on the dual
job-tracking facility. The dual logs must be allocated on DASD in the secondary
center connected to the primary center by either channel-to-channel connectors or
fiber-optic channel extenders.
Although the backup process is complex, when in place, this setup provides quick
recovery of the environment.
Backup requirements
About this task
Table 47 defines the backup intervals required to ensure you can successfully
restore to point-of-failure. Some data sets need only be backed up weekly; others
are required to be backed up after every CP or JS backup. N/A shows that a
backup is not applicable for DRP purposes.
Table 47. Backup cycle for point-of-failure DRP
ddname Format Defines Backup interval
EQQADDS VSAM Applications and JCL variables Daily
EQQCKPT PS Checkpoint data set N/A
EQQCP1DS VSAM Current-plan-1 data set N/A
EQQCP2DS VSAM Current-plan-2 data set N/A
EQQCXDS VSAM Current-plan-extension data set N/A
EQQDLnn PS Dual job-tracking-log data set N/A (already in secondary)
EQQEVDS PS Event data set for the N/A
event-writer task
EQQEVDnn PS Event data set for an event-reader N/A
task
EQQHTTP0 PS Event data set for end-to-end N/A
scheduling with z-centric
capabilities
EQQINCWK PS JCC incident work file N/A
EQQJBLIB PDS JCL library data set Minimum weekly, daily if high
activity
EQQJCLIB PDS JCC message-table data set Minimum weekly, N/A if
same as primary
EQQJS1DS VSAM JCL-repository-1 data set See note 1 on page 361
EQQJS2DS VSAM JCL-repository-2 data set See note 1 on page 361
EQQJTARC PS Job-tracking-archive data set See note 2 on page 361
EQQJTnn PS Job-tracking-log data set N/A
EQQLDDS VSAM Work data set for long-term-plan See note 3 on page 361
batch jobs
EQQLTBKP VSAM Long-term plan backup See note 3 on page 361
EQQLTDS VSAM Long-term plan data set See note 3 on page 361
Initialization-statement-
parameter library
EQQPRLIB PDS Automatic-recovery-procedure Minimum weekly, daily if high
library activity
EQQRDDS VSAM Special resource descriptions Daily
EQQSCLIB PDS Scripts and Commands definition Minimum weekly, daily if high
library activity
EQQSIDS VSAM ETT criteria and configuration Minimum weekly, daily if high
data activity
EQQSTC PDS Started-task-submit data set N/A
EQQSUDS PS Submit/release data set N/A
EQQTWSCS PDSE End-to-end data set for N/A
centralized script support
EQQTWSIN PS Input events for end-to-end N/A
scheduling with fault tolerance
capabilities
EQQTWSOU PS Output events for end-to-end N/A
scheduling with fault tolerance
capabilities
EQQWSDS VSAM Workstation, calendar, and period Minimum weekly, daily if high
definitions activity
STEPLIB PDS IBM Workload Scheduler for N/A, already in secondary
z/OS load-module library
user-defined PS Submit/release data set N/A
Recovery process
About this task
Follow the steps listed below to recover your IBM Workload Scheduler for z/OS
environment to the point-of-failure.
1. Allocate all required data sets. The JCL required should be based on the sample
library (SEQQSAMP) members EQQPCS01 and EQQPCS02.
2. Data backed up daily or weekly should be recovered from the most recent
backup. LTP, NCP, and JTARC should be recovered from the most recent
backup.
3. Restore data backed up at regular intervals. Copy the backup of JS to both
EQQJS1DS and EQQJS2DS.
4. Browse EQQJTARC and obtain the time stamp of the last record. The time
stamp starts at decimal location 12 and is in the format
00YYMMDDFHHMMSSTH. Examine EQQDLnn data sets, and identify the files
that contain job-tracking records not included in the archive log.
5. Copy the required EQQDLnn data set to EQQJT01. If more than one dual log
contains job-tracking data not included in the archive log, append all the
records to EQQJT01 in strict time order.
6. Specify JOBSUBMIT(NO) and CURRPLAN(NEW) on the JTOPTS statement and
then start the controller address space. Start additional address spaces required
for the Tivoli OPC tracker subsystems.
7. Use the IBM Workload Scheduler for z/OS dialogs to delete or complete
occurrences that you do not need to process in the secondary center. Check the
status of all occurrences and resources before starting job submission.
8. Change CURRPLAN(NEW) to CURRPLAN(CURRENT) on the JTOPTS
statement.
If you are scheduling end-to-end with fault tolerance capabilities, perform the
following manual actions to make sure that the Symphony file is aligned with the
rebuilt current plan:
1. From IBM Workload Scheduler for z/OS dialog select the option 3, DAILY
PLANNING. The Producing OPC Daily Plans dialog is displayed.
2. Select option 5, SYMPHONY RENEW.
Therefore, if you are testing a disaster recovery, perform either of the following:
v Do not restore the WRKDIR at the disaster recovery site. Instead, run the
EQQPCS05 job to create an empty WRKDIR, then start the end-to-end server
and run a SYMPHONY RENEW.
v After restoring the production WRKDIR and before starting the controller and
end-to-end server, delete or rename the Symphony and translator.chk files from
WRKDIR. Start the controller and end-to-end server, then run a SYMPHONY
RENEW.
Good performance is the achievement of agreed service levels. This means that
system availability, throughput, and response times meet user's expectations using
resources available within the budget.
The performance of IBM Workload Scheduler for z/OS should be considered when
you:
v Plan to install a new system
v Want to review an existing system
v Contemplate major changes to a system.
There are several basic stages in tuning a system, some of which might be iterative
until performance is acceptable. These are:
v Agree what good performance is
v Set up performance objectives
v Decide on measurement criteria
v Measure the performance of the production system
v Make adjustments as required
v Continue to monitor the performance of the system and anticipate future
constraints.
You should monitor all of these factors to determine when constraints in the
system might develop. A variety of programs could be written to monitor all these
resources. Some of these programs are currently supplied as part of IBM products
such as IBM Workload Scheduler for z/OS or are supplied as separate products.
This topic describes some of the programs that can give performance information
on different components of a production system.
The list of products in this topic is far from being an exhaustive summary of
performance monitoring tools, yet the data provided from these sources comprises
a large amount of information. To monitor all this data is an extensive task.
Furthermore, only a small subset of the information provided is important for
identifying constraints and determining necessary tuning actions, and you must
identify this specific subset. You often have to gather a lot of data before you can
fully understand the behavior of your own system and determine where a tuning
effort can provide the best overall performance improvement. You must be familiar
with the analysis tools and the data they provide to successfully tune a system. But
remember that all monitoring tools cost processing effort to use.
Many predefined reports are available. You can also generate your own reports to
meet specific needs.
The reports use data from the IBM Workload Scheduler for z/OS job-tracking files.
Performance Reporter for MVS and Tivoli Decision Support for OS/390 also collect
data from the MVS system and from products such as RMF™, TSO, IMS and
NetView. This means that data from IBM Workload Scheduler for z/OS and other
systems can be shown together, or can be presented in separate reports.
Reports can be presented as plots, bar charts, pie charts, tower charts, histograms,
surface charts, and other graphic formats. Performance Reporter for MVS and
Tivoli Decision Support for OS/390 simply pass the data and formatting details to
Graphic Data Display Manager (GDDM), which does the rest. Performance
Reporter for MVS and Tivoli Decision Support for OS/390 can also produce line
For details on Performance Reporter for MVS or on Tivoli Decision Support for
OS/390, refer to Performance Reporter for OS/390, System Performance Feature
Reference, Volume 2.
RMF
The Resource Management Facility (RMF) collects system-wide data that describes
the processor activity (WAIT time), I/O activity (channel and device usage), main
storage activity (demand and swap paging statistics) and system resources
manager (SRM) activity (workload).
RMF measures and reports system activity and, in most cases, uses a sampling
technique to collect data. Reporting can be done with one of three monitors:
1. Monitor I measures and reports the use of system resources (that is, the
processor, I/O devices, storage, and data sets on which a job can enqueue
during its execution). It runs in the background and measures data over a time
period. Reports can be printed immediately after the end of the measurement
interval, or the data can be stored in SMF records and printed later with the
RMF postprocessor. The RMF postprocessor can be used to generate reports for
exceptions: conditions where user-specified values are exceeded.
2. Monitor II, like Monitor I, measures and reports the use of system resources. It
runs in the background under TSO or on a console. It provides snapshot
reports about resource usage, and also allows data to be stored in SMF records.
The RMF postprocessor can be used to generate exception reports.
3. Monitor III primarily measures the contention for system resources and the
delay of jobs that such contention causes. It collects and reports the data in real
time at a display station, with optional printed copy backup of individual
displays. Monitor III can also provide exception reports, but its data cannot be
stored in SMF records.
RMF should be active in the system 24 hours a day. Run it at a dispatching priority
above other address spaces in the system so that:
v The reports are written at the interval requested
v Other work is not delayed because of locks held by RMF.
A report is generated at the time interval specified by the installation. The largest
system overhead of RMF occurs during the report generation: the shorter the
interval between reports, the larger the burden on the system. An interval of 60
minutes is recommended for normal operation. When you are addressing a specific
problem, reduce the time interval to 10 or 15 minutes. The RMF records can be
directed to the SMF data sets with the NOREPORT and RECORD options; the
report overhead is not incurred, and the SMF records can be formatted later.
For details on RMF Version 4, see MVS/ESA Resource Measurement Facility™ (RMF)
Version 4 Program Summary and MVS/ESA Resource Measurement Facility (RMF)
General Information.
ACF/VTAM
ACF/VTAM (program number 5735-RC2) provides information about buffer usage
either to GTF in SMF trace data or to the system console through DISPLAY and
BFRUSE commands. Other tuning statistics can also be recorded on the system
console through the MODIFY procname, TNSTAT command. (This command is
described in ACF/VTAM Diagnostic Techniques.)
Performance information for the JCC subtask can be obtained from the
SYSOUT-archiving exit (EQQUX005).
System resources
As with any application, resources are used by IBM Workload Scheduler for z/OS
to accomplish the required work. This section introduces the key resources and
discusses the performance ramifications of each related to an interactive workload
in the IBM Workload Scheduler for z/OS product. The key resources are I/O time,
processor, and storage.
I/O activity
Input/output operations are generally the most significant factor in any
performance equation. A reduction of I/O, either real or physical, often generates
the most significant payback in any tuning exercise.
Many techniques are available to both eliminate I/O and to achieve optimum
performance for physical I/O. Some of those techniques are discussed in this book.
If you have a very high workload, consider any performance enhancing options,
either hardware or software, available to you. However, we recommend you do
not use software that alters the physical organization of a data set, because this can
have detrimental effects on your IBM Workload Scheduler for z/OS data and
availability.
The number of real I/Os can be reduced by removing any unnecessary processing
and modifying VSAM cluster definitions.
The duration of a physical I/O is very dependent on the performance of the I/O
subsystem, which is influenced greatly by careful placement of data to reduce
channel, path, and control unit contention.
Chapter 15, “Tuning the controller, the tracker, and the TCP/IP server,” on page
379 contains further recommendations more specific to either the tracker or the
controller, many of which also result in the removal of unnecessary processing.
If you submit a very high number of computer operations every day (greater than
50 000) and you have solid-state devices, consider placing the JCL repository
(EQQJS1DS and EQQJS2DS) and any submit/release data sets (EQQSUDS) on such
devices.
Processor
Normally, the amount of processor power is not the most significant factor in IBM
Workload Scheduler for z/OS performance.
Of course, no matter what the power of the processor, if most of the processor is
normally busy, then the processor can be the most critical resource for any
application. In such a case, you can help IBM Workload Scheduler for z/OS get
access to the processor resource by giving it higher dispatching priority. This might
not be a serious impact on lower priority users, because in most cases, IBM
Workload Scheduler for z/OS needs the processor frequently, but does not need it
very much. The IBM Workload Scheduler for z/OS subsystems should have a
priority just below that of the JES subsystem.
Processor storage
Some amount of paging and swapping is normal for systems that serve a lot of
users, or have a significant amount of data in virtual storage. The impact on your
system performance from this activity is not normally severe. The few more I/O
operations per transaction for paging and swapping are not usually a significant
increase on the I/O that would be required without paging and swapping.
If performance is important, define the IBM Workload Scheduler for z/OS address
spaces as non-swappable.
The virtual storage of a processor may far exceed the size of central storage
available in the configuration. Any excess must be maintained in auxiliary storage
(DASD), or in expanded storage. This virtual storage occurs in blocks of addresses
called pages. Only the most recently referenced pages of virtual storage are
assigned to occupy blocks of physical central storage. When reference is made to a
page of virtual storage that is not currently in central storage, the page is brought
in from DASD or expanded storage to replace a page in central storage that is not
in use and is least recently used. The newly referenced page is said to have been
paged in. The displaced page may need to be paged out if it has been changed.
IBM Workload Scheduler for z/OS uses a significant amount of virtual storage,
both in the controller address space and by the batch programs that create the
current plans.
The local shared resources (LSR) buffering technique is used by IBM Workload
Scheduler for z/OS for the current plan data set; a percentage of the current plan
determined by the CPDTLIM keyword on the OPCOPTS statement is kept in LSR
buffers above the 16-megabyte line. These LSR buffers are deleted and rebuilt at
every current plan backup to ensure that the percentage of the plan that you want
is always in storage.
Paging problems
The page-in rate is of primary concern, because page-in activity occurs
synchronously (that is, a z/OS task stops until the page fault is resolved). Page-out
activity overlaps with IBM Workload Scheduler for z/OS processing, so it does not
appreciably affect throughput.
A page-in from expanded storage incurs only a small processor usage cost but a
page-in from DASD incurs a time cost for the physical I/O and a more significant
increase in processor usage.
Thus, extra DASD page-in activity slows down the rate at which transactions are
processed by the controller. If you suspect that a performance problem is related to
excessive paging, you can use RMF to obtain the paging rates.
This provides good performance when running sizeable queries on the plan, but if
you are worried about the memory consumption (for example, 300 concurrent
users will consume 19MB of CSA), you can reduce to 32KB the size of the memory
blocks. To do this, specify NO for the LARGEUSERBUFFER keyword of the
JTOPTS initialization statement.
Ensure you review the recommendations in Chapter 14, “Basic tuning activities,”
on page 371 before implementing any recommendations in this chapter.
Job submission
This section helps you to understand the job submission process and identifies
tuning activities.
Recommendations
Consider these recommendations:
v Use the EQQUX002 exit to locate the JCL in cases where there are many libraries
concatenated on EQQJBLIB and the target library is predictable, perhaps
according to the workstation name, or jobname, for example.
v Concatenate only libraries of interest to IBM Workload Scheduler for z/OS on
EQQJBLIB. Ensure the libraries are concatenated in frequency order. That is, if
more than 50% of the JCL is stored in one library, that library should be the first
concatenated on EQQJBLIB. If facilities are available, keep the directories for
these libraries in storage.
v Defining FREESPACE on the JCL repository (EQQJS1DS and EQQJS2DS) is
essential.
v Examine the performance of EQQUX001, EQQUX002, and EQQUX013, if used.
The current plan lock is held while the three exits are called, performance is
critical.
v Use VARSUB(SCAN) instead of VARSUB(YES) when JCL tailoring is required.
v If there are often many ready operations to be started, consider setting a higher
QUEUELEN value. Once the WSA has the lock, submissions are handled very
quickly. A well-tuned system can submit tens of operations per second.
v Examine JES performance, particularly on checkpoint data set, because this
greatly affects the internal-reader submit time.
Job tracking
This section helps you to understand the factors that affect the performance of the
event manager and identifies actions to address those factors. The event manager
subtask is most often a victim of poor performance by other users of the current
plan lock, it is rarely the cause.
The connection method and the tracker's performance are also indicators.
Recommendations
Consider these recommendations:
v Reduce the number of suspended events by lowering ERWAIT time.
v Tune the trackers.
v Eliminate as many trivial events as possible:
– Use STEPEVENTS(ABEND) or STEPEVENTS(NZERO) rather than
STEPEVENTS(ALL).
– Specify PRINTEVENTS(NO) if you do not track print operations.
– Filter the test workload using EQQUX004.
– Filter type 5 events, except those with EXROPCAN, if printing is not of
interest.
v Use NCF or XCF connections rather than starting event readers. When you use
NCF or XCF for communications, be sure to use the EWSEQNO option in the
EWTROPTS initialization statement. Starting a specific event reader task in the
tracker is not required and dramatically increases I/O to the event data set and
more importantly the path length for an event to reach the controller.
v Ensure EQQUX007 is performing well, if used. The current plan lock is held
when the exit is taken.
Dialog response
This section helps you to understand the factors that affect the performance of the
general service subtask and identifies actions to address those factors.
Chapter 15. Tuning the controller, the tracker, and the TCP/IP server 381
v Specific request types that initiate network scans. For example, modifying a
dependency in the MCP dialog.
v Poor construction of list requests resulting in sequential searches of the current
plan data set.
v Time taken to search the ISPxLIB concatenation for panels, messages, load
modules.
Recommendations
Consider these recommendations:
v Use GSTASK(5), the maximum value to increase parallelism for dialog requests.
v Use FASTPATH=Y for job name table searches on panels 6.3 and 5.3.
v Choose to traverse the network for dependency loops only when the change is
stored, rather than on the panel where you define the dependency and also
when the change is stored, When external dependencies are modified in the
current plan. Use DEP CHECK=N in the MCP dependency panels to remove the
network scan on that panel.
v Consider using LIBDEFs for the ISPF allocations if there are many libraries
already concatenated on ISPxLIB.
v Consider moving EQQMINOM, EQQXDSPX and EQQXTBLX into an LPA
library. These modules are loaded by dialog users every time they enter an
option from the IBM Workload Scheduler for z/OS main menu.
v Determine when to use and when not to use generics, avoid using generic
characters in the first position of a field. Study the key structure of the current
plan records.
v Eliminate much of the active monitoring of operations in the current plan by
using the automatic alert functions provided by IBM Workload Scheduler for
z/OS.
Recommendations
Consider these recommendations:
v Use half-track blocking as much as possible
v Add VSAM buffers through JCL AMP statements for clusters that are not
processed using the LSR buffering technique.
| v Consider using Batch LSR on the EQQADDS, EQQWSDS, and EQQRDDS data
| sets for long-term and daily planning batch processing. If you use Batch LSR on
| those data sets, it is not required that you specify the value 1, 2, or 3 for the
| SHRPOOL identifier.
v Perform general z/OS tuning: examine swap rates, dispatching priorities, the
UIC, and especially demand paging rates. Reduce demand paging if possible, or
consider moving the daily planning batch jobs to a processor with more real
storage, in the same GRS ring as the controller, if one is available.
Recommendations
Consider these recommendations:
v Do not use STEPEVENTS(ALL) unless you use the auto recovery function and
are interested if a step was flushed.
v Do not specify PRINTEVENTS(YES) unless you are interested in tracking print
operations, or disable exit IEFU83 for print events if you are using JES2.
v Filter the testing workload using EQQUX004.
v Consider filtering type 5 events, except those with EXROPCAN on if you do not
specify PRTCOMPLETE(YES).
v Ensure there is sufficient ECSA defined for the event writer queue to handle
peak processing, and the occasional hardware reserve.
Chapter 15. Tuning the controller, the tracker, and the TCP/IP server 383
v Do not HSM manage the event data set, do not place the event data set on a
volume where you take full-volume backups.
v See Planning and Installation for recommendations on calculating the logical
record length of the event data set when the restart and cleanup function is
used.
v Examine JCC and restart and cleanup tuning recommendations.
JCC
When the JCC function is used, the success or failure of an operation cannot be
determined by the controller until the JCC task has processed the output on the
JES spool. The JCC checks every line of SYSOUT against tables defining conditions
to be detected.
Performance in the JCC is influenced primarily by JES performance and also by the
size of the job logs.
Recommendations
Consider these recommendations:
v If you currently route all output for JCC processing to one system in your
configuration, consider checking the output on the system where the job ran to
balance the JCC workload among the available processors. The JCC task cannot
process multiple jobs in parallel.
v Remove unnecessary JCC processing:
– Detection of nonzero return codes, use NOERROR instead.
– Trapping NOT CATLG x, use z/OS to fail the job on step end.
– SKIP sections of the output where you cannot possibly match a condition
defined in the messages tables.
– Avoid scanning user SYSOUT data sets if possible.
On the z/OS system side, you can control how many connection threads can be
open at any given time by appropriately setting the following parameters in the
BPXPRMxx member of SYS1.PARMLIB:
Chapter 15. Tuning the controller, the tracker, and the TCP/IP server 385
386 IBM Workload Scheduler for z/OS: Customization and Tuning
Part 4. Appendixes
IBM Workload Scheduler for z/OS provides these macros that are programming
interfaces:
EQQCASEC
The case-code-list definition macro creates case-code lists in the
case-code-definition module (EQQCASEM). This module is used by the
automatic-recovery function. For more information, see “Creating
case-code-definition modules” on page 323.
EQQJCCT
The JCC message-table macro creates message-table definitions for the job
completion checker. “Defining message tables using EQQJCCT” on page
301 describes the macro.
If you need to change a sample member, copy the source to a separate library. The
original sample member is then available for reference. Also create an SMP/E
usermod for each sample member you execute in the production environment.
Changes to the sample source code are then flagged for your attention, and
subsequent updates can be reflected in the production code as soon as possible.
Table 48. SEQQSAMP library members for customizing and tuning IBM Workload Scheduler for z/OS.
Member Brief description
EQQAIXST Parameters used by the EQQX9AIX and EQQAIXTR samples.
EQQAIXTR Sample tracker running on AIX, used with EQQX9AIX.
EQQAUDIB Sample to invoke EQQAUDIT in batch mode outside of the dialog.
Note: EQQAUDIB can be used successfully only if the EQQTROUT dsname and the EQQAUDIT
output dsn fields in the EQQJOBSA panel are filled out.
EQQBENCO Sample JCL that encrypts the password defined in the OSLCOPTS initialization statement used to
configure IBM Workload Scheduler for z/OS to integrate with OSLC.
EQQBENCR Sample EQQE2EPW JCL to run the utility that encrypts the Windows passwords defined with the
USRPSW parameter of the USRREC statement.
EQQCHKEV Sample JCL to display EQQTWSIN and EQQTWSOU event data set content information.
EQQCLEAN Sample procedure invoking EQQCLEAN program.
EQQCONOP Sample initial parameters for a controller and tracker in the same address space.
EQQCONO Sample started task procedure for controller only.
EQQCONP Sample initial parameters for a controller.
EQQCON Sample started task procedure for a controller and tracker in the same address space.
EQQCVM Sample to enable job-tracking facilities on VM systems.
EQQCVM2 Sample to enable submission and tracking on VM systems using EQQUX009.
EQQDBENC Contains the JCL to encrypt the password in the DBOPT statement
EQQDBOPT Sample DBOPT statement
EQQDELDI Sample JCL to run the EQQDELDS program that deletes data sets based on the disposition
specified in the JCL and the current status in the catalog.
EQQDLFX Assembler installation sample of DLF connect/disconnect exit.
EQQDPX01 DP batch sample user exit to update Scheduling Environment.
EQQDSCL Batch Cleanup sample.
EQQDSCLP Batch Cleanup sample parameters.
EQQDSEX Batch Export sample.
EQQDSEXP Batch Export sample parameters.
When IBM Workload Scheduler for z/OS is started it tries, by default, to load the
exits with prefix EQQUX0. You can change the default values by specifying
parameters on the EXITS initialization statement. See “EXITS” on page 57 for more
information about the EXITS statement.
Security is often performed through the RUSER field, but you can also use the exit
to build a LOGONID card if your installation standards require this. You can
determine the submitting user from a variety of sources. These include:
v Job name specified in the JCL
v Job accounting information
v Programmer name field
v Occurrence owner ID
v Occurrence authority group ID.
Job-library-read exit
The job-library-read exit is called when IBM Workload Scheduler for z/OS cannot
find the JCL for a job in the JCL repository data set (EQQJSnDS). By default, IBM
Workload Scheduler for z/OS searches the concatenation of data sets assigned to
the EQQJBLIB ddname in the controller JCL procedure. If you want IBM Workload
Scheduler for z/OS to search other data sets, install EQQUX002 to perform this
function.
Also consider using EQQUX002 to enhance performance if you have many large
partitioned data sets (PDS) concatenated to EQQJBLIB. To find a member in the
last data set of the concatenation, IBM Workload Scheduler for z/OS must read the
directory of all preceding PDSs, which can present a significant overhead. Consider
defining a PDS and a corresponding ddname for each computer workstation.
EQQUX002 can then search a specific library. If no JCL is found, you can let IBM
Workload Scheduler for z/OS search the EQQJBLIB concatenation for the JCL.
Event-filtering exit
The event-filtering exit is called when an IBM Workload Scheduler for z/OS event
writer is about to write an event to the event data set or, where EWSEQNO is
used, add the event to an XCF or NCF queue. In this exit, you can choose to
discard events created by JES and SMF exits, or you can indicate that an event that
would normally be queued to JCC is not processed by the JCC.
This exit is commonly used to change the defined SYSOUT disposition, depending
on the success or failure of the job. Note that EQQUX005 is a tracker exit, although
the success or failure of an operation is ultimately determined by the controller.
Incident-record-create exit
EQQUX006 is called by the job completion checker to build an incident record
when a JCC message table specifies that an incident record should be created. The
EQQUX006 sample supplied with IBM Workload Scheduler for z/OS produces
incident records in one format. But, you can create your own format by replacing
the sample exit with your own version.
The SEQQSAMP member, EQQX6JOB, contains the JCL for the job submitted by
EQQX6ASM. EQQUX006 is a tracker exit, and the success or failure of an
operation is ultimately determined by the controller.
Operation-status-change exit
The operation-status-change exit is called whenever an operation in the current
plan changes status. This exit is often used as an interface to a problem
management system, such as Information Management.
Operation-initiation exit
The operation-initiation exit is called by IBM Workload Scheduler for z/OS when
an operation is ready to be started at a workstation that specifies a user-defined
destination ID. The exit is used to communicate with various operating
environments. Two sample EQQUX009 exits are located in the SEQQSAMP library.
JCL-variable-substitution exit
EQQJVXIT contains an assembler sample of the JCL-variable-substitution exit.
When you define a JCL variable, you can specify the name of an exit that is called
when substitution of the variable is required. The exit can be called at either job
setup or job submission, but is not called for promptable setup-variables. For
System Automation command variables, the exit is invoked at command
submission. You can use the exit to supply the value of a variable.
EQQDELDS/EQQCLEAN catalog-exit
EQQDELDS/EQQCLEAN tries to load the EQQUXCAT exit. If the exit module is
successfully loaded, EQQDELDS/EQQCLEAN calls it before executing the catalog
action for each involved data set. If the exit passes back a return code different
from 0, the action is not executed and a message is logged to identify the skipped
data set. The provided exit sample prevents the deletion of data sets having the
qualifier starting with SYS1.MAC.
The provided exit sample prevents the GDG overwrite action for a job with
jobname MYJOB and the DDNAME is NOSIMDD or GDG data set name starts
with TST.GDG.
Application-description-validation exit
The application-description-validation exit (EQQUXPIF) is called by the PIF to
validate the application description during its update. The SEQQSAMP member,
EQQUXPIF, contains a sample for the validation of the application description
update.
This exit can affect the performance of DP batch. For this reason, it should be used
only when necessary and care should be taken to limit I/O processing (for
example, needed files should be opened and closed at the start and the end of the
exit only).
The exit receives as input from the controller some data identifying the job, to be
used by the exit to decide the appropriate offset to be calculated.
Tracker for VM
The sample library members EQQCVM2, EQQUX9N can be used to create a
tracker for VM operating environments. When installed, the tracker enables you to
schedule an operation on a computer workstation to initiate and track processing
in a VM environment. The request to start the processing is communicated to VM
using NJE. Status is reported back to the controller from VM.
To install an OS/2 tracker based on the samples in your environment, follow these
steps:
v Specify a symbolic destination ID in the USER keyword of the ROUTOPTS
initialization statement.
v Create a computer automatic workstation which specifies the same destination
ID.
v Workstations that specify a user-defined destination are initially set to unknown
status every time the controller is started. You are responsible for setting the
status of the OS/2 workstation to ACTIVE status. You can use the WSSTAT
command, the EQQUSINW subroutine or the IBM Workload Scheduler for z/OS
modify current plan (MCP) dialog. You should consider setting the workstation
to ACTIVE status in EQQUX000, the start/stop exit. The sample library member
EQQUX0N contains a sample EQQUX000 to set workstation status using the
EQQUSINW subroutine.
v Download the EQQOS2TR and EQQOS2ST sample library members to your
OS/2 workstation. EQQOS2TR contains code which executes in OS/2,
EQQOS2ST contains parameters that are passed to EQQOS2TR. The program is
written in REXX and OS/2 command language, instructions for modifying the
code and installing can be found in a comment block in EQQOS2TR.
v The sample library member EQQX9OS2 contains an operation-initiation exit
(EQQUX009), written in assembler, which is loaded by the controller. The exit is
called by the external router subtask when an operation is ready to be started at
a workstation which specifies a user-defined destination ID. You need to update
the sample to define the destination ID and details about the receiving OS/2
workstation.
v Specify EXITS CALL00(YES) LOAD(EQQUX0N) and CALL09(YES) LOAD(EQQX9OS2) for
the controller.
The commands you want to execute in the OS/2 environment can be defined in
EQQJBLIB and sent to OS/2 by the EQQX9OS2, or you can choose to keep the
information only in OS/2. Status of the operation is reported to the controller by
batch jobs executing the EQQEVPGM submitted from the OS/2 tracker.
To install an AIX tracker based on the samples in your environment, follow these
steps:
v Specify a symbolic destination ID in the USER keyword of the ROUTOPTS
initialization statement.
v Create a computer automatic workstation which specifies the same destination
ID.
v Workstations that specify a user-defined destination are initially set to unknown
status every time the controller is started. You are responsible for setting the
status of the AIX workstation to ACTIVE status. You can use the WSSTAT
command, the EQQUSINW subroutine or the IBM Workload Scheduler for z/OS
modify current plan (MCP) dialog. You should consider setting the workstation
to ACTIVE status in EQQUX000, the start/stop exit. The sample library member
EQQUX0N contains a sample EQQUX000 to set workstation status using the
EQQUSINW subroutine.
v Download the EQQAIXTR and EQQAIXST sample library members to your AIX
system. EQQAIXTR contains code which executes in AIX, EQQAIXST contains
parameters that are passed to EQQAIXTR. The program is written in shell script,
instructions for modifying the code and installing can be found in a comment
block in EQQAIXTR.
v The sample library member EQQX9AIX contains an operation-initiation exit
(EQQUX009), written in assembler, which is loaded by the controller. The exit is
called by the external router subtask when an operation is ready to be started at
a workstation which specifies a user-defined destination ID. You need to update
the sample to define the destination ID and details about the receiving AIX
environment.
v Specify EXITS CALL00(YES) LOAD(EQQUX0N) and CALL09(YES) LOAD(EQQX9AIX) for
the controller.
The commands or tasks that you want to execute in the AIX environment can be
defined in EQQJBLIB and sent to AIX by the EQQX9AIX, or you can choose to
keep the information only in the AIX environment. Status of the operation is
reported to the controller by batch jobs executing the EQQEVPGM submitted from
the AIX tracker.
Even if you are not required to create an auditing trail regularly, the report
generated can provide quick answers in determining who in your organization
requested a function that caused some business application to fail, or to trace the
processing of a job that failed and was rerun many times. If your AUDIT
initialization statement specifies all data for JS update requests, you can use the
auditing report to compare against the master JCL to determine exactly which JCL
statements were changed.
| The auditing program reads the JTARC or DBARC data set and the currently open
| EQQJTnn or EQQDBnn in their entirety. Thus the report produced contains almost
| always some amount of obsolete data generated by the old records still visible in
| the open data set and not yet overwritten by new data. Any information appearing
| in the auditing report after this header is old or residual, and you must very
| carefully review timestamps when using it. Note that this old information is also
| included in the statistical information at the end of of the EQQAUDIT report. If
| accurate statistics are required, they can be obtained by generating the report using
| the EQQTROUT dataset (INPUT TRL).
Figure 5, Figure 6 on page 403, and Figure 7 on page 404 show the parts of the
report that you can generate using the auditing package. The level of reporting for
database updates is dependent on the values you specify in the AUDIT
initialization statement.
*****************************************************************
* SAMPLE OPC/ESA AUDIT/DEBUG REPORT *
* P R O G R A M P A R A M E T E R S *
*****************************************************************
* INPUT SOURCE : TRL *
* SEARCH-STRING : *
* START DATE : *
* START TIME : *
* END DATE : *
* END TIME : *
*****************************************************************
****************************************************
* LINES INSERTED BY PROGRAM ARE MARKED ’=====>’ *
* UNKNOWN FIELD VALUES ARE PRINTED AS ’?’ *
* SUMMARY OF SELECTED RECORDS PRINTED ON LAST PAGE *
****************************************************
***************************************************
* *RECORDS * EVENTS *
* E V E N T T Y P E NO * READ *SELECTED*
***************************************************
* DAILY PLAN STATUS RECORD 01 * 000001 * 000000 *
* DAILY PLAN WORK STATIONS 02 * 000010 * 000000 *
* DAILY PLAN OCC/OPER/CONDS 03 * 000020 * 000000 *
* JOB TRACKING START 20 * 000054 * 000054 *
* MANUAL OPERATIONS 23 * 000132 * 000132 *
* MODIFY CURRENT PLAN 24 * 000176 * 000176 *
* OPERATION SCHEDULED 25 * 000049 * 000049 *
* FEEDBACK DATA 28 * 000004 * 000004 *
* AUTOMATIC OPERATIONS 29 * 002327 * 002327 *
* DATA BASE UPDATE 32 * 000263 * 000227 *
* BACKUP LOG RECORD 36 * 000056 * 000056 *
* DATA LOG RECORD * 000056 * 000056 *
* MULTI-RECORD EVENTS * 000006 * 000002 *
***************************************************
************************************************************
* MCP PERFORMANCE * NO OF * E L A P S E D T I M E *
* TYPE OF UPDATE * UPDATES * M I N * M A X * A V G *
************************************************************
* MCP ADD * 000001 * 0.01 * 0.01 * 0.01 *
* MCP MODIFY * 000066 * 0.01 * 0.22 * 0.01 *
* MCP CHANG WS * 000001 * 0.03 * 0.03 * 0.03 *
* MCP VARY WS * 000001 * 0.01 * 0.01 * 0.01 *
************************************************************
LONGEST MCP-EVENTS:
03/09 12.03.00 CP UPDT BY PERTICA MCP MODIFY 0.22SEC APPL: APPLPLUGINS IA: 110224 1210 PRTY: 5
03/11 11.47.49 CP UPDT BY PERTICA MCP MODIFY 0.07SEC APPL: APPLCPU1 IA: 110224 1111 PRTY: 5
03/09 16.39.22 CP UPDT BY PERTICA MCP MODIFY 0.05SEC APPL: APPLPLUGINS IA: 110224 1210 PRTY: 5
The sample provides an additional row command, Q, that you can use on the
ended-in-error list panel. This command takes you into ISPF option 3.8. You can
view output only on the JES spool of the system where the controller is started.
The ability to view, print, and delete the output for failed jobs directly from the
IBM Workload Scheduler for z/OS dialog creates a more integrated environment
for those operators responsible for restart and recovery functions.
The EXEC is written as a general NetView command list and can be started by an
operator. The EXEC will require slight modification if you want to use it as a
MESSAGE AUTOMATION command list.
The PL/I program calls the EQQUSINT module to change the status of an
operation in the current plan.
You can insert code to interpret the WTO so that some action is taken by NetView
before the call to EQQEVPGM.
Hiperbatch is a z/OS performance enhancement that works with DLF to let batch
jobs and started tasks share an in-storage copy of a data set, or data object. You
can use IBM Workload Scheduler for z/OS to control connection to the DLF object
and to purge the object when IBM Workload Scheduler for z/OS determines that
no further operations in the current plan require access to the data. IBM Workload
Scheduler for z/OS initiates purge processing if the data object will not be used by
the immediate successor operation, or other ready operations.
IBM Workload Scheduler for z/OS initiates purge processing also for operations
that have ended in error, unless the keep on error value specifies that the resources
allocated to the operations must be kept.
Note: Data sets are not deleted if they are referenced in a previous step with or in
the same step with DISP different from NEW, unless DELLOGIC is set to 2. Data
sets defined with indirect or symbolic VOLSER are not deleted by IDCAMS.
DELETE only uncatalogs the data set; it does not delete the data set from the
SYSRES volume, even if SCRATCH is specified.
You can use EQQDELDS to avoid not catlgd 2 situations. EQQDELDS cannot run
concurrently with subsequent steps of the job in which it is inserted. Therefore, if
Smartbatch is active, define EQQDELDS with ACTION=BYPASS in the Smartbatch
user control facility.
EQQDELDS logs all actions performed in text lines written to the SYSPRINT DD.
You can use the EQQUX001 exit to automatically add an EQQDELDS step to all
jobs submitted by IBM Workload Scheduler for z/OS.
See also Limitation on the number of job steps in IBM Workload Scheduler for z/OS:
Managing the Workload.
Miscellaneous samples
Besides the samples already described, the SEQQSAMP library also contains
samples for:
v Job-tracking capabilities on VM systems (member EQQCVM)
v JCC message-table coding (member EQQJCCTB).
The group applications, as well as other applications, can be modified via the
batchloader control statements. The sequential file can thereafter be used as input
to the batchloader run.
Before running the job, you need to customize it with correct values for the job
card name, data set names, subsystem name, and so on.
IBM may not offer the products, services, or features discussed in this document in
other countries. Consult your local IBM representative for information on the
products and services currently available in your area. Any reference to an IBM
product, program, or service is not intended to state or imply that only that IBM
product, program, or service may be used. Any functionally equivalent product,
program, or service that does not infringe any IBM intellectual property right may
be used instead. However, it is the user's responsibility to evaluate and verify the
operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter
described in this document. The furnishing of this document does not grant you
any license to these patents. You can send license inquiries, in writing, to:
IBM may use or distribute any of the information you provide in any way it
believes appropriate without incurring any obligation to you.
Licensees of this program who wish to have information about it for the purpose
of enabling: (i) the exchange of information between independently created
programs and other programs (including this one) and (ii) the mutual use of the
information which has been exchanged, should contact:
The licensed program described in this document and all licensed material
available for it are provided by IBM under terms of the IBM Customer Agreement,
IBM International Program License Agreement or any equivalent agreement
between us.
This information is for planning purposes only. The information herein is subject to
change before the products described become available.
This information contains examples of data and reports used in daily business
operations. To illustrate them as completely as possible, the examples include the
names of individuals, companies, brands, and products. All of these names are
fictitious and any similarity to actual people or business enterprises is entirely
coincidental.
COPYRIGHT LICENSE:
Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of
International Business Machines Corp., registered in many jurisdictions worldwide.
Other product and service names might be trademarks of IBM or other companies.
A current list of IBM trademarks is available on the web at "Copyright and
trademark information" at www.ibm.com/legal/copytrade.shtml.
Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered
trademarks or trademarks of Adobe Systems Incorporated in the United States,
and/or other countries.
Linear Tape-Open, LTO, the LTO Logo, Ultrium, and the Ultrium logo are
trademarks of HP, IBM Corp. and Quantum in the U.S. and other countries.
Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo,
Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or
registered trademarks of Intel Corporation or its subsidiaries in the United States
and other countries.
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of
Microsoft Corporation in the United States, other countries, or both.
Java and all Java-based trademarks and logos are trademarks or registered
trademarks of Oracle and/or its affiliates.
UNIX is a registered trademark of The Open Group in the United States and other
countries.
Notices 411
Applicability
These terms and conditions are in addition to any terms of use for the IBM
website.
Personal use
You may reproduce these publications for your personal, noncommercial use
provided that all proprietary notices are preserved. You may not distribute, display
or make derivative work of these publications, or any portion thereof, without the
express consent of IBM.
Commercial use
You may reproduce, distribute and display these publications solely within your
enterprise provided that all proprietary notices are preserved. You may not make
derivative works of these publications, or reproduce, distribute or display these
publications or any portion thereof outside your enterprise, without the express
consent of IBM.
Rights
IBM reserves the right to withdraw the permissions granted herein whenever, in its
discretion, the use of the publications is detrimental to its interest or, as
determined by IBM, the above instructions are not being properly followed.
You may not download, export or re-export this information except in full
compliance with all applicable laws and regulations, including all United States
export laws and regulations.
Index 415
DSTOPTS initialization statement EQQCKPT (checkpoint data set), EQQPARM (parameter library)
(continued) recovery 341 (continued)
MAXSYSL keyword 46 EQQCP1DS (primary current plan data identifying related statements
MAXUNPAGES keyword 47 set) (continued)
NWRITER keyword 47 recovery 331 determining success or failure of a
QTIMEOUT keyword 47 from LTP 339 job 173
RETRYCOUNTER keyword 47 from new current plan 340 extended auditing 172
SMSMODDELETE keyword 47 EQQCP2DS (alternate current plan data output processing 178
SYSDEST keyword 48 set) performance 176
WINTERVAL keyword 48 recovery 331 recovery 174
DSTOPTS initialization statements from LTP 339 reporting 177
FAILDEST keyword 45 from new current plan 340 restart and cleanup 174
HDRJOBNAME keyword 45 EQQCXDS (current plan extension data RODM 177
HDRPROCNAME keyword 45 set) security 171
HDRSTEPLENGTH keyword 45 recovery 331 workload restart 175
STORESTRUCMETHOD keyword 47 from new current plan 340 overview 4
STOUNSD keyword 48 EQQDELDS (deleting data sets), selecting statements 4
DSTPORTNUMBER, keyword of sample 406 storing the statements 4
TCPOPTS 160 EQQDLnn (dual job-tracking-log data EQQQ515W special resource contention
DSTRMM, keyword of RCLOPTS 134 set), recovery 341 message 139
DSTUTIL initialization statement EQQDPUE1 (daily planning report EQQRDDS (resource description data
definition 48 exit) 261 set), recovery 337
DELUNSTR keyword 49 EQQEVDS (event data set), recovery 342 EQQSIDS (side information data set),
EXPUNSTR keyword 50 EQQGJCCT (JCC general message recovery 337
IMPORTSTR keyword 50 table) 299 EQQSUDS (submit/release data set),
RECOVER keyword 50 EQQHTTP0 (event data set), recovery 343
DUAL, keyword of JTOPTS 83 recovery 342 EQQTWSIN (input event data set),
DUMMYLASTSTEP, keyword of EQQJCCT (JCC message-table recovery 342
RCLOPTS 134 macro) 301, 389 EQQTWSOU (output event data set),
Dynamic Workload Console creating a general message table, recovery 342
accessibility xi example 305 EQQUSIN subroutine 275
DYNAMICADD, keyword of examples of coding 303 APP buffer section 276
BATCHOPT 24 how to use 301 APPDAT buffer section 282
DYNAMICADD, keyword of EQQJCLIB (JCC message table data APPFLD buffer section 281
RESOPTS 139 set) 299 APPOBJ buffer section 278
DYNAMICDEL, keyword of EQQJOBS 309 APPSEL buffer section 280
BATCHOPT 25 EQQJSnDS (JCL repository data set), APPVAL buffer section 281
DYNONCOMPLETE, keyword of recovery 338 buffer sections 276
RESOPTS 141 EQQJTARC (job-tracking-archive data reason codes 289
set), recovery 341 return codes 289
EQQJTnn (job-tracking-log data set), samples of 394
E recovery 340
EQQLTBKP (long-term plan backup data
selecting objects
BACKUP_EVENT 285
E2EOSEQ keyword of OPCOPTS 116
set), use in recovery 338 CP_OPER_EVENT 282
education xii
EQQLTBKP (long-term-plan backup data CP_OPINFO_EVENT 284
ENABLEFIPS, keyword of
set), use in recovery 330 CP_SR_EVENT 284
BKPTOPTS 35
EQQLTDS (long-term plan data set), CP_WS_EVENT 285
ENABLEFIPS, keyword of
recovery 338 updating objects
HTTPOPTS 62
EQQNCPDS (new current plan data set) CP_OPER_EVENT 286
ENABLEFIPS, keyword of
recovery CP_OPINFO_EVENT 288
TCPOPTS 160
from LTP 339 CP_SR_EVENT 287
ended-in-error list
use in recovery 331, 340 CP_WS_EVENT 288
sample to view output 404
EQQNCXDS (new current plan extension EQQUSINB subroutine 290
ended-in-error-list layout table 319
data set) EQQUSINO subroutine 291
ENDTIME, keyword of AROPTS 12
recovery EQQUSINS subroutine 293
EQQADDS (application description data
from LTP 339 EQQUSINT subroutine 294
set)
use in recovery 331, 340 EQQUSINW subroutine 296
recovery 337
EQQOIDS (operator instruction data set), EQQUX000 (start/stop exit)
EQQCASEC (case-code-list definition
recovery 337 introduction 220
macro)
EQQPARM (parameter library) sample of 394
creating modules 323
creating the statements 3 EQQUX001 (job-submit exit)
description 389
identifying related statements 169 introduction 221
EXCLUDECC keyword 13
auditing 172 sample of 395
EQQCASEM (case-code-definition
automatic job recovery 175 EQQUX002 (job-library-read exit)
module)
configuration 170 introduction 226
creating modules 323
data store job log retrieval 175 sample of 395
EXCLUDECC 13
Index 417
heterogeneous systems, controlling Information Management initialization statements (continued)
(continued) interface via EQQUX007 238 BATCHOPT (continued)
operation-initiation exit INIT initialization statement DB2SYSTEM keyword 24
(EQQUX009) 267 ADOICHK keyword 68 definition 21
VM, event reporting 269 CALENDAR keyword 69 DPALG keyword 24
HIGHDATE, keyword of INIT 69 CWBASE keyword 69 DPROUT keyword 24
HIGHRC, keyword of JTOPTS 85 definition 67 DYNAMICADD keyword 24
Hiperbatch example of 71 DYNAMICDEL keyword 25
installing 320 HIGHDATE keyword 69 example of 32
sample 405 OIWSNAME keyword 70 GTABLE keyword 26
HOLDJOB, keyword of EWTROPTS 53 REMHOSTNAME keyword 70 HDRS keyword 26
HOSTCON, keyword of DSTOPTS 46 REMPORTNUMBER keyword 70 IGNOREDEADL keyword 26
HOSTCON, keyword of TRROPTS 165 SUBSYS keyword 70 JRUNHISTORY keyword 26
HOSTJSUB, keyword of JTOPTS 85 TRACE keyword 70 KEEPCOMPDEPS keyword 27
HOSTNAME, keyword of USRLEV keyword 70 LOGID keyword 27
BKPTOPTS 35 VERADGRD keyword 70 LTPDEPRES keyword 27
HOSTNAME, keyword of VERSRWSN keyword 71 LTPREMSHIFT keyword 28
HTTPOPTS 63 initialization statements MAXHISTORYROWS
HOSTNAME, keyword of TCPOPTS 160 ALERTS keyword 28
HTTP|HTTPS, keyword of definition 7 MAXOCCNUM keyword 28
ROUTOPTS 149 example of 10 NCPTROUT keyword 29
HTTPOPTS initialization statement GENALERT keyword 8 OCPTROUT keyword 29
CLNTHREADNUM keyword 62 MLOG keyword 8 OPERDALL keyword 29
CONNTIMEOUT keyword 62 MONALERT keyword 8 OPERHISTORY keyword 29
definition 61 MONOPER keyword 8 OPERIALL keyword 29
ENABLEFIPS keyword 62 RECEIVERID keyword 8 PAGESIZE keyword 30
HOSTNAME keyword 63 WTO keyword 9 PLANHOUR keyword 30
JLOGHDRTEMPL keyword 63 AROPTS PREDWS keyword 30
JLOGTHREADNUM keyword 63 AUTHUSER keyword 12 PREVRES keyword 30
JOBLOGMAXLINES keyword 63 definition 11 RCLEANUP keyword 30
JOBLOGRETRIEVAL keyword 63 ENDTIME keyword 12 REMDSREC keyword 30
JOBLOGSECTION keyword 64 example of 13 RETAINBIND keyword 31
OUTPUTCOLLECTOR keyword 64 EXCLUDECC keyword 13 RETAINOPER keyword 31
PULSEIVL keyword 64 EXCLUDERC keyword 13 SUBSYS keyword 31
SRVPORTNUMBER keyword 63 PREDWS keyword 13 SUCCWS keyword 31
SRVTHREADNUM keyword 64 STARTTIME keyword 13 TIMEDEPCHK keyword 31
SSLAUTHMODE keyword 65 USERREQ keyword 13 TPLGYPRM keyword 32
SSLAUTHSTRING keyword 65 AUDIT VALEACTION keyword 32
SSLKEYRING keyword 65 ACCESS keyword 15 BKPTOPTS
SSLKEYRINGPSW keyword 65 AMOUNT keyword 15 CHECKROLE keyword 34
SSLKEYRINGTYPE keyword 65 definition 14 CONNTIMEOUT keyword 34
SSLPORT keyword 65 example of 16 CP1DUMPPROC keyword 35
TCPIPJOBNAME keyword 65 FILE keyword 15 CP1RESTPROC keyword 35
TCPTIMEOUT keyword 65 AUDITCP CP2DUMPPROC keyword 35
VARFAIL keyword 66 CDEPSTATUS keyword 17 CP2RESTPROC keyword 35
VARSUB keyword 66 CDEPSTEPEND keyword 17 definition 33
VARTABLES keyword 66 CONDSTATUS keyword 16 ENABLEFIPS keyword 35
definition 16 example of 37
UNEXPECTEDRC keyword 17 HOSTNAME keyword 35
I AUTHDEF
CLASS keyword 19
KEEPALIVE keyword 35
LOCPORTNUMBER keyword 35
Identifying related initialization-statement
COMMANDn keyword 19 LTPDUMPPROC keyword 35
parameters 169
definition 17 LTPRESTPROC keyword 35
IGNOREDEADL, keyword of
example of 21 NCPDUMPPROC keyword 36
BATCHOPT 26
LISTLOGGING keyword 20 NCPRESTPROC keyword 36
IMMEDLOGIC, keyword of
SUBRESOURCES keyword 20 PEERHOSTNAME keyword 36
RCLOPTS 136
TRACE keyword 21 PEERPORTNUMBER keyword 36
IMPORTSTR, keyword of DSTUTIL 50
BATCHOPT PPEERHTPPORT keyword 36
improving UI communication 87, 376
CALENDAR keyword 22 PPEERHTSPORT keyword 36
INCDSN, keyword of JCCOPTS 75
CHECKSUBSYS keyword 22 SSLAUTHSTRING keyword 36
incident logging, function of JCC 301
CONTROLLERTOKEN SSLKEYSTORE keyword 36
incident-record-create exit (EQQUX006)
keyword 23 SSLKEYSTORPSWE keyword 36
introduction 236
CPDSPACE keyword 23 SSLLEVEL keyword 36, 37
logging function 301
CPTREFRESH keyword 23 TCPIPJOBNAME keyword 37
INCLNAME, keyword of RCLSKIP 138
CRITOPMSGS keyword 24 CPUREC
INCLUDE initialization statement
DATEFORM keyword 24 definition 37
definition 66
DB2AVAIL keyword 24 creating the statements 3
NOERROR keyword 67
Index 419
initialization statements (continued) initialization statements (continued) initialization statements (continued)
JTOPTS (continued) OPCOPTS (continued) RCLOPTS
OPREROUTEDEFAULT MAXHISTORYROWS CLNJOBPX keyword 132
keyword 90 keyword 118 DDALWAYS keyword 132
OPRESTARTDEFAULT MAXSUBJOBS keyword 118 DDNEVER keyword 132
keyword 91 MLOGPROCNAME keyword 118 DDNOREST keyword 132
OUTPUTNODE keyword 91 NCFAPPL keyword 118 DDPRMEM keyword 132
OVERCOMMIT keyword 91 NCFTASK keyword 118 DDPROT keyword 132
PLANSTART keyword 91 NOERRCONCHECK definition 130
PRTCOMPLETE keyword 92 keyword 118 DSNPRMEM keyword 132
QUEUELEN keyword 92 OPCHOST keyword 119 DSNPROT keyword 133
RECCPCOMPL keyword 92 OPERHISTORY keyword 119 DSTDEST keyword 134
RISKCONFIDENCE keyword 92 OSLCPARM keyword 119 DSTRMM keyword 134
SHUTDOWNPOLICY OUTCOL keyword 119 DUMMYLASTSTEP keyword 134
keyword 92 OUTPUTWTRID keyword 119 GDGSIMAUTO keyword 135
SMOOTHING keyword 93 RCLEANUP keyword 120 IMMEDLOGIC keyword 136
STATMSG keyword 94 RCLPASS keyword 120 JOBLOGRETRIEVAL
STEPINFO keyword 95 REAPPLYCOUNT keyword 120 keyword 136
SUBFAILACTION keyword 95 RECOVERY keyword 120 RESTARTINFORETRIEVAL
SUPPRESSACTION keyword 95 REMJCLDIRECTIVES keyword 136
SUPPRESSPOLICY keyword 96 keyword 120 SKIPINCLUDE keyword 136
TRACK keyword 97 RODMPARM keyword 120 STEPLIB keyword 137
TWSJOBNAME keyword 98 RODMTASK keyword 120 STEPRESCHK keyword 137
UX001FAILACTION keyword 99 SAVARFAIL keyword 121 RCLSKIP
WSFAILURE keyword 100 SERVERS keyword 122 definition 137
WSOFFLINE keyword 100 SPIN keyword 122 INCLNAME keyword 138
ZCENJSUB keyword 101 SSCMNAME keyword 122 related
ZCHIGHRC keyword 102 SWITCHMLOGLIM keyword 123 auditing 172
MONOPTS TPLGYSRV keyword 124 automatic job recovery 175
BULKDISC keyword 104 VARFAIL keyword 124 configuration 170
definition 103 VARPROC keyword 124 data store job log retrieval 175
MONHOSTNAME keyword 104 VARSUB keyword 124 determining success or failure of a
MONPORT keyword 104 WAITREL keyword 124 job 173
MONPOL WLM 125 extended auditing 172
definition 104 WLM keyword 125 identifying 169
OPERATION keyword 105 OSLCOPTS output processing 178
NOERROR definition 127 performance 176
definition 106 PASSWORD keyword 127 recovery 174
LIST keyword 107 POLICY keyword 127 reporting 177
OPCOPTS PRIORITY keyword 127 restart and cleanup 174
APPCTASK keyword 112 TDWCURI keyword 127 RODM 177
ARM keyword 112 TKTDESC keyword 128 security 171
ARPARM keyword 112, 113 TKTURI keyword 128 workload restart 175
AUTOMATIONMSG USER keyword 128 RESOPTS
keyword 113 USERFLD keyword 128 CONTENTIONTIME
BUILDSSX keyword 113 OUCOPTS keyword 139
CODEPAGE keyword 113 definition 128 definition 138
CONTROLLERTOKEN OUTOPTS DYNAMICADD keyword 139
keyword 115 CNTPARMS keyword 129 DYNONCOMPLETE
CPBPLIM keyword 115 JESCLASS keyword 129 keyword 141
CPDTLIM keyword 115 MAXSOCKETFORDEST example of 142
DB2SYSTEM keyword 115 keyword 129 LOOKAHEAD keyword 141
definition 110 MAXTHREADSPOOL ONCOMPLETE keyword 141
E2EOSEQ keyword 116 keyword 129 ONERROR keyword 142
ERDRPARM keyword 116 MINTHREADSPOOL RESOURCE
ERDRTASK keyword 116 keyword 129 definition 143
EWTRPARM keyword 116 RETAINPEND keyword 129 example of 143
EWTRTASK keyword 116 SUBSYS keyword 129 FILTER keyword 143
example of 126 WRITER keyword 129 RODMOPTS
EXIT01SZ keyword 116 parameter library (EQQPARM) 4 definition 143
EXTMON keyword 117 parameter library (EQQYPARM) 4 DESTINATION keyword 144
GMTOFFSET keyword 117 RCLDDP example of 146
GSTASK keyword 117 DDNAME keyword 130 OPCFIELD keyword 144
GTABLE keyword 117 definition 130 OPCRESOURCE keyword 145
JCCPARM keyword 117 RCLDSNP RODMCLASS keyword 145
JCCTASK keyword 117 definition 130 RODMFIELD keyword 145
DSNAME keyword 130 RODMLOST keyword 145
Index 421
JTOPTS initialization statement
(continued)
M NCPRESTPROC
keyword of BKPTOPTS 36
PRTCOMPLETE keyword 92 macros NCPTROUT, keyword of
QUEUELEN keyword 92 EQQCASEC (case-code-list definition BATCHOPT 29
RECCPCOMPL keyword 92 macro) 389 NetView
RISKCONFIDENCE keyword 92 creating 323 interface to OPC 7
SHUTDOWNPOLICY keyword 92 EXCLUDECC 13 interface via EQQUX007 238
SMOOTHING keyword 93 EQQJCCT (JCC message-table macro) samples 405
STATMSG keyword 94 appendix 389 NEWOILIMIT, keyword of JTOPTS 89
STEPINFO keyword 95 definition 301 NOERRCONCHECK, keyword of
SUBFAILACTION keyword 95 master console information OPCOPTS 118
SUPPRESSACTION keyword 95 messages 317 NOERROR initialization statement
SUPPRESSPOLICY keyword 96 MAXDELAY, keyword of JCCOPTS 75 definition 106
TRACK keyword 97 MAXHISTORYROWS, keyword of LIST keyword 107
TWSJOBNAME keyword 98 BATCHOPT 28 NOERROR, keyword of INCLUDE 67
UX001FAILACTION keyword 99 MAXHISTORYROWS, keyword of NOERROR, keyword of JTOPTS 89
WSFAILURE keyword 100 OPCOPTS 118 NWRITER, keyword of DSTOPTS 47
WSOFFLINE keyword 100 MAXJSFILE, keyword of JTOPTS 88
ZCENJSUB keyword 101 MAXMVSPAGES, keyword of
DSTOPTS 46
ZCHIGHRC keyword 102
MAXOCCNUM, keyword of O
BATCHOPT 28 OCPTROUT, keyword of
MAXOCCNUM, keyword of JTOPTS 88 BATCHOPT 29
K MAXSOCKETFORDEST, keyword of OFFDELAY, keyword of JTOPTS 89
KEEPALIVE OUTOPTS 129 OIWSNAME, keyword of INIT 70
keyword of BKPTOPTS 35 MAXSTOL, keyword of DSTOPTS 46 ONCOMPLETE, keyword of
KEEPCOMPDEPS, keyword of MAXSUBJOBS, keyword of RESOPTS 141
BATCHOPT 27 OPCOPTS 118 ONERROR, keyword of RESOPTS 142
MAXSYSL, keyword of DSTOPTS 46 OPC data store
MAXTHREADSPOOL, keyword of importing data from a backup
L OUTOPTS 129 file 348
initialization statements 315
LARGEUSERBUFFER, keyword of MAXUNPAGES, keyword of
DSTOPTS 47 initializing VSAM
JTOPTS 87, 376
MCPDATASPACE, keyword of primary index 313
libraries
JTOPTS 89 secondary index 314
sample (SEQQSAMP) 391
MEMBER, keyword of XCFOPTS 167 recovering from failure 349
LIMFDBK, keyword of JTOPTS 87
message-table macro (EQQJCCT), VSAM
LIST, keyword of NOERROR 107
JCC 301 structured data files 311
LISTLOGGING, keyword of
messages OPCFIELD, keyword of
AUTHDEF 20
routing 317 RODMOPTS 144
LOADnn, keyword of EXITS 58
MINTHREADSPOOL, keyword of OPCHOST, keyword of OPCOPTS 119
LOCPORTNUMBER
OUTOPTS 129 OPCOPTS initialization statement
keyword of BKPTOPTS 35
MLOG, keyword of ALERTS 8 APPCTASK keyword 112
LOGID, keyword of BATCHOPT 27
MLOGPROCNAME, keyword of ARM keyword 112, 119
long-term plan backup data set
OPCOPTS 118 ARPARM keyword 112, 113
(EQQLTBKP)
MONALERT, keyword of ALERTS 8 AUTOMATIONMSG keyword 113
use in recovery 338
MONHOSTNAME, keyword of BUILDSSX keyword 113
long-term plan data set (EQQLTDS)
MONOPTS 104 CODEPAGE keyword 113
recovery 338
MONOPER, keyword of ALERTS 8 CONTROLLERTOKEN keyword 115
long-term-plan backup data set
MONOPTS initialization statement CPBPLIM keyword 115
(EQQLTBKP)
definition 103 CPDTLIM keyword 115
use in recovery 330
MONHOSTNAME keyword 104 DB2SYSTEM keyword 115
LONGDURPOLICY, keyword of
MONOPTS keyword 104 definition 110
DBOPT 41
MONPORT keyword 104 E2EOSEQ keyword 116
LOOKAHEAD initialization statement
MONPOL initialization statement ERDRPARM keyword 116
LOOKAHEAD keyword 141
definition 104 ERDRTASK keyword 116
LOOKAHEAD, keyword of
MONPOL keyword 105 EWTRPARM keyword 116
RESOPTS 141
MONPORT, keyword of MONOPTS 104 EWTRTASK keyword 116
LTPDEPRES, keyword of
example of 126
BATCHOPT 27
EXIT01SZ keyword 116
LTPDUMPPROC
keyword of BKPTOPTS 35 N EXTMON keyword 117
GDGNONST keyword 116
LTPREMSHIFT, keyword of naming standards 188 GMTOFFSET keyword 117
BATCHOPT 28 NCFAPPL, keyword of OPCOPTS 118 GSTASK keyword 117
LTPRESTPROC NCFTASK, keyword of OPCOPTS 118 GTABLE keyword 117
keyword of BKPTOPTS 35 NCPDUMPPROC JCCPARM keyword 117
LUNAME, keyword of INIT 70 keyword of BKPTOPTS 36 JCCTASK keyword 117
MAXHISTORYROWS keyword 118
Index 423
Q Recovery
re-creating the symphony file 345
RISKCONFIDENCE, keyword of
JTOPTS 92
QTIMEOUT, keyword of DSTOPTS 47 recovery and backup of data sets 329 RMF
QUEUELEN, keyword of JTOPTS 92 RECOVERY, keyword of OPCOPTS 120 See Resource Management
RELDDNAME, keyword of Facility 367
ERDROPTS 51 RODM
R REMDSREC, keyword of See Resource Object Data
RACFGROUP, parameter of BATCHOPT 30 Manager 177
USERMAP 156 REMHOSTNAME, keyword of INIT 70 RODM (Resource Object Data
RACROUTE macro 187 REMJCLDIRECTIVES, keyword of Manager) 120
RCLDDP initialization statement OPCOPTS 120 RODMCLASS, keyword of
DDNAME keyword 130 REMPORTNUMBER, keyword of RODMOPTS 145
definition 130 INIT 70 RODMFIELD, keyword of
RCLDSNP initialization statement reporting events 273 RODMOPTS 145
definition 130 broadcasting, RODMLOST, keyword of
DSNAME keyword 130 SUBSYSTEM_NAME 282 RODMOPTS 145
RCLEANUP, keyword of description 273 RODMOBJECT, keyword of
BATCHOPT 30 heterogeneous systems, RODMOPTS 145
RCLEANUP, keyword of OPCOPTS 120 controlling 268 RODMOPTS initialization statement
RCLOPTS initialization statement subroutines definition 143
CLNJOBPX keyword 132 EQQUSIN 275 DESTINATION keyword 144
DDALWAYS keyword 132 EQQUSINB 290 example of 146
DDNEVER keyword 132 EQQUSINO 291 OPCFIELD keyword 144
DDNOREST keyword 132 EQQUSINS 293 OPCRESOURCE keyword 145
DDPRMEM keyword 132 EQQUSINT 294 RODMCLASS keyword 145
DDPROT keyword 132 EQQUSINW 296 RODMFIELD keyword 145
definition 130 general information 274 RODMLOST keyword 145
DSNPRMEM keyword 132 TSO commands RODMOBJECT keyword 145
DSNPROT keyword 133 description 273 RODMSYSTEM keyword 146
DSTDEST keyword 134 VM, controlling 269 TRANSLATE keyword 146
DSTRMM keyword 134 reporting, statements relating to 177 RODMPARM, keyword of
DUMMYLASTSTEP keyword 134 RESOPTS initialization statement OPCOPTS 120
GDGSIMAUTO keyword 135 CONTENTIONTIME keyword 139 RODMRM2XE, keyword of
IMMEDLOGIC keyword 136 definition 138 RCLOPTS 145
JOBLOGRETRIEVAL keyword 136 DYNAMICADD keyword 139 RODMSYSTEM, keyword of
RESTARTINFORETRIEVAL DYNONCOMPLETE keyword 141 RODMOPTS 146
keyword 136 example of 142 RODMTASK, keyword of OPCOPTS 120
RODMRM2XE keyword 145 ONCOMPLETE keyword 141 RODMUSER, keyword of RCLOPTS 146
RODMUSER keyword 146 ONERROR keyword 142 routing messages 317
SKIPINCLUDE keyword 136 RESOURCE initialization statement ROUTOPTS initialization statement
STEPLIB keyword 137 definition 143 DASD keyword 149
STEPRESCHK keyword 137 example of 143 definition 147
RCLPASS, keyword of OPCOPTS 120 FILTER keyword 143 example of 151
RCLSKIP initialization statement Resource Management Facility HTTP|HTTPS keyword 149
definition 137 (RMF) 367 PROXY keyword 149
INCLNAME keyword 138 Resource object data manager PULSE keyword 150
ready-list layout table 319 (RODM) 120, 321 SNA keyword 150
REAPPLYCOUNT, keyword of RODMOPTS 143 TCPIP keyword 150
OPCOPTS 120 Resource Object Data Manager (RODM) USER keyword 151
reason codes RODMPARM 120 XCF keyword 151
EQQUSIN subroutine 289 statements relating to 177
RECCPCOMPL, keyword of JTOPTS 92 restart and cleanup
RECEIVERID, keyword of ALERTS 8 statements relating to 174
RESTARTINFORETRIEVAL, keyword of
S
RECOVER, keyword of DSTUTIL 50 samples (EQQAUDIB)
recovery RCLOPTS 136
auditing package 401
automatic job recovery 175 RETAINBIND keyword of
samples (SEQQSAMP)
controller failure BATCHOPT 31
EQQDELDS (deleting data sets) 406
ALERT notifications 344 RETAINOPER keyword of
EQQUSIN subroutine 394
automatic 344 BATCHOPT 31
EQQUX000 (start/stop exit) 394
data store job log retrieval 175 RETAINPEND, keyword of
EQQUX001 (job-submit exit) 395
disaster recovery planning OUTOPTS 129
EQQUX002 (job-library-read
(DRP) 351, 361 RETCODE keyword of EWTROPTS 55
exit) 395
introduction 347 RETRYCOUNTER, keyword of
EQQUX004 (event-filtering exit) 395
restart and cleanup 174 DSTOPTS 47
EQQUX005 (SYSOUT archiving
statements relating to 174 return codes
exit) 396
system data sets 329 EQQUSIN subroutine 289
EQQUX006 (incident-record-create
workload restart 175 exit) 396
Index 425
tailoring (continued) TRGOPT initialization statement USERMAP, keyword of SERVOPTS 156
messages 317 CODEPAGE keyword 162 USERREQ, keyword of AROPTS 13
miscellaneous 317 definition 162 USRLEV, keyword of INIT 70
panels 319 TRACELEVEL keyword 164 USRREC initialization statement
ready-list layout table 319 WRKDIR keyword 164 definition 166
RODM (Resource Object Data TRKPORTNUMBER, keyword of USYSOUT, keyword of JCCOPTS 76
Manager) 321 TCPOPTS 161 UX001FAILACTION, keyword of
TAKEOVER, keyword of XCFOPTS 167 TRROPTS initialization statement JTOPTS 99
TCP/IP server BKPPHOSTNAME keyword 165
tuning 384 BKPPORTNUMBER keyword 165
TCPDEST, keyword of FLOPTS 59
TCPHOSTNAME, keyword of
definition 164
example of 166
V
VALEACTION, keyword of
TRROPTS 165 HOSTCON keyword 165
BATCHOPT 32
TCPIP, keyword of ROUTOPTS 150 SNAHOST keyword 165
VARFAIL, keyword of HTTPOPTS 66
TCPIPJOBNAME, keyword of TCPHOSTNAME keyword 165
VARFAIL, keyword of OPCOPTS 124
BKPTOPTS 37 TCPPORTNUMBER keyword 166
VARPROC, keyword of OPCOPTS 124
TCPIPJOBNAME, keyword of TSO commands
VARSUB, keyword of HTTPOPTS 66
HTTPOPTS 65 event reporting, description 273
VARSUB, keyword of OPCOPTS 124
TCPIPJOBNAME, keyword of security 198
VARTABLES, keyword of HTTPOPTS 66
TCPOPTS 161 tuning
VERADGRD, keyword of INIT 70
TCPOPTS initialization statement basic activities
VERSRWSN, keyword of INIT 71
CONNTIMEOUT keyword 160 data set placement 374
VM
definition 158 hardware performance
sample tracker 399
DSTPORTNUMBER keyword 160 options 374
VM, controlling with event
ENABLEFIPS keyword 160 I/O activity 371
reporting 269
example of 161 introduction 371
VSAM, measuring performance 369
HOSTNAME keyword 160 paging 376
VTAM, measuring performance 368
SRVPORTNUMBER keyword 160 preventing bottlenecks 377
SSLAUTHSTRING keyword 161 problem indicators 376
SSLKEYSTORE keyword 161 processor 375
SSLKEYSTOREPSW keyword 161 system resources 371 W
SSLLEVEL keyword 160, 161 use of OPC functions 372 WAITREL, keyword of OPCOPTS 124
TCPIPJOBNAME keyword 161 VSAM cluster definitions 372 wastool
TRKPORTNUMBER keyword 161 controller changeSecurityproperty 198
TCPPORTNUMBER, keyword of background batch processing 382 WebSphere Application Server
TRROPTS 166 dialog response 381 user identity 198
TCPTIMEOUT, keyword of introduction 379 WINTERVAL, keyword of DSTOPTS 48
HTTPOPTS 65 job submission 379 WLM, keyword of OPCOPTS 125
TDWCURI, keyword of OSLCOPTS 127 job tracking 380 workload restart
technical training xii performance statements relating to 175
TIMEDEPCHK, keyword of introduction 365 workstation and calendar data set
BATCHOPT 31 measuring 366 (EQQWSDS)
TIMEZONE, keyword of DBOPT 42 obtaining OPC data 369 recovery 336
TKTDESC, keyword of OSLCOPTS 128 RMF (Resource Management WRITER, keyword of OUTOPTS 129
TKTURI, keyword of OSLCOPTS 128 Facility) 367 WRKDIR, keyword of DBOPT 42
TOPOLOGY initialization statement VSAM 369 WRKDIR, keyword of TRGOPT 164
definition 162 VTAM 368 WSFAILURE, keyword of JTOPTS 100
TPLGYPRM, keyword of TCP/IP server 384 WSOFFLINE, keyword of JTOPTS 100
BATCHOPT 32 tracker WTO, keyword of ALERTS 9
TPLGYPRM, keyword of event creation and
SERVOPTS 155 communication 383
TPLGYSRV, keyword of OPCOPTS 124
TRACE
introduction 383
JCC and restart and cleanup 384
X
XCF, keyword of ROUTOPTS 151
keyword of AUTHDEF 21 TWSJOBNAME, keyword of JTOPTS 98
XCFDEST, keyword of FLOPTS 60
keyword of INIT 70
XCFOPTS initialization statement
TRACELEVEL, keyword of DBOPT 42
definition 167
TRACELEVEL, keyword of
TRGOPT 164
U example of 168
UMAXLINE, keyword of JCCOPTS 76 GROUP keyword 167
TRACK, keyword of JTOPTS 97
UNEXPECTEDRC, keyword of MEMBER keyword 167
tracker
AUDITCP 17 TAKEOVER keyword 167
tuning 383
user field 291
tracking jobs and the SUBMIT option 97
user fields
training
technical xii
protecting 199
USER parameter of USERMAP 156
Z
TRANSLATE, keyword of ZCENJSUB, keyword of JTOPTS 101
USER, keyword of OSLCOPTS 128
RODMOPTS 146 ZCHIGHRC, keyword of JTOPTS 102
USER, keyword of ROUTOPTS 151
USERFLD, keyword of OSLCOPTS 128
Printed in USA