AJM User Manual
T-Systems International GmbH Edition 23/10/2003
2
Copyrigh T-Systems International GmbH, Fasanenweg 9, 70771 Leinfelden-Echterdingen, Germany All rights reserved.
Publisher T-Systems International GmbH
Computing Services & Solutions (CSS)/System Products & Solutions (MSY-PS)
Responsible
T-Systems International GmbH Computing Services & Solutions (CSS)/System Products & Solutions (MSY-PS) Fasanenweg 9, 70771 Leinfelden-Echterdingen, Germany [email protected] +49 89/1011-4685
Document information
Name of file
K:\Product_Manuals\DOC\AJM\Save.$AJMBENE\Filial16.$AJMBENE\MASTER.$AJMBENE.doc Version / Revision
This edition relates to AJM version
AJM V3.10 PTF QZ03089
/Word 17
Date 23/10/2003 4:19 PM
Abstract:
This book is also available in Portable Document Format (Acrobat PDF) . It will be delivered with the SDM package.
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
3
Impressum: 1
Document information 2
Table of Content 3
Introduction 13
1 Scenario Job Management 15
2 AJM product family 17
3 Basic Concepts 19
4 Nets 21
4.1 Net Structure / Definition 21
4.2 BYPASS Function 22
4.3 ALTernative Function 23
5 Schedule Criteria 25
5.1 Time Criteria 25
5.2 Event Criteria 28
5.3 Concatenating Criteria 30
AJM Administration Interface 35
6 General Characteristics about Administration Interface 37
6.1 Structure of Administration Interface 37
6.2 Field-Sensitive Information 37
6.3 Selective Display of Information 37
6.4 Optical Preparation of Information 38
6.5 Filter 38
6.6 Jump Commands 38
6.7 Parallel Dialogs 39
7 General Commands 41
7.1 Dialog Interface of AJM 41
7.2 Commands for Querying Help Information 41
7.3 Commands for Terminating Dialogs 41
Table of Content
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
4
7.4 Jump Commands 42
7.5 Commands in Update Mode 43
7.6 Commands for Searching Character Strings 43
7.7 Commands to Change Character Strings 44
7.8 Further Commands 45
8 Main Menu 47
9 Session Options 51
10 News 55
11 The Selection Filter 57
11.1 Overview 57
11.2 The Filter List 57
11.3 Parallel Dialogs 59
11.4 The Filter Definition Panel 60
12 Net / Job Processing 69
12.1 Net List 69 12.1.1 Line Commands in Net List 72
12.1.1.1 Line commands for display and modification of net/job definitions: 72 12.1.1.2 Commands for Modification of Net Status: 73 12.1.1.3 Commands for query of net status: 74 12.1.1.4 Commands for documentation of nets and for invocation of AJM/P specific
functions: 74
12.2 The Net / Job List 75 12.2.1 Line Commands in Net /Job List 81
12.2.1.1 Commands for Maintenance of Job Definitions and JCL 81 12.2.1.2 Commands for Manual Job Control 82 12.2.1.3 Commands for querying job status 84
12.3 Job List 85
12.4 Job and Net Definition 86 12.4.1 Introduction 86 12.4.2 Defining and copying new nets 87 12.4.3 The Net/Job Update Panel 88 12.4.4 Browse and Update Mode 89 12.4.5 Selection of Display 90 12.4.6 Definition of Job Attributes 92
12.4.6.1 "Job-Id" Line 92 12.4.6.2 Standard and temporary JCL 96 12.4.6.3 Definitions for Started Tasks and Jobs on External Systems 97 12.4.6.4 Coupling to a Preparation Dialog (only with AJM/P) 99
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
5
12.4.6.5 Restart and Termination Control 99 12.4.7 The Schedule List 105
12.4.7.1 Properties of Schedule List 105 12.4.7.2 Line Commands with Schedule Criteria 108 12.4.7.3 Internal Predecessor 109 12.4.7.4 External dependency 109 12.4.7.5 Interval 111 12.4.7.6 Daytypes, Daynames and Relative Days 114 12.4.7.7 Time and Date 117 12.4.7.8 Job Variable 120 12.4.7.9 Logical Resource 122 12.4.7.10 DS Trigger 123 12.4.7.11 External Trigger 125
12.5 The Commands SORT and REN(umber) 127
12.6 Job Status Information 127
12.7 Job and Net Statistics 138
12.8 Job and Net Run Forecast 141
12.9 Restart Modification (Manual Restart) 142
12.10 Restart Simulation 146
12.11 Set Preparation Valid Manually 148
12.12 Authorization Check and Logging 149
13 Documentation Function (only with AJM/P) 151
13.1 Documentation of Nets and Jobs 151
13.2 Authorization Check and Logging 153
14 Job Variables 155
14.1 Dialog 155
14.2 Authorization Check and Logging 157
15 Logical Resources 159
15.1 Filter 159
15.2 List of Logical Resources 159
15.3 Authorization Check and Logging 161
16 Dataset Trigger 163
17 JCL Dataset Definitions 165
17.1 Filter 165
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
6
17.2 List of JCL Dataset Definitions 165
17.3 Authorization Check and Logging 167
18 Calendar 169
18.1 Filter 169
18.2 List of Calendars 169
18.3 Update / Browse 171
18.4 Authorization Check and Logging 172
19 Defining External Systems 175
19.1 Menu Selection 175
19.2 Node Definitions 175
19.3 Panel to Create Node Definitions 175
19.4 List of Node Definitions 176
19.5 Update / Browse of Node Definitions 177
19.6 Status Display of a Node Definition 178
19.7 Filter Path Definitions 180
19.8 Panel to Create a Path Definition 181
19.9 List of Path Definitions 181
19.10 Update / Browse of a SAP Path Definition 183
19.11 Update / Browse of a UNIX, WINDOWS Path Definition 184
19.12 Display of Status SAP, Windows and UNIX Path 185
19.13 Filter AJM Agent 185
19.14 Panel for Defining New External Systems (AJM agent) 186
19.15 List of External System Definitions (AJM Agent) 187
19.16 Update / Browse 188
19.17 Display of Status 190
19.18 Authorization Check and Logging 192
20 Logging 195
20.1 Introduction 195
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
7
20.2 Dialog 195
20.3 Log-Format S (Standard) 202
20.4 Log-Format R (Report) 204
20.5 Log-Format L (List) 212
21 Group-specific Statistics 215
21.1 Filter 215
21.2 Statistic Information 215
21.3 Authorization Check and Logging 216
22 Utilities 217
22.1 Restoration of deleted definitions 217
22.2 Cleanup of Definitions 219
22.3 Migration of Definitions (e.g. JES3 nets) 220
External Systems 221
23 External systems 223
23.1 Characteristics 223
23.2 The AJM agent 223
23.3 Coupling to SAP/R3 224
AJM/P 227
24 Introduction AJM/P 229
24.1 Hints on AJM/P 229
24.2 Characteristics of AJM/P 229
24.3 Variables 230 24.3.1 AJM/P Variables 230
24.3.1.1 Types and Properties 230 24.3.1.2 Integration into Preparation Dialog (prompt) 231
24.3.2 Use of ISPF and Job Variables (AJM/J) 231 24.3.3 Overview and Examples for Variables 231 24.3.4 Substitution of Variables in JCL 232
24.4 Important Expressions 233
24.5 Link AJM - AJM/P: 236
25 Defining Preparation Dialogs and Packages 239
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
8
25.1 Filter 239
25.2 List of Preparation Dialogs 240
25.3 Definition of a New Preparation Dialog 241
25.4 Definition of a Preparation Dialog 241 25.4.1 Commands in the "CMD" Line of the Preparation Dialog Panel 242 25.4.2 Selection of Display 242 25.4.3 Descriptions and Properties 243 25.4.4 "Dialog Element" Line and Condition Line 245
25.5 Definition of Dialog Elements 247 25.5.1 Dialog Element DAT - Edit / Browse of Datasets 247 25.5.2 Dialog Element DEL - Deleting of Members 249 25.5.3 Dialog Element FTL - Generating Datasets 250 25.5.4 Dialog Element PNL - Display of ISPF Panels 252 25.5.5 Dialog Element RXX - Call of REXX 252 25.5.6 Dialog Element SET - Variable Setting 254 25.5.7 Dialog Element VAR - Prompt of AJM/P Variables 256
25.6 List of Packages 257
25.7 Define New Package 257
25.8 Definition of a Package 258 25.8.1 Selection of Display 258 25.8.2 The Package Definition Panel 259
25.9 Notes for Creating a Preparation Dialog 260
25.10 Statistics Information on Preparation Dialog 261
25.11 Authorization Check and Logging 261
26 AJM/P Variables 263
26.1 System Variables 263
26.2 Filter 263
26.3 List of AJM/P Variables 265
26.4 Global Variables and Group Variables 266
26.5 Net and Package Variables 268 26.5.1 Selection of Display 268 26.5.2 Variable Name and Description 269 26.5.3 Plausibility Checks and Default Value 269 26.5.4 Texts about Variable 275
26.6 Variable Statistics 277
26.7 Protection of AJM/P Variables 278
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
9
27 AJM/P Dataset Definitions 279
27.1 Filter 279
27.2 List of AJM/P Datasets 279
27.3 Protection of AJM/P Dataset Definitions 281
28 Perform Preparation Dialog 283
28.1 Introduction 283
28.2 Execution 285 28.2.1 Control of Preparation Dialog 287
29 JCL Structure and Treatment 289
29.1 JCL Datasets 289
29.2 AJM-Specific Customizations of JCL 289
29.3 JCL Treatment during Submit 290
30 Variable JCL Design 293
30.1 The JCL Variable AJMIF 293 30.1.1 Action 293 30.1.2 Format 293 30.1.3 Features 293 30.1.4 Example 293
30.2 JCL Variable AJMIMBED 294 30.2.1 Action 294 30.2.2 Format 294 30.2.3 Features 294 30.2.4 Examples 294
30.3 The JCL Model Function (%AJMMODL) 295 30.3.1 Action 295 30.3.2 Format 295
31 AJM Variables 297
31.1 Time Variable (%TIME) 297 31.1.1 Examples for substitution of time variables: 298
31.2 Date Variable (%DATE) 299 31.2.1 Examples for substitution of date variables: 300
31.3 Date Variable with Calendar Reference (%CDATE) 300 31.3.1 Parameter "date selection" (what?) 302
31.3.1.1 Subparameter "B(value)" 302 31.3.1.2 Subparameter "relative expression" 303
31.3.2 Parameter "format" (how?) 304 31.3.2.1 Keywords analogously to %DATE: 305
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
10
31.3.2.2 Keywords without calendar reference: 305 31.3.2.3 Keywords with calendar reference: 305
31.3.3 Parameter "text module" 306 31.3.4 Examples 307
31.4 Contents of Job Variables (%JV) 307
31.5 Contents of SEM Variables (%SEM) 308
31.6 Group Name Variable (%AJMGRP) 309
31.7 Netname Variable (%AJMNET) 310
31.8 Jobname Variable (%AJMJOB) 310
31.9 Calendar Name Variable (%AJMCAL) 311
31.10 Formatting Variable (%SP) 312
31.11 Nesting of AJM Variables 313
32 Termination Code - Control 317
32.1 Termination Codes 317
32.2 Actions 318
32.3 Optional Actions 319
33 Restart / Recovery Functionality 321
33.1 Restart Attribute 321
33.2 Restart Unit 322
33.3 Automatic Restart 323
33.4 Manual Restart 323
34 Operation Mode of the Scheduler 325
34.1 Schedule Cycle 325
34.2 The Check Logic for Schedule Lists 326
34.3 Schedule Condition Interval 329
34.4 Handling of Schedule Lists LATE 329
34.5 Selection of Recovery Nets and External Nets 330
34.6 Handling of Restarts 330
34.7 Net Run 331 34.7.1 Definition and Properties 331
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
11
34.7.2 Beginning of Net 331 34.7.3 End of Net 332
34.8 Scheduling of Started Tasks 332
34.9 The CLR Command 333
35 Data Security 335
35.1 Protection of Jobs / Nets / Started Tasks / External Systems 335
35.2 Protection of Other AJM Resources 337
35.3 Protection of External Triggers 338
35.4 Protection of JCL Libraries 339
35.5 Protection of Preparation Dialogs and Packages 339
35.6 Protection of AJM/P variables 339
35.7 Protection of AJM/P file definitions 340
Appendix 341
36 Appendix A. Examples 343
36.1 Example 1: First definition of a simple job 343
36.2 Example 2: Definition of Concatenation 352
36.3 Example 3: Definition of a More Complex Net 353
36.4 Example 4: Definition of a Filter for Control 356
37 Appendix B. Tips and Tricks 359
38 Appendix C. Error Messages in AJM 363
39 Appendix D. Command / Batch / Program Interface 369
39.1 Introduction 369
39.2 Return codes 369
39.3 DD names 370
39.4 Examples 370
39.5 Syntax 371
39.6 Commands and their parameters 372 39.6.1 The parameters GROUP / NET / JOB 373 39.6.2 The ADDRESS command 374 39.6.3 The PROFILE command 374
AJM User Manual
T-Systems International GmbH Edition 23/10/2003
12
39.6.4 The LRSUPD command 375 39.6.5 The LRSWHO command 376 39.6.6 The JCDLOCK command 376 39.6.7 The JCDUNL command 376 39.6.8 The JVRDEL command 376 39.6.9 The JVRSET command 376 39.6.10 The XTRSET command 377 39.6.11 The LOGREAD command 377 39.6.12 The LOGLIST command 379
39.7 AJM Definition File (AJMIN) 379 39.7.1 AJMIN Structure for Job Definitions 380 39.7.2 AJMIN Structure for Documentation 383
40 Appendix E. Batch/Command interface for job variables 385
40.1 SET - Creating or changing job variables 385
40.2 IF - Querying a job variable 387
40.3 GET - Reading a Job Variable 388
40.4 DEL - Deleting a job variable 389
40.5 Examples 389
41 Appendix F. Program AJMTEST 391
42 Appendix G. Call REXX Procedures from AJM/P 393
42.1 Hand Over of Variables 393
42.2 Return Codes 393
42.3 Examples 394
43 Index 396
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
13
Introduction
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
15
dSH
TSA
-DI,
AJM
-Tea
m/
09.1
0.20
0312
:29
/K:\
AJM
\FO
LIEN
\ALL
G\O
VER
VIEW
.ppt
/Pag
e1
AJM Products
JES 2 o JES 3
z/OS
Job Design/Creation
Job Design/Creation
Job Preparation
Job Preparation
Job Monitoring
Job Monitoring
Restart
Scheduling
Planning
Joblog Reports
Output Management
Output Management
AJM/P AJM AJM/S
The entire spectrum of job development in a computer center is understood as the meaning of the expression job management. It therefore includes all components from the creation of a job on to the control/archiving of job runs or job output.
The above divisions assume the following distribution of functions:
• Job Design / Creation
As part of this section, the process for an application or a field of work, according to the process logistics, which results from the application is created. By using the variable parts in the JCL or the definition of the process it is possible to only have to make changes when the logic of the process changes.
• Job Preparation
Variable parts which are planned into the process during the job design are resolved by the values necessary for the next run during the job preparation. The variability refers to the replacement of parts of the JCL as well as to changes in the sequence of the process, provided this makes sense in terms of the definers. The replacement process usually takes place in the form of a dialog with the user since values which can be determined automatically can be used in the JCL at the job start.
• Job Control
1 Scenario Job Management
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
16
At the beginning of the job monitoring phase there is a run-capable JCL for a run, however without the variable parts which are replaced during the job start. Job monitoring contains the components planning, scheduling and restart.
During the planning section criteria are determined according to which a specific process is to be started. Usually the process is started by a scheduling system. The job scheduled this way is monitored by the job management system, other jobs are started (or not) depending on the type of job end.
Job monitoring therefore contains the entire part from the planning of a job, its start, reactions depending on the result of a run, and any repetitions of the a run.
• Output Management
The final part of the job management scenario is output management. It is divided into two sections job log / sysout management and list administration.
o Joblog / Sysout management
Part of joblog / sysout management is the administration of logs created by the system as part the job run. The logs can be viewed online according to specific criteria and may be printed. The archiving of logs for reasons of updates is an important component.
o List administration
Many processes create lists with data related to applications. They can be printed or sometimes only viewed online. The data to be printed can be grouped according to various criteria so that the printout, for example, can be done specifically for the recipient. Several reports may be created from a list if necessary. Access to lists and reports can be by various criteria and the data may be archived for update purposes.
List administration therefore includes both the control of the printout as well as availability online, administration, and archiving the data.
When in the following job management is referred to, then the entire process is to be understood from the design of the process to the administration of its results.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
17
The AJM product family includes functions for design, preparation, handling and control of all your batch processing. You can use the capabilities of AJM, especially the various schedule criteria to automate your restart/recovery possibilities. Such optimization is absolutely necessary due to the continually shrinking batch window.
The AJM products run 24 hours a day 7 days a week. Both the reorganization and the backup are done on the fly without any noticeable influence on availability.
All AJM products are client-capable, each customer only sees his own data. The easy-to-use, comfortable administration interface allows the monitoring of all your daily batch processes with little effort. Context sensitive help information makes work easier. The administration interface is available in both German and English.
AJM (= Advanced Job Management) is a client capable scheduler for the automation of batch processes which can run under different operating systems.
Batch processes in AJM can be:
• Jobs and started tasks under z/OS with JES2 • Jobs and started tasks under z/OS with JES3 • Background processes under SAP/R3 • Shell scripts under Unix • Commands under Unix and Windows
You may control the start of a job through any combination of the following schedule criteria:
• Time criteria o date and time o Intervals (e.g. every hour, every second day, once a week) o Days of the week (e.g. Monday, Tuesday) o Types of day (working day, day of rest, holiday) based on individual calendars o Relative days (e.g. last working day of the week)
• Dependencies: o on a previous job (job in the same or a different net) o on another net o on the active state of another job or net
• Additional criteria: o Logical resources (controls the number of parallel jobs) o Contents of job variables (these may be set from any application) o Dataset trigger (reaction to the allocation of or a change to a file) o External trigger o Valid preparation with AJM/P
Additional features:
• Restart / Recovery o Reaction to termination codes (condition codes, system / user abends, special
conditions as IPL) o Restart of the job or net, start of a recovery net
• Variable JCL: o Resolution of variables o IF / ENDIF / IMBED
2 AJM product family
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
18
AJM/P (AJM Job Preparation) is a client capable tool to prepare processes. You can create user-friendly dialogs using a set of dialog elements. The end user then calls up the dialog to prepare the preparation.
AJM/P dialog element are
• Input of AJM/P variables • Display of ISPF panels • File creation with the ISPF File Tailoring Service • Access to files using ISPF Edit • Execution of REXXs
AJM/S (AJM Sysout Management) is a client capable tool to administer joblogs. The joblogs are read in from the JES spool and archived daily.
Using the administration interface you can select joblogs and then and then process them (display, print, copy). AJM/S also contains a powerful function to access to the Syslogs which allows you select them based on date / time as well as according to their contents.
AJM/J (AJM Job Jariables) enables exchanging information between any application using values that are stored in job variables. You may use these job variables in AJM as schedule criteria or to adjust JCL.
AJM/R (AJM Remote) is an agent on non-mainframe platforms that schedules batch processes, supervises them and reports the current state to the scheduler AJM.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
19
AJM is a job control system that selects the jobs due to schedule conditions, submits them to the operating system and supervises them until they terminate.
The job selection is done by direct scheduling. This means that there is no planning run, but the jobs are submitted as far as the schedule conditions are satisfied.
AJM starts jobs not even on the same mainframe system as it runs itself but also on every system in the JES complex or on other platforms.
Within AJM particular expressions have a special meaning. Fundamental expressions which are necessary for the understanding of AJM are to be represented below.
• Job
Analogously to JES or operating system job designates a logical unit of program flows transferred to the system in form of JCL.
• Net
Net designates a logically coherent multitude of jobs which are in general combined in a sequence.
The netname may contain up to 8 characters. Within an AJM system it has to be unambiguous.
Note: The expression net also exists in JES3. It is not identical with the expression of the net in AJM. The latter is independent of the used JES.
• Group
As to content group designates a number of users who are competent for particular sequences normally. Formally group is a combination of (mostly logically or organizationally coherent) nets, e.g. of a field of work or of a customer.
The group name consists of a maximum of 17 positions (2 qualifiers containing up to 8 positions each); thus a hierarchical structure within the groups is possible (example: CLIENTA HR - Human Resources of client A). Within AJM the group name has to be unambiguous.
The expression group is the key expression for the guarantee of client-capability. Consequently it is always the group which is used for authorization check in case of all accesses to definitions, listings, etc..
• Job Variable
Job variables are a mail system within a system complex which facilitates communication between different applications. Information may be set, altered and read from any application (batch, online, TSO/ISPF).
3 Basic Concepts
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
20
AJM/J: Mail System for Job Management
Batch
AJMAJM/P
anyapplication
AJM/J
g information exchange betweendifferent partners
g available within system complex
g security for every message
g optional period of validity
g SET/GET/IF/DEL
AJM uses job variables in two ways:
1. The start of jobs may depend on contents and period of validity of a job variable. 2. During submit AJM may replace variables in JCL by the contents of a job variable.
In AJM a job variable may both be a control tool and a JCL variable.
The name of a job variable consists of two qualifiers with a maximum of 8 characters each (example: JOBVAR.TEST). Use and access are checked by the security server.
You will find detailed information on the handling of job variables in AJM in "Job Variables"on page 151.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
21
In AJM the expression "net" designates a logically coherent multitude of jobs which are in general combined in a sequence.
The netname may contain up to 8 characters; it is subject to the conventions for jobnames and has to begin with a letter. Within an AJM system the netname has to be unambiguous.
Note: The expression net in AJM is independent of the used JES; it is not identical with the expression of the net in JES3.
The order in which the jobs belonging to a definite net execute is determined by AJM at the moment of execution according to the specified net definition and the current situation. AJM passes individual jobs to operating system, linking is defined in AJM.
Beside the possibility of defining particular jobs as predcessors AJM offers the functionality to bypass or branch within execution. For that purpose the BYPass function or the ALTernative function are available.
4.1 Net Structure / Definition
Net definitions within AJM take place by specifying the predecessor, i.e. the definition of the jobstream is in general performed from the perspective of the job to start. Together with the ALTernative function as well as the termination code control you can individually determine with which termination code each predecessor job has to be terminated.
If several predecessor jobs are defined the logical operation (AND / OR operation) between these jobs may be defined freely.
For each job any number of - completely independent of each other - predecessor conditons may be defined which are retained in different schedule lists (cf. chapter "The Schedule List"on page 105).
Each job having no predecessor condition in its schedule list may be a start job of an AJM net via this list. Within a net there may be any number of start jobs independent of each other, i.e. the beginning of the net need not be unambiguous.
The net end behaves analogously; it need not be unambiguous either in AJM. Each job which does not appear any more as a predecessor itself in another job may be the last job within an execution. So it is not necessary in AJM to define an unambiguous termination job.
A net in AJM may thus be defined open on both sides, i.e. the number of start and last jobs is not limited.
In AJM different control functions (e.g. renewed start of a net) depend on the fact if the relevant net is being active or terminated. Inside AJM there is a NETCLEAR if AJM recognizes the end of a net; only after performed NETCLEAR a net may be restarted again next time. As the end of net is not defined unambiguously recognition of the net end is done according to a definite rule. This is described in detail in chapter "End of Net"on page 332.
4 Nets
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
22
4.2 BYPASS Function
When a net is defined you normally do not know on which current conditions the net will execute next time. Thus processing of a file being created during another execution, possibly in another data center, only makes sense if this file is also available at the moment of execution. If this file is defined as a fixed precondition for a job the entire execution will stop in this position if the file is not available in time.
AJM offers the possibility of bypassing a job if a definite condition is not satisfied at the moment of execution or up to a definite moment. In the above example it is hence possible to continue net execution without this particular job if the file to process (up to a definite moment) is not available.
Within the scope of the termination code control you can respond to this event and net execution may be continued with another job.
For the BYPass function all schedule criteria of AJM may be used; i.e. all criteria which may be defined for the start of a job in AJM may also initiate bypassing of a job. Details to possible conditions are represented in "Schedule Criteria"on page 21.
Bypass Function (Example)
Job A: runs every workday
Job B: runs on last workday of the week
Job C: runs every workday
Job A
Job B
Job C
Bypass
Definition of Job B:
1st schedule list: predecessor is Job Alast workday of the week
2nd schedule list: predecessor is Job Abypass = yes
The subsequent figure is to illustrate the action of the bypass function with an example:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
23
Bypass Function (Example)
Job A: runs every workday
Job B: runs on last workday of the week
Job C: runs every workday
Job A
Job B
Job C
Bypass
Definition of Job B:
1st schedule list: predecessor is Job Alast workday of the week
2nd schedule list: predecessor is Job Abypass = yes
4.3 ALTernative Function
Within an execution it often proves necessary to respond to the result of a predecessor job. In case of a severe error this response will certainly result in a recovery/restart action or the stop of the entire execution. In numerous cases jobs end with particular condition codes or user abends representing no real error; within execution you are to respond to these codes by starting another job next as in case of a normal end.
AJM offers the possibility of branching within a net execution according to the result (termination code) of a job. Totally it is possible to define up to 251 different subsequent paths (1 OK path up to 250 ALTernative paths).
For this functionality the ALTernative function is available in AJM.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
24
Branch depending on the termination code of a job
Job X
Job A Job A1 Job A2 Job A250
Termi-nation-Code
JobX JobX/ALT1
JobX/ALT2
JobX/ALT250
o.k. path(Normal path) A l t e r n a t i v e p a t h s
Alternative Function
As a trigger for the ALTernative function all the codes are available to which you may respond within the scope of the termination code control in AJM. Especially selection of an alternative path is possible if the previous job was bypassed within the scope of the BYPass function.
Details to termination code control are described in "Termination Code - Control"on page 297.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
25
Beside support of logically coherent sequences, control of running jobs as well as restart/recovery actions the main task of a job management system consists in the automatic scheduling of jobs. The objective is the possibility of defining the most different requirements for the start of a job in advance in order to facilitate a starting of sequences without manual actions.
When criteria which are to initiate a job start are analysed it turns out that absolute time criteria (e.g. on the 15th of each month) are less and less important in great data centers. More and more jobs / sequences are started according to events (e.g. a particular dataset from another sequence has been created), to other jobs or to relative time indications (e.g. on the penultimate workday of a week).
These trends were taken into account when AJM was developed. AJM offers a variety of possibilities of starting a job / sequence. These different criteria may be used both independently of each other or linked with each other.
In AJM three types of schedule criteria are supported
• time criteria • event criteria • concatenating criteria
All criteria may be combined with each other as far as this makes sense.
5.1 Time Criteria
Within the scope of time criteria AJM offers various possibilities of defining a job start. All time criteria are based on a calendar which may be defined explicitly according to the job. Without option the standard calendar of the installation (name: $STD) is used.
AJM has an own calendar function (cf "Calendar"on page 165) through which every user may define own calendars. The access to calendars is protected via the Security Server (cf "Data Security"on page 325).
Within the scope of the calendar function special functions are available for the user to determine statutory holidays, furthermore he can modify the daytype of a special calendar day by simple overwriting.
When a calendar is defined the user may determine at what time the change of the daytype is to be done within the calendar. Thus it is possible to provide specific times of the day with another day type varying from the calendar day.
Example: In many data centers the working week starts with the beginning of the early shift at 06:00 o'clock. The time between Monday 00:00 o'clock and 06:00 o'clock is still a holiday for the data center whereas Monday normally is a workday. When jobs are scheduled this is taken into account by AJM via the daytype.
AJM offers the possibility of defining any number of calendars. This is especially necessary if a data center has different clients working in different countries.
The various time criteria supported by AJM are summarized in the following chart.
5 Schedule Criteria
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
26
17.10.2002 Mo, Tu, We, WD,RD, 20:00 h every hourTh, Fr, ... HD every day
Date Day name Day type Time of day Interval
Once within a range of hours
Last but oneWD of the week
Range of days Range of hours Time chamber Relative day
�...��…�8
Time Criteria
The different criteria have the following meaning:
• Date
Here an explicit date may be defined.
• Dayname
Dayname designates the weekday.
• daytype
In AJM three different daytypes are distinguished which are to make it possible for the user to respond to different work rhythms.
o workday Workday normally means that it is worked full time on this day in this calendar (example: Monday to Friday).
o restday Restday normally means that it is worked restricted on this day in this calendar (example: Saturday).
o holiday Holiday normally means that it is not worked on this day in this calendar (example: Sunday, statutory holiday).
• Time
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
27
The start of a job may be at a specific time.
• Interval
Most of the jobs / sequences controlled via a scheduling system are to be started repeatedly. Via the option of the interval the user defines how often AJM is to start the job (cf chapter "Interval"on page 111).
In AJM the following interval types are distinguished:
o every minute The job may be started every nn minutes by AJM (nn = 01 to 99).
o hourly The job may be started once every nn hours by AJM (nn = 01 to 99). You have to make sure that the interval between two runs has not to be exactly nn hours as the current hour always ends at xx:00 o'clock. Example: If a job is started at 09:58 o'clock and if "every 2 hours" is specified as an interval the same job may be started again at 11:00 o'clock already as the first hour ends at 10:00 o'clock.
o daily The job may be started once every nn days by AJM (nn = 01 to 999). The same is applicable to what was explained before on the interval "hourly"; the daily changeover is at midnight.
o every workday The job may be started once every nn workdays by AJM (nn = 01 to 60). The same is applicable to what was explained before on the interval "daily"; only workdays are counted, however, not restdays and holidays. A workday changes at the time defined in the calendar.
o weekly The job may be started once every nn weeks by AJM (nn = 01 to 99). The same is applicable to what was explained before on the interval "hourly"; the weekly changeover is on Monday 00:00 o'clock.
o monthly The job may be started once every nn months by AJM (nn = 01 to 99). The same is applicable to what was explained before on the interval "hourly"; the monthly changeover is on the first of a month, 00:00 o'clock.
o yearly The job may be started once every nn years by AJM (nn = 01 to 99). The same is applicable to what was explained before on the interval "hourly"; the yearly changeover is on January 1st of a year, 00:00 o'clock.
• Date window
Via the date window you can define in AJM that the start of a job may only be done within a specific daily period. This period may be specified explicitly (e.g. 10.01.92 to 15.01.92) or in a generic way in each position.
• Time window
Via the time window you may define in AJM at what times a start of the job may be done. The option of time windows is possible beyond midnight. Maximum size of a time window is 24 hours.
• Time chamber
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
28
A time chamber is a time window in which AJM starts a job once at the most.
Without the one-time condition a job could be started several times within a time window if the interval is small enough.
• Relative day
This criterion offers the user the possibility of defining a start date not explicitly but in relation to fixed dates within the calendar.
A relative reference within AJM is possible to
o beginning or end of a week with the daytype
o beginning or end of a month with the daytype, the dayname and the absolute day
o beginning or end of a year with the daytype and the dayname
You will find a detailed description of the possibilities in "Daytypes, Daynames and Relative Days"on page 114.
5.2 Event Criteria
AJM also offers the possibility of initiating a start according to particular events. Such events may be:
• logical resources • job variables • DS triggers • external triggers
The event types job variable, DS trigger and external trigger may additionally be provided with a period of validity (lifetime) to avoid an obsolete event initiating a job start.
The possibilities of event control are summarized in the following chart.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
29
External trigger AJM/P Preparation(with lifetime) (validity for n runs or lifetime)
Job variable Logical resource Dataset trigger(message with lifetime) (counter) (catalog/close event)
�
Event Criteria
• Job variable
Job variables are a mail system within a system complex which facilitates communication between different applications. Information may be set, altered and read from any application (batch, online, TSO/ISPF).
The start of jobs may be conditional on contents and period of validity of a job variable. Furthermore AJM may replace variable parts of JCL by the contents of a job variable when a job is submitted.
In AJM a job variable may both be a control tool and a JCL variable.
You will find detailed information on the handling of job variables in AJM in "Job Variables"on page 151.
The use of job variables as a schedule criterion is explained in chapter "Job Variable"on page 120.
• Logical resource
A logical resource is an AJM-internal counter being analysed by AJM during scheduling.
If all other schedule criteria are satisfied for a job then AJM will check if the desired number of units of this resource is available currently. Only then AJM will start the job, otherwise it won't.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
30
During start AJM reduces the number of available units of this resource according to the requirements of the job and will submit them at the end of job.
Apart from a fixed number a job may also require all units of a logical resource. In this case AJM will only start the job if no other job allocates this logical resource any more.
All logical resources are defined and administrated via a special function within the AJM. Here the user can view which jobs currently allocate a specific logical resource (cf "Logical Resources"on page 155).
The access to logical resources and their use in job definitions is protected (cf "Data Security"on page 325). Thus it is prevented that unauthorized jobs allocate specific logical resources and possibly obstruct production sequences.
• DS triggers
Dataset triggers are a further possibility of starting an execution controlled by events.
Using DS triggers you can respond to cataloging or altering of particular datasets.
To prevent data which are no longer valid from initiating a job start the period of validity of the DS trigger (1 minute up to 99 hours 59 minutes) has to be specified in the job definition.
A DS trigger acts as an impulse, i.e. creating or modifying a file initiates one action per job at the most. If a job is hence started by AJM on the basis of a DS trigger AJM subsequently resets this impulse.
As a host of files is permanently generated within a system file names which are to be used as DS triggers in AJM have to be defined in the product SEM (System Exits and Modifications) for reasons of performance.
• External triggers
External triggers offer the most variable possibility of initiating job starts in AJM.
These triggers may be set from any application. As for the above described triggers any number of jobs may respond to its occurrence.
The type of an external trigger is defined by a type and a subtype. Up to two parameters may be committed the contents of which depends on the type of the external trigger.
To prevent data which are no longer valid from initiating a job start a lifetime for the external trigger (1 minute up to 99 hours 59 minutes) has to be specified in the job definition.
5.3 Concatenating Criteria
Jobs may be started according to the result of a predecessor job / net. AJM distinguishes two types of dependencies between jobs:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
31
• net-internal dependencies (predecessor) • net-spanned dependencies (predecessor or status)
Definition possibilities in AJM regarding concatenation are summarized in the following chart. Besides AJM also offers the possibility to refer to the current status of a net or job.
Internal dependencies
net X/job A, CC = XXlifetime 4 hours
Job A
Job B Job C
"Job A" "Job A/ALT1"
Selection due to concatenation Selection considers termination codeand lifetime
External dependencies
Net Y
Job C
Net X
Job A
Job B
Concatenation Criteria
• net-internal dependencies
Control of job starts via net-internal dependencies belongs to the classic functions of a scheduling system as it only becomes possible through this system to combine different jobs in logically coherent sequences, the nets. In many cases the first job of a sequence is started via time criteria, most of the subsequent jobs via internal dependencies.
As illustrated in "Nets"on page 19 AJM offers a series of possibilities of designing jobs using the BYPASS and ALTernative function as well as the termination code.
For the schedule criterion AJM offers two possibilities of referring to a net-internal predecessor.
o normal end of the predecessor job The specified job has been terminated with ok (if applicable by explicit option of the termination code control).
o alternative end of the predecessor job Within the scope of the termination code control an alternative end has been defined for the specified predecessor.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
32
When you refer to the alternative end of a predecessor job a special alternative path may explicitly be specified (e.g. ALT 001) or any path may be referred to (ALT ANY). ALT ANY also includes the OK path (= ALT 000).
Any number of predecessors may be defined per job which may be linked with AND or OR optionally.
• net-spanned dependencies (external dependency)
In AJM you can also refer to jobs from other nets or to completely other nets as predecessors, but you cannot refer to internal dependencies.
or Net X
Job A
Job B
Net Y
Job G
Job H
Net X Net Y
Job A
Job B
Selection by net end of net X and life time
Note: Command CLR does not set net end.
Selection by termination code of job Aand lifetime
External Dependencies
To prevent obsolete runs of external nets from initiating a job start by mistake you have to specify here as well a period of validity in the definition - analogously to the DS trigger. After the period of validity has expired the corresponding schedule criterion is no longer satisfied.
The referrence to an external predecessor (job / net) acts as an impulse, i.e. the end of a predecessor job / net initiates (per job) one action at the most. If a job is hence started by AJM on the basis of a predecessor condition AJM subsequently resets this impulse; this schedule condition is only valid again after new termination of the predecessor job/net (with the specified termination code).
To be able to also refer to the result of a predecessor job for net-spanned transactions an additional definition in AJM can include with which termination code the predecessor job must have ended in order that this schedule criterion is regarded as met. If this option is missing completion code 0000 is adopted by default.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
33
When you refer to an entire net the schedule condition is satisfied as soon as the corresponding net has been terminated by AJM. A manual NET Clear (line command CLR, cf chapter "Net List"on page 69) does not cause the schedule condition to be satisfied.
Any number of external predecessors (jobs / nets) may be defined per job which may be linked with AND or OR optionally.
• net-spanned dependencies (active status)
AJM may also respond to the status of a job / net. Through this it is possible to only start a job if another job / another net is being active or is not active. Active means that the corresponding job or a job of the corresponding net has been started by AJM and not been terminated yet.
Net X
Job A
Net Y
Job B
active
Net X
Job A
Net Y
Job B
not active
Job A may only be started if job B is active. Job A may only be started if job B isnot active.
Dependencies on Current State of a Job
The so defined schedule criterion is satisfied if the specified job / the specified net is active (if "active=y") or not active (if "active=no"). According to the definition of the other schedule criteria, especially of the interval, a repeated job start is possible because of this criterion.
Any number of external dependencies (job / net) may be defined per job which may be linked with AND or OR optionally.
As well both types of external dependencies may be combined as you like.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
35
AJM Administration Interface
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
37
AJM administration interface is available under TSO/ISPF. Because of its structure it differs, however, from usual TSO/ISPF-supported dialogs in several points.
For the user it provides the following advantages:
• field-sensitive information • selective display of information • preselection of data by filters • branch possibilities between dialogs • parallel dialogs
6.1 Structure of Administration Interface
AJM administration interface is divided into dialogs. Each dialog consists of different dialog steps.
Dialogs may be invoked via the main menu and partly via jump commands. Within a dialog dialog steps are invoked by line commands and they are exited again by commands such as END or CANCEL.
You can jump between dialogs, some dialogs may be invoked parallel.
An individual dialog has always to be exited again in a sequential way via the invoked dialog steps unless the entire dialog is shut down via commands such as RETURN or EXIT.
6.2 Field-Sensitive Information
In order to provide the user the best information possible in each position of the AJM administration interface you may invoke help information in every dialog function.
Information then displayed depends on the position of the cursor at the moment of query. This field-sensitive help information has the advantage that current information is available according to context without long searching in a manual.
Thus you may query
• which line commands are possible in a specific line • which values may be entered in a particular field • what particular display information means
6.3 Selective Display of Information
In order that you need not change from one panel to another all information for one subject is in one panel. In order that clarity is not reduced, however, the following functions are available:
6 General Characteristics about Administration Interface
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
38
1. In browse mode only those lines containing definitions are displayed. 2. Via a selection line you may select which data is to be displayed. This option is applicable both
in browse and in update mode.
6.4 Optical Preparation of Information
Information may be prepared via colour scheme or by inverted representation. AJM uses both possibilities as show the following two examples:
When a net is displayed in the net / job list jobs involved in the last net run are represented in light colour (turquoise). Jobs which were not executed within the last net run appear in normal intensity (dark blue) in the display. Thus you may ascertain at a glance which size the net comprised during the last run.
In the job definition the first criterion not satisfied currently is represented inversely. Through this you may recognize at a glance why a job has not been executed currently.
6.5 Filter
A filter serves to preselect data to be displayed or to be processed. For that purpose it is possible to tailor queries especially to exceptional cases or to select a specific field of work. Thus the user may directly select that information out of the variety which is of interest to him at the moment.
For many dialogs entry is done via a filter. Mostly a useful preallocation has already been entered. How precise or general a filter preselection has to be depends on the corresponding dialog.
In order to be able to work alternatively with different filters without having to enter settings each time again filter definitions may be saved. Named filters are saved in the user profile and are available again when AJM administration is invoked for the next time (permanent filters). The others are temporary filters and only apply to the current AJM session.
6.6 Jump Commands
Invoking a dialog within AJM administration may be done in two ways:
1. The wanted dialog will be selected from the main menu via the associated menu item. 2. The wanted dialog will directly be invoked via a jump command.
In the second case the current dialog is interrupted and you branch to the wanted dialog. After the invoked dialog is terminated the user returns to that position where he had entered the jump command.
The advantage of such branch possibilities may be shown by the following example: If a user has to enter the name of a logical resource in the job definition environment he may look up the name as well as the associated information without leaving the definition environment.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
39
6.7 Parallel Dialogs
Parallel dialogs serve to invoke a dialog already active in order to process another object without previously terminating the current dialog. They are realized in the net / job processing.
After entering the jump command NET the user does not return to the same position of the net / job dialog but obtains the filter panel. Through that he may either decide on a dialog being active already and continue it in the position where he had previously left it or establish a further net / job dialog running totally independent of other active dialogs.
Between parallel dialogs you may branch as you like. Restart point in an active dialog is always the function where it was left.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
41
7.1 Dialog Interface of AJM
The AJM administration interface requires TSO/ISPF. It consists of dialogs which for their part consist of different dialog steps. The most important characteristics of the AJM dialog interface are listed below:
• User can choose the dialog language • Field sensitive help • Various selection criteria for jobs and nets via individual filters • Dialogs callable from main menu or via jump commands
Within the AJM administration interface there are commands which are possible for each interactive function. These commands are to be described in the following chapters.
7.2 Commands for Querying Help Information
HELP Every panel within the AJM administration interface includes help information which can be solicited using the HELP command (PF1 key).
Displayed information depends on the position of the cursor (point-and-shoot-fields). That means, for example, if you want to know which line commands are possible in a definite line you position the cursor on the corresponding line command field and invoke the help function. Analogously you may solicit which values can be entered in a definite field or what displayed information means.
7.3 Commands for Terminating Dialogs
END Using the END command (PF3 key) you leave the displayed panel and return to the environment from which it was invoked.
If you modified data in the current panel a check of this data is performed prior to return. If entries are correct they will be saved. If they are incorrect an error message will be output and the corresponding panel will be displayed again.
CAN If you want to leave a panel without saving alterations in data you may use the CAN command.
Analogously to the END command you return to the environment from which the current panel was invoked.
RETURN Using the RETURN command (PF4 key) a whole dialog is terminated. It corresponds to a series of CAN commands, i.e. here as well alterations in data are not saved.
You return to the interactive function from which the current dialog was invoked. If the current dialog was the only to be active the main menu will be displayed.
EXIT Using the EXIT command you leave the AJM administration interface. It corresponds to a series of RETURN commands, i.e. here as well alterations in data are not saved.You return to the panel from which the AJM administration interface was invoked.
7 General Commands
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
42
7.4 Jump Commands
Instead of making a selection via the main menu a dialog may also be branched to immediately. For this purpose the following jump commands are available.
If this dialog was active already and cannot be invoked several times you have to branch to the position on which the dialog was interrupted.
Example: The definition of a logical resource was interrupted to view an item in the AJM log (jump command LOG). If you branch again to the dialog logical resources (jump command LRS) you will return to the position on which the definition had been interrupted.
The log dialog remains active in the background, however, if you terminate the dialog logical resources you will return to it.
You will find further information in the chapter "Parallel Dialogs"on page 39.
In AJM the following jump commands are available:
CAL Call of the calendar dialog (cf. "Calendar"on page 165)
DST Display of information on Dataset Triggers (cf. "Dataset Trigger"on page 159)
FOR Call of the Forecast dialog (cf. )
JCD Call of the dialog to define JCL files (cf. "JCL Dataset Definitions"on page 163)
JVR Call of the job variable dialog (cf. "Job Variables"on page 151)
LOG Call of the dialog to query the AJM log (cf. "Logging"on page 175)
LRS Call of the dialog "logical resources" (cf. "Logical Resources"on page 155)
MAIN Call of the main menu from which you can continue to branch (cf. "Main Menu"on page 41)
NET Call of the net/job dialog providing a list of defined filters and the net/job dialogs already activated (cf. "Net / Job Processing"on page 57)
XSD Call of the dialog "external systems" (cf. "Defining External Systems"on page 169)
Note: The following jump commands are only permitted if AJM/P is activated, otherwise a corresponding error message is output.
PCD Call of the dialog to administrate AJM/P files (cf. "AJM/P Dataset Definitions"on page 263)
PRP Call of the dialog to administrate AJM/P preparation dialogs and packets (cf. "Defining Preparation Dialogs and Packages"on page 229)
PVR Call of the dialog to administrate AJM/P variables (cf. "AJM/P Variables"on page 239)
UTI Call of the dialog "utilities" (cf. "Utilities"on page 215)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
43
7.5 Commands in Update Mode
SAVE Using the SAVE command alterations in data are stored on the AJM database. But you do not leave the current panel as you do using the END command.
DO If alterations are to be buffered without writing them on the AJM database the DO command may be used. It sets a so-called DO point on which you can reset using the UNDO command.
The advantage of this procedure will especially be realized in case of extensive alterations which are not to affect the AJM database immediately. After every major alteration a DO point is set to which to return when you made an error during the subsequent alteration step.
All alterations are only written onto the AJM database during the next SAVE or END command.
UNDO As described above you can return to the status of the last DO point set using the UNDO command.
If no DO point was set you have to reset to the last status saved in the AJM database. In general using UNDO you cannot return further as to the status of the last SAVE command.
RESET Using the RESET command you reset to the status of the last SAVE command.
BRW Using the BRW command you switch from update mode to brwose mode, i.e. data is displayed without the possibility of change. Lines within the definition containing no data will not be displayed either.
UPD Using the UPD command you can switch from browse mode to update mode.
7.6 Commands for Searching Character Strings
FIND string
[ NEXT ] [ PREV ] [ FIRST ] [ LAST ] [ ALL ]
Using the FIND command you can search any character string within a display or update panel.
The area being browsed always contains the entire multitude of data, if necessary it is turned over automatically to the next page containing the searched character string.
The FIND command affects only variable fields within a panel, it does not affect fields being a fixed element of the panel frame (headings, field descriptions etc.).
string specifies any character string which is to be searched in the displayed data. If the character string contains embedded blanks it has to be enclosed in apostrophes ('string'). If the character string includes the apostrophe itself it has to be enclosed in inverted commas ("string").
NEXT When this parameter is coded starting from the current cursor position you search forward for the next occurrence matching "string". The cursor will be positioned on the found character string. If no character string is found a corresponding note will be output.
PREV Once this parameter is specified starting from the current cursor position you search
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
44
backward for the next occurrence matching "string". The cursor will be positioned on the found character string. If no character string is found a corresponding note will be output.
FIRST When this parameter is coded the first character string matching "string" will be searched within the entire multitude of data. The cursor will be positioned on the found character string. If no character string is found a corresponding note will be output.
LAST When this parameter is coded the last character string matching "string" will be searched within the entire multitude of data. The cursor will be positioned on the found character string. If no character string is found a corresponding note will be output.
ALL When this parameter is coded it is displayed how often the searched character string occurs all in all. The cursor will be positioned on the first found character string.
RFIND Using the RFIND command (PF5 key) the next character string selected beforehand through the FIND command will be searched starting from the current cursor.
The direction to search depends on the FIND command (forward for NEXT/FIRST, backward for PREV/LAST) entered last.
If no further character string is found any more within data a corresponding message appears. A renewed RFIND browses data from the beginning or from the end of the entire multitude of data analogously to the ISPF function of the same name.
7.7 Commands to Change Character Strings
CHANGE string1 string2
[ NEXT ] [ PREV ] [ FIRST ] [ LAST ] [ ALL ]
Using the CHANGE command any character string may be searched within an update panel and be replaced by another one.
The area being searched always comprises the entire multitude of data, if necessary it is turned over automatically to the next page containing the searched character string.
The CHANGE command affects only variable fields within a panel, it does not affect fields being a fixed element of the panel frame (headings, field descriptions etc.).
string1 specifies any character string which is to be searched in the displayed data. If the character string contains embedded blanks it has to be enclosed in apostrophes ('string1'). If the character string includes the apostrophe itself it has to be enclosed in inverted commas ("string1").
string2 specifies any character string by which the value "string1" is to be replaced. If the character string contains embedded blanks it has to be enclosed in apostrophes ('string2'). If the character string includes the apostrophe itself it has to be enclosed in inverted commas ("string2").
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
45
NEXT When this parameter is coded starting from the current cursor position you search forward for the next occurrence matching "string1". This character string will then be changed into "string2" if the maximum length of the field is not exceeded. If no character string is found or if the field contents would be too long by a change a corresponding message will be output.
PREV When this parameter is coded starting from the current cursor position you search backward for the next occurrence matching "string1". This character string will then be changed into "string2" if the maximum length of the field is not exceeded. If no character string is found or if the field contents would be too long by a change a corresponding message will be output.
FIRST When this parameter is coded the first character string matching "string1" will be searched within the entire multitude of data. This character string will then be changed into "string2" if the maximum length of the field is not exceeded. If no character string is found or if the field contents would be too long by a change a corresponding message will be output.
LAST When this parameter is coded the last character string matching "string1" will be searched within the entire multitude of data. This character string will then be changed into "string2" if the maximum length of the field is not exceeded. If no character string is found or if the field contents would be too long by a change a corresponding message will be output.
ALL When this parameter is coded all found values "string1" are replaced by "string2". If all values could be changed successfully a message will be output how often this happened. If no character string is found or if the field contents of a value was too long by a change a corresponding message will be output.
RCHANGE Using the RCHANGE command (PF6 key) starting from the current cursor position the next character string selected beforehand through the CHANGE command is searched.
The direction to search depends on the CHANGE command (forward for NEXT/FIRST, backward for PREV/LAST) entered last.
If no further character string is found any more within data a corresponding message appears. A renewed RCHANGE browses data from the beginning or from the end of the entire multitude of data analogously to the ISPF function of the same name.
Using the above described RFIND command (PF5 key) starting from the current cursor position the next character string selected beforehand through the CHANGE command will be searched. However, there is no change.
By consecutive RFIND and RCHANGE commands all occurring values may be searched and changed one after the other.
7.8 Further Commands
DOWN Using the DOWN command (PF8 key) you can scroll down within a panel.
The number of lines being scrolled depends on the coded parameter (e.g. "DOWN 25"). If nothing is specified the option in the SCROLL field will be used. Using "DOWN MAX" or "DOWN
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
46
M" you can scroll to the end of data.
UP Using the UP command (PF7 key) you can scroll up within a panel.
The number of lines will be determined as for the DOWN command. Using "UP MAX" or "UP M" you can scroll to the beginning of data.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
47
After invoking the AJM administration interface you obtain the following menu:
AJM ------------------------ Main Menu (Administrator) -----------------------CMD===> Action: __ 0. Session Options AJM Server: AJMxxxxx
N. News
1. Net/Job Processing 2. Mass Update 3. Job Variables 4. Logical Resources 5. Dataset Trigger 6. JCL Dataset Definition 7. Calendar 8. Forecast 9. External systems
10. AJM/P Preparation dialogs 11. AJM/P Variables 12. AJM/P Datasets
20. Log View 21. Group-specific Statistics 22. Utilities
The functions included in the different selection items are briefly summarized here. You will find detailed information on each item in the mentioned chapters.
0 Session Options
Setting of the individual parameters (e.g. interactive language) for AJM dialog
You will find more information on this subject in "Session Options"above.
N News
Listing of news after program maintenance
If there is news in case of program modifications which is of interest to the user you will find a listing about it. As long as the user has not viewed the news the selection item is represented inversely. You will find detailed explanations in "News"Seite 51.
1 Net/Job Processing
Administrating Jobs / Nets in AJM
You may define jobs / nets and query their status. Furthermore manual actions (e.g. starting, locking of nets or jobs) are possible. You will find detailed explanations regarding all these functions in "Net / Job Processing"on page 57.
2 Mass Update
Simultaneous modification of options in several AJM definitions. At present this function is not
8 Main Menu
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
48
available.
3 Job Variables
Management of job variables
You will find further information in "Job Variables"on page 151.
4 Logical Resources
Management of logical resources
Using logical resources you may control access to particular resources (e.g. databases). You will find detailed information in "Logical Resources"on page 155.
5 Dataset Triggers
Cataloging or modifying a dataset may be used for job control. You will find detailed information in "Dataset Trigger"on page 159.
6 JCL Dataset Definitions
Administration of JCL datasets for AJM. You will find further information in "JCL Dataset Definitions"on page 163.
7 Calendar
Management of calendars. Detailed information is described in "Calendar"on page 165.
8 Forecast
Using this function you may calculate when nets or jobs are started by AJM on the basis of the respective schedule criteria. You will find a detailed description in .
9 External Systems
Management and definition of external systems. More information is described in "Defining External Systems"on page 169.
10 AJM/P Preparation Dialogs
Administration of AJM/P preparation dialogs
A detailed description of this functionality is included in "Defining Preparation Dialogs and Packages"on page 229.
Note: This menu item will only be displayed if AJM/P is activated in the installation.
11 AJM/P Variables
Administration of AJM/P variables
A detailed description of the definition of AJM/P variables and its use in AJM/P preparation dialogs is included in "AJM/P Variables"on page 239.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
49
Note: This menu item will only be displayed if AJM/P is activated in the installation.
12 AJM/P Datasets
Administration of allocation of datasets for AJM/P preparation dialogs
A detailed description of the allocation of AJM/P datasets and its use in AJM/P preparation dialogs is included in "AJM/P Dataset Definitions"on page 263.
Note: This menu item will only be displayed if AJM/P is activated in the installation.
20 Log View
Request of the log generated by AJM
The AJM log of automatic sequences (e.g. job start / end), actions and modifications initiated by the user as well as important AJM and AJM/P program messages may be inquired using this function. You will find detailed information in "Logging"on page 175.
21 Group-specific Statistics
Overview of the number of defined and started jobs and nets within a group. You will find further information in "Group-specific Statistics"on page 195.
22 Utilities
Interface for request of different utilities in AJM (e.g. utilitiy for retrieving deleted definitions, migration). You will find further information in "Utilities"on page 215.
If you have a master authorization in your data center you will obtain the following menu after invoking the AJM administration interface:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
50
AJM --------------------------- Main Menu (Master) ---------------------------CMD===> Action: __ 0. Session Options AJM Server: AJMxxxxx
N. News
1. Net/Job Processing 2. Mass Update 3. Job Variables 4. Logical Resources 5. Dataset Trigger 6. JCL Dataset Definition 7. Calendar 8. Forecast 9. External systems
10. AJM/P Preparation dialogs 11. AJM/P Variables 12. AJM/P Datasets
20. Log View 21. Group-specific Statistics 22. Utilities
30. System Information 31. Software status 32. Parameters
The items 0 to 22 have the same meaning as represented beforehand. In addition there are the following functions for which you will find further information in the AJM system manual.
30 System Information
Display of important AJM system information such as maintenance level, status of AJM database, entire overview of the number of jobs / nets defined under AJM.
31 Software status
View of PTF level of modules loaded in the AJM address space.
32 Parameters
Customization of the AJM system to the specific conditions of your data center.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
51
Via selection 0 in the main menu you get into the following panel. Here you may customize your administration environment according to your needs.
AJM ----------------------------- Session Options ----------------------------CMD===> SCROLL===> PAGEAdministration language: EN EN - ENGLISH GE - DEUTSCH Start Panel : __ Blank - Main Panel nn - Selection in Main Panel Confirmation panel : Y y/n - Confirm delete commands (DEL) : N y/n - Confirm manual job starts : N y/n - Confirm clearing commands Lock new jobs : Y y/n - Lock new jobs on definition No. of data buffers : 1 Blank - default of 1 buffer 1 to 8 - a maximum of 8 buffers Temporary datasets : 01 Primary space - Default 1 Track 01 Secondary space - Default 1 Track Trace Preparation : Y y/n Limit for joblogs : 001 Server : AJMZS___ AJMZS - AJM Production AJMTEST - AJM Test
The fields have the following meaning:
Administration language
Language of administration panel and messages
Enter one of the listed 2-character language codes.
Start Panel first panel when AJM is invoked
If e.g. you enter 1 you will get immediately into the function "Net/Job Processing" after you have invoked AJM. If there is no option the main menu will be displayed after invoking AJM.
Confirmation panel
Display of a confirmation panel for particular commands
As particular commands (such as DEL) may have far-reaching consequences it often makes sense to display a confirmation panel prior to execution. In the confirmation panel you can decide if the command is to be performed (Enter key) or not (PF3).
If you specify Y a confirmation panel will be displayed, if you enter N the corresponding command will immediately be executed.
Confirmation panels may be displayed for
• deletions (command: DEL)
9 Session Options
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
52
• manual job starts (commands: STR, RUN, EXE, BRN) • clearing commands (commands: CLR, RES)
Lock new jobs Automatic lock of new jobs on definition
To avoid an unintentional start of a new job you can define here that all new jobs on definition are locked automatically. These jobs have then to be released manually (via line command UNL). If you enter N there is no lock of new jobs. This is the default setting.
No. of data buffers
number of buffers which may be used for the query of data at the most
If a query is very general (e.g. all nets and jobs of a group) an overflow may occur, i. e. the 32 KB buffer containing data will not suffice. A message "RU overflow" is output as a result. Received data is displayed but it is incomplete.
Using a more specific selection (e. g. beginning of net name) the quantity of data may be limited. If all data is to be displayed without restriction the number of buffers may be increased. A maximum of 8 buffers is possible. Data buffers are loaded into your address space. Hence the maximum number of possible buffers also depends on the size of your address space.
Temporary datasets
size of temporary datasets
For different commands (LOG, PRT, ROJ, EXT) a temporary file will be created. The size of this file may be parameterized here.
You have to specify at least one track for each primary and secondary area. You may specify a maximum of 99 tracks. If you use DFSMS the default values may possibly be modified. If the specified values (default setting: 1 track primary, 1 track secondary) do not suffice you will obtain a message in the corresponding dialog.
Trace Preparation
Activate/deactivate a trace function for AJM/P preparation dialogs
If Y is specified here a log of the individual executed dialog steps will be displayed after run of a preparation dialog. If a preparation dialog is aborted prematurely using CAN (PF4) the log will contain information about all actions performed until abortion.
If N is specified here no log will be output. In case of error-free execution of a preparation dialog only a short confirmation message will then appear. In case an execution fails a short message will appear specifying the incorrect instruction in the dialog.
Activating a trace especially makes sense in the test and development phase of a preparation dialog to check correct execution of a dialog step.
Note: This input field will only be displayed if AJM/P is activated in the installation.
Limit for joblogs number of displayed job runs when using the OUT command
Thus you can fix the number of job runs which are displayed when you branch to your Output Management System (e. g. AJM/S) using the OUT command.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
53
Server Name of AJM system with which you want to work
Select the name of the system from the list of AJM systems with which you want to work. If you do not specify a name the first system in the list will be used.
Note: This list is maintained by your AJM administrator.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
55
Via selection N in the main menu you get the listing of news.
---------------------------------- AJM - News --------------------------------Command ===> Scroll === PAGE S - Select P - Print PF- EndeS Short Information ------------------------------------------------------------------------------_ ! Include and Exclude Lines in Filter Definition ------------------------------------------------------------------------------_ ! The Competence Center Jobmanagement with new Intranet site ------------------------------------------------------------------------------_ ! JCL-model function (%AJMMODL) ------------------------------------------------------------------------------_ ! Variable structure of the JCL (AJMIF/AJMENDIF/AJMIMBED) - ------------------------------------------------------------------------------
Via selection News the user will be acquainted with new functions if they are inserted within the scope of system maintenance and available for him.
After installation of a PTF bringing innovations for the user the selection item is represented inversely as long as the user has invoked it once.
The user obtains a table with the headlines of news. In this table the latest information is written on top. Using the line command S you may view the text. Using the line command P your print management system will be branched with which you may print your text.
10 News
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
57
11.1 Overview
Lead-in to processing of nets and jobs is always done via a selection filter. In this filter you determine which size of the entire net definitions you want to select for processing.
First of all you define:
• Which groups are to be processed ? • Which nets within the groups are to be processed ? • Which jobs of the nets are to be processed ?
For the entry of selection criteria group/net/job include lines and exclude lines are available. Though the total number of include lines and exclude lines must not exceed 10. The selection result comprises those nets or jobs to which one of the include lines applies but which are not excluded from any of the exclude lines. The selection criteria group/net/job may be specified both fully qualified and in generic form or by wildcards. For that purpose * stands for any number of characters (0 characters as well) and % for exactly one character in the corresponding position.
In most cases selection for these basic options is sufficient for daily work. For special queries selection may additionally be done according to the current status of nets and jobs (active, in error, locked). This makes it possible to generate special test filters for monitoring production by using queries such as:
• Which nets are running at the moment? • Which nets ran last night? • Which nets have encounterd an error and have to be corrected manually? • Which nets are "late", i.e. have not started yet up to a defined time?
Beside the query for the net/job status there is an additional possibility of making selection according to particular definitions within the nets or jobs. So queries are possible such as:
• Which jobs do use a particular job variable as a start criterion? • Which jobs do use logical resources for control in general? • Which jobs do use a particular logical resource for control? • Where is a particular net defined as an external dependency?
Selection filters are user-specific. Each user may individually create his own customized filters. When AJM is left these filters are stored automatically in the ISPF profile and will be available for the next call. Every user may create up to 99 different selection filters.
11.2 The Filter List
When selection 1 is invoked (net/job processing) the filter list is displayed first. It contains a listing of all selection filters defined by you.
Note: If you invoke AJM for the first time the filter list is empty. The filter definition panel described under "The Filter Definition Panel"on page 60 will directly be displayed in which the selection criteria for a request of net and job definitions is determined.
11 The Selection Filter
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
58
The filter list has the following structure:
AJM ----------------------------- Filter Dialogs -----------------------------CMD===> SCROLL===> PAGEX ALL _ DSC ___ 01 Filter : FILTNET Test filter net list Include: Group: USER1.AJMDEMO Net: * Job: Exclude: Group: * Net: Net* Job: ___ 02 Filter : FILTJOB Test filter net/job list Include: Group: USER1.AJMDEMOA Net: * Job: * Include: Group: USER1.AJMDEMOB Net: * Job: * Exclude: Group: * Net: %%%NEW Job: * ___ 03 Filter : PROD + Production Include: Group: USER1.* Net: * Job: * ___ 04 Filter : #TEMP001 + Include: Group: * Net: NET* Job:
The filter list panel contains a selection bar. According to the setting only the filter name (no X in ALL and DSC), the filter name and the description (X in DSC) or all (X in ALL) are displayed. Each entry contains a sequence number beside the filter name and according to the selection by the selection bar also the selection criteria group/net/job in all assigned include lines and exclude lines.
A + beside the filter name means that the filter still has further criteria limiting the selection (e. g. selection according to definite net/job status).
Selection of a filter may be made using the line command S(EL) or in the CMD line using S nn (number of filter) or using S name (name of filter, observe upper-lowercase characters). Through selection a query to AJM will be started. As a result you obtain a list of all nets or jobs to which the selection criteria of the filter apply.
Two kinds of result lists are distinguished, the net list and the net / job list.
Which list you obtain depends on the options in the selection filter. If "Job" is left blank, a net list is displayed. Otherwise you obtain a net / job list. For this purpose either values have to be specified in all assigned include and exclude lines in "Job" or all entries have to remain blank.
The structure of the lists and what possibilities of processing they contain is described in "Net List"on page 69 or "The Net / Job List"on page 75.
The following line commands are possible in the filter list:
B(RW) display filter definitions
D(EL) delete filter
I(NS) insert new filter
R(EP) create new filter with identical definitions
S(EL) establish a dialog using this filter
U(PD) modify filter definitions
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
59
11.3 Parallel Dialogs
For net/job processing AJM offers the possiblity of establishing parallel dialogs. It is possible to start a second or further queries (dialogs) by repeated call of the filter list and thus generate several result lists parallel. You may alternate between these result lists as you like. The current status of processing of each list is stored by the AJM dialog control. When a list left beforehand is selected again the current processing status will be restored.
Parallel dialogs are structured as follows:
By entering the jump command NET in the command line you branch again to the filter list and the current dialog is saved. When a filter is selected again using S(EL) a further query will be started and a further (net or net/job) list will be generated. When you enter the command NET several times any number of parallel lists may thus be generated. If several parallel dialogs are active these are displayed as shown in the following example.
AJM ----------------------------- Filter Dialogs -----------------------------CMD===> SCROLL===> PAGEX ALL _ DSC ___ 01 Filter : FILTNET Test filter net list Include: Group: USER1.AJMDEMO Net: * Job: Exclude: Group: * Net: Net* Job: ___ Dialog: NET / BRW Group: USER1.AJMDEMO Net: DEM001 Job: USERJOBA1___ 02 Filter : FILTJOB Test filter net/job list Include: Group: USER1.AJMDEMOA Net: * Job: * Include: Group: USER1.AJMDEMOB Net: * Job: * Exclude: Group: * Net: %%%NEW Job: * ___ Dialog: NET / UPD Group: USER1.AJMDEMO Net: DEM002 Job: * ___ 03 Filter : PROD + Production Include: Group: USER1.* Net: * Job: * ___ 04 Filter : #TEMP001 + Include: Group: * Net: NET* Job:
In this example one dialog is active for each filter FILTNET and FILTJOB.
The associated dialog line has the following structure:
Dialog Type of dialog
The relevant type of dialog and the mode in which it operates is displayed:
NET type of dialog net/job processing
Note: Further types of dialogs are not realized at the moment.
UPD Dialog currently operates in update mode
BRW Dialog currently operates in browse mode
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
60
Group Name of group to be processed
Net Name of net to be processed
Job Name of job to be processed
11.4 The Filter Definition Panel
Selection criteria of selection filters are determined using the filter definition panel. Criteria are divided into three different categories:
• main selection according to group/net/job (an include line has always to be filled in) • selection according to net/job status (optional) • selection according to job definition (optional)
AJM ---------------------------- Filter Definition -------------------------- CMD===> SCROLL===> PAGEX ALL _ DSC _ SEL _ STA _ DEF
Filter : ________ ___ Descr. : __________________________________________________ ___ Selection by Group, Net, Job: ___ Include : Group: _________________ Net: ________ Job: ________ ___ Exclude : Group: _________________ Net: ________ Job: ________ ___ Selection by status: Net status : active : _ (y/n) end of net: _ (y/n) M-Restart: _ (y/n) locked : _ (y/n) preparation lock: _ (y/n) Job status : active : _ (y/n) since: ___ days ___ hours ended : _ (y/n) since: ___ days ___ hours W-Restart: _ (y/n) ended(O) : _ (y/n) late : _ (y/n) in error : _ (y/n) submitted: _ (y/n) locked : _ (y/n) Code : __ _____ TT = OK : _ (y/n) Preparation : required : _ (y/n) valid : _ (y/n) ___ Selection by definition: ___ Calendar: ________ ___ Linkname: ________ ___ temp.Lnk: ________ ___ Targets.: ________ ___ Rec.-Net: ________ ___ int.Dep.: Job : ________ ___ ext.Dep.: Job : ________ Net : ________ ___ Jobvar : _________________ ___ log.Res.: _________________ ___ DS-Trigg: ____________________________________________ ___ Ext.Trig: Type: ________ Subtype: ________
The following options are possible:
Filter Name of filter
The user may provide each filter with an own name of his choice. The name may include a
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
61
maximum of 8 characters. If a name is specified the filter will be stored (ISPF profile) when leaving AJM and will be available again for the next call. Filters used regularly ought therefore to be provided with a name. It is recommended to use plausible names if possible.
If no name is specified a temporary filter will be created. It will be identified by a name (#TEMPnnn) generated by AJM. Temporary filters are meant for single queries and will be deleted when leaving AJM.
Descr. description of the filter
Here you may specify the purpose of the filter. The description is displayed in the filter list.
Group Name of group to select
Here you select which group you want to select. The groupname in an include line selects the corresponding group. The groupname in an exclude line excludes this group totally or, according to the specification in net or job, only particular nets or jobs from selection.
The groupname may consist of one or two parts (qualifiers). Each qualifier may have a length between 1 and 8 characters. If the name consists of two parts you have to separate both qualifiers by a point.
The name may be specified both in a fully qualified (complete groupname) and in a generic form. For a generic option you use an asterisk as a last character. In addition the following wildcards are permitted: * stands for no or any number of characters, % for exactly one character. Wildcards may be inserted in any position and in any order.
Example for valid entries:
USER1.DEMO (only group USER1.DEMO)
USER1.PROD* (all groups beginning with USER1.PROD)
USER1.* (all groups belonging to USER1)
%%%.* (all groups the first qualifier of which has three characters)
Note: Only users having a master authorization may perform generic options in the first qualifier with the wildcard *.
Net Name of net to select
You have to specify which nets are to be selected. The netname in an include line selects the corresponding nets. The netname in an exclude line excludes these nets entirely or partially from selection, according to the option with job. The option of the netname may either be in fully qualified form (selection of exactly one net) or in generic form. Use an asterisk as a last character for generic option. In addition the following wildcards are permitted: * stands for no or any number of characters, % for exactly one character. Wildcards may be inserted in any position and in any order. The value * as a netname collects all nets available within the selected group(s).
Job Name of job to select
You have to specify which jobs are to be selected. The jobname in an include line selects the
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
62
corresponding jobs, the jobname in an exclude line excludes these jobs from selection. The option of the jobname may either be in fully qualified form (selection of exactly one job) or in generic form. Use an asterisk as a last character for generic option. In addition the following wildcards are permitted: * stands for no or any number of characters, % for exactly one character. Wildcards may be inserted in any position and in any order. The value * as a jobname selects all jobs available within the selected group / net.
If "Job" is left blank, a net list is displayed. Otherwise you obtain a net / job list. For this purpose either values have to be specified in all assigned include and exclude lines in "Job" or all entries have to remain blank.
Selection by status:
By selection according to net/job status the size selected via group/net/job may be limited further. The result of the query then comprises only those nets or jobs to which the selection criteria apply and which are in the corresponding status at the moment of selection.
Net status Selection according to net status
Only those nets are displayed being in specified status at the moment of the query (see also "Net List"on page 69 for status of nets).
The following options are possible:
active If Y is specified here active nets are listed.
If N is specified such nets do not appear in the list.
end of net
If Y is specified here nets being on end of net or have never been started are listed.
If N is specified such nets do not appear in the list.
M-Restart
If Y is specified here nets waiting for manual restart are listed. Thus all nets the execution of which was stopped by AJM are collected since at least one job of the net resulted in a STOP, R-LIMIT or R-FAIL condition. To continue this net a manual action is required by the administrator.
If N is specified such nets do not appear in the list.
The selection criteria listed above may be combined with each other in a different way according to their requirement. If only one field is filled in the other fields are automatically assigned with default values.
Selection according to net status is reset by overwriting all the fields with blanks.
locked If Y is indicated here only locked nets are listed.
If N is specified only nets not locked are listed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
63
If this option is missing both locked and not locked nets are selected.
If a value is entered in this field and if options for status of net are made concurrently only those nets being in the selected status and locked or not locked are displayed.
Job status Selection according to job status
Only those jobs are selected being in specified status at the moment of the query (see also "The Net / Job List"on page 75 for status of jobs).
If options were also made for status of net only those jobs of nets are selected being in the corresponding status of net simultaneously.
The following options are possible:
active If Y is indicated here nets with active jobs (net list) or active jobs (net/job list) are listed.
Jobs being started but which are not active yet, i.e. being in status submitted have to be included or excluded through the option submitted.
If N is specified active jobs do not appear in the list.
active since
If a Y is specified for "active" you may delimit how long ago the start of the corresponding job may be at the most. This restriction may be performed after hours or days.
If nothing is specified here the moment of start for selection will not be taken into account.
ended If Y is indicated here nets with terminated jobs (net list) or jobs (net/job list) are listed. Jobs which have never run are also listed.
Jobs having terminated but waiting for restart have to be included or excluded in case of "W-Restart" via option. Analogously jobs which could not be started because of an error have to be included or excluded in case of "in error" via option.
If N is specified terminated jobs will not appear in the list.
ended since
If a Y is specified for "ended" you may delimit how long ago the end of the corresponding job may be at the most. This restriction may be performed after hours or days.
If nothing is specified here the moment of termination will not be taken into account for selection.
W-Restart If Y is indicated here jobs are listed waiting for an automatic restart.
If N is specified such jobs do not appear in the list.
ended(O) If Y is indicated here jobs having terminated are listed but for which O-codes
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
64
are defined in the termination control and which are hence waiting for information from AJM/S. This information has not been sent yet.
If N is specified such jobs do not appear in the list.
late If Y is indicated here jobs in status late are listed. This status is set by AJM if the job had been selected by the scheduler on the basis of a schedule list type LATE. More information on LATE schedule list is enclosed in "Properties of Schedule List"on page 105 or "Operation Mode of the Scheduler"on page 321.
If N is specified such jobs do not appear in the list.
in error If Y is indicated here jobs which ought to be started by AJM are included in the list, but they could not be started because of an error (e.g. no "USER=" option).
If N is indicated such jobs do not appear in the list.
submitted If Y is indicated here jobs which were submitted by AJM but have not started yet are listed.
If N is indicated such jobs do not appear in the list.
The selection criteria listed above may be combined with each other in a different way according to their requirement. If only one field is filled in the other fields are automatically assigned with default values.
Selection according to job status is reset by overwriting all the fields with blanks.
locked If Y is indicated here only locked jobs are listed.
If N is specified only jobs not locked are listed.
If this option is missing both locked and not locked jobs are selected.
If a value is entered in this field and if options for job status are made concurrently only those jobs being in the selected status and locked or not locked are displayed.
Code This option is only interpreted for jobs being in status ended. Through this option you can make selection of jobs conditional on their completion code in addition.
If this option is missing terminated jobs are not restricted according to termination code.
One of the following comparison operators may be contained in the first field:
= equals
> is more than
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
65
>= more or equal
<> is not equal to
< is less than
<= less or equal
The second field contains the termination code. It refers to the comparison operator.
Sxxx System Abend (e.g. S222, S001, SX37)
System abend codes may also be specified in a generic way by entering an X in the second position. Accordingly a whole class of system abends may be described. Thus the option SX37 comprises all abends from S037 to SF37. In case of a generic option only the option = is permitted or makes sense as a comparison operator.
IPL Job was still active when an IPL was performed
FLUSH The job was terminated prematurely by JES because of an error situation (flushed).
BYP Job executed using BYPASS, i.e. it was ignored during net run.
Uxxxx User abend (e.g. U1111)
Cxxxx Completion code (e.g. C0004, C0012)
The following applies to AJM:
Sxxx > IPL > FLUSH > BYP > Uxxxx > Cxxxx .
The "x" stands for each character that is possible in this position.
Instead of the above listed termination codes those codes being reported by AJM/S may be queried:
Oxxxx O-code (e.g. O0001, O4711)
O-codes can be defined in AJM/S. You will find more precise information in the AJM/S user manual.
JFAIL Job was aborted prior to starting (e.g. by cancel).
JCLER Job was not started by JES because of JCL error.
ABNRM Job was started by the system, but the address space ended abnormally without any termination message.
The following applies to AJM:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
66
JCLER > JFAIL > ABNRM > Oxxxx .
The "x" stands for each character that is possible in this position.
TT = OK If Y is indicated here terminated jobs are only listed if they ended with termination type OK.
If N is specified terminated jobs are only listed if they did not end with termination type OK. When jobs were not terminated this option will not be analysed.
If this option is missing there is no restriction for terminated jobs according to termination type.
Preparation selection depends on status of job preparation
Only those jobs are selected being in specified preparation status at the moment of the query.
If a value is entered in this field and if further options for job status are defined concurrently only those jobs being in corresponding job status and concurrently in corresponding preparation status of job are selected.
Note: This selection line will only be displayed if AJM/P is installed.
required If Y is indicated here only jobs are listed having set the condition "preparation required" on Y in their definition.
If N is specified only jobs are listed having set the condition "preparation required" on N in their definition.
If the option is missing the selection is independent of the option in the job definition.
valid If Y is entered here only jobs are displayed being "prepared validly" at the moment of query.
If N is entered only jobs are displayed being "prepared invalidly" at the moment of query.
If the option is missing the selection is independent of the current preparation status.
Selection by definition:
Only jobs are selected having included the following contents in their job definitions at the moment of query.
If there are several options only those jobs are selected meeting all search criteria simultaneously. If for instance name of calendar and logical resource are included only jobs or nets are listed which use both this calendar name and this resource.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
67
If a value is entered in one of these fields and if further options for status of net/job are defined concurrently only those nets matching the corresponding net/job status and including the corresponding definition contents are selected.
Example: If all active nets are selected and if a calendar name is specified furthermore only jobs are listed belonging to an active net and using this calendar in their definition.
Calendar Name of calendar
The name of calendar may be abbreviated by an asterisk (generic specification). If the field is filled in only those nets or jobs using this/these calendar(s) are displayed.
Using the line command D(EL) the entry may be deleted again.
Linkname Linkname
The linkname may be abbreviated by an asterisk (generic specification). If the field is filled in only those nets or jobs using this/these linkname(s) are displayed.
Using the line command D(EL) the entry may be deleted again.
temp.Lnk temporary linkname
The temporary linkname may be abbreviated by an asterisk (generic specification). If the field is filled in only those nets or jobs using this/these temporary linkname(s) are displayed.
Using the line command D(EL) the entry may be deleted again.
Targets. target system
The target system may be abbreviated by an asterisk (generic specification). If an option is made here only nets or jobs are displayed which are started on this target system.
Using the line command D(EL) the entry may be deleted again.
Rec.-Net Recovery Net
The name of the recovery net may be abbreviated by an asterisk (generic specification). If this field is filled in only nets or jobs are displayed for which the specified net is running as a recovery net.
Using the line command D(EL) the entry may be deleted again.
int.Dep.: Job internal predecessor
The internal predecessor may be abbreviated by an asterisk (generic specification). If this field is filled in only nets or jobs are displayed in which this internal predecessor is used.
Using the line command I(NS) further lines may be inserted, using R(EP) lines may be copied. Using the line command D(EL) a line may be deleted again.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
68
ext.Dep.: Job, Net
external job and / or net name
The external dependency may be abbreviated by an asterisk (generic specification). If this field is filled in only nets or jobs are displayed in which the external dependency is used. It is possible to fill in only the jobname or only the net name.
Using the line command I(NS) further lines may be inserted, using R(EP) lines may be copied. Using the line command D(EL) a line may be deleted again.
Jobvar Job variable
The name of the job variable may be abbreviated by an asterisk (generic specification). If the field is filled in only those nets or jobs using the specified job variable are displayed.
Using the line command I(NS) further lines may be inserted, using R(EP) lines may be copied. Using the line command D(EL) a line may be deleted again.
log.Res. logical resource
The logical resource may be abbreviated by an asterisk (generic specification). If the field is filled in only those nets or jobs using the specified logical resource are displayed.
Using the line command I(NS) further lines may be inserted, using R(EP) lines may be copied. Using the line command D(EL) a line may be deleted again.
DS-Trigg DS Trigger
DS trigger may be abbreviated by an asterisk (generic specification). If the field is filled in only those nets or jobs using the specified DSN trigger are displayed.
Ext.Trig External Trigger
Both type and subtype may be abbreviated by an asterisk (generic specification). If one of these fields is filled in only nets or jobs in which the corresponding external trigger is used are displayed.
Note: All input fields are linked by and. If you specify several external triggers in the filter only jobs or nets are listed in which all specified external triggers are used.
Using the line command D(EL) the entry may be deleted again.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
69
12.1 Net List
Using the filters described in the preceding chapter you obtain a listing of nets and jobs available. In this example the filter FILTNET was selected by the SEL line command. All nets belonging to the group USER1.AJMDEMO are listed.
AJM ----- Net List ---- Filter: FILTNET Test filter net list CMD===> SCROLL===> PAGEGroup: USER1.AJMDEMO ___ Net: DEMOREC end of net 29.10.92 13:32 OK ___ Net: DEMO01 end of net 29.10.92 13:32 OK ___ Net: DEMO02 end of net 29.10.92 13:43 C0004 ALT ___ Net: DEMO03 active 29.10.92 13:58 LCK ___ Net: DEMO04 end of net 29.10.92 14:00 M-RESTART ___ Net: DEMO05 end of net 29.10.92 14:54 OK ___ Net: DEMO06 end of net 29.10.92 15:01 S0C4 Ext-S ___ Net: TEST end of net 07.09.92 19:01 OK LCK
Lines are structured as follows:
___ Net: Net name Status Date Time Code Termin. man.Act. Line cmd.
Net name
name of net
Status Status describes status of net for which there are 3 possibilities:
end of net
Net is terminated because AJM has recognized end of net or because of an explicit NETREL.
When a job which is not a predecessor of another job ends with termination type OK and when no other job of the net is active at that moment and there is no recovery to be executed so this job is considered the last job in the net. The net is then terminated.
active net is active, i.e. end of net has not been reached yet
blank net has never run or has been reset manually (command CLR) Date / Time
date and time depend on status of net
Date of start date of start of the first job started (active net)
Time of start time of start of the first job started (active net)
12 Net / Job Processing
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
70
date of end date of end of the last job terminated (net is terminated)
time of end time of end of the last job terminated (net is terminated)
Code highest error code occurred within the last net run
This column remains empty if all jobs of this net ended with condition code zero. BYP (BYPASS) for jobs being ignored is not displayed either.
The following error codes are possible:
Sxxx system abends
IPL Job was still active when an IPL was performed
FLUSH error in JCL
Uxxxx user abends
Cxxxx completion codes
The following always applies to AJM: Sxxx > IPL > FLUSH > BYP > Uxxxx > Cxxxx
"x" stands for every character possible in this position.
If none of the above mentioned error codes occurred during net run the following codes may be displayed:
Oxxxx O-Codes from AJM/S
JFAIL job was aborted prior to execution
JCLER job was refused by JES because of JCL error
ABNRM Job was started by the system, but the address space ended abnormally without any termination message.
The following always applies to AJM: JCLER > JFAIL > ABNRM > Oxxxx
"x" stands for every character possible in this position.
Termin. highest termination type occurred within the net
There are the following termination types:
OK normal end of job
All jobs within this net run terminated normally. A possible restart was performed successfully.
ALT alternative path
A defined alternative path was passed during net run.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
71
NETREL there was a premature termination of the net run
The status of all jobs being performed until the premature end of net was reset. The net may be restarted again (automatically by the scheduler or manually).
Besides there are different termination types which may be displayed on the basis of a restart / recovery situation. If a restart or a recovery has to be executed AJM waits till no job of the original net is active any longer. Then AJM starts the recovery net or executes therestart. The different possibilities of restart / recovery are described in "Restart / Recovery Functionality"on page 317.
R-OK recovery was performed successfully, afterwards like OK
R-ALT recovery was performed successfully, afterwards like ALT
R-NRL recovery was performed successfully, afterwards like NETREL
If an additional external is started, the following termination types may be displayed. Unlike the situation described above AJM does not wait during start of an external net if the original net has become idle. You will find a detailed description of these functions in "Termination Code - Control"on page 297.
EXT-A
external net asynchronous
An external net was started. As soon as the external net has started jobs of the original net are continued to be submitted. The end of the external net is not waited for.
EXT-S
external net synchronous
An external net was started. As soon as the external net has properly ended (termination type OK) the dependent jobs of the original net are continued to be submitted. The independent paths of the original net are continued being processed the whole time.
man. Act.
manual actions
A display only appears if a manual action is required:
M-RESTART
There must be a manual action for this net as at least one job stands on STOP, R-STOP, R-LIMIT or R-FAIL.
Using the line command RMO and a subsequent REX a manual restart may be initiated. You will find further information in "Manual Restart"on page 323 and in "Restart Modification (Manual Restart)"on page 142.
Using the line command CLR a manual net clear may be performed, i.e. the net is reset and will be available again for scheduling. A restart is no longer possible.
LCK This net has been locked manually.
You may undo this lock using the line command UNL (Unlock).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
72
PLK This net is locked because of a preparation, at present an AJM/P preparation dialog is executed.
By querying the status (STA on job level) you may find out who is holding the preparation lock. If the status is no longer valid (e.g. because the corresponding user was cancelled) you may reset the lock manually by using the line command PUL (Preparation Unlock).
Line Cmd.
Line command entered last (only particular commands)
12.1.1 Line Commands in Net List Up to now all displays which are possible in this panel have been described. A description of all line commands which may be initiated for the respective net is following.
Line commands are divided into the following four categories:
• display and modify net/job definitions • modify net status • query net status or net run • documentation of nets and AJM/P specific actions
12.1.1.1 Line commands for display and modification of net/job definitions: B(RW) Display net and job definitions
D(EL) Delete net
EXT Store extraction of definitions into file
Net definitions are stored in standardized form in a file (Userid.AJM.EXTRACTx.LIST, x=numeration). Using this file net definitions can be transferred into another AJM system or be duplicated for other homogeneous nets (see Appendix D. "Command / Batch / Program Interface"on page 363).
I(NS) Generate new net
First you obtain the panel for new creation of a net (cf "Defining and copying new nets"on page 87). You have to specify the name of the new net and to which group it is to be allocated. Name of group has already been preassigned on display, it is adopted from the associated net list. After specifying name and group for the new net an empty net update panel is displayed.
PLS Plausibility check
Using this command a plausibility check on net level is performed.
The following items are checked per job:
1. Is the indicated calendar defined ? 2. Does a JCL definition exist for this group and are there defined both the specified
linkname and temporary linkname ? 3. Does the specified member exist in one of the files belonging to the linkname and does
it also contain the corresponding job ? 4. Is the "USER=" option included in this job and permitted ?
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
73
5. May JCL be prepared or does an error occur when replacing AJM variables ? 6. Are STC options correct for "System" and "Command" ? 7. Do all specified recovery nets exist ? 8. Will an alternative path specified in the termination control be taken up from an internal
dependency, too ? 9. Do all specified internal predecessors exist ? 10. Is the specified alternative path defined in the termination control of the internal
predecessor ? 11. Do all specified external dependencies exist ? 12. Do all specified job variables exist ? 13. Are the specified job variables currently valid ? 14. Do all specified logical resources exist ? 15. Does the specified logical resource not require more units than are available at most ? 16. In which SEM filters are contained the specified dataset triggers? 17. Which jobs may generate a start or an end of net ?
After checking these items a file will be displayed listing the result of the plausibility check including all recognized problems.
PRT Print job definitions
R(EP) Generate new net with identical definitions
First you obtain the panel for new creation of a net (cf "Defining and copying new nets"on page 87). You have to specify the name of the new net and to which group it is to be allocated. Name of group has already been preassigned on display, it is adopted from the associated net list. After specifying name and group for the new net an empty net update panel is displayed.
It is also possible to specify another group name for the new net. Consequently you can copy nets from one group into another group (provided you have the corresponding authorizations for both groups).
S(EL) Display job list
U(PD) Display net and job definitions (in update mode)
You get into the net update panel containing complete definitions for this net. This panel is described in "The Net/Job Update Panel"on page 88.
12.1.1.2 Commands for Modification of Net Status: CLR Reset net manually
A net run which cannot properly be completed by the scheduler because of errors in job execution (JCL error, job abend etc.) or because of incorrect job definitions (e.g. job linking) will be reset manually using this command. The current net run is aborted. Subsequently the net may be restarted again (automatically by the scheduler or manually by STR/RUN).
Note: Additional important hints on the action of CLR commands as well as hints on correct use are described in "The CLR Command"on page 333 or Appendix B. "Tips and Tricks"on page 343.
LCK Lock all jobs in the net for selection
When entered on net level this command causes all jobs recently coded in this net to be locked. If a job is in status locked it is not selected by the scheduler even if its schedule conditions are
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
74
satisfied.
UNL Release all locked jobs of the net for selection
When entered on net level this command causes the status locked to be cleared for all jobs recently coded in this net. If schedule conditions of a job in this net are satisfied this job will be started.
PUL Clear preparation lock of net manually (Preparation Unlock)
This command may only be used if the preparation lock set for the net is no longer valid (e.g. because corresponding user was cancelled during execution of an AJM/P preparation dialog). Normally the lock will automatically be cleared by the end of a preparation.
RMO manual restart (Restart Modification)
If a net had been stopped because of an error situation a manual restart may be performed using this function. A change of restart attributes is also possible. You will find further information in "Manual Restart"on page 323 and in "Restart Modification (Manual Restart)"on page 142.
12.1.1.3 Commands for query of net status: FOR Forecast of start time
AJM determines the next expected start of the jobs in this net. The period under review for forecast comprises the next 366 days. You will find further information in "Job and Net Run Forecast"on page 141.
LOG Request of AJM logging function
You get into the selection panel of the AJM logging function. Fields for group name and net name are preassigned with current names. Further information for AJM log is available in "Logging"on page 175.
OUT Display of job outputs
You switch to the output management system (e.g. AJM/S) installed in your data center. If no corresponding product is used in your data center an error message will appear when calling it (message number AJM0217E).
RSI Restart simulation
Using this command you can test how a restart of AJM would be executed. This simulation can only be performed for a net that is not active. Restart simulation is described in "Restart Simulation"on page 146.
STT Statistics information
Statistics information is displayed for every job which was present during the last net run. You will find a description of this display in "Job and Net Statistics"on page 138.
12.1.1.4 Commands for documentation of nets and for invocation of AJM/P specific functions:
Note: These commands are only available if AJM/P is installed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
75
DAC Display of action hints for the net
Using this command you can view the action hints retained for the net. They serve as a support for the behaviour in case of error. If there are no action hints for the net a corresponding message will be displayed.
DCU Creating and modifying net documentation
Using this command you have the possibility of creating a net documentation. The documentation may be divided into
• a general documentation to describe purpose and execution of the net • action hints providing information for procedure in case of error
You will find further information in "Documentation Function (only with AJM/P)"on page 69.
DEX Extract net documentation into file
Net documentation is stored in standardized form in a file (Userid.AJM.EXTRACTx.LIST, x=numeration). Using this file net documentation can be transferred into another AJM system or be duplicated for other nets (see Appendix D. "Command / Batch / Program Interface"on page 363).
DOC Display of general documentation for the net
Using this command you may view the general documentation for the net. It includes a description about purpose and procedure of the net. If there is no documentation for the net a corresponding message will be displayed.
PRP Execution of an AJM/P preparation dialog
If a preparation dialog is defined for the net the latter will be executed. If the preparation dialog is run completely and error-free all the jobs of the net get the status prepared validly. A hint message at the end of the preparation dialog displays for how many net runs or up to which date preparation will be valid. You will find detailed hints on the subject preparation dialog in "Perform Preparation Dialog"on page 279.
PRU Create and modify an AJM/P preparation dialog
You get into the update panel for the definition of a preparation dialog. This is described in detail in "Defining Preparation Dialogs and Packages"on page 229.
PVR Reset status prepared validly for all jobs of the net
PVS Set status prepared validly for all jobs of the net
This command does not require any preparation dialog. The input panel for this function is described in "Set Preparation Valid Manually"on page 148.
12.2 The Net / Job List
Using the filter FILTJOB depicted in "The Selection Filter"on page 55 you will also obtain in addition to the nets a listing of the jobs. A short information will be displayed to each job.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
76
AJM ----- Net/Job List ---- Filter: FILTJOB Test filter job list CMD===> SCROLL===> PAGEGroup: USER1.AJMDEMO ___ Net: DEMO01 active 30.10.92 09:17 OK ___ Job: USRJOBA1 30.10.92 09:16 OK ___ Job: USRJOBB1 active 30.10.92 09:17 SYX1 ___ Job: USRJOBC1 Group: USER1.AJMDEMO ___ Net : DEMO02 end of net 30.10.92 09:23 C0004 ALT ___ Job: USRJOBA1 30.10.92 09:23 C0004 ALT ___ Job: USRJOBB1 29.10.92 13:35 OK ___ Job: USRJOBB2 30.10.92 09:23 OK Group: USER1.AJMDEMO ___ Net: DEMO03 ___ Job: JOBLCKA1 29.10.92 13:35 LCK ___ Job: JOBLCKB1 LCK ___ Job: JOBLCKC1 LCK Group: USER1.AJMDEMO ___ Net: DEMO04 active 30.10.92 09:23 M-RESTART ___ Job: RESTARA1 ended 30.10.92 09:23 OK ___ Job: RESTAR37 ended 29.10.92 09:24 SB37 Stop Group: USER1.AJMDEMO ___ Net: DEMO05 end of net 30.10.92 09:24 M-RESTART ___ Job: BYPJOBA1 30.10.92 09:23 OK ___ Job: BYPJOBB1 29.10.92 09:23 BYP OK ___ Job: BYPJOBC1 29.10.92 09:24 OK
The lines are structured as follows:
___ Net: Net name Status Date Time Code Termin. man.Act. Line cmd___ Job: Job name Status Date Time Code Termin. man.Act. Line cmd
The structure of the first line corresponds to the one described in the previous net list.
Information coded in the job line are described hereafter:
Job name
Name of job
Status Status of job
When the net is idle, i.e. when end of net is reached or net was reset by using a CLR command the column will remain empty.
When a net is being processed (net status active) the status of each job will be displayed in this column. It displays progression of each job executing in the net and possible occurrence
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
77
of errors during execution.
The following information on job status may be displayed:
active Job is active
active(R) Job is active, it was started again because of an automatic or manual restart.
ended Job has already executed within recent net transaction.
ended(R) Job has already run within recent net transaction, it was started again because of an automatic or manual restart.
ended(O) Job has already run within recent net transaction but is waiting for information from AJM/S (O-Codes).
late Owing to the job definition it has been recognized that this job is late. Information for LATE schedule list through which such a status can be generated is enclosed in "Properties of Schedule List"on page 105 or "Operation Mode of the Scheduler"on page 321.
submitted Job was submitted to the target system.
pending Job is being transferred to external system or started task was selected for start but start command has not been executed yet.
-blank- Within recent execution of net the job was not or not yet selected.
C-error During connection setup to the external system (AJM agent) a non-recoverable error has occurred. Use line command STA to obtain error information.
C-error(R) During connection setup to the external system (AJM agent) a recoverable error has occurred. AJM automatically attempts a new connection setup after 1 minute.
W-Restart A restart is performed for the net. The job is part of the restart but has not been restarted yet.
W-Recovery
The job has required execution of a recovery net and and is waiting for its end.
in error When the job was selected by AJM an error situation was detected (through line command STA exact error cause is displayed, see "Job Status Information"on page 127)
Hint: An EXE command does not change the job status.
Date / time
The meaning of date/time display depends on net or job status. The following times are displayed:
Start time Job status: active/active(R)
Date/time display at what time the job has begun running.
End time Job status: ended/ended(R)/ended(O)/W-Restart
Date/time display at what time the job has ended. In case of repeated execution within a restart the end of the last job run is displayed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
78
Submit time
Job status: submitted
Date/time show at what time the job was submitted to JES or to the external system for the last time.
Selection time
Job status: pending
Date/time show at what time transfer of job to external system is done or at what time started task was selected.
Selection time
Job status: in error
Date/time show at what time job was selected by scheduler for the last time but could not be executed because of an error condition.
Note: When the net is in status "end of net" the fields date/time are displayed in different colours which depends on the fact if the job was executed or not during the last net run. If the job was executed the display appears in light colour (turquoise), otherwise in normal intensity (dark blue). This optical distinction makes it possible to quickly capsulate the size of the last net run.
Code As long as the job is active the name of the system on which it is running appears in this place. Otherwise termination code of the last job run.
Note: AJM always uses the completion code of the last executed jobstep.
Sxxx System Abend Code
IPL Job was still active when an IPL was performed
FLUSH Job was terminated prematurely (flushed) because of an error situation of JES.
BYP Job executed as a BYPASS, i.e. it was not really performed during the last net run but bypassed logically.
Uxxxx User Abend Code
Cxxxx Completion Code (C0000 is not displayed.)
What applies to AJM: Sxxx > IPL > FLUSH > BYP > Uxxxx > Cxxxx .
The "x" stands for each character which is possible in this place.
Besides the following codes could be displayed:
Oxxxx O-Codes from AJM/S
JFAIL Job was aborted prior to execution
JCLER Job was refused by JES because of JCL error
ABNRM Job was started by the system, but the address space ended abnormally without any termination message.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
79
What always applies to AJM: JCLER > JFAIL > ABNRM > Oxxxx
The "x" stands for each character which is possible in this place.
Termin. Termination type of job
There are the following termination types:
OK normal end of job
Job terminated normally in this net run. A possible restart was performed successfully.
ALT alternative path
Job terminated with an ALT condition. As a result the net was continued on a defined alternative path.
Restart Restart was initiated
Job terminated with restart condition. At present the net is rerun from the defined restart point.
STOP Net was stopped
Job terminated with an error which resulted in a stop of the net run. If this situation occurs the subsequent jobs of the net will not be started any more. If no further jobs are active in the net when the error occurs the net obtains the status M-RESTART. A manual action is then required to correct the net run. If other jobs are still active when the error occurs they are waited for to terminate before setting the net status.
J-WAIT Rerun of job after defined latency
N-WAIT automatic restart after defined latency
The job is a trigger for a net restart. The net will be quiesced for a defined latency, afterwards net restart takes place.
NETREL net run was terminated prematurely
The status of all jobs being performed until the premature end of net has been reset. The net may be restarted again (automatically by the scheduler or manually).
Hereafter there are different termination types which may be displayed on the basis of a restart / recovery situation. If a restart or a recovery has to be executed AJM waits till no job from the original net is active any longer. It is only then that the recovery net will be started or the restart executed. The different possibilities of restart / recovery are described in "Restart / Recovery Functionality"on page 317.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
80
R-ACTIV
a recovery net is active for this job at present
R-PEND
a recovery net was required for this job, but the recovery net has not been started yet. A possible reason may be that the recovery net is being active for another recovery required concurrently.
R-OK Recovery was performed successfully, afterwards like OK
R-ALT Recovery was performed successfully, afterwards like ALT
R-STOP
Recovery was performed successfully, afterwards like STOP
R-RST Recovery was performed successfully, afterwards net restart took place
R-NRL Recovery was performed successfully, afterwards like NETREL
R-LIMIT
maximum number of restart attempts for this job was achieved
R-FAIL a restart attempt failed (you will find more precise information about the cause in the AJM-Log)
If an additional external is started, the following termination types may be displayed. Unlike the situation described above AJM does not wait during start of an external net if the original net has become idle. You will find a detailed description of these functions in "Termination Code - Control"on page 297.
EXT-A
external net asynchronous
After termination of this job an external net was started by AJM. Regardless of that further jobs of this net were / are also started.
EXT-S
external net synchronous
After termination of this job an external net was started by AJM. The dependent jobs were / are only started after proper termination (termination type OK) of external net.
man.Act. manual actions
A display only appears if a manual action was performed by the administrator affecting or having affected the automatic run of the net.
BYP This job was set on BYP manually. During the next selection jobs having this condition are always ignored by the scheduler using Bypass regardless of the type of schedule list (S(ubmit)/B(ypass)) that was satisfied and resulted in this selection. The command BYP only applies to one single net run.
LCK Job is locked Line Cmd.
line command entered last (only particular commands)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
81
12.2.1 Line Commands in Net /Job List In the net/joblist line commands are possible on net level and on job level. All commands on net level which are possible in the net list (see "Line Commands in Net List"on page 72) may be used as well in the net line.
The following commands are possible in the job line:
12.2.1.1 Commands for Maintenance of Job Definitions and JCL BRJ Display JCL member
Using this line command you can view the member in which standard JCL is contained (Browse mode).
For Started Tasks you may have the procedure displayed if you have provided corresponding definitions (s. "Standard and temporary JCL"on page 96).
Temporary JCL will be displayed if you enter the line command BRJ in the browse / update panel prior to "Temp. JCL" line.
B(RW) Display job definitions
D(EL) Delete job definitions
EDJ Edit JCL member
Using this line command you may edit (Edit mode) the member which is to contain the standard JCL.
For Started Tasks you may have the procedure edited if you have foreseen corresponding definitions (s. "Standard and temporary JCL"on page 96).
Temporary JCL may be edited if you enter the line command EDJ in the browse / update panel prior to "Temp. JCL" line.
EXT Extract job definitions into file
Job definitions are stored in standardized form in a file (Userid.AJM.EXTRACTx.LIST, x=numeration). Using this file job definitions can be transferred into another AJM system (see Appendix D. "Command / Batch / Program Interface"on page 363).
I(NS) Generate new job
First you obtain display of panel for new creation of a job. You have to specify name of new job. Name of net and name of group have already been preassigned on display. They are adopted from the associated net/job list and cannot be modified. After specifying the new jobname you get into the empty job update panel (the jobname is entered).
PRT Print job definitions
R(EP) Generate new job with identical definitions
First you obtain display of panel for new creation of a job. You have to specify name of new job. Name of net and name of group have already been preassigned on display. They are adopted from the associated net/job list and cannot be modified. After specifying the new jobname the job update panel is displayed with copied data of original job.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
82
S(EL) Display job definitions (like BRW)
U(PD) Modify job definitions
You get into the job update panel containing the complete definitions for this job.
12.2.1.2 Commands for Manual Job Control BRN BYP with RUN
This job is recorded as run with BYPASS, schedule conditions internal dependency and external dependency will be set valid in the subsequent jobs.
BYP Bypass job during next selection
During next selection the job will be definitely ignored by the scheduler regardless of type of schedule list having led to selection.
CLR Reset job manually
The current status of the job in AJM is reset; the job will be available again for a restart subsequently (manually or automatically by the scheduler).
Note: Additional important hints on the action of CLR commands as well as hints on correct use are described in "The CLR Command"on page 333 or Appendix B. "Tips and Tricks"on page 343.
EXE Start job (alone)
The job is started immediately without checking its status. Consequently this command will also be performed when the job is locked or active at that moment.
JCL of the job is read, AJM variables are resolved and the result is submitted. There is no further control. There is neither a modification of the status of the job nor statistics information stored. Only one log record will be generated indicating that the corresponding job was submitted using EXE. Thus EXE acts as a direct submit from the editor with an additional interpretation of AJM variables.
The mandatory start by EXE does not affect the schedule interval. When the next job selection is calculated by the scheduler the job start with EXE is not taken into account.
LCK Lock job for selection
If a job is in status locked it will not be selected by the scheduler even if its schedule conditions are satisfied.
If the locked job is part of an active net and further jobs follow in the logical run (locked job is an internal predecessor) the execution of the net will be stopped as soon as this job is reached. When the lock is released the execution may be continued.
RES Delete files which were newly created during last job run
RES may only be used with jobs having activated the option for recording new files in their job definition ("DSN track: Y").
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
83
RUN Start job (with impact on other jobs, without impact on the schedule interval)
The job is started immediately without checking any schedule list for validity. Logical resources will not be allocated during job execution!
If the job terminates the schedule conditions internal dependency and external dependency are set valid for subsequent jobs, analogously to normal scheduling.
The mandatory start by RUN does not affect the schedule interval. When the next job selection is calculated by the scheduler the job start with RUN is not taken into account.
Example: If a job with start conditions daily and after 08:00pm is started prior to this time using RUN this job may be selected again by the scheduler on the same day after 08:00pm.
RUN is refused if the job is locked. RUN is not permitted either when the net is still active and this job has already run.
Note: The command is also executed even if the schedule automatism was locked by the AJM administrator. After a successful end of job the schedule conditions internal dependency (jobs in own net) and external dependency (jobs in other nets) are set valid in subsequent jobs. If the schedule automatism is reactivated these conditions are analysed. Consequently a RUN may possibly initiate a deferred net run.
STR Start job (with impact on other jobs and with impact on schedule interval)
The job is started immediately without checking any schedule list for validity. Logical resources will not be allocated during job execution!
If the job terminates the schedule conditions internal dependency and external dependency are set valid for subsequent jobs, analogously to normal scheduling.
The mandatory start by STR also affects the schedule interval. When the next job selection is calculated by the scheduler the job start with STR is taken into account. As a basis for calculation of the next job selection date/time of STR command is used.
Example: If a job with starting conditions daily and after 08:00pm is started using STR this job cannot be started again on the same day since the condition daily prevents the selection.
STR is refused when the net / the job is locked. STR is not permitted either when the net is active and this job has already run.
Note: The command is also executed even if the schedule automatism was locked by the AJM administrator. After a successful end of job the schedule conditions internal dependency (jobs in own net) and external dependency (jobs in other nets) are set valid in subsequent jobs. If the schedule automatism is reactivated these conditions are analysed. Consequently a STR may possibly initiate a deferred net run.
UNL Release job again for selection
After release via UNL command a job having the status locked may be restarted (by the user or by AJM). If the schedule criteria of this job are satisfied it is immediately started by AJM.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
84
12.2.1.3 Commands for querying job status FOR Forecast of start time
AJM determines the next expected start time of the job. The period under review for forecast comprises the next 366 days. You will find further information in "Job and Net Run Forecast"on page 141.
JLG Request of joblog system
You branch to the dialog of the joblog system installed in your data center. By default SDSF is invoked in a JES2 environment and JVS (a product of T-Systems ITS GmbH) in a JES3 environment. If none of these joblog systems is installed an error message appears.
LOG Log information by AJM
You get into the logging dialog in which the fields group, net and job are already preallocated. You will find further information for AJM log in "Logging"on page 175.
OUT Display of job output
This function can only be used when an output management system (e.g. AJM/S by T-Systems ITS GmbH) is installed in your data center.
ROJ Display of JCL of the last job run (read old JCL)
JCL of job is displayed such as it was transferred to JES by AJM during the last submit, i.e. including JCL modifications (resolved AJM variables, check information inserted by AJM) performed by AJM during submit.
Processed JCL of the last job start is always saved by AJM. In case of an automatic restart it is used to be able to rerun the job in unaltered form.
For started tasks name of system and start command are displayed as they were set during last start. This information, too is saved by AJM in case of restart.
SHJ Display of processed JCL (show JCL)
JCL of the job is displayed in processed form, i.e. JCL is read from specified member and AJM variables which are contained in this member are resolved. The display corresponds to the form in which AJM transfers the job to JES at the moment of submit. This command makes it possible to check correct resolution of AJM variables in order to avoid syntax errors and incorrect resolutions at the moment of submit.
For started tasks name of system and start command are displayed. On this occasion used AJM variables are replaced.
STA Display of current job status
Information about job status (contains detailed error messages), schedule status ("Why does the job not start?"), the last run time, the last termination code and the termination type of the job is displayed. When AJM/P is installed the current status of job preparation is displayed in addition.
You will receive further information about this display in "Job Status Information"on page 127.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
85
STT Statistics information
You will receive an explanation of this display in "Job and Net Statistics"on page 138.
The following line commands are only available if AJM/P is installed:
DAC Display of action hints for this job
Using this command you may view the action hints retained for this job. They serve as a support for the behaviour in case of error. If there are no action hints for the job a corresponding message will be displayed.
DCU Creating and modifying job documentation
Using this command you have the possibility of creating a job documentation. The documentation may be divided into
• a general documentation to describe purpose and execution of the net • action hints providing information for procedure in case of error
You will find furhter information in "Documentation Function (only with AJM/P)"on page 69.
DEX Extract job documentation into file
Job documentation is stored in standardized form in a file (Userid.AJM.EXTRACTx.LIST, x=numeration). Using this file job documentation can be transferred into another AJM system or be duplicated for other similar jobs (see Appendix D. "Command / Batch / Program Interface"on page 363).
DOC Display of general documentaiton for the job
Using this command you may view the general documentation for the job. It includes a description about purpose and procedure of the job. If there is no documentation for the job a corresponding message will be displayed.
12.3 Job List
You will receive the job list if you select a single net with S(EL) either in the net list or in the net / job list. You will receive the desired net with all associated jobs.
If you select the net DEMO01 you will receive the following job list:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
86
AJM ------ Job List ----- Group: USER1.AJMDEMO Net: DEMO01 Job: * CMD===> SCROLL===> PAGEGroup: USER1.AJMDEMO ___ Net: DEMO01 end of net 30.10.92 09:17 OK ___ Job: USRJOBA1 30.10.92 09:16 OK ___ USRJOBB1 30.10.92 09:16 OK ___ USRJOBC1 30.10.92 09:17 OK
Essentially you may use the same line commands as in the net/job list. The only difference is that your job definition will be displayed with S(EL) (browse function).
Besides special selection criteria (e.g. logical resources) which you coded in the entry-level filter are no longer effective. You obtain all the jobs belonging to the selected net.
12.4 Job and Net Definition
12.4.1 Introduction In this chapter the way of defining nets, jobs and started tasks in AJM is described. The following has to be observed:
• In AJM a net may consist of as many jobs and started tasks as you like. In a net both started tasks and jobs may occur. Each net is identified through its net name unambigiously, i.e. in an AJM system a particular net name may occur only once. Normally started tasks are exactly treated like jobs. When it is talked about jobs hereafter statements also apply to started tasks. Exceptions are described explicitly.
• A job is always assigned to a net and within a net each jobname may occur only once. But the same jobname may be used in different nets.
• Started tasks are also assigned to a net. They obtain a "jobname" which has to be unambigious within this net. The same jobname may be used in different nets however. The assigned jobname has no reference to the invoked procedure. The start command is completed by the parameter "JOBNAME=jobname". Thus the started task runs under the jobname defined in AJM. You will find further hints on treatment of started tasks in "Scheduling of Started Tasks"on page 332.
• Usually a number of jobs belonging together logically and executing in a definite sequence specified by the user is defined in a net. The net as a whole then forms a unit, it represents a logical overall execution. But it is also possible to define jobs in a net without fixing a job stream. Each job may execute according to its own conditions independent of other jobs of the net. Thus the expression "net" may also be used to combine jobs belonging together functionally but executing independently of each other in a common genus.
• Within a net run a job may be selected only once. Exception: In case of an automatic or manual restart a job may possibly run several times. Further hints on the control of a net run by the scheduler are contained in "Net Run"on page 331.
• While your net is being displayed in update mode another user may invoke the same net for processing. As soon as you want to rewrite a modification, however, AJM verifies if modifications have been performed in the meantime. In this case you obtain a panel listing all
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
87
the modifications (new / modified / deleted jobs). Then you may either go back to the net or the job update panel using PF3 and subsequently abort modifications using CANCEL or confirm using the Enter key that your modifications are to be adopted. Then all your definitions are stored. Jobs being added meanwhile have to be deleted manually.
Hint: Using the NET jump command you may branch from the confirmation panel to the filter list and access to the modified net from there. Thus you may get a general idea of the modifications.
12.4.2 Defining and copying new nets Creating new nets is done via the following panel:
AJM ------------------------- Definition of a new Net ------------------------CMD===> Group: SAZ12.DIAG_______ Net: AJSTM3__
There it is determined how the new net is to be called and to which group it is to be assigned.
Creating the first net:
If there is no net created yet for a group you have to proceed as follows:
Define a selection filter and fill in the name of the new group. Enter any net name or * in the field Net. Select this filter using S(EL). Subsequently the panel for definition of a new net is displayed. The field has already been preassigned with the group name from the selection filter. Fill in the desired net name and push the Enter key. An empty net update panel will then be displayed and you may begin entering the definition of the jobs.
Note: If you start a query using a filter but you have not got an access authorization for none of the nets found the panel for definition of a new net will also be displayed.
Creating further nets:
If nets exist already for a particular group you may create further nets by entering the line command I(NS) in front of the net name either in the net list or in the net/job list. The panel for definition of a new net will be displayed with group name and net name already preassigned. Overwrite the net name with the desired name of the new net. If you want to create the net under an other group you may also overwrite the group name (a corresponding authorization is required for both groups). Subsequently an empty net update panel will be displayed and you may begin entering the definition of the new net.
Copying of nets:
If you want to adopt definitions of an existing net into a new net enter the line command R(EP) in front of the net name either in the net list or in the net/job list. The panel for definition of a new net will be
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
88
displayed with group name and net name already preassigned. Overwrite the net name with the desired name of the new net. If you want to copy the net into another group you may also overwrite the group name (a corresponding authorization is required for both groups). Subsequently the net update panel will be displayed with all the job definitions from the original net which may then be adapted to the requirements of the new net.
12.4.3 The Net/Job Update Panel The net/job update panel is the central panel for creating and modifying jobs and nets. Here all the attributes and all the start criteria of jobs as well as logical dependencies between the individual jobs of the net are specified.
The panel has the following structure:
AJM ------------ Net Update ----------- Group: USER1.AJMDEMO Net: NETNEW CMD===> SCROLL===> PAGE X ALL _ JCD _ STC _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: ________ Seq.No: ____ Calendar: ________ Trace: _ (y/n)___ JCL : Link: ________ Member: ________ ___ Temp. JCL: Link: ________ Member: ________ : from: ________ _____ to: ________ _____ ___ Targetsys: Name: ____________________________________________________________ STC : Cmd.: ____________________________________________________________ Preparat.: req.: N (y/n) ______ ___ Restart : Attr: __ (RS/RR) Limit: 01 DSN track: N (y/n) del: N (y/n) ___ Term-Cntl: Code: __ _____ Action: ______ Param: ___ Rec-Net: ________ ___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: __ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: _ WD: _ HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: _ ___ rel.Day : y/n: _ Type: __ Wk: __ Mon: ___ Year: ____ ___ Time : y/n: _ after: _____ before: _____ once: N (y/n) ___ Date : y/n: _ from: ________ to: ________ ___ Jobvar : Name: _________________ D: __ L: __ OP: __ : ____________________________________________________________ ___ log.Res.: Name: _________________ No: ____ ___ DS-Trigg: DSN: ____________________________________________ : Durat: ___ Hrs __ Min ___ Ext.Trig: Type: ________ Subtype: ________ : Durat: ___ Hrs __ Min : Parm1: __ _______________________________________________ : Parm2: __ _______________________________________________
Normally only few entries are necessary out of the whole host of possible entries to define a job or a simple net. It is possible to adapt the size of displayed fields according to one's own personal needs (see "Selection of Display"on page 90).
Apart from the above depicted net update panel there is also the job update panel. The job update panel has the same structure as the net update panel. You obtain it e.g. when you select a job in the net/job list using UPD (see "The Net / Job List"on page 75).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
89
The basic difference is that you obtain definitions of all jobs belonging to the net via the net update panel. The job update panel, however, only contains definitions belonging to a particular job, besides the job name must not be modified.
12.4.4 Browse and Update Mode The net update or job update panel may be invoked both in browse mode and in update mode.
In update mode the complete panel is displayed, i.e. all definition lines which are possible in the panel are displayed. Definition lines to which no values are assigned are displayed blank. All definition fields may be overwritten.
The update mode is invoked by entering the line commands U(PD), I(NS) or R(EP). Using the command BRW in the command line you can switch into browse mode.
In browse mode only those definition lines are displayed which contain parameters. All empty definition lines are blanked out. The definition fields cannot be overwritten.
The browse mode is invoked by entering the line commands S(EL) (Select) or B(RW) (Browse). Using the command UPD in the command line you can switch to update mode.
Note: Both in browse mode and in update mode the size of displayed lines may be limited additionally. How to do this is described in the following chapter.
The following example illustrates the differences between browse mode and update mode:
Browse Mode:
AJM ----- Job Update ---- Group: USER1.AJMDEMO Net: DEMO03 Job: USRJOBA1 CMD===> SCROLL===> PAGE X ALL _ JCD _ STC _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USRJOBA1 Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ JCL : Link: LINK01__ Member: DEMO01__ ___ Preparat.: req.: N (y/n) ______ ___ Restart : Attr: __ (RS/RR) Limit: __ DSN track: N (y/n) del: N (y/n) ___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ Interval: Min: __ Hrs: __ Day: 001 WD: __ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: Y WD: * HD: _ RD: _
Update Mode:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
90
AJM ----- Job Update ---- Group: USER1.AJMDEMO Net: DEMO03 Job: USRJOBA1 CMD===> SCROLL===> PAGE X ALL _ JCD _ STC _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USRJOBA1 Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ JCL : Link: LINK01__ Member: DEMO01__ ___ Temp. JCL: Link: ________ Member: ________ : from: ________ _____ to: ________ _____ ___ Targetsys: Name: ____________________________________________________________ STC : Cmd.: ____________________________________________________________ Preparat.: req.: N (y/n) ______ ___ Restart : Attr: __ (RS/RR) Limit: __ DSN track: N (y/n) del: N (y/n) ___ Term-Cntl: Code: __ _____ Action: ______ Param: ___ Rec-Net: ________ ___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: 001 WD: __ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: Y WD: * HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: _ ___ rel.Day : y/n: _ Type: __ Wk: __ Mon: ___ Year: ____ ___ Time : y/n: _ after: _____ before: _____ once: _ (y/n) ___ Date : y/n: _ from: ________ to: ________ ___ Jobvar : Name: _________________ D: __ L: __ OP: __ : ____________________________________________________________ ___ log.Res.: Name: _________________ No: ____ ___ DS-Trigg: DSN: ____________________________________________ : Durat: ___ Hrs __ Min ___ Ext.Trig: Type: ________ Subtype: ________ : Durat: ___ Hrs __ Min : Parm1: __ _______________________________________________ : Parm2: __ _______________________________________________
12.4.5 Selection of Display
X ALL _ JCD _ STC _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR
In this line you may individually select which parts of the complete panel are to be displayed. By marking with a cross the individual fields which you may combine as you like it is possible to adapt the size of displayed lines at any time according to your needs.
Thus you may blank out lines which need not be filled in necessarily and which you do not need for your requirements and thus make the display more compact and clear.
A further possibility of using this function is the specific filtering out of particular information from an extensive net, e.g. display of all job variables used within the whole net or display of all internal predecessors to get a quick idea of job linking (see example below).
For marking the desired fields you may enter any character. The selection may be cancelled again by overwriting with blanks. When the field "ALL" is selected the display is reset and all the lines are displayed again.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
91
The "Job-Id" line which contains the jobname among other things is always displayed and cannot be blanked out.
According to your selection the following lines are displayed:
ALL the complete panel is displayed
JCD "JCL" line and "Temp. JCL" line
STC "STC" lines
PRP "Preparat" line
RST "Restart" line and "Term-Cntl" line(s)
LST "Schedlst" line(s)
INT "int.Dep" line(s)
EXT "ext.Dep" line(s)
TER "Interval", "Daytype", "Dayname", "rel.Day", "Time" and "Date" lines
JVR "Jobvar" line(s)
LRS "log.Res" line(s)
DST "DS-Trigg" line(s)
XTR "Ext.Trig" line(s)
The following example is to illustrate the action of this select function:
In the net DEMO01 consisting of 3 jobs executing sequentially only the dependency of jobs among each other is to be illustrated (line "int.Dep.").
After selecting the field "INT" the following display appears:
AJM ------------ Net Update ----------- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> PAGE _ ALL _ JCD _ STC _ PRP _ RST _ LST X INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USRJOBA1 Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY) ______________________________________________________________________________ ___ Job-Id : Name: USRJOBB1 Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ int.Dep.: Job: USRJOBA1 Alt: 000 (0-250, ANY) ______________________________________________________________________________ ___ Job-Id : Name: USRJOBC1 Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ int.Dep.: Job: USRJOBB1 Alt: 000 (0-250, ANY) ______________________________________________________________________________
The complete job update panel is displayed for the job USRJOBA1 in the net DEMO01 hereafter. The net DEMO01 contains 2 further jobs. The definitions for these two jobs are not depicted in this panel.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
92
AJM ----- Job Update ---- Group: USER1.AJMDEMO Net: DEMO03 Job: USRJOBA1 CMD===> SCROLL===> PAGE X ALL _ JCD _ STC _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USRJOBA1 Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ JCL : Link: LINK01__ Member: DEMO01__ ___ Temp. JCL: Link: ________ Member: ________ : from: ________ _____ to: ________ _____ ___ Targetsys: Name: ____________________________________________________________ STC : Cmd.: ____________________________________________________________ Preparat.: req.: N (y/n) ______ ___ Restart : Attr: __ (RS/RR) Limit: __ DSN track: N (y/n) del: N (y/n) ___ Term-Cntl: Code: __ _____ Action: ______ Param: ___ Rec-Net: ________ ___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: 001 WD: __ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: Y WD: * HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: _ ___ rel.Day : y/n: _ Type: __ Wk: __ Mon: ___ Year: ____ ___ Time : y/n: _ after: _____ before: _____ once: _ (y/n) ___ Date : y/n: _ from: ________ to: ________ ___ Jobvar : Name: _________________ D: __ L: __ OP: __ : ____________________________________________________________ ___ log.Res.: Name: _________________ No: ____ ___ DS-Trigg: DSN: ____________________________________________ : Durat: ___ Hrs __ Min ___ Ext.Trig: Type: ________ Subtype: ________ : Durat: ___ Hrs __ Min : Parm1: __ _______________________________________________ : Parm2: __ _______________________________________________
12.4.6 Definition of Job Attributes In the first part of the update panel (lines "Job-Id" up to "Term-Cntl") there are the following options:
• What is the name of the job ? • Where resides the JCL of the job ? • For jobs which are to run on an external system: What is the name of the system ? • For started tasks: On which system is STC to be started and what is the start command ? • Which calendar is assigned to the job ? • Are trace messages to be generated which document the check of start conditions of the job
by the scheduler ? • What is to happen if the job ends in error (completion code unequal to C0000) ?
When AJM/P is installed:
• Has a job preparation to be performed in order that the job can run ?
In the following paragraphs the structure of the different lines of this part of the update panels is illustrated. First all displayed information and the possible entries are described. Afterwards there is a description of the permitted line commands.
12.4.6.1 "Job-Id" Line
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
93
___ Job-Id : Name: USRJOBA1 Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)
The "Job-Id" line has always to be filled in, it contains the jobname among other things.
If the field "Job-Id" is represented inversely on screen this indicates an error situation which prevents the job from being selected or submitted by AJM. One of the following reasons may cause this:
• The job is locked. • A recovery net is active for this net. • The "USER=" option in the job card is missing. • Userid in the job card must not be used in this job. • When an AJM variable was substituted in JCL an error occurred.
Using the line command STA in the "Job-Id" line you may find out which error situation is present.
The following options are in the "Job-Id" line:
Name Jobname
If no job model (cf "The JCL Model Function (%AJMMODL)"on page 295) is used the name has to correspond to the jobname of a job card in the specified JCL member. When AJM has selected the job for starting the scheduler task scans the JCL member for a job card with suitable name and transfers JCL to the executing system.
Further information on structure of JCL is described in "JCL Structure and Treatment"on page 283.
If "Name" is represented inversely AJM has not found the job within the specified member.
Seq.No. Sequence number of the job in the net
It determines the sequence in which the jobs are displayed within the net. The display is ascending according to this sequence number, jobs with the same number are displayed according to alphabetical sorting. This field has no impact at all on the control or execution logic of a net.
Using the commands SORT or REN (see "The Commands SORT and REN(umber)"on page 127) a new sorting of the jobs according to the sequence number or a new serialization of the jobs in steps of ten may be performed.
If there is no entry in this place AJM automatically fills in "0001".
calendar calendar name
A calendar is assigned to each job. For each day of the year it is retained in the calendar which type of day it is (work day, holiday or day of rest). It is the basis for AJM when job definitions refer to a certain type of day (e.g. "only runs on work days", "runs on the last work day of the month").
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
94
If you do not specify in this field the calendar name $STD is entered automatically. This standard calendar is set up by the AJM administrator and may be used by all AJM users.
If an own calendar varying from this standard is to be used the corresponding name has to be entered here. This calendar may be created through the function 7 in the main menu (description see "Calendar"on page 165). In AJM as many own calendars as you like may be defined.
If "Calendar" is represented inversely the calendar has not been defined yet.
Trace Trace of scheduling logic for this job
It may be useful for complex definitions to document checks of the scheduler in form of log messages. Thus you may determine why a job has not been selected for processing. Using "Trace: Y" messages are generated which contain information about the schedule element avoiding a selection of the respective schedule list or about general reasons (e.g. JCL not found). These messages are written into the AJM log. The logging dialog is described in chapter "Logging"on page 175.
Note: A trace is a diagnostic tool and should only be activated in exceptional cases. As soon as the definitions are debugged it should be switched off again ("Trace: N").
There are the following line commands for the "Job-Id":
FOR Forecast of start time
AJM determines the next expected start time of the job. The period under review for forecast comprises the next 366 days.
You will find further information in "Job and Net Run Forecast"on page 141.
JLG Call of joblog system
You get into interactive mode of the joblog system. By default SDSF is invoked in a JES2 environment and JVS (a product of T-Systems International GmbH) in a JES3 environment. If no joblog system is installed an error message occurs.
LOG Log information by AJM
You get into the logging dialog in which the fields group, net and job have already been preassigned.
Further information for AJM log are in "Logging"on page 175.
OUT Display of Job Output
You get into the output management system (e.g. AJM/S) installed in your data center. If no such product is used in your data center an error message (message number AJM0217E) occurs when calling it.
ROJ Display of JCL of the last job start (read old JCL)
JCL of job is displayed such as it was transferred to JES by AJM during the last submit, i.e.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
95
including JCL modifications (resolved AJM variables, check information inserted by AJM etc.) performed by AJM during submit.
Processed JCL of the last job start is always saved by AJM. In case of an automatic restart it is used to be able to rerun the job in unaltered form (Exception: %X... variables are resolved again in case of restart).
For started tasks name of system and start command are displayed as they were set during last start. This information, too is saved by AJM in case of restart.
STA Display of current job status
Information about job status (contains detailed error messages), schedule status ("Why does the job not start ?"), the last run time, the last termination code and termination type of the job is displayed. If AJM/P is installed the current job preparation status is displayed in addition.
You will receive further information about this display in "Job Status Information"on page 127.
STT Statistics information
Statistics information on this job is displayed.
You will receive an explanation of this display in "Job and Net Statistics"on page 138.
The following line commands are only available if AJM/P is installed:
DAC Display of action hints for this job
Using this command you may view the action hints retained for this job. They serve as a support for the behaviour in case of error. If there are no action hints for the job a corresponding message will be displayed.
DCU Creating and modifying job documentation
Using this command you have the possibility of creating a job documentation. The documentation may be divided into
• a general documentation to describe purpose and execution of the net • action hints providing information for procedure in case of error
You will find further information in "Documentation Function (only with AJM/P)"on page 69.
DEX Extract job documentation into file
Job documentation is stored in standardized form in a file ("Userid.AJM.EXTRACTx.LIST", x=numeration). Using this file job documentation can be transferred into another AJM system or be duplicated for other similar jobs (see Appendix D. "Command / Batch / Program Interface"on page 363).
DOC Display of general documentaiton for the job
Using this command you may view the general documentation for the job. It includes a description
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
96
about purpose and contents of the job. If there is no documentation for the job a corresponding message will be displayed.
In the net update panel there are the following line commands in addition:
D(EL) Delete job
I(NS) Insert job, entry fields are blank
R(EP) Insert job with identical definitions
12.4.6.2 Standard and temporary JCL
___ JCL : Link: LINK01__ Member: DEMO03__ ___ Temp. JCL: Link: ________ Member: DEMOTEMP : from: 24.12.97 00:00 to: 10.01.98 23:59
In these lines you specify where JCL of the job which AJM is to use during submit is stored.
If these options are entered for a started task the commands EDJ and BRJ may be used to access to the procedure library. These have to be defined under the coded linkname. Hint: These options have no impact on the selection of the starting procedure.
Link Name of link
Through this name AJM finds the JCL file in which its job is contained. You may to define one or more concatenated files under this linkname. The linkname may only be omitted if the job does not contain any schedule list of the type S (Submit) or if it is a started task.
If the linkname is represented inversely one of the following error situations may occur:
• Linkname has not yet been defined for this group • Linkname is locked for use • access to assigned files is not possible by AJM (file not cataloged, no READ
authorization for AJM)
Using the line command STA in the "Job-Id" line you will be informed which error situation is present.
The use of the linkname is explained in "JCL Dataset Definitions"on page 163.
Member Name of member which contains JCL
The member name is independent of the job name. It has to be specified if the job contains a schedule list of type S (Submit). The member has to be in one of the files defined in AJM under the above mentioned linkname. JCL of as many jobs as you like may be contained in the
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
97
member. AJM always searches the desired job according to jobname and submits it.
You will find further information on JCL in "JCL Structure and Treatment"on page 283.
If the membername is represented inversely the member does not exist.
Using the "Temp. JCL" line it is possible to use an alternative JCL for a particular period (from - to). For the indicated period the temporary options take precedence over the default values in the "JCL" line.
Link Linkname (see above).
Member Membername (see above).
from date / time in the format DD.MM.YY HH:MM
From this time the temporary JCL option is used instead of the default entries of the "JCL" line. If no option is made but only a "to" value is specified the entry is effective immediately up to the indicated time of completion.
to date / time in the format DD.MM.YY HH:MM
Up to this time the temporary JCL option is used instead of the default entries of the "JCL" line. If no option is made but only a "from" value is specified the entry is effective indefinitely from this time.
If a field in the "Temp. JCL" line is not filled in it will be completed by the value contained in the JCL above. In the example mentioned above the JCL specified through the linkname LINK01 and the membername DEMOTEMP is used from 24.12.97 to 10.01.98.
There are the following line commands for the standard and temporary JCL:
BRJ Display JCL member / STC procedure
EDJ Edit JCL member / STC procedure
SHJ Display of processed JCL (show JCL)
The JCL of the job is displayed in processed form, i.e. the JCL is read from the specified member and AJM variables contained in it are resolved. The display corresponds to the form in which AJM passes the job to JES at the time of submit. The command enables checking the resolution of AJM variables to avoid syntax errors and incorrect resolutions at the time of submit.
For started tasks the systemname and the start command are displayed. At the same time the used AJM variables are resolved.
D(EL) Delete line content
12.4.6.3 Definitions for Started Tasks and Jobs on External Systems
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
98
___ Targetsys: Name: ____________________________________________________________ : Cmd.: _________________________________________________________
Options required for starting started tasks or jobs on external systems are retained in these lines.
Name Name of target system
For started tasks the name of a local AJM has to be specified. The local AJM sends the start command to the operating system.
For jobs and shell scripts the path name has to be specified. Paths have to be defined in AJM, see also "Defining External Systems"on page 169.
If the line is represented inversely one of the following error situations may have occurred:
1. The name is invalid, e.g. more than 8 characters 2. The name is unknown, i.e. not defined to AJM
Cmd. Start command for a started task or a shell script, resp.
The start command of a started task has to begin with 'S '.
Shell scripts or commands have to begin with '<' or '<"' followed by a path description on the target system. This path description is closed by '>' or '">', resp. Then the name of the shell script or the actual command is specified.
In case of a SAP job the field remains blank.
If the line is represented inversely one of the following error situations may have occurred:
1. Command is incorrect, e.g. contains incorrect AJM variables or is too long. 2. Lack of authorization for start on indicated system
AJM variables may be used both for name and command. However the key values ('S ' or '<' in the "Cmd." line) have to be coded in any case.
Using the line command STA in the "Job-ID" line shows information about the reason in case of error. Besides you find additional information in AJM log.
For STC lines there are the following line commands:
D(EL) Delete line content
I(NS) Insert empty line (only for "Cmd" line)
R(EP) Insert line with identical content (only for "Cmd" line)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
99
12.4.6.4 Coupling to a Preparation Dialog (only with AJM/P)
___ Preparat.: req.: N (y/n)
Specify here if a preparation dialog has to be performed for this job before it can be selected by AJM.
The line is only displayed and analysed if AJM/P is installed.
req. Option if a preparation dialog is required.
The following entries are possible:
Y A preparation is required.
This condition applies to the job in general and takes precedence over the checking of the schedule list(s). Only if a valid preparation was performed it is checked by AJM if conditions of the schedule list(s) are met.
The status of a valid preparation is set automatically by performing a preparation dialog for the net to which the job belongs (line command PRP in net or net/job list). The status "prepare validly" may also be set manually by the line command PVS (see "Set Preparation Valid Manually"on page 148).
N No preparation is required (default).
For the selection of the job by the scheduler only the conditions of the schedule list(s) apply. If all conditions of a schedule list are satisfied the job may be selected by AJM and be started.
If the value was specified by Y and the field is represented inversely no valid preparation has yet been carried out or period of validity for the preparation has expired.
12.4.6.5 Restart and Termination Control
___ Restart : Attr: __ (RS/RR) Limit: __ DSN track: N (y/n) del: N (y/n) ___ Term-Cntl: Code: __ _____ Action: ______ Param: ___ Rec-Net: ________
The restart line contains parameters which help determine execution and size of an automatic restart (see "Restart / Recovery Functionality"on page 317). If you do not want to use this functionality no entries are required.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
100
If "Restart" is represented inversely an error (e.g. no restart point found) occurred during automatic restart. More detailed information is included in AJM log.
Attr Restart attributes of the job
Using restart attributes the size of the net to be rerun and the restart point within a net are determined.
You will find further information in "Restart / Recovery Functionality"on page 317. It is also described there how AJM determines the size of a restart, the restart unit.
You may enter the following values:
RS restart-capable
In case of restart this job may be used as a restart point.
RR rerun-capable
In case of restart this job is to be rerun if it belongs to the restart unit. The job is not selected as a restart point during an automatic restart of the net.
blank not to be rerun
In case of restart the job is not rerun even if it belongs to the restart unit. Limit maximum number of automatic restarts
It is indicated here how many automatic restarts AJM is to execute for this job at the most. An automatic restart is initiated by defining a "Term-Cntl" line in the job with one of the actions RST, R-RST, J-WAIT, N-WAIT.
This value is effective for one net run at a time. If the net terminates normally or is reset using the line command CLR the counter for the number of performed restarts is zeroed again.
If the maximum number of restarts is achieved no automatic restart is performed anymore. In this case a manual action is required (e.g. a manual restart through the line command RMO).
The value for the maximum number of restart attempts may be between 1 and 99. The default value is 1.
If "Limit" is represented inversely the restart limit was reached. A manual action is required.
DSN track
Recording of files newly created by this job
If you enter Y the names of all files which are newly created (cataloged) are recorded. For jobs running on external systems or for started tasks the entry has no impact. Only files of the last run are recorded, a new start of the job deletes the recordings of the previous run. If this option is activated it is possible to delete these files automatically (during restart) or manually (line command RES).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
101
The corresponding commands are described in paragraph "The Net / Job List"on page 75
If N is entered there is no recording.
del Deleting of data
If you enter Y all recorded files created (cataloged) during the last job run are deleted during automatic restart.
There is only one line command for the restart line:
D(EL) Delete line contents
In the Term-Cntl line you determine how AJM is to respond according to the termination code of the job.
If you make no entry AJM regards all termination codes as errors apart from C0000 and BYP and will stop execution of the net. A manual action will then be necessary.
Any number of "Term-Cntl" instructions may be defined per job. Consequently it is possible to individually respond to error situations and have actions executed predefined by AJM. The numerous possibilities are described hereafter.
If several statements are defined for a job the following has to be observed:
1. The interpretation of statements is done by AJM in order of their definition from top to bottom.2. The first statement found to describe the error is performed. That is, not necessarily that
statement is performed which describes the error best.
Therefore you have to observe that always the more precise options are mentioned first in the definition of several statements (e.g. "= C0008" prior to "> C0004"). Code (1st field)
Comparison operator
One of the following comparison operators may be contained in the first field:
= equals
> is more than
>= more or equal
<> is not equal to
< is less than
<= less or equal
Code (2nd field)
Termination code
The second field contains the termination code to which this "Term-Cntl" statement is to apply. Together with the comparison operator it forms the examine statement for AJM. The following options are possible:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
102
Sxxx System Abend (e.g. S222, S0C4) System abend codes may also be specified in a generic way by entering an X in the second position. Accordingly a whole class of system abends may be described, thus an option SX37 comprises all the abends from S037 to SF37. In case of a generic option only the option = is permitted or makes sense as a comparison operator.
IPL Job was still active when an IPL was performed
FLUSH The job was terminated prematurely by JES because of an error situation ("flushed").
BYP Job executed using BYPass
Uxxxx User abend (e.g. U1111)
Cxxxx Completion code (e.g. C0004, C0012)
The following rule applies to AJM:
Sxxx > IPL > FLUSH > BYP > Uxxxx > Cxxxx .
Accordingly an option ">= C0004" comprises all the completion codes more than or equal to 4 as well as all special conditions, user abends and system abends!
The O-codes, however, are not included. They may be defined in AJM/S and reported to AJM. The following O-codes are possible:
JFAIL Job was aborted prior to starting (e.g. by cancel)
JCLER Job was not started by JES because of JCL error.
ABNRM Job was started by the system, but the address space ended abnormally without any termination message.
What applies to AJM: JCLER > JFAIL > ABNRM > Oxxxx .
action Describes the measure to be performed by AJM if the comparison between the occurred termination code of the job and the option in the "Term-Cntl" line statement is true.
The following actions can be defined in AJM:
OK Normal end of job is assumed
The job is to be treated as if it terminated normally, the net is continued.
ALT Condition "alternative path" is to be set.
After the job the net is to be continued using an alternative path, the path number is to specify in the subsequent field "Param". The entries 1-250 are permitted.
Note: The reference to this path number is made by a subsequent job in the net having defined this job as an internal predecessor (line "int.Dep.") and in addition having set this path number as a condition. You will find further information in "ALTernative Function"on page 23 or in "Internal Predecessor"on page 109.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
103
STOP Stop execution of the net
Subsequent jobs having defined this job as an internal predecessor are started no more. If parallel paths independent of the incorrect job are defined in the net these are continued to be processed. As soon as these independent paths of the net are processed the net is set on the status M-RESTART. It may then be continued e.g. through a manual restart.
J-WAIT Repeat job run after wait time
The job is rerun after a defined wait time has expired. Duration of wait time is indicated in the subsequent field "Param" (indication in minutes). The rerun of the job is done according to the rules of an automatic restart, i.e. JCL of the last run is used and possibly the files newly created during the last run are deleted. Furthermore the maximum number of permitted restart attempts are taken into account in case of multiple reruns (parameter "Limit" in "Restart" line).
The rerun is independent of the status of other jobs in the net, i.e. parallel parts of the net independent of the incorrect job are continued to be performed.
N-WAIT Net restart after wait time
After a defined wait time has expired a net restart is performed (automatic restart). Duration of wait time is specified in the subsequent field "Param" (indication in minutes).
While wait time elapses no further jobs of the net are started any more by AJM, jobs being already active are not affected, however. After wait time has elapsed restart is only performed if the entire net is idle, i.e. if no other job is active anymore in the net.
NETREL Terminate net run prematurely
No further jobs are started from this net. If other jobs are still active within the net you have to wait for their termination. Only if no job is active any longer within the net the net is set on "end of net". The net may then be restarted (by normal scheduling or manually).
RST Net restart
A net restart is to be executed (automatic restart). AJM only performs the restart when the net is idle, i.e. no other job within the net is active anymore. If jobs are still active within the net you have to wait for their termination.
A detailed description of the restart functions is contained in "Restart / Recovery Functionality"on page 317.
For more complex error situations which cannot be recovered by only modifying the internal net execution AJM offers an additional possibility of starting another net as an action. This functionality allows to respond quite individually to error situations (e.g. by starting a net for retrieving or for reorganisation of a database).
There are 2 different types of nets for error recovery, the recovery net and the external net, they
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
104
differ in handling by AJM control.
You will find a detailed description in "Termination Code - Control"on page 297.
When a recovery net is executed AJM will wait until the faulty net is idle, i.e. until no job is active any more within the net, only then the recovery net will be started. After its normal end the original net will be continued. A normal end means that AJM recognizes end of net by AJM control. The premature end of net by a NETREL statement will not be interpreted as a normal end by control.
There are the following possibilities of definitions for a recovery net:
R-OK A recovery net is performed, afterwards like OK
R-ALT A recovery net is performed, afterwards like ALT
R-STOP A recovery net is performed, afterwards like STOP
R-RST A recovery net is performed, afterwards like RST
R-NRL A recovery net is performed, afterwards like NETREL
When an external net is executed AJM will not wait until the net is idle, i.e. jobs within the net which are independent of the incorrect job are continued to be processed by AJM. After execution of an external net only one of the actions OK or ALT may be specified for continuation of the original net. The option of the action is done in the entry field "Param".
There are the following possibilities of definitions for external nets:
EXT-A
external net asynchronous
An external net is started, subsequently processing of the original net will be continued after the initiating job.
EXT-S
external net synchronous
An external net is started and only if this net terminated properly (normal end of net or NETREL) processing of the original net will be continued after the job to initiate.
Param Additional parameter for selected action
For some of the possible actions an additional parameter option is required:
For the actions ALT, R-ALT the net will be continued with a defined alternate path (1-250). The desired path number has to be indicated here. How this path number is interpreted by the subsequent jobs within the net is described in "int.Dep." line of the schedule list.
For the actions EXT-S, EXT-A the net will be continued with the normal path (0) or a defined alternate path (1-250). The desired path number has to be indicated here. How this path number is interpreted by the subsequent jobs within the net is described in "int.Dep." line of the schedule list.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
105
For the actions J-WAIT and N-WAIT the job will be rerun after a certain wait time or there is a net restart. The field "Param" contains the wait time in minutes.
For all other actions the field "Param" has to remain blank.
Rec net Name of net that is to run in addition
For R-OK, R-ALT, R-STOP, R-RST and R-NRL this field contains the name of the desired recovery net.
For the action EXT-S or EXT-A this field contains the name of the external net which is to be started in a synchronous or asynchronous way.
For the "Term-Cntl" line there are the following line commands: D(EL) Delete line
I(NS) Insert empty line
R(EP) Insert line with identical contents
12.4.7 The Schedule List In the schedule list all conditions (schedule criteria) to be satisfied are summarized in order that a job may be selected.
For a job up to 100 different schedule lists may be defined. Each schedule list represents an own complete list of conditions which have to be met as a whole. If several schedule lists are defined it suffices that all conditions are met in one of them at the moment of checking. Lists are checked according to the order of being defined.
Further information on the possibilities that AJM offers regarding schedule criteria are contained in "Schedule Criteria"on page 21. You will find a description of the select logic of schedule lists in "Operation Mode of the Scheduler"on page 321.
If a schedule list is valid it is checked by the scheduler. If there are conditions which are not met the first criterion not met in the schedule list will optically be identified in the display by an inverse representation. If the "Schedlst" is represented inversely the schedule list is invalid and will not be checked by the scheduler.
In the following paragraphs the structure of the different lines of the schedule list will be illustrated. First all displayed information and the possible entries are described. Afterwards there is a description of the permitted line commands.
12.4.7.1 Properties of Schedule List
___ Schedlst: No: __ Type: _ (Sub/Byp/Late) Prev. WD: _ (y/n) : valid: _ (y/n) from: ________ _____ to: ________ _____
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
106
General properties of a schedule list are described here. The following options are possible:
No Number of schedule list (from 0 to 99)
Here the sequence number of the schedule list is filled in. In case of several schedule lists it is used for unambiguous identification. The number has no impact on the order of the check by the scheduler, in case of several defined schedule lists checking is always done according to the order of the definition. The schedule lists are serialized by AJM in steps of one beginning with 0 when the job definition is saved.
Different information on execution made available by AJM such as job start message in AJM log refer to this sequence number internally assigned ("job started because of schedule list nn").
The entered number is only interpreted when the command SORT in the CMD line is invoked. In this case an ascending sort of the schedule lists takes place. Thus the definition order and consequently the order of interpretation by the scheduler may be modified.
Type Treatment of job by the scheduler
The way AJM is to handle the job is determined here if it is selected on the basis of this schedule list.
The following options are possible:
S Submit (Default)
The job is started "normally".
B Bypass
The job is to be bypassed, i.e. it is not actually executed (submitted). For dependent jobs following in the net the job appears by default to be executed and terminated normally (OK). By the definition of a termination control statement for the termination code BYP (bypassed) the execution logic of the net may possibly be modified (see "Restart and Termination Control"on page 99).
L Late
In place of the job a standardized message is to be output which may be taken up by an automation tool to initiate further actions. Thus the chronological execution of a run may be monitored. You will find further information about the "Late" function in "Properties of Schedule List"on page 105 and "Operation Mode of the Scheduler"on page 321.
Prev. WD
Previous workday
The following options are possible:
Y "Advance" job to previous workday
If AJM ascertains because of a time interval, a dayname or a date window that the scheduled time of the next job start is on a holiday or a day of rest the job start will be executed on the last workday before. To "bring job start forward" does not affect the planned schedule
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
107
interval at all.
Example: The calendar contains Mo-Fr = WD, Sa = RD, Su = HD. The job is to run every third day - provided it is a workday - and "Prev. WD" was entered by Y. The job ran on Monday and Thursday and would run again on Sunday. As Sunday is a holiday it will be advanced to Friday. Afterwards it will run again on Wednesday (the interval is maintained).
N Do not "advance" job to previous workday (default)
If AJM ascertains because of a time interval, a dayname or a date window that the scheduled time of the next job start is on a holiday or a day of rest the job start will not be advanced. If all schedule conditions are satisfied on the next workday the job will be started. This start will then affect the schedule interval of the job.
Hence AJM does not make up cancelled jobs in general but follows the respective definition of the job.
Example: The calendar contains Mo-Fr = WD, Sa = RD, Su = HD. The job is to run every third day - provided it is a workday - and "Prev. WD" was entered by N. The job ran on Monday and Thursday and would run again on Sunday. As Sunday is a holiday it will not be executed on Sunday. As no further schedule criteria are defined the conditions for the job start on Monday are satisfied. Hence the job will be started by AJM on Monday. Afterwards it will run again on Thursday.
You will find further information on time criteria in "Time Criteria"on page 25.
valid Validity of list
In this line it is specified if the schedule list is valid or invalid and to which period this status applies. Valid means that the scheduler is to check this schedule list with a view to whether the start conditions are met. Invalid means that the scheduler is not to carry out a check of the list. Thus it is possible to deactivate the check of particular start criteria without having to delete the associated schedule list or to define a list with additional start criteria for a definite period.
The following options are possible:
Y Schedule list is valid (default)
Within the period specified by "from" - "to" the schedule list is valid. Beyond the specified period the schedule list is considered invalid. If no period is specified the schedule list will always be valid.
The following specifications to limit the period of validity are possible:
from Date and time in the format DD.MM.YY HH:MM
From this time the schedule list is valid. If no "from" date is specified this status will immediately be effective until specified "to" date.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
108
to Date and time in the format DD.MM.YY HH:MM
Up to this time the schedule list is valid. If no "to" date is specified the status is effective indefinitely from the "from" date.
N Schedule list is invalid
Within the period specified by "from" - "to" the schedule list is invalid. Beyond the specified period the schedule list is considered valid. If no period is specified the schedule list will always be invalid.
The following specifications to limit the period of validity are possible:
from Date and time in the format DD.MM.YY HH:MM
From this time the schedule list is invalid. If no "from" date is specified this status will immediately be effective until specified "to" date.
to Date and time in the format DD.MM.YY HH:MM
Up to this time the schedule list is invalid. If no "to" date is specified the status is effective indefinitely from the "from" date.
The following line commands are possible:
D(EL) Delete schedule list
I(NS) Insert blank schedule list
R(EP) Insert schedule list with identical definitions
12.4.7.2 Line Commands with Schedule Criteria AJM offers a great variety of schedule criteria to enable a selective job scheduling. Except of interval, daytype and dayname a multiple definition of a schedule criterion is allowed within the same schedule list. In this case the following line commands are possible: D(EL) Delete line or line contents
I(NS) Insert blank line
R(EP) Repeat line with identical contents
Note: If a further line is created by using one of the commands I(NS) or R(EP) this line obtains an additional entry field. You have to specify the logical link (AND / OR) to the preceding line in this field. The entry field will be preallocated using AND.
Although we are used to saying "condition 1 and condition 2" OR has to be specified for the logical link in this case. The scheduler interprets the logical links as follows:
OR means that only one of the two conditions has to be met. AND means that both conditions have to be met.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
109
You will find further hints on the logic of the AJM scheduler in chapter "Operation Mode of the Scheduler"on page 321.
If lines are deleted using the command D(EL) all lines except the last are completely deleted. In the last line only the line contents will be deleted.
For interval, daytype and dayname only one line command is possible:
D(EL) Delete line contents
12.4.7.3 Internal Predecessor By the schedule criteria "internal predecessor" a logical dependency is defined between the jobs of a net. It is determined which other job within the net has had to run before a job selection may be carried out. Any number of internal predecessors may be defined, they can be linked optionally according to their requirement using logical AND or OR.
___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY)
The following options are required:
Job Jobname of internal predecessor
The job has to be defined within the net.
Alt Number of alternative path (0-250, ANY)
By specifying an alternative path number the job selection can be made conditional on how the predecessor job has terminated. If the predecessor job terminates this event is assigned to a path number. If the job terminates normally (OK), the path number 000 is assigned by default. Through the definition of a "Term-Cntl" statement within the predecessor job an alternative path number 1-250 depending on the termination code of the job may be set (see "Restart and Termination Control"on page 99).
The schedule condition is only regarded as satisfied if the entered value corresponds to the assigned path number.
If ANY is entered as a value the condition is always regarded as satisfied when the predecessor job terminates regardless of the assigned path number.
12.4.7.4 External dependency By the schedule criteria "external dependency" a logical dependency to other nets may be defined. Per schedule list any number of "ext.Dep." lines may be defined which can optionally be linked to logical AND or OR according to their requirement.
There are two different application forms for an external dependency:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
110
• Function external predecessor.
Analogously to the schedule condition "internal predecessor" this application form acts as an impulse. If another net terminates or a particular job out of it the schedule condition is regarded as satisfied for one run. The duration of validity of this impulse may be fixed by the user. When the net terminates the schedule condition is set invalid again.
• Function status condition.
The validity of the condition only depends on the current status of the external net. It is satisfied as long as the external net or a particular job out of it has the status "active" or "not active".
___ ext.Dep.: Net: ________ Job: ________ active: _: Durat: ___ Hrs __ Min Code: __ _____
Net name of external net
Here you have to specify the name of the net which is referred to. This field has always to be filled in.
Job name of a job of the external net
This field may be specified optionally. Thus it is possible to limit the reference to the external net to one particular job. If no jobname is specified the interpretation of external dependency refers to the net as a whole.
active The content determines in which form the external dependency will be interpreted:
active: _
function as an external predecessor.
If no value is entered the external dependency acts as a predecessor. The entire net or a particular job out of it has to have run in order that the condition is satisfied.
Only in case of the application form external predecessor the following options are required:
Durat duration of validity of the condition
It is determined how long the event "the net or the job has terminated" is to be regarded as valid after occurrence. After this period has elapsed the condition is regarded as not being satisfied any more. The end of the duration of validity is calculated from the time at which the event occurred and the date for duration of validity.
If the event occurs several times without initiating a job start the end of the duration of validity is calculated each time again. Even in case of multiple occurrence of the event only one job start at a time will be initiated, i.e. there is
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
111
no counting of events.
Exception: If a job was started and the event occurs again while the job is active the condition for a further selection is regarded as satisfied after the end of the job. In this case a new selection may immediately take place after end of job unless further start conditions avoid it.
Hrs duration in hours
Here you may specify in hours (000-999) how long the schedule condition is to be regarded as satisfied after occurrence of the event. The value may be specified alternatively to the option in minutes or combined with it.
Min duration in minutes
Here you may specify in minutes (00-59) how long the schedule condition is to be regarded as satisfied after occurrence of the event. The value may be specified alternatively to the option in hours or combined with it.
Code dependency of completion code of the job (default: = C0000)
This value may only be specified if the external dependency refers to a particular job of the net (field "Job" is filled in). It may be specified to which value the completion code of the job is to be compared. Only if the comparison is true the external dependency is regarded as valid.
To the comparison operators and completion codes which are possible the same rules apply as with the "Term-Cntl" line (see "Restart and Termination Control"on page 99).
active: Y
function as a "status condition active"
The condition is valid as long as the net or a particular job out of it is in status "active". The AJM-internal status applies to the net or job status. You will find the exact definition of net/job status in AJM under "Job Status Information"on page 127.
active: N
function as a "status condition not active"
The condition is valid as long as the net or a particular job out of it is in status "not active". The AJM-internal status applies to the net or job status. You will find the exact definition of net/job status in AJM under "Job Status Information"on page 127.
12.4.7.5 Interval It is specified in the "Interval" line in which intervals the job is to be selected.
Note: If a schedule list has further start criteria apart from the interval option which have to be satisfied the actual interval may be longer than the minimum value defined here.
If e.g the interval "daily" is specified and if the additional condition is "it has to be a workday " the last run will be on Friday for a "normal" working week and the next run will only be on Monday although the interval condition is met with the beginning of Saturday. A new calculation of the interval is always based on date and time of the last job selection by the scheduler, the next run but one would hence be on Tuesday.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
112
An interval has always to be specified apart from the following exceptions:
1. At least one of the following start criteria is defined in the schedule list: o Internal predecessor o External predecessor o DS trigger o External trigger
These criteria represent events which have to be fulfilled prior to the selection of the job. Whenever these events occur the job may run once.
2. A "time chamber" (see "Time and Date"on page 117) is defined. The scheduler interprets this option as "may run only once a day within the respective time window".
In general an interval means that the changes of the selected time unit must have taken place at least as often as specified to allow the job start. Values from 1 to 99 are possible. Different time units are mutually exclusive.
Further information on time criteria possible in AJM for the scheduling are included in chapter "Time Criteria"on page 25.
___ Interval: Min: __ Hrs: __ Day: ___ WD: __ Wk: __ Mon: __ Year: __
Only one of the following fields may be filled in to make sense:
Min selection every n minutes
Hrs selection every n hours
The unit hour changes from minute 59 to minute 00.
Note: The value does not refer to a multiple of 60 minutes. Example: If a job having the option "every 2 hours" was started at 10:50 o'clock the first hour will have expired at 11:00 o'clock (change into next unit hour), hence the job may be selected again at 12:00 o'clock.
day selection every n days
The unit day changes at 00:00 o'clock.
Note: The value does not refer to a multiple of 24 hours. Example: If a job having the option "Day: 1" (daily) was started at 23:50 o'clock the job may be selected again at 00:00 o'clock (change into next unit day).
WD selection every n workdays
The unit workday changes at the time of day defined in the assigned calendar (cf "Calendar"on page 165). The daytype switches are considered only, if the assigned day is a workday.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
113
Additionally the current daytype must be a workday to allow a job start.
The job may be selected if n changes into next unit workday have taken place.
Note: The unit workday always comprises a period of 24 hours.
Example: An option of 06:00 h would mean that in a normal working week the first workday begins on Monday at 06:00 h and ends on Tuesday at 05:59 h, the last workday begins on Friday at 06:00 h and ends on Saturday at 05:59 h.
In this case a job having run on Monday at 23:00 h can therefore be selected again on Tuesday at 06:00 h at the earliest (logical beginning of the next workday).
Attention: The interval "WD: n" is functionally only identical with a combination of the two conditions "Interval: Day: n" and "Daytype: WD" if the daytype switch in the calendar definition is set to 00:00 h.
The subsequent figure is to illustrate the different operation modes of both definitions:
How the Interval „Every Workday“ Works
Interval : every workdayDay type : not specified
Interval : dailyDay type : WD
SuSunday Monday Tuesday Wednesday Thursday Friday Saturday
HD WD WD WD WD WD RD HD
1 Run1 Run1 Run 1 Run1 Run
1 Run1 Run1 Run1 Run1 Run
Wk selection every n weeks
The unit week changes every Monday at 00:00 h.
Note: The value does not refer to a multiple of 7 days.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
114
Mon selection every n months
The unit month changes at the first of the month at 00:00 h.
Year selection every n years
The unit year changes at January 1st at 00:00 h.
12.4.7.6 Daytypes, Daynames and Relative Days Using these lines it is possible to limit the selection of a job to definite weekdays (Monday, Tuesday, ...) or to definite daytypes (workday, holiday, ...). Both options may be combined with each other.
The possibility of referring to definite daytypes (e.g. first / last workday of a month / of a week etc.) in a relative way allows to carry out a flexible scheduling according to organizational points of view without having to keep an explicit scheduling list.
___ Daytype : y/n: _ WD: _ HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: ____ rel.Day : y/n: _ Type: __ Wk: __ Mon: ___ Year: ____
In the line Daytype the selection of the job may be conditional on a definite daytype. The type of a day (workday, restday or holiday) depends on the calendar assigned to the job.
y/n By this entry you determine how the daytypes marked in this line are to be interpreted by the schedule logic. The following options are possible:
Y Job may be selected at the daytypes marked subsequently (default). The value is automatically entered by the conversational prompting provided there is no option by the user.
N Negated notation. The job must not be selected at the daytypes marked subsequently. At all daytypes which are not marked the selection is, however, possible.
In the subsequent fields the daytypes to which the selection is to apply are marked. This is done by entry of any character in the respective fields which will subsequently be converted into an * by the conversational prompting. Marking may be undone by entering a blank.
One or more fields may be marked, they have the following assignment:
WD selection of daytype workday
HD selection of daytype holiday
RD selection of daytype restday
Examples:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
115
___ Daytype : y/n: Y WD: * HD: _ RD: _ The job may only be selected on workdays. ___ Daytype : y/n: N WD: _ HD: * RD: *
The job must not be selected on holidays and restdays.
Note: Both options are identical with regard to their impact.
In the line Dayname the selection of a job may be conditional on certain days of the week.
y/n By this entry you determine how the days of the week marked in this line are to be interpreted by the schedule logic. The following options are possible:
Y Job may be selected at the days of the week marked subsequently (default). The value is automatically entered by the conversational prompting provided there is no option by the user.
N Negated notation. The job must not be selected at the days of the week marked subsequently, at all days which are not marked the selection is, however, possible.
In the subsequent fields the days of the week on which the job may be selected are marked. This is done by entry of any character in the respective field which will subsequently be converted into an * by the conversational prompting. Marking may be undone by entering a blank.
One or more fields may be marked, according to the day of the week one field is provided.
Examples:
___ Dayname : y/n: Y Mo: * Tu: _ We: _ Th: _ Fr: * Sa: _ Su: _ The job may be selected both on Mondays and on Fridays. ___ Dayname : y/n: N Mo: _ Tu: * We: _ Th: * Fr: _ Sa: _ Su: _ The job must be selected neither on Tuesdays nor on Thursdays, a selection is possible on all other days of the week.
In the rel.Day line definite daytypes or weekdays within a defined period (week, month, year) may be addressed relatively. The relative addressing may refer both to the beginning of a period (the first, second, third, ... ) and to the end of a period (the last, the last but one, ...).
The absolute date of the day resulting from the relative option is calculated by the scheduler. The calendar assigned to the job serves as a basis for the calculation of daytypes.
It is possible to define any number of "rel.Day" lines per schedule list.
y/n By this entry you define how the relative addressed day marked in this line is to be interpreted by the schedule logic. The following options are possible:
Y Job may be selected on the relative addressed day (default). The value is automatically entered by the conversational prompting if no option is provided by the user.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
116
N Negated notation. The job must not be selected on the relative addressed day, on all other days a selection is, however, possible.
The relative day is defined as follows:
Type Definition of daytype or weekday
It is specified to which daytype or weekday the relative addressing refers. Each daytype (WD, RD, HD) or weekday (MO, TU, ... SU) may be specified.
This option is always required with one exception:
If the relative option refers to the end of the month the option may be dropped. Regardless of the daytype and regardless of the number of days of the month always the last (the last but one, ...) day can be addressed.
Wk relative reference within a week
The following options are possible:
+n Addressability with regard to the begin of the week
The option "+0" designates the first day, "+1" the second day etc.. The option "+0" in combination with "Type: WD" hence designates the first workday of a week.
-n Addressability with regard to the end of the week
The option "-0" designates the last day, "-1" the last but one day etc..
The valid numerical values for n are 0, 1, ..., 6. A combination with a weekday as "Type" is not possible.
For the definition AJM only checks the observance of the above mentioned numerical values, it does not check if the definition is also correct in any case. Consequently an option "+6" together with "Type: WD" is possible (the 7th workday of the week), but the occurrence of this condition is rather unlikely in most cases.
Mon relative reference within a month
The following options are possible:
+n Addressability with regard to the begin of the month (cf "Wk")
-n Addressability with regard to the end of the month (cf "Wk")
For an option referring to the end of a month the option of a type may be omitted. By doing so it is possible to refer to the end of the month regardless of the daytype.
The valid numerical values for n are "0, 1, ..., 30".
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
117
Year relative reference within a year
The following options are possible:
+n Addressability with regard to the begin of the year (cf "Wk")
-n Addressability with regard to the end of the year (cf "Wk")
The valid numerical values for n are "0, 1, ..., 365".
Examples:
___ rel.Day : y/n: Y Type: WD Wk: -0 Mon: ___ Year: __ The job may be selected on the last workday of a week. ___ rel.Day : y/n: Y Type: MO Wk: __ Mon: +0 Year: __ The job may be selected on the first Monday of each month. ___ rel.Day : y/n: N Type: WD Wk: __ Mon: -0 Year: __ The job may be selected on all days but not on the last workday of the month. ___ rel.Day : y/n: Y Type: __ Wk: __ Mon: -0_ Year: __ The job is to run on the last day of each month regardless of the daytype. ___ rel.Day : y/n: Y Type: WD Wk: -0 Mon: ___ Year: __ ___ OR y/n: Y Type: WD Wk: __ Mon: -0 Year: __ The job may be selected on the last workday of a week and on the last workday of a month. ___ rel.Day : y/n: Y Type: WD Wk: -0 Mon: ___ Year: __ ___ AND y/n: Y Type: WD Wk: __ Mon: -0 Year: __ The job may be selected if the last workday of the week is also the last workday of the month.
12.4.7.7 Time and Date Using these lines the selection of a job may be limited to definite times of day (time window) (e.g: "after 08:00 pm", "between 06:00 pm and 10:00 pm").
It is also possible to limit the selection of a job to a date window. Both an explicit date of the day and an area of days may be specified. Generic options as well are permitted (e.g.: "always on the 10th of a month" or "always from 1st to 10th of a month").
Both entry lines can be repeated, any number of time and date definitions per schedule list can be made.
___ Time : y/n: _ after: _____ before: _____ once: _ (y/n)___ Date : y/n: _ from: ________ to: ________
In the Time line the following options are possible:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
118
y/n This entry determines how the defined time window is to be interpreted by the schedule logic. The following options are possible:
Y Job may be selected at the given time (default). The value is automatically entered by the conversational prompting if no option is provided by the user.
N Negated notation. The job must not be selected at the given time, beyond given time a selection is, however, possible.
after beginning of time window
Time is fixed at which the time window begins. Time has to be specified in hours and minutes in the format HH:MM. If the option is omitted 00:00 h is assumed as a default.
before end of time window
Time is fixed at which the time window ends. Time has to be specified in hours and minutes in the format HH:MM. If the option is omitted 23:59 h is assumed as a default.
Note: If "after" time is greater than "before" time a time window applicable beyond midnight until the next day (e.g.: "from 22 h to 2 h the next day") will be defined.
once determines the form of interpretation of time window by the scheduler:
N job may be selected several times within the time window (default)
A multiple selection may be performed if an interval that is smaller than the time window is specified for the job. Schedule lists without interval options that dependent only on event criteria (e.g. DS trigger) are a further possibility of multiple selection. Whenever the event occurs the job may be selected within the time window.
Y job may be selected only once within the time window
This form of interpretation of a time window is also called a time chamber.
If a job had been selected once within a defined time window the condition will be regarded as not met any more from this moment even if other schedule conditions of the list would allow a further selection in this period.
Note: If the job is rerun within the scope of an automatic or manual restart the "once" condition will not be applicable in this case. It is only checked then if the current time is within the defined time window.
If several time windows are defined in a schedule list the rule applies to each time window that the job may be selected only once.
An example for the application of the time window function is contained in chapter Appendix B. "Tips and Tricks"on page 343. Further information is described in paragraph "Time Criteria"on page 25
Examples
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
119
___ Time : y/n: Y after: _____ before: 20:00 once: N(y/n) The job may be selected between 00:00 h and 20:00 h. If necessary it may also run several times within this period. ___ Time : y/n: N after: 20:00 before: _____ once: N(y/n) Negated notation of preceding example. The job must not be selected any more after 20:00 h. ___ Time : y/n: Y after: 22:00 before: 02:00 once: N
(y/n) The job may be selected between 22:00 h and 02:00 h of the following day. If necessary it may also run several times within this period. ___ Time : y/n: Y after: 09:00 before: 10:00 once: N
(y/n) ___ OR : y/n: Y after: 12:00 before: 13:00 once: N(y/n) The job may be selected daily both between 09:00 h and 10:00 h and between 12:00 h and 13:00 h. If necessary it may also run several times within this period. ___ Time : y/n: Y after: 09:00 before: 10:00 once: Y
(y/n) ___ OR : y/n: Y after: 12:00 before: 13:00 once: Y(y/n) The job may be selected daily both between 09:00 h and 10:00 h and 12:00 h and 13:00 h. In each of these time windows it may be selected only once respectively.
In the Date line the following options are possible:
y/n This entry determines how the defined date window is to be interpreted by the schedule logic. The following options are possible:
Y Job may be selected within specified date window (default). The value is entered automatically by the conversational prompting if the user provided no option.
N Negated notation. The job must not be selected within the specified date window, beyond the specified date window a selection is, however, possible.
after beginning of date window
The start date is fixed from which a selection may be performed. The entry has the format DD.MM.YY (day.month.year). Each of the three options may be specified in a generic way by coding an * instead of an explicit value.
A blank field corresponds to the option *.*.* and is interpreted as "applicable from 01.01. of every year".
to end of date window
The end date is fixed up to which a selection may be performed. The entry has the format DD.MM.YY (day.month.year). Each of the three options may be specified in a generic way by coding an * instead of an explicit value.
A blank field corresponds to the option *.*.* and is interpreted as "applicable to 31.12. of every year".
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
120
If both a "from" date and a "to" date is specified the following rules apply to unambiguous determination of the desired date window in case of generic options:
• In both fields the format has to match, i.e. in both fields the same date values (day, month, year) have to be entered in a generic way.
• If in case of a generic option day or month is greater for the "from" date than the corresponding option for the "to" date the date window is valid beyond month/year limit (cf forth and sixth example).
Examples:
___ Date : y/n: Y from: 01.01.*_ to: 10.01.*_ The job may be selected between January 1st and January 10th every year. ___ Date : y/n: Y from: 15.*.*__ to: 15.*.*__
The job may be selected on the 15th of every month. ___ Date : y/n: Y from: 15.*.*__ to: ________
The job may be selected between the 15th and the last day of the month. ___ Date : y/n: Y from: *.10.*__ to: *.02.*__
The job may be selected from October to December and from January to February of a year. ___ Date : y/n: Y from: 10.*.*__ to: 10.*.*_____ OR : y/n: Y from: 20.*.*__ to: 20.*.*__
The job may be selected both on the 10th of a month and on the 20th of a month. ___ Date : y/n: Y from: 20.*.*__ to: 10.*.*__
The job may be selected between the 20th and the last of a month and between the 1st and the 10th of a month.
The option is synonymous with the following definition:
___ Date : y/n: Y from: 20.*.*__ to: ________
___ OR : y/n: Y from: ________ to: 10.*.*__
12.4.7.8 Job Variable Using the "Jobvar" line it is possible to make the selection of a job conditional on the contents of a job variable or of its status. Checking the contents of job variables may also be done for any partial contents.
The schedule criterion job variable is a status condition. The condition is regarded as met as long as the contents or the status match the desired value regardless of how often a job executes in this time.
The "Jobvar" line may be repeated, i.e. the selection of a job may be made conditional on any number of job variables.
___ Jobvar : Name: _________________ D: __ L: __ OP: __ : ____________________________________________________________
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
121
In the "Jobvar" line the following options are possible:
Name Name of job variable
When the "Jobvar" line is defined it is not checked if the job variable actually exists.
D Relative position (displacement) of contents to be checked
It is determined from which position within the job variable the contents are to be checked for a particular value.
The following is applicable: 0 = first position, 59 = last position, default: 0.
L Length of contents to be checked
In this length the content of job variables is to be compared to a definite value. Valid options are 1 to 60.
It is to be observed that the combination of D and L must not exceed the maximum length of job variables (60 positions). In this case a corresponding error message is output.
Without option AJM adopts the length of the comparative value entered subsequently (length of entry up to last character unequal to blank).
If the option for L is longer than the entered comparative value it is padded with blanks for the logical comparison.
If the option for L is shorter than the entered comparative value an error message is output.
OP Comparison operator
The following logical operators are permitted:
= equal (default)
> more
>= more or equal
<> unequal
< less
<= less or equal
The comparison is carried out as follows: content op comparative value. The condition is met if the comparison is true. It is to be observed that the performed comparison only refers to a comparison of characters according to the EBCDIC code.
The subsequent comparison operator provides the possibility of making the validity of the condition dependent on the status of a job variable:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
122
^= unequal
The condition is met in the following cases:
• The job variable is valid, but content and comparative value do not match. • Duration of validity of the job variable has expired. • The job variable does not exist.
value one-to-sixty character string which is to be compared with the current content of the job
variables. The character string may also contain blanks.
Examples:
___ Jobvar : Name: AJMDEMO.VAR D: 0 L: 2 OP: = : OK The job may be selected if the variable AJMDEMO.VAR has the content OK in the first 2 positions. The remaining content of the variables may be arbitrary as it is not checked. ___ Jobvar : Name: AJMDEMO.DB01 D: 0 L: 6 OP: =
: FREE ___ AND : Name: AJMDEMO.SELECT D: 5 L: 1 OP: = : YThe job may be selected if the variable AJMDEMO.DB01 has the content FREE in the first positions followed by two blanks and if the variable AJMDEMO.SELECT concurrently has the value Y in the sixth position. The remaining content of the variables may be arbitrary.
12.4.7.9 Logical Resource The logical resource is an internal counter. AJM checks if the number of units required in the schedule list is available. In order that a logical resource may be used for the control of jobs it must be predefined (see "Logical Resources"on page 155). For this purpose a definite number of units is allocated to every logical resource.
Using the logical resource enables serializing the access to central data of an application (e.g databases) or to shared devices (e.g. tape stations).
A logical resource is allocated if the corresponding schedule list is selected for submit. For that purpose all the conditions of the schedule list have to be met and the specified logical resource available. The number of available units of the logical resource is decremented by the specified quantity. Release of the logical resource is always done when the job terminates regardless of how the job has ended. The number of available units is increased again by the specified quantity.
The "log. Res." line may be repeated, i.e. according to the requirement the selection of a job may be made conditional on any number of different logical resources.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
123
___ log.Res.: Name: _________________ No: ____
In the "log.Res." line the following options are possible:
Name Name of logical resource
When the "log.Res." line is defined it is not checked if the logical resource already exists.
You have to observe that a logical resource may only be used if the user establishing the job definition has at least a READ authorization. Otherwise a corresponding error message occurs.
No number of required units
You have to specifiy how many units of the logical resource are required by the job in order that it may be selected. In this position you may enter either a numeric value or the keyword ALL
If a numeric value n is coded the condition is then met if at least n units of the logical resource are free, i.e. at present they are not allocated by another job.
If ALL is coded the condition is met if all units of the logical resource are free regardless of how many units are defined. Thus you may realize exclusive accesses to application-specific resources (data, devices, etc.).
Examples:
___ log.Res.: Name: AJMDEMO.DB01 No: 1 The job may be selected if at least one unit of the logical resource AJMDEMO.DB01 is free.
If exactly one unit of this logical resource is defined a serialization of accesses may thus be achieved.
If n units of this logical resource are defined a restriction of parallel accesses to n jobs may be achieved.
12.4.7.10 DS Trigger Using this line it is possible to use the cataloging or modifying of a dataset for job control. The new creation or modification may be performed both per batch and in interactive mode. The RENAME of a dataset is regarded as new creation.
The condition acts as an impulse, i.e. whenever a particular file is cataloged or modified the schedule condition is regarded as satisfied. Validity is reset again when the net ends.
The "DS-Trigg" line may be repeated, i.e. the selection of a job can be made conditional on any number of files.
Note: Please observe that all files used as a DS trigger have also to be defined in the product SEM by T-Systems International GmbH. You will find more precise hints on necessary definitions in "Dataset Trigger"on page 159
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
124
___ DS-Trigg: DSN: ____________________________________________: Durat: ___ Hrs __ Min
The following options are possible on the "DS-Trigg" line:
DSN Name of triggering dataset
The dataset name may be specified in a generic way. Then the last character of the file name has to be an *. All files which are reported to AJM and the name of which matches up to the generic abbreviation set this condition valid. The generic option is useful for the processing of generation datasets.
Durat duration of validity of condition (lifetime)
It is determined how long the event is to be regarded as valid after occurrence. After this period has elapsed the condition is regarded as not being met any more. The end of the duration of validity is calculated from the time at which the event occurred and the date for duration of validity.
If the event occurs several times without initiating a job start the end of the duration of validity is calculated each time again. Even in case of multiple occurrence of the event only one job start at a time will be initiated, i.e. there is no counting of events.
Exception: If a job was started and the event occurs again while the job is active the condition for a further selection is regarded as satisfied after end of job. In this case a new selection may immediately take place after end of job unless further start conditions avoid it.
Hrs duration in hours
Here you may specify in hours (000-999) how long the schedule condition is to be regarded as met after occurrence of the event. The value may be indicated alternatively to the option in minutes or combined with it.
Min duration in minutes
Here you may specify in minutes (00-59) how long the schedule condition is to be regarded as met after occurrence of the event. The value may be indicated alternatively to the option in hours or combined with it.
Examples:
___ DS-Trigg: DSN: AJMDEMO.PROD.DS1 : Durat: 5 Hrs Min Whenever the file AJMDEMO.PROD.DS1 is modified the job may be selected. The condition will be regarded as met for 5 hours. After expiration of this period of time the condition will be regarded again as not satisfied. ___ DS-Trigg: DSN: AJMDEMO.PROD.GDGDS1.G*
: Durat: 6 Hrs 5 Min
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
125
Whenever a new generation is cataloged for generation dataset group AJMDEMO.PROD.GDGDS1 the job may be selected. The condition will be regarded as met for 6 hours and 5 minutes. After expiration of this period of time the condition will be regarded as not satisfied. ___ DS-Trigg: DSN: AJMDEMO.PROD.GDGDS1.G* : Durat: 5 Hrs Min ___ AND : DSN: AJMDEMO.PROD.GDGDS2.G* : Durat: 5 Hrs Min Whenever a new generation was cataloged for generation dataset groups AJMDEMO.PROD.GDGDS1 and AJMDEMO.PROD.GDGDS2 the job may be selected. Conditions are regarded as satisfied for 5 hours each. After expiration of this lifetime the condition will be regarded as not satisfied. Therefore both files have to be created within a period of 5 hours in order that a job selection may take place. ___ DS-Trigg: DSN: AJMDEMO.PROD.GDGDS1.G* : Durat: 999 Hrs Min ___ OR : DSN: AJMDEMO.PROD.GDGDS2.G* : Durat: 999 Hrs Min Whenever a new generation was cataloged either for generation dataset group AJMDEMO.PROD.GDGDS1 or for AJMDEMO.PROD.GDGDS2 the job may be selected. Conditions are regarded as met for 999 hours each. After expiration of this period of time the condition will be regarded as not satisfied. The objective of using this high value for validity of duration is that a job selection will always take place after occurrence of the DS trigger.
12.4.7.11 External Trigger Using this line it is possible to respond to triggers initiated by any application (e.g. MQSeries, RFTS). The condition acts as an impulse, i.e. whenever a particular trigger is initiated the schedule condition is regarded as satisfied. Validity is reset again when the net ends.
The "Ext.Trig" line may be repeated, i.e. the selection of a job can be made conditional on any number of external triggers.
___ Ext.Trig: Type: ________ Subtype: ________ : Durat: ___ Hrs __ Min : Parm1: __ ______________________________________________
: Parm2: __ ______________________________________________
On the "Ext.Trig" line the following options are possible:
Type type of external trigger
The type specifies the kind of trigger.
Subtype subtype of external trigger
The subtype specifies which detailed meaning the external trigger has.
Type and subtype also determine the meaning of the values of Parm1 and Parm2.
Durat duration of validity of condition (lifetime)
It is determined how long the event external trigger is to be regarded as valid after occurrence.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
126
After this period has elapsed the condition is regarded as not being satisfied any more. The end of the duration of validity is calculated from the clock time at which the event occurred and from the date for duration of validity.
If the condition occurs several times without initiating a job start the end of the duration of validity is calculated each time again. Even in case of multiple occurrence of the condition only one job start at a time will be initiated, i.e. there is no counting of events.
Exception: If a job was started and the event occurs again while the job is active the condition for a further selection is regarded as satisfied after end of job. In this case a new selection may immediately take place after end of job unless further start conditions avoid it.
Hrs duration in hours
Here you may specify in hours (000-999) how long the schedule condition is to be regarded as met after occurrence of the event. The value may be indicated alternatively to the option in minutes or combined with it.
Min duration in minutes
Here you may specify in minutes (00-59) how long the schedule condition is to be regarded as met after occurrence of the event. The value may be indicated alternatively to the option in hours or combined with it.
Parm1 value of first parameter
Parameters are supplied for detailed description of the trigger according to type and subtype.
The two fields of "Parm1" contain a length specification and a value. Each time an external trigger of the corresponding type and subtype occurs it is checked if the value of the first parameter matches the value specified here. Only in this case the trigger will be accepted. It should be taken into account that only the specified length will be checked. The checking of a partial value is hence performed by specifying a corresponding length.
Parm2 value of second parameter
Parameters are supplied for detailed description of the trigger according to type and subtype.
You will find further information about checking of values in the description of "Parm1" mentioned above.
Examples:
___ Ext.Trig: Type: MQSERIES Subtype: INITQ___ : Durat: 5 Hrs __ Min : Parm1: 09 Q_MGR_01______________________________________ : Parm2: 05 IQ02__________________________________________ External triggers set by MQSeries have the type MQSERIES. If they are initiated by an event in Init-Queue they have the subtype INITQ. Then the first parameter is the name of the queue manager and the second parameter is the name of the Init-Queue. Whenever MQSeries recognizes that an entry was performed into Init-Queue IQ02 belonging to the queue manager Q_MGR_01 the job may be selected. The condition is regarded as met for 5 hours. After this period of time has elapsed the condition is regarded again as not met.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
127
___ Ext.Trig: Type: MQSERIES Subtype: INITQ___ : Durat: 3 Hrs 30 Min : Parm1: 00 ______________________________________________ : Parm2: 02 IQ____________________________________________ Whenever MQSeries recognizes that an entry was performed into Init-Queue the name of which begins with IQ and belonging to any queue manager the job may be selected. The condition is regarded as met for 3,5 hours. After this period of time has elapsed the condition is regarded again as not met.
12.5 The Commands SORT and REN(umber)
Using the commands SORT and REN(umber) you may modify
• order of representation of jobs in the net/job list as well as in the net update panel and • order of schedule lists within a job
Commands may be entered in the net or in the job update panel on the "CMD" line and act as follows: SORT Sorting of jobs and schedule lists
In the net update panel the order in which jobs are represented is newly sorted. The sort order of jobs is determined by the content of the field "Seq.No." in the "Job-Id" line. According to this field the jobs are sorted in ascending order. If two or more jobs have the same sequence number the jobs are sorted alphabetically according to their names.
Both in the net update panel and in the job update panel the schedule lists are newly sorted within a job definition. Sorting is done in ascending order according to entered schedule list number (field "No.").
Note: Sorting of jobs according to their sequence number has no impact on the execution logic, it only serves to adapt representation order to execution order.
However, sorting of schedule lists may change execution logic of the net as schedule lists of a job are checked by the scheduler according to the order of their definition. You will find further information in chapter "The Schedule List"on page 105.
REN Serializing jobs and schedule lists
In the net update panel the jobs are serialized again according to the order of their representation. Beginning with 10, serialization is performed in steps of 10.
In the net update panel and in the job update panel the schedule lists are serialized again according to the order of their representation. Beginning with 00, serialization is performed in steps of one.
12.6 Job Status Information
After selection of a job by the line command STA the following status information panel e.g. is displayed:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
128
AJM ----- Job Status ---- Group: USER100.TEST Net: NET013 Job: JOB01 CMD===> SCROLL===> CSRJob status : Job in RESTART-WAIT, waittime not expired Job usage : normal Started via : Schedule list 00 Schedule status : Net is active Last selection : 02.04.02 13:08 Last submit/late : 02.04.02 13:08 Last start : 02.04.02 13:08 Last end : 02.04.02 13:08 Code: S222 Type: J-WAIT Last end of net : 31.04.02 12:01 Last change : 15.12.98 10:37 User: USER100 Preparation : Performed: N Preparartion lock by : USER202
The displayed fields have the following meaning:
Job status current status of job, the following values are possible:
not active
After the last end of net the job has not been selected any more.
You can gather from the fields "Last submit/late", "Last start" and "Last end" when this job executed last. If these fields are missing in the display this job has never been selected since its definition.
submitted
The job was passed from AJM to JES, however, it has not been started yet by MVS. This status may also occur if the job was not submitted by JES because of a JCL error.
In the field "Last submit/late" you will find date and time of submit.
Start of started task pending
The started task has been selected for start by AJM, however, the start command has not been performed on the corresponding system yet.
For jobs running on an external system JCL was passed to the agent, but start of job has not been confirmed yet. In the field "Last submit/late" you will find date and time of the selection.
active
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
129
The job has been passed to JES or the agent by AJM and has been started by the system.
In the field "Last submit/late" you will find date and time of the submit, in the field "Last start" you will find date and time of the start.
ended
The job has already been started in this net run and a message was output that it had terminated. The net itself is still active at this moment (see field "Schedule status").
In the field "Last submit/late" you will find date and time of the submit, in the field "Last start" you will find date and time of the start and in the field "Last end" there are date and time of the jobend as well as additional information about completion code and termination type of this job run.
ended(O)
The job has already been started in this net run and the operating system reported that it had terminated. As O-Codes have been defined in the termination control definition of the job AJM is waiting for information from AJM/S. The net itself is still active at this moment (see field "Schedule status").
In the field "Last submit/late" you will find date and time of the submit, in the field "Last start" you will find date and time of the start and in the field "Last end" there are date and time of the jobend as well as additional information about completion code and termination type of this job run.
late
On the basis of the job definition it has been recognized that this job is late. Information about LATE schedule list through which such a status may be generated may be found in chapter "Properties of Schedule List"on page 105 or "Handling of Schedule Lists LATE"on page 329.
In the field "Last submit/late" you see when a "Late" message was output.
locked
The job was locked by a user using the LCK line command.
It will not be started any more by AJM until the lock is removed via the UNL line command.
awaits end of recovery
For this net a recovery net executed currently was required.
After this net terminates further actions will be performed. You can gather them from the termination control definition of the job having required the recovery net (see "Restart and Termination Control"on page 99).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
130
locked, awaits RECOVERY, RESTART or NETREL
A recovery net or NETREL (i.e. a premature end of net) was required by another job within the net. As other parts of the net are still active at present you have to wait until the net is idle. Therefore all jobs of the net were locked by AJM to avoid start of further jobs.
As soon as the net is idle (i.e. all jobs still active at present have terminated) recovery or NETREL will be performed.
ended with error, NETREL in progress
This job terminated with a completion code initiating a premature end of net (NETREL) through the termination control definition of the job.
You have to wait until the net is idle i.e. all jobs still active at present have terminated, then the net will be declared terminated.
Job in RESTART-WAIT, wait time not exceeded
This job terminated with a completion code initiating a Restart-Wait (Y-WAIT or N-WAIT) through the termination control definition of the job.
You have to wait until the defined time has elapsed, then a restart (of the job or the net) will be performed.
waiting for RECOVERY, some other jobs in the net are still active
This job ended with a completion code requiring a recovery net through the termination control definition of the job (R-xxx).
You have to wait until the net is idle i.e. all jobs still active at present have terminated, then the recovery net will be started.
Job use current use of the job
normal The job was started automatically by AJM on the basis of its schedule conditions or manually by selection of the user.
RESTART The job was started by AJM because of a restart. In this case there is an additional display of the number of restart attempts and the restart limit of the job.
RECOVERY The job was started by AJM because of a recovery, i.e. it is running within a recovery net. In this case there is an additional display for which net recovery will be performed.
Started via how the job was started
Schedule list nn
The job was started automatically by AJM as all start conditons of the schedule list "nn" are met.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
131
STR/RUN/BRN The job was started manually by entering the corresponding line command.
This line is only displayed when the job is being active or has already terminated within the scope of the current net run (net end not reached yet). After the net has terminated the information about the start may possibly be gained from the statistic data (line command STT). In case of manual start you may additionally determine by invoking AJM logging function (line command LOG) by which user the start was initiated.
Schedule status
current schedule status
The following displays are possible:
Net is active
The net is active at present, i.e. a net end has not been reached yet.
Next selection will be at ...
The net is not active at present. On the basis of the job definitions a selection, i.e. a check by the scheduler will be useful at the indicated time at the earliest. This status will normally be displayed when the schedule conditions contain a time criterion (e.g. "after 20.00 h") or when an interval is specified in the schedule conditions in the unit hour or minute.
No selection, job is manually locked
The job was locked by a user using the LCK line command.
It will not be selected any more by AJM until the lock is removed by a UNL line command.
Schedule element "..." not satisfied
The job cannot be selected because the specified schedule criterion is not met. Always the first schedule criterion will be displayed which is not met within a schedule list.
If more than one schedule list is defined for the job this display is no longer unambiguous. You then obtain detailed information by viewing the job definitions in the browse mode (line command B(RW)), there the first schedule criterion per schedule list which is not met will be represented inversely.
Logical error in ...
The Job definition is not stored correctly in the AJM database.
If this error still occurs after modifying the definitions inform your contact person in the data center.
No schedule list currently valid
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
132
Schedule list not is currently not valid
All schedule lists of the job are invalid at present, i.e. they are either set invalid explicitly ("valid: N") or have defined a period of validity which is not fulfilled currently.
Job / net not prepared
Execution of a preparation dialog is required for this job.
This condition globally applies to the entire job, only if it is satisfied the schedule lists are checked.
This status may only occur when AJM/P is installed and the field "job preparation required" is set on "Y" in the job definition.
Calendar invalid or not defined
The calendar specified in the job definition is not defined or incorrect.
As soon as the missing calendar is created the scheduler checks the job again. The job needs not be reset by using a CLR command.
You will find information about definition and use of calendars in "Calendar"on page 165.
Maximum No. of RESTART attempts reached
The job has initiated one or more automatic restarts which, however, were not successful. The maximum number of restart attempts defined for this job has been achieved. No further restart will be performed, execution of the net will be stopped.
The net may be brought to an end either through a manual restart (see "Restart Modification (Manual Restart)"on page 142) or through a manual Netclear (line command CLR).
Restart failed
The job has required an automatic restart which could not be performed, however (e.g. because no restart point could be determined). You will find further information in AJM log.
The net may be brought to an end either through a manual restart (see "Restart Modification (Manual Restart)"on page 142) or through a manual Netclear (line command CLR).
Scheduler locked by operator
The schedule automatism of AJM was locked by the administrator. AJM does not start further jobs by itself even if its schedule conditions are met.
Note: Using the line commands STR, RUN or EXE (see "The Net / Job List"on page 75) jobs may also be started manually in case of locked scheduler regardless of schedule
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
133
conditions.
JCL definitions for group not found
No JCL definitions were specified for this group belonging to this net.
You will find information about JCL definitions in "JCL Dataset Definitions"on page 163.
When the error has been corrected the job has to be reset by using a CLR command. The scheduler itself does not perform an automatic check for this error if the error situation was recovered meanwhile.
Linkname not found in JCL definitions
The linkname specified in the job definition is not contained in the JCL definition for this group.
You will find information about linknames and JCL definitions in "JCL Dataset Definitions"on page 163.
When the error has been corrected the job has to be reset by using a CLR command. The scheduler itself does not perform an automatic check for this error if the error situation was recovered meanwhile.
Linkname locked by Administrator
Linkname specified in the job definition is locked at present.
You will find information about locking and unlocking of linknames in "JCL Dataset Definitions"on page 163.
As soon as the Linkname is released again the job may be reselected by the scheduler, i.e. start conditions of the job are checked again automatically. Consequently the job needs not explicitly be reset by using a CLR command.
Linkname not usable due to I/O error
The linkname specified in the job definition cannot be used because an I/O error occurred when accessing to one of the allocated JCL files (file not found, authorization problems etc.).
You will find further information in AJM log under the AJM messages (see "Logging"on page 175).
After recovering the error the linkname has to be made available again (see "JCL Dataset Definitions"on page 163, line command CLR). Possibly even the job has to be reset by using a CLR command after having corrected the error.
JCL member not found
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
134
The member specified in the job definition cannot be found in any of the files concatenated under the specified linkname.
When the error has been corrected the job has to be reset by using a CLR command. The scheduler itself does not perform an automatic check for this error to test if the error situation was cleaned up meanwhile.
Job not found in JCL member
The member specified in the job definition does not include this job.
AJM is searching in this member for a job model or for a job card the jobname of which corresponds to the job-id of the job. You will find further information on the structure of JCL for AJM under "JCL Structure and Treatment"on page 283.
When the error has been corrected the job has to be reset by using a CLR command. The scheduler itself does not perform an automatic check for this error to test if the error situation was cleaned up meanwhile.
Error during substitution of AJM variables
When AJM variables contained in the JCL for this job were substituted an error has occurred.
You will find information on syntax of AJM variables under "AJM Variables"on page 293. You will find the exact error cause in AJM log under AJM messages (see "Logging"on page 175).
When the error has been corrected the job has to be reset by using a CLR command. The scheduler itself does not perform an automatic check for this error to test if the error situation was cleaned up meanwhile.
Memory shortage during JCL preparation
During preparation of JCL for submit a bottleneck in storage occurred.
Please inform your AJM contact person in the data center.
No userid in job card
There is no "USER=" option in the job card belonging to this job.
You will find further information on the structure of JCL for AJM under "JCL Structure and Treatment"on page 283.
When the error has been corrected the job has to be reset by using a CLR command. The scheduler itself does not perform an automatic check for this error to test if the error situation was cleaned up meanwhile.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
135
Userid in job card not authorized for submit
The job card belonging to this job contains a "USER=" option having a userid not permitted for this job.
To guarantee privacy, especially client-capability, AJM checks if the userid to be run under the job is permitted for this job. The way this check is done is described under "Protection of Jobs / Nets / Started Tasks / External Systems"on page 335. You will find further information on structure of JCL for AJM under "JCL Structure and Treatment"on page 283.
When the error has been corrected the job has to be reset by using a CLR command. The scheduler itself does not perform an automatic check for this error to test if the error situation was cleaned up meanwhile.
Hint: This error is also displayed when the userid for this job is permitted but revoked.
Error when writing RESTART JCL
When JCL of the job was written onto restart file in which JCL is kept for a possible restart an error occurred.
Please inform your AJM contact person in the data center.
Error when reading RESTART JCL
When JCL of job was read from restart file in which JCL is retained for a possible restart an error occurred.
Please inform your AJM contact person in the data center.
JCL for RESTART could not be found
A restart was required but the restart file in which JCL of the last job run is retained for a possible restart did not contain any data for this job.
Please inform your AJM contact person in the data center.
Error during OPEN on INTERNAL READER
When JCL was passed to JES an error occurred.
Please inform your AJM contact person in the data center.
Invalid or undefined system name or error during comm.
When the started task or the job was started a system name was detected which is not defined or there were problems during communication with the corresponding system.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
136
You will find further information in the AJM log.
Start command invalid
When the started task was started a syntax error was detected while the start command was interpreted. For example the command does not begin with "S ..." or is too long.
User not authorized to start proc. on specified system
When started task was started it was determined on the corresponding computer that the user having modified AJM definition last has no start authorization.
User not authorized to use external system
When the job was started it was determined that the userid specified under "USER=" is not authorized to start jobs on an external system.
Name of external system is invalid
The name of the external system was specified through a variable. When the variable was replaced an error occurred.
External system is not defined to AJM
An external system was specified in the job definition which was not defined or the definition of which was deleted.
External job contains invalid parameters
In the definition of the external system or in the JCL invalid parameters were used. The valid parameters are described in "External systems"on page 221 or in .
Unable to connect to external system, will retry
When the connection to the AJM agent was established a recoverable error occurred. The call is repeated.
Unrecoverable communication error
When the connection to the AJM agent was established a non-recoverable error occurred. Check if AJM can be reached again via the TCP/IP network and restart AJM agent if possible.
Error in "AJMIF" statement
When JCL was prepared for submit a syntax error was detected in an AJMIF statement. The AJMIF statement is described under "The JCL Variable AJMIF"on page 293.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
137
Error in "AJMIMBED" statement
When JCL was prepared for submit a syntax error was detected in an AJMIMBED statement. The AJMIMBED statement is described under "JCL Variable AJMIMBED"on page 294.
Last selection
time of last job selection by AJM
Here you find the time at which AJM selected this job. If a job contains the option "workday before" the day on which the job would have run according to the schedule criteria is recorded in this field. But in the fields "Last submit/late", "last job start" and "last job end" the real run times are mentioned.
Note: For jobs having defined an interval as a schedule criterion this value is the basis for the calculation of the next selection time earliest possible.
Last submit/late
time of last submit (transfer of JCL to JES or external system)
last start time of last job start (by operating system)
last end time of last job end
This line contains additional information if applicable about the completion code occurred for this job end and the termination type resulting from it.
Last end of net
time of last net end
The net end time will not be modified if the net was cleaned up manually (line command CLR). The last net end reached correctly will hence be displayed here.
Preparation preparation status of the job
This line will only be displayed when AJM/P is installed. It specifies whether a preparation dialog was performed for this job and whether this preparation is still valid.
If "N" is displayed no preparation was performed or its duration of validity has already expired.
If "Y" is displayed a preparation was performed and it is still valid. In addition it is displayed how long the preparation is valid.
There are two different forms to determine duration of validity, either for a definite period or for a definite number of net runs. According to the selected form one of the subsequent displays appears:
valid for the next nn runs
Preparation is valid for nn net runs. After every net end recognized as "normal" by AJM (not after a CLR onto the net!) the counter is decremented by 1. If the counter reaches 0 preparation will be considered invalid again.
valid until dd.mm.yy, hh:mm
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
138
The preparation will be considered valid until the specified date regardless of how many net runs take place in this period.
Preparation lock
net is locked because of AJM/P preparation
This line is displayed when an AJM/P preparation dialog having locked the net for the duration of the dialog is currently active. The user having initiated this lock is displayed here. Usually the lock is reset automatically when the preparation dialog ends. If problems are to occur (e.g. because the user was cancelled during dialog) the lock may manually be removed using the PUL line command ("Preparation Unlock").
12.7 Job and Net Statistics
Using the line command STT you obtain statistics information for the selected job or net. Statistics information of the last ten runs are stored per job. The following specialities are applicable:
• If a job is selected on the basis of a schedule list of the type LATE no statistic entry will be made.
• If a job is selected on the basis of a schedule list of the type BYPass a statistic entry will be made. If a job is selected several times on the basis of a BYPass schedule list at least the entry of the last real run will be kept.
If the line command STT is specified for an individual job all available entries for this job will be displayed. If this job has never run an empty panel will be displayed.
If the line command STT is specified for a net the associated entry will be displayed out of all jobs which were selected during the last net run. Hence you obtain complete statistics about the last net run. The job statistics display is structured as follows:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
139
AJM - Job Statistics ---- Group: USER1.AJMDEMO Net: DEMO01 Job: US CMD===> SCROLL===> CSR Start : 09.11.92 , 10:00 , System SY1 Started via : Schedule list 00 Usage : normal End : 09.11.92 , 10:02 Code : C0000 Term.-Type : OK Number of IO's : 5 Number of CPU seconds(1/100): 23 ______________________________________________________________________________Start : 06.11.92 , 10:00 , System SY1 Started via : Schedule list 00 Usage : normal End : 06.11.92 , 10:02 Code : C0000 Term.-Type : OK Number of IO's : 5 Number of CPU seconds(1/100): 21 ______________________________________________________________________________
The displayed fields have the following meaning:
Start Start date and time of job
System name of system on which the job runs
If the job was bypassed BYPASS is mentioned here instead of the system name.
Started via Option of how the job was started.
The following values are possible:
Schedule List nn
The job was started automatically by AJM as all start conditions of the schedule list "nn" are satisfied.
STR/RUN/BRN The job was started manually by entering the corresponding line command.
Usage type of job run
The following values are possible:
normal The job was started automatically by AJM on the basis of its schedule conditions or manually by the user using a line command.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
140
Restart The job was repeated by AJM because of a manual or automatic restart.
Recovery The job was started by AJM because of a recovery, i.e. it executed within a recovery net.
End end date and time of the job
Code Completion Code with which the job ended
Term.-Type Termination type which was set by AJM because of the completion code
What kind of types there are and how they are defined is described in chapter "Restart and Termination Control"on page 99 (entry field "action").
number of IO's number of I/O operations the job has performed during this run all in all
number of CPU seconds (1/100)
number of CPU seconds (in hundredth) the job has used during this run
The net statistics display is structured as follows:
AJM ---------- Net Statistics --------- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSR Job: USRJOBA1 Start: 09.11.92 , 00:00 , System SY1 End: 09.11.92 , 00:00 No. of IO's: 5 No. of CPU Seconds (1/100): 23 ______________________________________________________________________________Job: USRJOBC1 Start: 09.11.92 , 00:00 , System SY1 End: 09.11.92 , 00:00 No. of IO's: 5 No. of CPU Seconds (1/100): 22 ______________________________________________________________________________
The displayed fields have the following meaning:
Job name of job
miscellaneous fields see above
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
141
12.8 Job and Net Run Forecast
To query the next run of a job or a net the line command FOR (Forecast) may be used. AJM then determines the next expected start time of the job. The period under review for the forecast comprises the next 366 days.
Afterwards the following information is displayed:
AJM ---- Job Forecast --- Group: USER1.AJMDEMO Net: DEMO01 Job: USRJOBA1CMD===> SCROLL===> CSR Next Start : 10.11.92 , 00:00 Schedule list: 02 Conditions : - Internal dependency must be satisfied - Jobvariable dependency must be satisfied Warning : Job is locked
The displayed fields have the following meaning:
Next Start calculated next start time of the job
The calculation only depends on the time conditions of the job.
If the job does not run within the next 366 days because of the definitions or if the job contains a schedule list without time criteria a corresponding note is displayed instead of a date.
Schedule List
Number of schedule list initiating the calculated start
Conditions additional conditions which have to be satisfied in order that the job is actually started
Here all the event criteria are found which have to be satisfied for this job in addition to the time criteria.
Warning additional information
Here it is displayed whether there are further conditions beyond the pure schedule criteria which would prevent a selection of the job.
When the forecast is queried for an entire net the following information is displayed:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
142
AJM ----------- Net Forecast ---------- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSR Job name : USRJOBA1 Next start : 10.11.92 , 00:00 Schedule list: 02 ______________________________________________________________________________Job name : USRJOBB1 Next start : Job has SL without time criterion Schedule list: 00 Conditions : - Internal dependency must be satisfied ______________________________________________________________________________Job name : USRJOBC1 Next start : Job has SL without time criterion Schedule list: 00 Conditions : - Internal dependency must be satisfied ______________________________________________________________________________
The displayed fields have the following meaning:
Job name name of job
miscelleanous fields see above
12.9 Restart Modification (Manual Restart)
AJM offers a host of possibilities to respond to error situations during net execution (system abends, user abends, condition codes) by predefined measures and thus to automate recovery of errors occurring again and again. You will find detailed information in "Restart / Recovery Functionality"on page 317.
A possible measure is the restart of the net, i.e. restart of the net execution in a defined position. If an unambiguous restart measure can be defined for a particular error situation the restart may be automated (see also "Automatic Restart"on page 323).
Of course, it will not always be possible to predefine useful measures for all error conditons to occur. As well it may even be desired in some cases to stop execution of the job to manually clean up the error situation and then restart execution. For that purpose the function of "manual restart" is available. It may be invoked for all nets being in status M-RESTART.
Using the manual restart the net execution may be continued. Having the possibility of determining the start point of the restart and the number of jobs to rerun the user may individually respond to each error situation.
The request of the manual restart function is done by entering the line command RMO in front of the net name.
The restart modification panel will then be displayed:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
143
AJM ------ Restart Modification ------ Group: USER1.AJMDEMO Net: DEMO04 CMD===> SCROLL===> CSR
Term R e s t a r t Data sets oldStatus Type Defin. Modif. Unit track del. JCL
___ Net: DEMO04 M-RESTART ___ Job: USRJOBA1 ended OK RS RS N N Y ___ Job: USRJOBA2 ended OK RR RR N N Y ___ Job: USRJOBA3 ended STOP RR RR N N Y
The panel includes an overview of all the jobs within the net. The current job status and the parameters from the job definition relevant for the restart are displayed.
The displayed fields have the following meaning:
Net name of net
Status current status of net (in general M-RESTART)
Job name of job
Status current status of the job
Which job status options there are and what meaning they have is found in "The Net / Job List"on page 75.
Term-Type
current termination type of the job
Which termination types there are and what meaning they have is found in "The Net / Job List"on page 75.
Restart-Defin.
defined restart attribute of the job
The restart attribute included in the job definition will be displayed. This attribute determines the conditions for the size of the restart in case of an automatic restart.
There are the following restart attributes:
RS In case of a restart this job may be used as a restart point. It will be rerun if it belongs to the restart unit.
RR In case of a restart this job will be rerun if it belongs to the restart unit. However, it must not be used as a restart point.
none (blank)
In case of a restart this job must neither be rerun nor serve as a restart point.
You will find a detailed description about the restart attributes and the way AJM determines the restart unit from it under "Restart Attribute"on page 321.
Restart-Modif.
modified restart attribute of the job
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
144
Here the restart attribute of the job may be modified.
The modification may be performed in several steps of entry, e. g. to check in case of more complex restart situations before starting the restart process if the modifications lead to the desired result. If the "Enter" key is pressed without having an input it will be displayed by AJM in the "Unit" field which jobs of the net belong to the restart unit because of the current modifications. The restart is only performed if the line command REX (Restart execution) is entered in front of the net name.
Note: Modifications are temporary, i.e. they only apply to the current restart.
Restart-Unit
Restart-Unit of the net
In this field it is displayed by AJM which jobs belong to the restart unit because of their modifications.
All jobs marked with asterisk * belong to the restart unit. The *RS or *RR marked jobs are rerun; the jobs marked with '* ' belong to the restart unit but they are not rerun in case of restart.
You will find a detailed description on the expression restart unit under "Restart Unit"on page 322.
Data sets track
recording of files
Optionally AJM offers the function to delete - prior to rerun of the job - all files which were created newly (cataloged) during the last job run. For that purpose you have to specify in the job definition that newly created files are to be recorded by AJM. In this field the current value from the job definition will be displayed.
Data set del.
deleting of files
Here you can specify whether the files generated during the last job run are to be deleted provided the file names were recorded.
old JCL use of old JCL during restart
Here you can specify if in case of restart the same JCL as during the last run is to be used or if the JCL is to be read again from the JCL file.
Note: If AJM variables are used in JCL you have to observe that no replacement takes place any more when the old JCL is used. Values are taken as they were replaced during the last run. Exception: Values of the variables XDATE and XTIME are determined currently.
Below an example for the execution of a manual restart:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
145
AJM ------ Restart Modification ------- Group: USER1.AJMDEMO Net: DEMO04 CMD===> SCROLL===> CSR
Term R e s t a r t Data sets oldStatus Typ Defin. Modif. Unit track del. JCL
___ Net: DEMO04 M-RESTART ___ Job: USRJOBA1 ended OK RS RS N N Y ___ Job: USRJOBA2 ended OK RR RR N N Y ___ Job: USRJOBA3 ended STOP RR RR N N Y
The manual restart is to be performed as follows:
1. Only the jobs USRJOBA2 and USRJOBA3 are to be rerun. 2. For the job USRJOBA3 JCL is to be read again from the JCL file to make modified preparatory
cards effective.
On the basis of the defined restart attributes all jobs of the net would be rerun. To make the job USRJOBA2 a start point its restart attribute has to be set on RS. In order that the JCL with the modified preparatory card is read again from the JCL file for Job USRJOBA3 the field "old JCL" has to be set on N.
AJM ------ Restart Modification ------- Group: USER1.AJMDEMO Net: DEMO04 CMD===> SCROLL===> CSR
Term R e s t a r t Data sets oldStatus Typ Defin. Modif. Unit track del. JCL
___ Net: DEMO04 M-RESTART ___ Job: USRJOBA1 ended OK RS RS N N Y ___ Job: USRJOBA2 ended OK RR RS <-- N N J ___ Job: USRJOBA3 ended STOP RR RR N N Y
After pressing the Enter key without making an entry it is displayed which jobs belong to the restart unit.
AJM ------ Restart Modification ------- Group: USER1.AJMDEMO Net: DEMO04 CMD===> SCROLL===> CSR
Term R e s t a r t Data sets oldStatus Typ Defin. Modif. Unit track del. JCL
___ Net: DEMO04 M-RESTART ___ Job: USRJOBA1 ended OK RS RS N N Y ___ Job: USRJOBA2 ended OK RR RS *RS <-- N N J ___ Job: USRJOBA3 ended STOP RR RR *RR <-- N N N
By entering the line command REX the execution of the manual restart is started.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
146
AJM ------ Restart Modification ------- Group: USER1.AJMDEMO Net: DEMO04 CMD===> SCROLL===> CSR
Term R e s t a r t Data sets oldStatus Typ Defin. Modif. Unit track del. JCL
REX Net: DEMO04 M-RESTART ___ Job: USRJOBA1 ended OK RS RS N N Y ___ Job: USRJOBA2 ended OK RR RS *RS N N J ___ Job: USRJOBA3 ended STOP RR RR *RR N N N
After entering the line command the restart modification panel will be left and you will return to the net list or net/job list.
If no restart is to be initiated the restart modification can be left by using END (PF3) or CAN.
12.10 Restart Simulation
This function is to support the user when he employs the function "automatic restart". Especially for complex nets having many net branches you can check if the restart attributes defined in the jobs also lead to the desired execution of the restart in case an error occurs. The user may simulate different error situations for the net and will obtain as a result on the display what the associated execution of the automatic restart would look like, i.e. which jobs would be rerun within the scope the restart. This makes it possible to check the correctness of the definitions without having a real net run to take place.
The following restrictions have to be taken into account by using this function:
• The net must not be in the status "active". • For jobs having several schedule lists the first schedule list is always consulted for the
simulation. Reason: For the simulation AJM needs information about the logical coherences between the individual jobs (internal dependencies). For nets with alternative branches it is not possible to simulate every possible execution variant of the net.
Note: If these restrictions prevent the simulation of all error situations they make the net execute "really" but instead of the original JCL they use a test JCL invoking the program AJMTEST. Using this program error codes may be generated and run times be simulated. Thus any error constellation may be reproduced (see Appendix F. "Program AJMTEST"on page 385). Through the line command RSI which may be entered in the net list or the net/job list this function is invoked.
The restart simulation panel will then be displayed:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
147
AJM ------- Restart Simulation -------- Group: USER1.AJMDEMO Net: DEMO02 CMD===> SCROLL===> CSR
Status Restart-Def. Simulation Restart-Unit ___ Net: DEMO02 end of net ___ Job: USRJOBA1 RS _ ___ Job: USRJOBA2 RR _ ___ Job: USRJOBA3 RR _
The displayed fields have the following meaning:
Net name of net
Status current status of the net (in general end of net)
Job name of job
Restart-Def.
defined restart attribute of the job
There are the following restart attributes:
RS In case of restart this job may be used as a restart point. It is rerun if it belongs to the restart unit.
RR In case of restart this job is rerun if it belongs to the restart unit. However, it must not be used as a restart point.
none (blank)
In case of restart this job must neither be rerun nor serve as a restart point.
You will find a detailed description on restart attributes under "Restart Attribute"on page 321.
Simulation simulated status of the job
The following entries are possible:
T This job is considered "properly terminated".
E This job is considered "incorrectly terminated".
* This job was detected by AJM to be "properly terminated". From user entries (T or E) AJM determines which jobs have to be terminated in addition. For this purpose the first schedule list of a job is always consulted and the respective internal dependencies are considered "properly terminated".
Restart Unit
Restart unit of the net
If the Enter key is pressed without a modification being performed the determined restart unit will be displayed in this column. All jobs belonging to the restart unit will be identified by an *. All jobs marked with *RS or *RR would be rerun in case of restart. All jobs marked by '* ' would not be rerun in case of restart.
You will find a detailed desription about the expression restart unit under "Restart Unit"on
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
148
page 322.
The display of the determined restart unit looks like the panel below
AJM ------- Restart Simulation -------- Group: USER1.AJMDEMO Net: DEMO02 CMD===> SCROLL===> CSR
Status Restart-Def. Simulation Restart-Unit ___ Net: DEMO02 end of net ___ Job: USRJOBA1 RS T *RS ___ Job: USRJOBA2 RR E *RR ___ Job: USRJOBA3 RR _
Line commands are not possible here.
12.11 Set Preparation Valid Manually
Together with the product AJM/P AJM offers the possiblity of preparing nets and making start of a net conditional on the status of this preparation. Only if the preparation dialog was correctly performed preparation is set valid and the net is submitted. When required release of the net may take place manually as well.
There are two different kinds to fix duration of validity:
• for a definite number of net runs • for a defined period regardless of the number of net runs.
The function to set validity of a preparation manually is invoked by the line command PVS (Preparation Validity Set) in the net list or the net/job list. The command must be entered in front of the netname.
The following panel will then be displayed:
AJM/P ---- Set preparation valid --- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSR___ Validity: 0000 Executions ___ until : ________ _____ Date, Time Confirm action with "ENTER" , cancel with "END" or PF3
The following options are possible:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
149
Validity validity for a definite number of net runs
You have to specify here for how many net runs the preparation is to be valid. Values from 1 - 999 are possible. The keyword ALL may also be specified, by doing this the preparation for an indefinite number of net runs will be set valid.
Normally the field is preassigned to "0000". If another numeric value is displayed preparation for the net is already valid and the numeric value indicates to how many net runs it still applies.
until validity to a definite date
You have to specify up to which date preparation is to be valid. Date has to be indicated in the form DD.MM.YY, time in the form HH:MM. Without time indication 23:59 h will be entered.
Normally this field is empty. If a date is displayed preparation for the net is already valid and the displayed date indicates how long it is still applicable.
If the PVS line command is performed several times the value of the last entry will be valid. If the preparation for a net is to be set invalid again it is possible at any time by using the line command PVR (R = Reset).
12.12 Authorization Check and Logging
For job definitions it is checked who is authorized to view and modify them and who is authorized to perform administration commands (LCK, STR, CLR, etc.). This is done via profiles in the General Resource Class $AJM which have the following structure:
group-hlq.group-slq.netname
The following authorization levels are possible: NONE allows no access to the definitions
READ allows read job definitions
UPDATE allows read and modify job definitions
CONTROL allows the execution of administration commands
ALTER allows both read and modify job definitions and execution of administration commands All modifications of nets and jobs, i.e. creating, modifying and deleting and furthermore all administration commands (such as CLR) are logged in the AJM-Log. Otherwise the logging function was probably not activated by the AJM administrator in your data center.
You will find further information on AJM-Log in "Logging"on page 175.
For checking the "USER=" option in a job the following security profile will be consulted:
group-hlq.group-slq.#SUB.netname.jobname
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
150
In order that a userid may be used in the "USER=" option for a specific job at least authorization level READ is required. The authorization is always checked before the job is started, i.e. before it is passed to JES or the agent.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
151
Beyond the pure definition of nets and jobs it is often necessary to retain additional information on the net or job. Documentations about the purpose of the affected net or job are included, keywords on the logic of execution and notes what you have to do in case of error.
Therefore two categories of information texts may be retained in AJM: A "documentation" serving as a pure description as well as "action notes" which may be queried in case of an error situation.
Note: Documentation function is only available if the product AJM/P is also installed.
13.1 Documentation of Nets and Jobs
It is possible to create documentations and action notes both for the entire net and for each individual job. The documentation function is invoked by the line command DCU which you may enter in the net list or the net / job list. Depending on whether a net or a job documentation is to be created the command has to be entered in front of the netname or the jobname. When you enter the command in front of the netname you obtain the following input panel (the input panel for jobs is equal, however, the jobname is displayed in the first line in addition).
AJM --------- Documentation ----------- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSR___ Documentation text: ___ ______________________________________________________________________ ___ Action notes: ___ ______________________________________________________________________
The following entries are possible:
Documentation any text to describe this net or job
The text may be displayed via the line command DOC.
There are the following possibilities of formatting:
; Continuation text is written on a new line.
$ Continuation text is represented in normal intensity (default).
% Continuation text is represented in light colour
For example a description of the net structure or of JCL may be retained. The documentation text is meant for the employees of job preparation.
13 Documentation Function (only with AJM/P)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
152
Action notes any text describing actions concerning the net or the job
The text may be displayed via the line command DAC. The above mentioned possibilities are available for formatting.
You may e.g. retain how to proceed in case of problems. Action notes may contain messages for the operations department.
The following line commands are possible:
D(EL) delete line(s)
In addition there are the following line commands for the continuation lines in "Documentation" and "Action notes".
I(NS) insert blank line
R(EP) insert line with identical contents
UC convert contents of line to uppercase characters
Hereafter you see an example for a job documentation invoked by the line command DOC. In the last line there is the userid of the person having performed the latest modification of the text as well as date and time of modification.
AJM -- Documentation ---- Group: USER1.AJMDEMO Net: DEMO01 Job: JOB01 CMD===> SCROLL===> CSRDescription of job JOB01: JOB01 consists of 3 steps. If the job ends with C0016 the net DEMO02 must not be started. Last changed by: USER1 on 14.11.95 at 09:15
Hereafter you see as an example an action note to job JOB01 invoked by the line command DAC. In the last line there is the userid of the person having performed the latest modification of the text as well as date and time of modification.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
153
AJM - Action notes ------- Group: USER1.AJMDEMO Net: DEMO01 Job: JOB01 CMD===> SCROLL===> CSRIf job JOB01 ends in error please inform Mr. Johns (Tel. 8888). Last changed by: USER1 on 14.11.95 at 09:15
Using the line command DEX you may file the definitions of your documentation texts in the sequential dataset USERID.AJM.EXTRACTx.LIST (x equals 1 or 2). If you want to transfer the documentation texts to another AJM / net you have to adapt the group name and netname (per EDIT) first. Subsequently you may transfer your texts using the batch interface (see Appendix D. "Command / Batch / Program Interface"on page 363).
13.2 Authorization Check and Logging
The following profile is taken for the authorization check of documentations:
group-hlq.group-slq.net
Hence it is the same profile taken for defining nets and jobs as well. Thus everybody being authorized to define a net may also create the documentation for it.
The following authorization levels are possible:
NONE neither access to net definitions nor to documentation texts
READ read access to net definitions and documentation texts
UPDATE alteration of net definitions and documentation texts
CONTROL execution of commands and read access to documentation texts
ALTER alteration of net definitions and documentation texts
All the modifications of documentations are logged in the AJM log. You will find further information on AJM log in "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
155
AJM uses job variables in two ways:
1. as a schedule criterion (see "Event Criteria"on page 28) 2. as a variable in JCL (see "AJM Variables"on page 293)
Via the job variable dialog job variables may be created, displayed, modified and deleted. Besides there is also a batch interface (cf Appendix E. "Batch/Command interface for job variables"on page 369 and Appendix D. "Command / Batch / Program Interface"on page 363).
14.1 Dialog
When the job variable dialog (selection 3 in main menu or jump command JVR) is invoked a panel will be displayed with which all the above mentioned functions may be performed:
---------------------------- JOB VARIABLE SERVICE ---------------------------Command ===> Action --> GET (GET / MOD / ADD / DEL) Last update Name --> USER100 (high level qualifier) at 29.07.02 10:49 --> V1GCLASS (low level qualifier) by User007 Value --> Remark --> --> Expiration date --> (form DD.MM.YY or number of days, blank = never) time --> (form HH:MM or number of hours, blank = 24:00) Trace GET-function --> NO MOD-function --> NO DEL-function --> YES
Enter Perform action PF1 Help PF3 Terminate
The following entries are possible:
Action Action which is to be performed
The following entries are possible:
GET Display of the job variables specified under "Name" with their definitions and their current value
MOD Modification of the job variables specified under "Name"
You may modify
14 Job Variables
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
156
• value • remarks • expiration time • trace options
ADD New definition of the job variables specified under "Name"
DEL Deletion of the job variables specified under "Name" Name Name of the job variable
This name consists of two parts of 8 characters each.
If nothing or a generic name (e.g. "V*") is specified for "low level qualifier" all the job variables the name of which begins with the corresponding character are listed in a table. For processing you may select the different job variables from this table.
Value Value of the job variable
The value may consist of up to 60 arbitrary characters.
Remark Comment for job variable
When the job variables are created you may retain comments here (e.g. purpose, possible values, ...).
Expiration date / time
moment at which the value of the job variable expires
You may specify here how long the value of the job variable is to be valid after a modification. After expiration of this time the job variable is still existent but it is treated in a different way by AJM.
1. When schedule conditions are verified an expired job variable may only cause a job start if the request is done by the comparison operator "^=".
2. Within JCL an expired job variable is no longer replaced but detected as an error.
Trace trace options
For each job variable different traces may be activated:
GET-function There is a message each time the job variable is read.
MOD-function There is a message each time the job variable is modified.
DEL-function There is a message when the job variable is deleted.
The user who performed the corresponding action can view the messages. Besides they are written into SYSLOG.
If the name was specified in a generic way for GET the following table will be displayed:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
157
---------------------------- JOB VARIABLE SERVICE ---------- Row 1 to 3 of 3 Command ===> Scroll ===> PAGE S Jobvariable name Owner Last update at Remarks hlq llq date time --------------------------------------------------------------------- _ USER100 V01 USER100 10.11.92 05:02 _ USER100 VARTEST USER100 08.10.92 14:30 _ USER100 JV1 USER100 25.05.92 08:13 ******************************* BOTTOM OF DATA ********************************
Using S a job variable may be selected here for processing. Then the above explained panel will be displayed.
14.2 Authorization Check and Logging
Profiles for the access to job variables are administrated in the class $JOBVAR and have the following structure:
jobvar-hlq.jobvar-slq
The following authorization levels are possible for these profiles: NONE does not allow any access to job variables
READ allows read access to job variables
UPDATE allows modification of job variables
ALTER allows to create, to delete and to modify job variables Generally the authorization NONE is assumed when either
1. the userid checked is not authorized via the access list or 2. no suitable profile is found.
All modifications of job variables, i.e. creation, modification and deletion are logged in the SYSLOG if trace options are set for the corresponding job variable.
Recording within AJM log is not performed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
159
In AJM logical resources may be defined to serialize sequences (cf chapter "Event Criteria"on page 28 and "Logical Resource"on page 122).
15.1 Filter
When the dialog logical resources is invoked (selection 4 in main menu or jump command LRS) a panel will be displayed by means of which you can select which logical resources are to be displayed from which group.
AJM ---------------------- Filter for Logical Resources ----------------CMD===> Group: USER1.PROD_______ Logical Resource: *________________
The following entries are possible:
Group Name of a group for which the logical resources are to be displayed
The name may also be abbreviated. The listing of the logical resources also contains all the logical resources of the group #GLOBAL to which you have access.
Logical resource
name of the logical resource which is to be displayed
This name consists of one or two parts which may be of 8 characters each and are separated with a dot (e.g. CV1, BATCH, $CTAPE, LRS.TEST1). The name of the logical resource may also be abbreviated here.
15.2 List of Logical Resources
After selection by the filter panel a list of logical resources will be displayed:
15 Logical Resources
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
160
AJM ---- Logical Resources ---- Group: USER1.PROD LR: * CMD===> SCROLL===> PAGEGroup: #GLOBAL ___ log.Resource: $CTAPE Total: 0003 In use: Description: Group: USER1.PROD ___ log.Resource: CV1.BATCH Total: 0010 In use: 0010 Description: Batch ___ log.Resource: LRS.TEST1 Total: 0010 In use: 0002 Description:
The displayed fields have the following meaning:
Group name of the group to which the following logical resources belong
If the name of the group is #GLOBAL then the subsequent logical resources are global resources with cross-group use in job definitions. All other logical resources are local resources and can only be used within the associated group.
log.Resource name of logical resource
This name consists of one or two parts which may be of 8 characters each and are separated with a dot (e.g. CV1, BATCH, $CTAPE, LRS.TEST1).
Logical resources of the group #GLOBAL have to begin with $, logical resources of other groups must not begin with $.
Local logical resources of different groups may have the same name.
Total number of available units of this logical resource
In use number of units in use of this logical resource
The following line commands are possible:
D(EL) delete logical resource
This command may also be used as long as a logical resource is in use. Jobs using this resource at present will terminate normally. Jobs which want to use this resource will not be started any more.
I(NS) Definition of a new logical resource
R(EP) Definition of a new logical resource
Definitions of the selected logical resources are adopted.
SUC Change value of number in use (Set Use Counter)
This command may only be used if the value for number in use proves to be incorrect. This may only occur because of an error in AJM which has to be reported.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
161
To find out how many units of the logical resource are actually in use the WHO command may be used (see below). If the sum of the displayed units does not correspond to the value of number in use there is an error. Number in use has then to be corrected with regard to this total value.
If the value number in use is corrupted by the SUC command there may occur unintentional impacts and sequence errors as AJM immediately calculates with this value.
U(PD) Change value of total number
WHO Display list of jobs using this logical resource
15.3 Authorization Check and Logging
For logical resources it is checked who may view, use and/or modify these resources. This is done via profiles in the General Resource Class $AJM.
For logical resources you distinguish between global and local use. Global logical resources are assigned to the group #GLOBAL, local resources to the group of the respective client.
Global logical resources are created and managed by the data center. Their names begin with $ (e.g. $CTAPE). They are meant to achieve a serialization across the client.
Local logical resources are assigned to a group and are meant to achieve a serialization within a client.
Profiles for logical resources have the following structure:
group-hlq.group-slq.#LRS.lrs-hlq.lrs-slq
The following authorization levels are possible: NONE does not permit any access to definitions
READ allows read access to definitions as well as use of this logical resource in a job definition
UPDATE allows modification of definitions
CONTROL allows execution of commands
ALTER allows both commands and modifications All modifications of logical resources (creation, modification and deletion) are logged in the AJM log. You will find further information on AJM log in "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
163
Dataset triggers in AJM serve to respond to cataloging or modifying of a dataset. Please observe that for the use of DFSMS (1) cataloging of a dataset is already done when it is allocated and not only after the dataset has been created (Close). This event may be used in AJM for job control (cf chapter "Event Criteria"on page 28).
Basically every dataset being newly created or modified may be used as a DS trigger. Normally only a relatively small number of datasets is used for the control of transactions. The majority of datasets created in interactive mode or by batch is either temporary or is not relevant for an AJM-internal command. To prevent these datasets from being reported unnecessarily to AJM a filter may be defined in the product SEM sold by T-Systems International GmbH through which a preselection may be executed for AJM-relevant datasets. Definition of this filter is done by the data center.
Three different conditions may be specified when a DS trigger is to be initiated. Which conditions come in useful depends on the fact in which of the three SEM filters intended for that purpose the dataset will be entered. The following conditions are possible:
• For cataloging a dataset (e.g. batch job with DISP=(NEW,CATLG), allocate with ISPF 3.2, Rename with ISPF 3.4 or IDCAMS ALTER).
Only for NONVSAM datasets:
• For closing a dataset opened in UPDATE mode and newly created. • For closing a dataset opened in UPDATE mode and having already existed.
When the dialog Dataset Trigger (selection 5 in main menu or jump command DST) is invoked a panel will be displayed through which these facts are pointed out:
AJM ----------------------------- Dataset Trigger ----------------------------CMD===> SCROLL ===> CSR
Dataset-Triggers are not administered within AJM. Their administration is done by the data center via SEM, a T-Systems product. To define a dataset as a DS-Trigger contact your Systems administrator.
16 Dataset Trigger
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
165
In AJM it is possible to define any number of JCL datasets from which JCL will be read during job submit. Each client may specify which JCL datasets are to be used within his group.
The linkname establishes a connection between a job and the JCL dataset from which submit will result. Linknames of a group are determined via a JCL dataset definition.
17.1 Filter
When the dialog for JCL dataset definition is invoked (selection 6 in main menu or jump command JCD) a panel will be displayed by means of which you can select the group the linkname of which is to be processed.
AJM ------------------- Filter for JCL Dataset Definitions -------------------CMD===> Group: USER1.PROD_______
The following entries are possible:
group name of a group for which all defined linknames and the assigned datasets are to be displayed
The name of the group must not be abbreviated.
17.2 List of JCL Dataset Definitions
After selecting a group a list of linknames defined for the latter will be displayed.
AJM ------------- JCL Dataset Definitions ------------- Group: USER1.PROD CMD===> SCROLL===> PAGE___ Link : LINK1 Status: allocated ___ DS Name: USER1.AJM.CNTL ___ Link : LINK02 Status: not active ___ DS-Name: USER1.AJM.CNTL ___ DS-Name: USER1.AJM.CNTL2
The displayed fields have the following meaning:
17 JCL Dataset Definitions
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
166
Link linkname under which the subsequent JCL datasets are concatenated
A linkname consists of up to eight characters, the first having to be an alphabetic character A-Z or a special character (§, $ or #) and the others any alphanumeric characters.
A linkname has to be unambiguous within a group. The linkname will be specified when a job is defined.
A linkname may comprise several datasets. During submit these datasets are browsed for the corresponding member in the specified order. If a member is included in several datasets the first member found will be used for job start.
Status status of linkname
The following values are possible:
allocated Datasets belonging to this linkname have been allocated by AJM using DISP=SHR. This will happen as soon as a job using this linkname is to be started. If these datasets are not to be available for AJM for a certain period because they are to be relocated to another disk e.g. the linkname may be locked using the LCK command. The associated datasets are then released.
locked An LCK command was input for the linkname. The associated datasets are no longer allocated by AJM. Jobs requiring this linkname will not start any more. Using the UNL command the linkname will be made available again for AJM.
Note: The status locked will be reset in case of restart of the AJM system.
not active
Datasets associated with this linkname are not allocated by AJM as no job using this linkname has been started yet.
in error During access to one of the datasets of this linkname an error occurred (e.g. dataset has migrated or S913 - lack of read authorization). The exact error cause may be looked up in the AJM log.
AJM locks the linkname in order that jobs requiring this linkname will not start any more. Using the CLR command the linkname will be made available again for AJM.
Note: The status in error will be reset in case of restart of the AJM system. DS-Name
name of a JCL dataset
The name of the dataset has to be fully qualified without apostrophes. AJM must have access authorization READ for the dataset. If a JCL dataset has migrated during access by AJM no submit will be performed. The linkname gets the status in error. Any number of JCL datasets may belong to a linkname. JCL datasets must have DSORG=PO, RECFM=FB and LRECL=80.
The following line commands are possible:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
167
B(RW) switching to browse mode
The line(s) is/are represented in browse mode, data cannot be modified any more.
CLR (only in link line) make linkname available again for AJM after error
After an error has occurred during access to one of the defined JCL datasets the associated linkname is set on status in error. The exact error cause may be looked up in the AJM log. If the error is recovered the CLR command can be used to make AJM try the access to JCL datasets again during the next job start requiring this link name. Jobs having obtained the status in error because of the lock may restart.
D(EL) delete line(s)
I(NS) definition of a new link or dataset name
LCK (only in link line) lock of a linkname (for AJM)
The linkname will be set on status locked.
This command is only possible if the JCL definition for this group has already been responded to once by AJM after starting.
R(EP) definition of a new link or dataset name
Definitions of the selected link or dataset name are adopted.
UNL (only in link line) make locked linkname available again for AJM
After the action was executed due to which a linkname had been locked (e.g. relocation of a JCL dataset) the UNL command may be used to make AJM perform the access to JCL datasets again during the next job start requiring this linkname. Jobs having obtained the status in error because of the lock may restart.
U(PD) switching to update mode
The line(s) is/are represented in update mode and may be altered.
17.3 Authorization Check and Logging
For JCL definitions the following profile is used
groups-hlq.groups-slq.#JCD
The following authorization levels are possible for this profile:
NONE does not permit any access to definitions
READ allows read access to definitions
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
168
UPDATE allows modification of definitions
CONTROL allows execution of commands
ALTER allows both commands and modifications
All modifications of JCL definitions i.e. creation, modification and deletion, are logged in the AJM log. You will find further information on AJM log in "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
169
In AJM calendars serve to assign to calendar days a specific daytype (workday, restday or holiday) to which you can refer in the schedule conditions of a job (cf chapter "Time Criteria"on page 25 and ""Job-Id" Line"on page 92).
Besides it is controlled via the calendar when the switch of the daytype is to be done.
18.1 Filter
When the calendar dialog (selection 7 in main menu or jump command CAL) is invoked a panel will be displayed with which you can select for which group the defined calendars are to be displayed.
AJM ----------------------------- Filter Calendar ----------------------------CMD===> Group: USER1.PROD_______
The following entries are possible:
group name of a group for which all defined calendars are to be displayed
The name of the group must not be abbreviated.
The listing of the calendars also contains all the calendars of the group #GLOBAL as these can be read by all groups.
18.2 List of Calendars
After selecting a group a list of calendars is displayed:
AJM ------------------- Calendars ------------------- Group: USER1.PROD CMD===> SCROLL===> PAGEGroup: #GLOBAL ___ Calendar: $STD Daytype-Switch: 00:00 Authorization: READ Group: USER100.PROD ___ Calendar: TEST1 Daytype Switch: 05:00 Authorization: ALTER
The displayed fields have the following meaning:
18 Calendar
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
170
group name of the group to which the following calendars belong
For the group #GLOBAL the subsequent calendars are global calendars which can be read by all groups and used in job definitions.
All further calendars are local calendars which can only be used within the associated group.
Calendar name of calendar
A calendar name consists of up to eight characters, the first having to be an alphabetic character A-Z or a special character (§, $ or #), the others may be any alphanumeric characters.
Calendars of the group #GLOBAL have to begin with $, calendars of other groups must not begin with $.
Local calendars of different groups may have the same name.
Daytype switch
time at which there is a daytype switch
Time has to be specified in the form hh:mm, "hh" being hours and "mm" being minutes.
Example: When 05:00 o'clock is specified on a Monday which is no holiday the switch from daytype holiday to daytype workday will only be executed at 05:00 o'clock. Before there is still a holiday for AJM. Analogously the status workday lasts till Saturday 05:00 o'clock if Friday was a workday.
Authorization Authorization to this calendar
Here you can read off if a calendar may be viewed or altered. Calendars of the group #GLOBAL may always be viewed. It applies to all calendars:
NONE no authorization
READ read authorization
other authorization for reading and altering
The following line commands are possible:
B(RW) display calendar definition
D(EL) delete calendar
I(NS) definition of a new calendar
R(EP) definition of a new calendar
Definitions of the selected calendar are adopted.
SDS change option for daytype switch (Set Daytype Switch)
S(EL) display calendar definition
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
171
U(PD) change calendar
18.3 Update / Browse
After selecting a calendar using BRW, UPD or SEL the definitions will be displayed.
AJM ---------- Calendar ---------- Group: #GLOBAL Calendar: $STD Command ===> Scroll ===> CSR
1 9 9 2JANUARY FEBRUARY MARCH
1 2 3 4 5 5 6 7 8 9 9 10 11 12 13 14
MO 6 13 20 27 MO 3 10 17 24 MO 2 9 16 23 30 TU 7 14 21 28 TU 4 11 18 25 TU 3 10 17 24 31 WE 1 8 15 22 29 WE 5 12 19 26 WE 4 11 18 25 TH 2 9 16 23 30 TH 6 13 20 27 TH 5 12 19 26 FR 3 10 17 24 31 FR 7 14 21 28 FR 6 13 20 27 SA 4 11 18 25 SA 1 8 15 22 29 SA 7 14 21 28 SU 5 12 19 26 SU 2 9 16 23 SU 1 8 15 22 29
APRIL MAY JUNE
14 15 16 17 18 18 19 20 21 22 23 24 25 26 27 MO 6 13 20 27 MO 4 11 18 25 MO 1 8 15 22 29 TU 7 14 21 28 TU 5 12 19 26 TU 2 9 16 23 30 WE 1 8 15 22 29 WE 6 13 20 27 WE 3 10 17 24 TH 2 9 16 23 30 TH 7 14 21 28 TH 4 11 18 25 FR 3 10 17 24 FR 1 8 15 22 29 FR 5 12 19 26 SA 4 11 18 25 SA 2 9 16 23 30 SA 6 13 20 27 SU 5 12 19 26 SU 3 10 17 24 31 SU 7 14 21 28
JULY AUGUST SEPTEMBER
27 28 29 30 31 31 32 33 34 35 36 36 37 38 39 40 MO 6 13 20 27 MO 3 10 17 24 31 MO 7 14 21 28
During display workdays appear in white, restdays in pink and holidays in red. (With a 4-color monitor workdays appear in low intensity, restdays in high intensity and holidays inversely.)
As to the months the working weeks are mentioned in addition in each column.
If a calendar is newly created the days from Monday to Friday are workdays, Saturdays are restdays and Sundays are holidays.
You can change this assignment in the update mode. This may be done via a generating function entering the holidays of the German Bundesländer or you can explicitly adapt the daytype of specific days.
The generating function is invoked by "GEN bl", "bl" being an abbreviation for the desired Bundesland. If only "GEN" is specified generation is done for Baden-Württemberg.
The following Bundesländer can be selected:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
172
BW Baden-Württemberg
BY Bayern
BE Berlin
BR Brandenburg
HB Bremen
HH Hamburg
HE Hessen
MV Mecklenburg-Vorpommern
NI Niedersachsen
NW Nordrhein-Westfalen
RP Rheinland-Pfalz
SL Saarland
SC Sachsen
SA Sachsen-Anhalt
SH Schleswig-Holstein
TH Thüringen
The definition may be customized additionally to or instead of a generation (e.g. for foreign customers) for specific days according to own corporate requirements. For that purpose you overtype the corresponding day with the desired daytype (W for workday, R for restday and H for holiday). The display of the corresponding day changes according to the new daytype.
Both the current year and any number of subsequent years may be defined. In browse mode only those years are displayed for which a definition exists.
For calendar days in the past a change is not possible for reasons of revision. Neither are they modified in case of a generation.
Changes in a calendar are effective immediately after saving.
18.4 Authorization Check and Logging
The following profile is taken for the authorization check.
group-hlq.group-slq.#CAL.calendar
The following authorization levels are possible for this profile: NONE does not permit any access to definitions
READ allows read access to definitions
UPDATE allows modification of definitions
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
173
CONTROL allows execution of commands
ALTER allows both commands and modifications
All modifications of calendars i.e. creation, modification and deletion, are logged in the AJM log. You will find further information on AJM log in "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
175
Using an external system definition possibiities of access to an external system are described. This facilitates the execution of jobs, commands and shell scripts on other platforms. Characteristics and possibilities of integrating external systems are described in "External systems"on page 221.
19.1 Menu Selection
When the dialog "external system" (selection 9 in main menu or jump command XSD) is invoked a panel will be displayed by which you can select which external system definitions are to be processed.
AJM ----------------------- Selection external systems -----------------------CMD===> SCROLL===> CSR Selection: __ 1. Node Definitions 2. Path Definitions
10. AJM Agent
The following selection is possible:
Node Definitions
definition of the physical connection to an external system or to AJM/R (e.g. Port, TCP/IP address)
Path Definitions
definition of the logical connection to an external system (e.g. SAP-, Unix-, Windows-specific connection data)
AJM Agent definition of connection data to an AJM agent.
19.2 Node Definitions
When the dialog "Node Definitions" (selection 1) is invoked either a panel is displayed (if available) providing an overview of all nodes defined already or you reach the panel for creation of node definitions.
19.3 Panel to Create Node Definitions
19 Defining External Systems
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
176
AJM ------------------------- Create Node definition -------------------CMD===> Node Name : NODE1___
In the following cases you reach the panel to create node definitions:
• No node definitions have been created yet. • You have no access authorization for the definitions.
After entering the node name you reach the panel for node definition. If you do not want to create a definition exit the panel using PF3.
19.4 List of Node Definitions
AJM ---------------------------- Node definitions ----------------------------CMD===> SCROLL===> CSR ___ Node: NODE00 AJM/R R30SUN Status: ready ___ Node: NODE1 AJM/R UNIX01 Status: ready ___ Node: NODE2 AJM/R WINNT Status: ready
The displayed fields have the following meaning:
Node name of node definition
Each node name has to be unique in the entire system. Behind the node name there is a short description of the node.
Status status of node definition
The following displays of status are possible:
active AJM is just sending data to node, i.e. to AJM/R.
usable At present there is no data transfer.
C-error When the connection to the node (AJM/R) was established a non-recoverable error occurred. Use the line command STA to obtain detailed error information.
C-error(R) When the connection to the node (AJM/R) was established a recoverable error
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
177
occurred. After 1 minute AJM automatically tries to establish a new connection.
locked The node was manually locked using the command LCK.
init The TCP/IP communication between AJM and the node (AJM/R) is being prepared.
connected The TCP/IP connection between AJM and the node (AJM/R) is established.
register The registry of AJM to the node (AJM/R) will be done. Besides the checking of encryption and decryption, a verification of the communication data is done.
rejected The node (AJM/R) has rejected the current request., e.g. a request sent by AJM was rejected by the node (AJM/R). To get more details use the line command “STA” or see AJM log.
The following line commands are possible:
B(RW) display node definition
D(EL) delete node definition
I(NS) create node definition
R(EP) generate node definition with identical parameters
S(EL) display node definition
STA display detailed information of status
U(PD) alter node definition
L(CK) lock node definition
U(NL) unlock node definition
C(LR) clear error status
19.5 Update / Browse of Node Definitions
After selecting a node definition using BRW, UPD or SEL the following panel will be displayed:
AJM -------- Update Node Definition ------- Node: NODE1 CMD===> SCROLL===> CSR____ Description : test entry____________________ ___ Address : 53.113.333.36_________________ ___ Port : 9000_ ___ Encryption : 12345678 ___ Ext. Trigger: may send triggers : Y (Y/N) verify authorization: Y (Y/N)
The input fields have the following meaning:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
178
Description The text appears in the overview list of node definitions and in the display of status.
Address TCP/IP address of AJM/R system
An AJM/R system is an external agent running on a Unix system, a Windows system or another platform. All necessary activities are controlled to initiate and supervise background processes (jobs), shell scripts or commands. If the scheduler recognizes that such a process is to be started it will send a corresponding order to this IP address.
Port IP-Port-Number of AJM/R System
Make sure that the specified value matches the port number the AJM/R system uses.
You will get TCP/IP address and IP port number by your local AJM administrator performing the installation of the AJM/R system.
Encryption encryption key to code and decode data sent
Make sure that the specified value matches the encryption key the AJM/R system uses.
Ext. Trigger may send triggers (Y/N) Y This node is permitted to send external triggers to AJM. N This node is prohibited to send external triggers to AJM. verify authorization (Y/N) Y Whenever a trigger is sent via this node, a userid with password has to be set by the trigger interface. AJM will check whether the userid and password are valid. Additionally, the user has to have at least update authorization for #GLOBAL.#XTR.type.subtype. "type" and "subtype" are the type and subtype of the external trigger. The trigger will be rejected if any of these conditions is not satisfied. N When a trigger is sent via this node, no authorization check will be done by AJM.
The following line command is possible:
DEL delete contents of line
19.6 Status Display of a Node Definition
If you enter the line command STA in the list of node definitions you obtain the following status panel:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
179
AJM ---------------------- Status Node --------------------- Node: NODE1 CMD===> SCROLL===> CSR Description : AJM/R UNIX01 Current status : C-error(R) NCI function : NCIPGET NCI return code : 16 NCI reason code : 6004 NCI message : NCI6004E SCLREQIP : TCP/IP connect() failed. Cannot connect
: to Hostname: 11.22.333.44, Servicename: 9004. TCP/IP Reason: Code: 61.
Data sent : No.: 1 last: 07.09.02 11:11 Data received : No.: 0 last: Response time (s): average: 0.13 maximum: 1.23 minimum: 0.05 Timeouts : 0 Connection failed: 1 Last change : 08.08.02 11:04 User: USER001
The different fields have the following meaning:
Description description text from node definition
Current status
current status of node definition
The following displays of status are possible:
active AJM is just sending data to node, i.e. to AJM/R.
usable At present there is no data transfer.
C-error When the connection to the node (AJM/R) was established a non-recoverable error occurred. There is detailed information under "NCI message".
C-error(R) When the connection to the node (AJM/R) was established a recoverable error occurred. After 1 minute AJM automatically tries to establish a new connection.
locked The node was manually locked using the line command LCK.
init The TCP/IP communication between AJM and the node (AJM/R) is being prepared.
connected The TCP/IP connection between AJM and the node (AJM/R) is established.
register The registry of AJM to the node (AJM/R) will be done. Besides the checking of encryption and decryption, a verification of the communication data is done.
rejected The node (AJM/R) has rejected the current request., e.g. a request sent by AJM was rejected by the node (AJM/R). To get more details see AJM log.
The following NCI fields are only displayed if the node is in status C-error or C-error(R). They contain error information of the communication component NCI (a product of T-Systems International GmbH) used for TCP/IP communication.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
180
NCI function NCI function in which the communication error occurred
NCI return code
internal return code
NCI reason code
internal reason code
NCI message error message text
Data sent displays number of data blocks sent to node since AJM has started. In addition date and time of the last transfer are displayed.
Data received
displays number of data blocks received from node since AJM has started. In addition date and time of the last transfer are displayed.
Response time
specifies response times in hundredth of seconds which occurred while data was sent to node. The response time is the time which elapses until AJM/R responds to a request to send. Medium, maximum and minimum value is displayed since AJM has started.
Timeouts specifies how often the default maximum value for response time was exceeded since AJM has started.
Connection failed
displays number of connection errors occurred since AJM has started. Connection failed means that AJM could not establish a connection to AJM/R. Diagnosis information is written into the AJM log for each occurred connection error.
Last change displays date, time and userid of the person who altered the definition last.
19.7 Filter Path Definitions
When the dialog "Path Definitions" (selection 9.2) is invoked a panel will be displayed by which you may select path definitions group-specifically.
AJM ------------------------ Filter Path Definitions -------------------CMD===> Group : _________________ Path Name: ________ Path Type: SAP: _ (j/n) Unix: _ (j/n) Windows: _ (j/n)
The following entries are possible:
Group name of the group for which the path definitions are to be displayed
The name may be abbreviated as "*" in a generic way.
The listing of the path definitions also contains all the definitions of the group #GLOBAL to which you have access.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
181
Path Name
name of the path definition(s) which is(are) to be displayed
The name may be abbreviated as "*" in a generic way.
Path Type
type/s for which the path definitions are to be displayed
The type of the searched path definition is selected by Y. Types of path definitions which are not to be selected are provided with N.
After pressing the Enter key you either reach the panel to create new path definitions or the list of path definitions.
19.8 Panel to Create a Path Definition
AJM ------------------------- Create Path definition -------------------CMD===> Group : _________________ Path Name: ________ Path Type: ________ (SAP, UNIX, WINDOWS)
In the following cases you reach the panel to create a new path definition:
• No path definitions have been created yet. • No entries were found matching the filter criteria. • You have no access authorization to the definitions.
If you want to create a definition please specify group, name and type and press Enter key. You then reach the panel for path definition. If you do not want to create a definition exit the panel using PF3.
19.9 List of Path Definitions
After selection by the filter panel a list of path definitions will be displayed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
182
AJM -------- Path Definitions ---------- Group: * Path: * CMD===> SCROLL===> CSRGroup : #GLOBAL ___ Path Name: $SAPTEST Test definition for all users Type: SAP Status: ready Group : SAZ12.PROD ___ Path Name: UNXPROD1 Path to UNIX system 1 Type: UNIX Status: ready ___ Path Name: WINPATH Path to test windows Type: WINDOWS Status: ready
The displayed fields have the following meaning:
Group name of the group to which the following path definitions belong
As to the group #GLOBAL it is a global system definition with group-spanned use.
All other definitions are group-specific and can only be used within the group.
Path Name
name of path
Path names of the group #GLOBAL always begin with $, path names of other groups must not begin with $.
The same name may be used in different groups as unambiguity is ensured by assignment to a group.
Type type of the target system
specifies which type of target system is meant. At present the types SAP, UNIX, WINDOWS are supported.
Status Status of path
The following displays of status are possible:
ready Path is available (not locked).
locked Path was locked manually using the line command LCK.
The following line commands are possible:
B(RW) display path definition
D(EL) delete path definition
I(NS) create path definition
R(EP) generate path definition with identical parameters
S(EL) display path definition
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
183
STA display detailed information of status
U(PD) alter path definition
C(LR) make path available for AJM (clear error status)
L(CK) lock path
UNL unlock path
19.10 Update / Browse of a SAP Path Definition
After selecting a SAP path definition using BRW, UPD or SEL the following panel will be displayed:
AJM ----- Update SAP Path ----- Group: #GLOBAL Path: $SAPTESTCMD===> SCROLL===> CSR ___ Description : Test definition for all users______________________ ___ Via nodes (1) NODE1___ (2) ________ (3) ________ (4) ________ (5) ________ ___ Client : 1__ ___ Destination : SDFSDF__________________________ ___ SAPHOST-IP : 122.133.144_____________________ ___ Gateway-IP : 133_____________________________ ___ CPIC-User : User001_____ Password : (New) ____ : (Confirmation) ___ Language : DE (DE/EN) ___ GW Service : sapgw00 ___ System No. : 00 ___ Appl. Server: ____________________
The input fields have the following meaning:
Description The text appears in the overview list of path definitions and in the display of status.
Via nodes (1)-(5)
AJM/R systems via which a connection to SAP application is to be established.
Node (1) is the first AJM/R system via which a connection to SAP application is to be established. If no connection to this AJM/R is possible AJM tries one by one to establish a connection via the alternative nodes (2)-(5).
The following options describe the SAP target system. Your local SAP administrator will inform you which values are to be used.
Client SAP Client
Destination SAP Destination
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
184
SAPHOST-IP
IP-Address of SAP Host
Gateway-IP IP-Address of SAP Gateway
CPIC-User CPIC-User
AJM/R needs a valid CPIC user to log in on SAP/R3.
Password Password of CPIC user . Please confirm password to avoid mistakes.
Language SAP language
GW Service SAP Gateway Service
System No. SAP system number
Appl. Server SAP Application Server
This parameter restricts the SAP/R3 job to a specific application server. If the parameter is missing selection of the application server is done by SAP/R3.
The following line command is possible:
DEL delete contents of line
19.11 Update / Browse of a UNIX, WINDOWS Path Definition
After selecting a UNIX path definition using BRW, UPD or SEL the following panel will be displayed:
AJM ----- Update Unix Path ----- Group: SAZ12.PROD Path: UNXPROD1CMD===> SCROLL ===> CSR
___ Description : Path to Unix system 1_ ________________________________________ ___ Via node : r30sun2 ________ __ Userid : User001_
Password : (New) : ____ (Confirmation)
The input fields have the following meaning:
Description The text appears in the overview list of path definitions and in the display of status.
Via node AJM/R systems via which a connection to UNIX or Windows is to be established.
If the connection has failed in case of "C-error(R)" AJM automatically tries a new connection setup after 1 minute.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
185
Userid AJM/R needs a valid CPIC user to log in on the UNIX system.
Password password of the UNIX user. Please confirm the password to avoid mistakes.
The panel for update / browse of Windows path definitions has got a similar structure and only differs by the adapted heading (update Windows path) and by bigger input fields for userid and password (20 positions).
19.12 Display of Status SAP, Windows and UNIX Path
If you enter the line command STA in the list of path definitions you obtain the following status panel (apart from heading no difference between SAP, Windows and UNIX path):
AJM ----- Status SAP Path ----- Group: #GLOBAL Path: $SAPTESTCMD===> SCROLL===> CSR Description : Test definition for all users Current status : ready Last change : 04.09.02 12:55 User: USER001
The different fields have the following meaning:
Description description text from path definition
Current status current status of path
The following displays of status are possible:
ready The path is available for AJM.
locked Path was locked manually using the line command LCK.
Last change displays date, time and userid of the person who altered the definition last.
19.13 Filter AJM Agent
When the dialog "AJM Agent" (selection 9.10 in main menu) is invoked a panel will be displayed by which AJM agents may be selected group-specifically.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
186
AJM -------------------------- Filter for AJM Agent --------------------------CMD===> Group : USER1.PROD_______ External System: *________________
The following entries are possible:
Group name of the group for which the external system definitions are to be displayed
The name may be abbreviated as "*" in a generic way.
The listing of the AJM agents also contains all the definitions of the group #GLOBAL to which you have access.
External System
name of the AJM agents which are to be displayed
The name may be abbreviated as "*" in a generic way.
After pressing the Enter key you either reach the panel to create new external systems or the list of external system definitions.
19.14 Panel for Defining New External Systems (AJM agent)
AJM ---------------------- Definition of a new AJM Agent ---------------------CMD===> Group : _________________ External System: _________________
In the following cases you reach the panel to define new AJM agents:
• No AJM agent definitions have been created yet. • No entries were found matching the filter criteria. • You have no access authorization to the definitions.
If you want to create a new definition please specify group and name, press the Enter key and you then reach the panel to define AJM agents. Otherwise exit the panel using PF3.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
187
19.15 List of External System Definitions (AJM Agent)
After selection by the filter panel a list of external system definitions will be displayed.
AJM ----------- AJM Agent ---------- Group: USER1.PROD System: * CMD===> SCROLL=== Group: #GLOBAL ___ System: $SAPTEST Test definition for all users Type: SAP Status: not active No. sent/recv: 0 / 0Group: USER1.PROD ___ System: SAPPROD1 SAP/R3 System 1 Type: SAP Status: not active No. sent/recv: 124 / 246___ System: SAPTEST1 SAP/R3 Testsystem Type: SAP Status: not active No. sent/recv: 12 / 25
The displayed fields have the following meaning:
Group name of the group to which the following AJM agent definitions belong
As to the group #GLOBAL it is a global system definition with group-spanned use. All other definitions are group-specific and can only be used within the group.
System name of AJM agent
AJM agents of the group #GLOBAL always begin with $, AJM agents of other groups must not begin with $.
The same name may be used in different groups as unambiguity is ensured by assignment to a group.
Type type of the target system
Only the type SAP is supported.
Status Status of AJM agent
The following displays of status are possible:
active AJM is just sending data toexternal system, i.e. to the AJM agent.
not active
At present there is no data transfer.
C-error When the connection to the AJM agent was established a non-recoverable error occurred. Use the line command STA to obtain detailed error information.
C-error(R)
When the connection to the AJM agent was established a recoverable error occurred. After 1 minute AJM automatically tries to establish a new connection.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
188
No. sent/recv
statistics of data sent/received
number of data blocks sent to or received by the AJM agent.
Normally the number of data received is about the double of the number of data sent. Initialization and monitoring of a job consist of a request to send (job init) and two requests to receive (job start and job end/error).
The following line commands are possible:
B(RW) display AJM agent definition
D(EL) delete AJM agent definition
I(NS) create new AJM agent definition
R(EP) generate new AJM agent definition with identical parameters
S(EL) display AJM agent definition
STA display detailed information of status
U(PD) alter AJM agent definition
19.16 Update / Browse
After selecting an AJM agent definition using BRW, UPD or SEL the following panel will be displayed:
AJM -------- Update AJM Agent ------- Group: USER1.PROD System: SAPPROD1CMD===> SCROLL===> CSR ___ Type : SAP (SAP/UNX/NT /390) ___ Descr. : Pfad zu produktivem SAP/R3 System 1_________________________ ___ Agent: ___ Address: 11.222.333.44______________________________________________________ Port : 9004_ ___ Answer to: ___ Address: ___________________________________________________________________ Port : _____ ___ Ident. : User: dummy___ Password: dummy___ ___ Session Parameters: ___ Param. : CLIENT=123,SAPHOST=12.12.123.12,GWHOST=12.12.123.12,CPICUSER=AJM___ ADM,CPICPASS=PWD1,EXTUSER=AJMADM,DEST=E1Z_______________________
The input fields have the following meaning:
Type type of the target system
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
189
Only the type SAP is supported.
After pressing the Enter key a model entry will be generated in the input field "Session Parameters" to describe a SAP/R3 target system.
Descr. The text appears in the overview list of external system definitions and in the display of status.
Agent TCP/IP address of AJM agent
An AJM agent is an external function running on a UNIX system. It controls all necessary activities to initiate and supervise a SAP/R3 background process (job). If the scheduler recognizes that such a SAP/R3 background process is to be started it will send a job init request to this IP address.
Address IP address of AJM agent
Either the TCP/IP address may explicitly be specified or the IP host name.
Port IP port number of AJM agent
Make sure that the specified value matches the port number the AJM agent uses.
Your local AJM administrator performing the installation of the AJM agent will inform you which TCP/IP address is to be used.
Answer to alternative TCP/IP address for answers by the AJM agent
In order to be able to report back status information (job started, job ended) to AJM host the AJM agent requires IP address of the z/OS system on which AJM is running. Normally this address is taken from IP header information of the job init request. If the IP address is unknown or cannot be used (e.g. because of address conversion in IP network) from the AJM agent's view an alternative IP address has to be specified. Then the alternate path is used instead of the standard path.
Address alternative IP address for answers by the AJM agent
Port alternative IP port number Ident userid and password for identification with AJM agent
Currently this functionality is not used, please enter any values here.
Session Parameters
description of the target system
These parameters are necessary in order that the AJM agent may establish a connection to the target system (SAP/R3). The parameters are specified in the format KEYWORD=value, they are always separated with a comma. Your local SAP administrator will inform you which values are to be used.
The following parameters may be specified:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
190
CLIENT SAP Client
DEST SAP Destination
LANG SAP language
SAPHOST IP address of SAP Host
GWHOST IP address of SAP Gateway
GWSERV SAP Gateway Service
APPLSERV SAP Application Server
This parameter restricts the SAP/R3 job to a specific application server. If the parameter is missing selection of the application server is done by SAP/R3.
SYSNR SAP system number
CPICUSER CPIC-User
AJM agent needs a valid CPIC user to log in on SAP/R3.
CPICPASS Password of CPIC-User
EXTUSER external user
To perform an XMI logon to SAP/R3 the AJM agent needs an external user.
The following line commands, where they make sense, are possible:
DEL delete contents of line
INS insert new line
REP insert new line with identical content
19.17 Display of Status
If you enter the line command STA in the list of AJM agent definitions you obtain the following status panel:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
191
AJM -------- Status AJM Agent ------- Group: USER1.PROD System: SAPPROD1CMD===> SCROLL===> CSR Type : SAP Description : Path to SAP/R3 on System 1 Current status : C-error(R) NCI Function : NCIPGET NCI Return code : 16 NCI Reason code : 6004 NCI Message : NCI6004E SCLREQIP : TCP/IP connect() failed. Cannot connect
: to Hostname: 11.22.333.44, Servicename: 9004. TCP/IP Reason: Code: 61.
Data sent : No.: 1 last: 26.06.00 11:51 Data received : No.: 0 last: Response time (s): average: 00.13 maximum: 1.23 minimum: 0.05 Timeouts : 0 Connection failed: 1 Last change : 02.05.00 08:17 User: USER001
The different fields have the following meaning:
Type type of the target system
Description description text from external system definition
Current status
current status of the AJM agent
The following displays of status are possible:
active AJM is sending data to the external system, i.e. to the AJM agent.
Note: In status active the job which is being sent to the external system is displayed in the format group/net/job.
not active
At present there is no data transfer.
C-error When the connection to the AJM agent was established a non-recoverable error occurred.
C-error(R)
When the connection to the AJM agent was established a recoverable error occurred. After 1 minute AJM automatically tries to establish a new connection.
The following NCI fields of status are only displayed if the AJM agent is in status C-error or C-error(R).They contain error information of the communication component NCI (a product of T-Systems International GmbH) used for TCP/IP communication.
NCI Function
NCI function in which the communication error occurred
NCI Return internal return code
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
192
code
NCI Reason code
internal reason code
NCI Message
error message text
Data sent displays number of data blocks sent to AJM agent since AJM has started. In addition date and time of the last transfer are displayed.
Data received
displays number of data blocks received from AJM agent since AJM has started In addition date and time of the last transfer are displayed.
Note: Normally the number of data received is about the double of the number of data sent. Initialization and monitoring of a job consist of a request to send (job init) and two requests to receive (job start and job end/error).
Response time
specifies response times in hundredth of seconds which occurred while data was sent to AJM agent. The response time is the time which elapses until the AJM agent responds to a request to send. Medium, maximum and minimum value is displayed since AJM has started.
Timeouts specifies how often the default maximum value for response time was exceeded since AJM has started.
connection failed
displays number of connection errors occurred since AJM has started. Connection failed means that AJM could not establish a connection to the AJM agent. Diagnosis information is written into the AJM log for each occurred connection error.
Last change displays date, time and userid of the person who altered the definition last.
19.18 Authorization Check and Logging
AJM checks authorization for access to external systems (AJM agent, node definitions, path definitions) via profiles of general resource class $AJM.
For external systems you distinguish between global and local use. Global external systems are assigned to the group #GLOBAL, local external systems to the group of the respective client.
Global external systems are created and managed by the data center. Their name begins with $ (e.g. $SAPTEST). They serve to define available systems in general across clients.
Local external systems are assigned to a group and are reserved to be used exclusively by the client. Their name must not begin with $.
Nodes are assigned to the group #GLOBAL. Their name may begin as you like.
Profiles for the different external systems have the following structure:
#GLOBAL.#NOD.name
group-hlq.group-slq.#PTH.name
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
193
group-hlq.group-slq.#XSD.name
The following authorization levels are possible:
NONE does not permit any access to definitions
READ allows read access to definitions as well as use of the external system in a job definition
UPDATE allows modification and deletion of definitions
ALTER allows modification and deletion of definitions
Note: When the authorization check is performed to determine who is permitted to use the external system within a job definition the userid of the person is used that changed the job definition last. All the modifications of external systems are logged in the AJM log. You will find further information on AJM log in the chapter "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
195
20.1 Introduction
All actions performed by AJM itself (e.g. by the scheduler) or by the user or the system administrator are logged in an AJM-internal log. This log serves to subsequently control sequences and alterations in definitions in AJM and ensures revision-capability of the product.
The following activities are recorded in the AJM log:
• all automatic processes (e.g. start or end of a job or a net)
• all manual actions initiated by the user (e.g. manual start of a job, manual net clear)
• all modifications performed by users (e.g. alteration of definitions, deletion of definitions)
• all important messages of the AJM system (e.g. error during job submit, when variables are replaced, information)
• all AJM/P-specific actions (e.g. execution of a preparation dialog, set preparation manually invalid)
• all AJM/P-specific modifications (e.g. modification and deletion of AJM/P variables and preparation dialogs)
Note: When definitions are modified only the change itself is logged but it is not recorded which data contents are modified.
When the log dialog (selection 20 in main menu, jump command LOG or line command LOG) is invoked a panel will be displayed with which the type of log data and the period under review may be selected.
Note: Users having no master authorization only obtain information on resources (jobs, log. resources, AJM/P definitions) for which they have at least READ authorization.
20.2 Dialog
After invoking the function the following selection panel will be displayed:
20 Logging
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
196
AJM -------------------------- Selection of Log Data -------------------------CMD===> SCROLL===> CSR Group : USER1.PROD_______ Net: TST*____ Job: *_______ Logical Resource : *________________ AJM/P-Variable : *_______ Period : from: 14.04.98 12:35 to: ________ _____ or : last: __ ___ (Min/Hrs/Day/Wk/Mon) Execution : Net/Job: Y Trace: Y System: Y Administr. AJM : Net/Job: Y Log. Res: N JCL-Def: N Calendar: N : Ext.Sys: N AJM/P : Dialog: N Variable: N Link-Def: N Output parameters: Format: S (Std/Rep/Lst) Limit: ______ Records : Report: _ (Rexx/Edit) ________________________________ : Mode: O (Online/Batch) Edit: Y (Y/N) : AJMOUT: F (Sys/Fix/Tmp/Gen) : Dataset: __________________________________
The following entries are possible:
Group name of a group
Using this input field you determine from which group log data is to be viewed.
The group name may be specified in a generic way (abbreviated by *), users without master authorization having to specify at least the first part of a group name (up to the dot). In this example only log data belonging to the group USER1.PROD is displayed.
Note: When log data for logical resources, calendars, external systems and AJM/P variables (see below) is selected the group #GLOBAL will be displayed in addition to the selected group. All global logical resources, calendars (e.g. $STD), external systems and AJM/P variables are assigned to this group.
Net net name
Using this input field view of log data referring to nets and jobs may be restricted to particular nets.
The name may be specified in a generic way (abbreviated by *). In this example only log data of nets the name of which begins with TST are displayed.
Job jobname
Using this input field view of log data referring to jobs may be restricted to particular jobs.
The name may be specified in a generic way (abbreviated by *). In this example log data of all jobs belonging to a net the name of which begins with TST and belongs to group USER1.PROD is displayed.
Logical Resource
name of a logical resource
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
197
Using this input field view of log data referring to logical resources may be restricted to particular logical resources.
The name may be specified in a generic way (abbreviated by *). In this example log data of all logical resources of the group USER1.PROD and of all global logical resources of the group #GLOBAL is selected.
AJM/P-Variable
name of an AJM/P variable
Using this input field view of log data referring to AJM/P variables may be restricted to particular variables.
The name may be specified in a generic way (abbreviated by *). In this example log data of all AJM/P variables of the group USER1.PROD and of all global AJM/P variables of the group #GLOBAL is selected.
Period selection of period under review
Selection of log data may be limited to a specific period. Optionally a fixed (from - to) or a relative (last) period may be specified. If both a fixed and a relative period is specified AJM analyses the relative option.
When a fixed period is selected a "from" date has always to be specified. When the field is invoked for the first time it is preassigned with the current day 00:00 o'clock. A modification will however be retained for further requests until you exit the AJM dialog completely.
Option of "to" date may be omitted. In this case period under review is sufficient up to current time. If no time is specified for "to" date AJM assumes 23.59 o'clock.
When a relative period is selected two options, a number (0-99) and a time unit, are required to fix the period under review.
The following time units are possible:
MIN minutes
The option "30 MIN" means that the period under review comprises the last 30 minutes.
HRS hours
The option "00 HRS" means that the period under review begins at the current hour :00 min, when "01 HRS" is specified period under review begins an hour back at :00 min etc..
DAY days
The option "00 DAY" means that the period under review begins on the current day :00 o'clock, when "01 DAY" is specified period under review begins the day before at :00 o'clock etc..
WK weeks
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
198
The option "00 WK" means that the period under review begins on Monday of the current week :00 o'clock, when "01 WK" is specified period under review begins on Monday the week before at :00 o'clock etc..
MON months
The option "00 MON" means that the period under review begins on the first of the current month :00 o'clock, when "01 MON" is specified period under review begins on the first the month before at :00 o'clock etc..
Hint: If the period under review is not in the immediate past it is recommended to specify a fixed period with "to" date. Otherwise all log data would be browsed up to the current date, i.e. in case of large installations unneeded overhead and relatively long waiting times result from it. Another possibility of avoiding long waiting times is the option of Limit for the number of records to read (see below).
Using the subsequent input fields you can select from which areas log data is to be viewed. By entering Y the respective area is selected, by specifying N selection is suppressed.
In the line execution the following categories of log data may be selected:
Net/Job: displays the following information:
• net start, net end • job start, job end • bypass of jobs by scheduler • LATE condition of jobs • job end treatment (executed termination control statement) • notify messages by AJM/S (message of optional codes) • job-specific information and error messages concerning the execution • setting of condition "prepared valid" (preparation dialog was performed or line
command PVS) • resetting of the condition "prepared valid" (PVR)
Trace displays the following information:
• allocation and release of logical resources • occurrence of a DS trigger • job trace messages of the scheduler
System displays the following information:
• general information messages of the AJM system • general error messages of the AJM system
In the line administration AJM the following categories of log data may be selected:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
199
Net/Job displays the following information:
• modify and delete job definitions (UPD/DEL) • delete entire nets (DEL) • lock and unlock jobs (LCK/UNL) • lock and unlock nets (LCK/UNL) • manual job start (RUN/STR/EXE) • manual restart of nets (RMO) • manual bypass of jobs (BYP) • manual resetting of jobs and nets (CLR) • manual deletion of newly created files (RES) • modify and delete net and job documentations (DCU)
Log. Res displays the following information:
• create and delete logical resources
JCL-Def displays the following information:
• modify and delete assignment of JCL datasets (linknames) • lock, unlock and reset linknames (LCK/UNL/CLR)
Calendar displays the following information:
• modify and delete calendar definiitons
Ext. Sys displays the following information:
• create, modify and delete definitions of external systems
In the line administration AJM/P the following categories of log data may be selected:
Dialog displays the following information:
• modify and delete AJM/P dialog definitions
Variable displays the following information:
• modify and delete global AJM/P variables • modify and delete AJM/P group variables • modify and delete AJM/P net variables
Link-Def displays the following information:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
200
• modify and delete AJM/P dataset assignments
In the subsequent input fields output parameters are defined:
Format selection of display format
The following formats are possible:
S Format "Standard"
Log data is displayed in an easily readable text format, display is done in the interactive language selected by the user (see function 0, session options)
R Format "Report"
Log data is displayed in a standardized column-oriented format.
L Format "List"
An overview of available log data is displayed.
Note: The different formats are described in detail in the subsequent chapters.
Limit limitation of log records to read (optional)
In this input field the maximum number of log records to read may be specified. When this number is reached reading is always interrupted to display the intermediate result found up to this moment. The following message will then be overlaid:
AJMLI39I - AJMLGINQ: Reading of log data was interrupted at dd.mm.yy hh:mm
After you exit the browse panel using PF3 date and time of the breakpoint are entered in the log panel as a new start value for request. This procedure facilitates query of log data over an enlarged period under review and at the same time subdivision of the period into smaller units.
Note: The same procedure is used when the output file is too small for the amount of data incurred (SB37).
Report Request of Rexx or an edit macro (optional)
This parameter is only analysed when the format R (Report) is selected as an output. Either the name of a Rexx (R) or of an edit macro (E) may be specified. If a name is entered in the parameter field the Rexx or edit macro will be invoked after creating the log data. The generated log data may then be processed individually and prepared for display in order to
• represent a compact overview of net executions • filter out incorrect transactions • create statistic data
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
201
When the Rexx or edit macro terminates the result file will be displayed with the prepared log data, however, display will be suppressed when the return code is greater than 4.
If you want to know which Rexx analyses are offered by default put the cursor onto the parameter field for the entry of the name and press PF1.
In case of request of a Rexx the following has to be observed:
If the invoked Rexx uses input parameters they can be entered in the input field behind the Rexx name. Name and parameter have to be separated with a blank at least.
The input file providing standardized log data is allocated under the DDname AJMRPIN when Rexx is invoked.
The output file for data created by Rexx is allocated under the DDname AJMRPOUT in case of request. After execution of Rexx this dataset is displayed by AJM.
Mode define query mode
Query of log data may be online (O) or in batch (B) optionally. When extensive amounts of data are queried it is recommended to work in batch mode to avoid unnecessarily long lock of the dialog function. In this case AJM generates a batch job from the entered parameters.
Edit editing of generated batch job
You can select if the job generated in mode "batch" is to be started immediately (N) or to be displayed in edit mode (Y). When display is in edit mode the user has to start the job himself subsequently via ISPF "SUBMIT".
AJMOUT define type of output file for batch job
When log data is analysed in batch it is defined how the dataset name is to be structured for the query result. The following options are possible:
S output after SYSOUT
Output is done after SYSOUT.
F output into file with fixed name
Output is done into a file with exactly the name as specified in the input field Dataset described hereafter.
T output into file with temporary name
Output is done into a file with temporary name. The name specified in the input field Dataset described hereafter is completed by the following two qualifiers including date and time: Dyymmdd.Thhmmss
G output into generation file
Output is done into a generation file (+1), the name specified in the subsequently described input field Dataset being used as a GDG base entry.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
202
Dataset define name of output file for batch job
When log data is analysed in batch it is defined how the dataset for output of log data is to be invoked. The definite file name results both from this entry and input in the field AJMOUT (see above).
If no dataset name is entered the name userid.AJM.LOG.BATCH is used by default.
20.3 Log-Format S (Standard)
Below you find a list of examples for log query in format S:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
203
BROWSE -- USER100.AJM.LOG2.LIST -------------------- LINE 00000029 COL 001 080 COMMAND ===> SCROLL ===> PAGE 14.04.98 12:35 Net: USER1.PROD/TST001 started 14.04.98 12:35 Job: USER1.PROD/TST001/TST00100 BYPASS condition (SL00) detected 14.04.98 12:35 Job: USER1.PROD/TST001/TST00100 "OK" is processed 14.04.98 12:35 Net: USER1.PROD/TST002 started 14.04.98 12:35 Job: USER1.PROD/TST002/TST00201 started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST002/TST00201 active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0031 DS-Trigger (USER1.Z.Y.R0055A) set 14.04.98 12:35 Job: USER1.PROD/TST002/TST00201 terminated (C0000) 14.04.98 12:35 Job: USER1.PROD/TST002/TST00201 "OK" is processed 14.04.98 12:35 Job: USER1.PROD/TST001/TST001NG BYPASS condition (SL01) detected 14.04.98 12:35 Job: USER1.PROD/TST001/TST001NG "OK" is processed 14.04.98 12:35 Job: USER1.PROD/TST001/TST00155 BYPASS condition (SL00) detected 14.04.98 12:35 Job: USER1.PROD/TST001/TST00155 "OK" is processed 14.04.98 12:35 SYS: AJMDB13I - AJMDBBKU: DATABASE BACKED UP ON FILE HLQ.AJM.DATA 14.04.98 12:35 Net: USER1.PROD/TST003A started 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0031 started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0031 active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0031 terminated (C0000) 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0031 "OK" is processed 14.04.98 12:35 Job: USER1.PROD/TST001/TST001CH started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST001/TST001DL started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST002/TST00203 started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST001/TST001CH active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST002/TST00203 active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST002/TST00203 terminated (C0004) 14.04.98 12:35 Job: USER1.PROD/TST002/TST00203 "ALT/010" is processed 14.04.98 12:35 Job: USER1.PROD/TST002/TST00217 started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST001/TST001DL active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST002/TST00217 active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST002/TST00217 terminated (C0000) 14.04.98 12:35 Job: USER1.PROD/TST002/TST00217 "OK" is processed 14.04.98 12:35 Job: USER1.PROD/TST001/TST001DL terminated (C0000) 14.04.98 12:35 Job: USER1.PROD/TST001/TST001DL "OK" is processed 14.04.98 12:35 Job: USER1.PROD/TST001/TST001CH terminated (C0000) 14.04.98 12:35 Job: USER1.PROD/TST001/TST001CH "OK" is processed 14.04.98 12:35 Job: USER1.PROD/TST001/TST00199 BYPASS condition (SL00) detected 14.04.98 12:35 Job: USER1.PROD/TST001/TST00199 "OK" is processed 14.04.98 12:35 Net: USER1.PROD/TST001 terminated 14.04.98 12:35 Job: USER1.PROD/TST002/TST00299 started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST002/TST00299 active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST002/TST00299 terminated (C0000) 14.04.98 12:35 Job: USER1.PROD/TST002/TST00299 "OK" is processed 14.04.98 12:35 Net: USER1.PROD/TST002 terminated 14.04.98 12:35 MSG: AJMJS56E - AJMJSSUB: JOB NOT IN JCL MEMBER, MEMBER: TSTNET6 14.04.98 12:35 Trc: USER1.PROD/TST001/TST00100 Schedule element "Interval" not sat14.04.98 12:35 Job: USER1.PROD/TST003A/TST0039 started (SL00) 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0039 active on SYX1 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0039 terminated (C0000) 14.04.98 12:35 Job: USER1.PROD/TST003A/TST0039 "OK" is processed 14.04.98 12:35 Net: USER1.PROD/TST003A terminated 14.04.98 12:36 Job: USER1.PROD/TST004/TST004 set to BYPASS by User: USER101 14.04.98 12:36 Job: USER1.PROD/TST005/TST00503 started by User: USER102
Normally the displayed log messages are self-explaining. Abbreviations used in job start, bypass and job trace messages have the following meaning:
SLnn Number of schedule list within the job definition leading to job start or bypass of a job. For trace messages it specifies to which schedule list the trace message applies.
SEnn Specifies for trace messages which schedule element (schedule criterion) avoids job selection in the respective schedule list. The scheduler checks the schedule elements in the order of their definitions from top to bottom. The first detected criterion avoiding a job selection will be specified by this number.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
204
20.4 Log-Format R (Report)
Below you find a list of examples for log query in format R:
BROWSE -- USER100.AJM.LOG2.LIST -------------------- LINE 00000029 COL 001 080 COMMAND ===> SCROLL ===> PAGE 1998/04/14 12:35 2 NET STRT USER1.PROD TST001 1998/04/14 12:35 2 JOB BYP USER1.PROD TST001 TST00100 SL00 NORMAL 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST001 TST00100 OK 1998/04/14 12:35 2 NET STRT USER1.PROD TST002 1998/04/14 12:35 2 JOB STRT USER1.PROD TST002 TST00201 SL00 NORMAL WO1998/04/14 12:35 2 JOB ACT USER1.PROD TST002 TST00201 SYX1 NORMAL WO1998/04/14 12:35 2 JOB DSTV USER1.PROD TST003A TST0031 FTPSVC40 USER1.Z.Y.R1998/04/14 12:35 2 JOB TERM USER1.PROD TST002 TST00201 C0000 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST002 TST00201 OK 1998/04/14 12:35 2 JOB BYP USER1.PROD TST001 TST001NG SL01 NORMAL 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST001 TST001NG OK 1998/04/14 12:35 2 JOB BYP USER1.PROD TST001 TST00155 SL00 NORMAL 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST001 TST00155 OK 1998/04/14 12:35 2 SYS MSG AJMDB13I HLQ.AJM.DAT1998/04/14 12:35 2 NET STRT USER1.PROD TST003A 1998/04/14 12:35 2 JOB STRT USER1.PROD TST003A TST0031 SL00 NORMAL WO1998/04/14 12:35 2 JOB ACT USER1.PROD TST003A TST0031 SYX1 NORMAL WO1998/04/14 12:35 2 JOB TERM USER1.PROD TST003A TST0031 C0000 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST003A TST0031 OK 1998/04/14 12:35 2 JOB STRT USER1.PROD TST001 TST001CH SL00 NORMAL WO1998/04/14 12:35 2 JOB STRT USER1.PROD TST001 TST001DL SL00 NORMAL WO1998/04/14 12:35 2 JOB STRT USER1.PROD TST002 TST00203 SL00 NORMAL WO1998/04/14 12:35 2 JOB ACT USER1.PROD TST001 TST001CH SYX1 NORMAL WO1998/04/14 12:35 2 JOB ACT USER1.PROD TST001 TST001DL SYX1 NORMAL WO1998/04/14 12:35 2 JOB ACT USER1.PROD TST002 TST00203 SYX1 NORMAL WO1998/04/14 12:35 2 JOB TERM USER1.PROD TST002 TST00203 C0004 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST002 TST00203 ALT 010 1998/04/14 12:35 2 JOB STRT USER1.PROD TST002 TST00217 SL00 NORMAL WO1998/04/14 12:35 2 JOB TERM USER1.PROD TST002 TST00217 C0000 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST002 TST00217 OK 1998/04/14 12:35 2 JOB TERM USER1.PROD TST001 TST001DL C0000 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST001 TST001DL OK 1998/04/14 12:35 2 JOB TERM USER1.PROD TST001 TST001CH C0000 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST001 TST001CH OK 1998/04/14 12:35 2 JOB BYP USER1.PROD TST001 TST00199 SL00 NORMAL 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST001 TST00199 OK 1998/04/14 12:35 2 NET TERM USER1.PROD TST001 1998/04/14 12:35 2 JOB STRT USER1.PROD TST002 TST00299 SL00 NORMAL WO1998/04/14 12:35 2 JOB ACT USER1.PROD TST002 TST00299 SYX1 NORMAL WO1998/04/14 12:35 2 JOB TERM USER1.PROD TST002 TST00299 C0000 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST002 TST00299 OK 1998/04/14 12:35 2 NET TERM USER1.PROD TST002 1998/04/14 12:35 2 JOB MSG USER1.PROD TST006 TST00601 AJMJS56E TSTNET6 TS1998/04/14 12:35 2 JOB TRC USER1.PROD TST001 TST00100 LIST INTERVAL SL1998/04/14 12:35 2 JOB STRT USER1.PROD TST003A TST0039 SL00 NORMAL WO1998/04/14 12:35 2 JOB ACT USER1.PROD TST003A TST0039 SYX1 NORMAL WO1998/04/14 12:35 2 JOB TERM USER1.PROD TST003A TST0039 C0000 1998/04/14 12:35 2 JOB CNTL USER1.PROD TST003A TST0039 OK 1998/04/14 12:35 2 NET TERM USER1.PROD TST003A 1998/04/14 12:36 2 JOB MBYP USER1.PROD TST004 TST004 USER101 1998/04/14 12:36 2 JOB EXE USER1.PROD TST005 TST00503 USER102
Log data in format Report is structured in standardized form. Therefore it is especially applicable to serve as a basis for own analyses, e.g. by a Rexx or an edit macro.
All log data in format "Report" have the following uniform structure:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
205
Column Length Contents Comment 2 10 date today's date in format yyyy/mm/dd 13 5 time time in format hh:mm 19 1 dayname 1 = Monday, 2 = Tuesday, etc. 21 4 category net, job, log. resource, etc. 26 4 type start, end, lock (LCK), unlock (UNL), etc. 31 17 name 1 group name or blank (depends on type of record) 49 8 name 2 name of net, name of variable, etc. or blank (depends on type of record) 58 8 name 3 job name or blank (depends on type of record) 67 -- parameter both number and length of parameter depend on type of record (see following
table)
Note: Column indications in the table are shifted by one position to the right compared to the display in browse mode. The reason for it is that the output files for log data are created with record format FBA,the print control character in browse mode, however, is not displayed.
The following table provides an alphabetically sorted overview of all log data and its parameters written by AJM at present
The following abbreviations were used for name 1/2/3:
G group name
N net name
J job name
C calendar name
L name of log. resource
P packet name
V name of variable
X name of external system
Cat. Type Name 1/2/3
Description Co,L Parameter (Co = column, L =length)
CAL DEL G/C/- calendar was deleted 67,8 userid of user
CAL UPD G/C/- calendar was modified 67,8 userid of user
DOCJ DEL G/N/J job documentation was deleted 67,8 userid of user
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
206
DOCJ UPD G/N/J job documentation was modified 67,8 userid of user
DOCN DEL G/N/- net documentation was deleted 67,8 userid of user
DOCN UPD G/N/- net documentation was modified 67,8 userid of user
JCD DEL G/-/- All JCL dataset assignments of the group were deleted 67,8 userid of user
JCD UPD G/-/- JCL dataset assignments of the group were modified 67,8 userid of user
JOB ACT G/N/J job has started on identified system 67,8 name of the system
JOB BYP G/N/J BYPASS condition for job was determined 67,8 cause for BYPASS:
SLnn bypass by schedule list nn
BRN bypass by line command BRN
BYP bypass by line command BYP
76,8 execution mode
NORMAL RESTART
JOB CLR G/N/J job was reset (CLR) 67,8 userid of user
JOB CNTL G/N/J termination control statement executed after job end 67,8 Term-Cntl: Action
76,8 Term-Cntl: Parameter, recovery net or blank (depends on executed action)
85,8 Term-Cntl: Recovery net or blank (depends on executed action)
JOB DEL G/N/J job definition was deleted 67,8 userid of user
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
207
JOB DSND G/N/J datasets of last job run were deleted manually (RES) 67,8 userid of user
JOB DSTV G/N/J condition "DS trigger" was set valid for job 67,8 job name or TSO user having initiated trigger
76,44 dataset name of the DS trigger
JOB EXE G/N/J job was started manually using line command EXE 67,8 userid of user
JOB LATE G/N/J LATE condition for job was determined 67,8 cause for LATE:
SLnn LATE by schedule list nn
76,8 execution mode:
NORMAL RESTART
JOB LCK G/N/J Job was locked by user (LCK) 67,8 userid of user
JOB MBYP G/N/J job was set on BYPASS manually (BYP) 67,8 userid of user
JOB MSG G/N/J job-specific message was written 67,8 message number
76,nn variable message elements separated with at least one blank, number and length depend on output message
JOB MSTR G/N/J job was started manually (STR/RUN) 67,8 userid of user
JOB NTFY G/N/J Notify by AJM/S has occurred 67,8 hint on match
NOMATCH check of O code conditions did not result in a match
MATCH check of O code conditions resulted in a match 76,8 hint on match
JCLER job was not executed because of JCL error
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
208
JFAIL job was aborted prior to start (e.g. Cancel)
Onnnn check of O code conditions resulted in a match with this value
JOB STRT G/N/J Job was started by AJM 67,8 start by:
SLnn schedule list nn (scheduler)
STR line command STR (manually)
RUN line command RUN (manually)
76,8 execution mode:
NORMAL RESTART
85,8 daytype according to calendar:
WORKDAY RESTDAY HOLIDAY
JOB TERM G/N/J job has terminated 67,8 Completion-Code
76,8 indicator for "Waiting for AJM/S-Notify" (O-WAIT) or blank
JOB TRC G/N/J job trace record of scheduler why job was not selected 67,8 reason:
LIST schedule list not satisfied
JOB general condition in job environment
76,8 schedule element (LIST) not satisfied:
DATE date
DAYNAME dayname
DAYTYPE daytype
DSTRIGG DS-Trigger
EXTDEP external dependency
INTDEP internal dependency
INTERVAL Interval
JOBVAR job variable
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
209
LOGRES log. resource
RELDAY relative day
TIME time condition 76,8 general condition (JOB):
CALNFND calendar not found
INVSLHDR internal error in schedule list header
INVSEHDR internal error in schedule element header
INTERNAL internal AJM error
JCDNFND JCL dataset assignment not found
JOBNFND JCL of job not found
LNKERROR linkname in status "in error"
LNKLOCK linkname locked
LNKNFND linkname not found
MEMBNFND JCL member not found
PREPNVAL no valid preparation
RSTFAIL error when restart was executed
RSTLIMIT restart limit reached
SCHEDLCK schedule function locked by administrator
SLNOTVAL no valid schedule list found
UIDNAUTH entered userid not authorized
UIDNFND no userid entered in JCL 85,4 number of schedule list (LIST):
SLnn
90,4 sequence number of schedule element in the list (LIST):
SEnn
JOB UNLK G/N/J Job was unlocked by user (UNL) 67,8 userid of user
JOB UPD G/N/J job definition was modified 67,8 userid of user
LRS DEL G/L/- logical resource was deleted 67,8 userid of user
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
210
LRS REL G/N/J logical resource was released by job 67,8 name of logical resource
86,4 number of released units
91,4 number of units available again in total
LRS RES G/N/J logical resource was allocated by job 67,8 name of logical resource
86,4 number of allocated units
91,4 number of units still available in total
LRS UPD G/L/- definition of logical resource was modified 67,8 userid of user
NET CLR G/N/- net was reset (CLR) 67,8 userid of user
NET DEL G/N/- entire net was deleted 67,8 userid of user
NET LCK G/N/- entire net was locked (LCK) 67,8 userid of user
NET MRST G/N/- manual restart of net was executed (REX) 67,8 userid of user
NET STRT G/N/- net was started no parameters
NET TERM G/N/- net has terminated no parameters
NET UNLK G/N/- entire net was unlocked (UNL) 67,8 userid of user
PACK DEL G/P/- packet definition was deleted 67,8 userid of user
PACK DEL G/P/- packet definition was deleted 67,8 userid of user
PACK UPD G/P/- packet definition was modified 67,8 userid of user
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
211
PCD DEL G/-/- AJM/P dataset assignment was completely deleted 67,8 userid of user
PCD UPD G/-/- AJM/P dataset assignment was completely modified 67,8 userid of user
PREP DEL G/N/- AJM/P preparation dialog was deleted 67,8 userid of user
PREP INV G/N/J AJM/P preparation was set invalid (PVR) 67,8 userid of user
PREP UPD G/N/- AJM/P preparation dialog was modified 67,8 userid of user
PREP VAL G/N/J AJM/P preparation was set valid (AJM/P dialog executed or PVS) 67,8 userid of user
SYS MSG -/-/- system message (error, information) was written 67,8 message number
76,nn variable message elements separated with at least one blank, number and length depend on output message
VAR# DEL G/V/- global AJM/P variable was deleted 67,8 userid of user
VAR# UPD G/V/- global AJM/P variable was modified 67,8 userid of user
VARG DEL G/V/- AJM/P group variable was deleted 67,8 userid of user
VARG UPD G/V/- AJM/P group variable was modified 67,8 userid of user
VARN DEL G/N/V AJM/P net variable was deleted 67,8 userid of user
VARN UPD G/N/V AJM/P net variable was modified 67,8 userid of user
VARP DEL G/P/V AJM/P packet variable was deleted
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
212
67,8 userid of user
VARP UPD G/P/V AJM/P packet variable was modified 67,8 userid of user
XSD DEL G/X/- definition of external system was deleted 67,8 userid of user
XSD UPD G/X/- definition of external system was inserted or modified 67,8 userid of user
20.5 Log-Format L (List)
Using this format you obtain an overview about available log datasets and the period which the individual datasets cover.
By default AJM uses two online log datasets written alternatively. The dataset which is being written is called an active log dataset, the other an inactive one. As soon as one log dataset is filled up it is closed and writing will be continued in the other dataset. While this is done a copy of the hitherto active log dataset is created as a generation file and archived. When accessing the log datasets AJM determines by using an internally kept index which datasets can be read on the basis of the selected query period.
Note: Automatic archiving of log files has to be activated by the local AJM administrator via the parameterization dialog.
Below you will find an example for the display of the List format.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
213
LIST OF AVAILABLE LOG FILES ---------------------------
DATASET FROM TO HLQ.AJM.LOGFILE1 * 19.04.98 09:00 30.04.98 16:24HLQ.AJM.LOGFILE2 * 01.04.98 01:58 19.04.98 09:00HLQ.AJM.LOGFILE.ARCHIVE.G0019V00 (M1) 01.04.98 01:58 19.04.98 09:00HLQ.AJM.LOGFILE.ARCHIVE.G0018V00 (M1) 14.03.98 21:00 01.04.98 01:58HLQ.AJM.LOGFILE.ARCHIVE.G0017V00 (M2) 28.02.98 09:00 14.03.98 21:00HLQ.AJM.LOGFILE.ARCHIVE.G0016V00 (M2) 17.02.98 04:00 28.02.98 09:00HLQ.AJM.LOGFILE.ARCHIVE.G0015V00 (M2) 31.01.98 00:00 17.02.98 04:00HLQ.AJM.LOGFILE.ARCHIVE.G0014V00 (M2) 12.01.98 01:00 31.01.98 00:00HLQ.AJM.LOGFILE.ARCHIVE.G0013V00 (M2) 23.12.97 07:41 12.01.98 01:00HLQ.AJM.LOGFILE.ARCHIVE.G0012V00 (M2) 04.12.97 22:00 23.12.97 07:41
The display has the following structure:
DATASET name of log file
The display of the log files is sorted according to the age of the included data, files including the most recent data standing on top. Therefore the display always begins with the active log file, subsequently the inactive log file and at last the archived one.
The entry (M1) or (M2) behind the file name points out that the file has been migrated (migration level 1 or 2). An access to log data from these files leads to an automatic recall during query.
The entry (??) behind the file name points out that the dataset name is entered in the AJM-internal log file index, but the dataset is no longer cataloged. When such a discrepancy is ascertained a new structure of the internal index is automatically given rise and you will be shown the following message:
AJMLI38I - AJMLGINQ: Log file index is being restructured. Please repeat request later in case of incomplete data
FROM date and time at which log data of file begins
TO date and time at which log data of file ends
An * in front of the date indicates that the file is read on the basis of the selected period under review when queried.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
215
To obtain an overview of how many definitions exist within a group and how many jobs from it have been executed since the start of the AJM system you may query group-specific statistic information.
21.1 Filter
When the statistic dialog (selection 21 in main menu) is invoked a panel will be displayed helping you select for which group the statistic information is to be displayed.
AJM ----------------------- Filter for Group Statistics ----------------------CMD===> Group: USER1.AJMDEMO____
The following entries are possible:
Group name of a group for which the statistic information is to be displayed
The name of the group must not be abbreviated.
21.2 Statistic Information
After selecting a group the following information is displayed:
AJM ---------------- Group Statistics --------------- Group: USER1.AJMDEMO CMD===> SCROLL===> CSR
Start date : 26.09.02 Start time : 10:45 No. of defined nets : 101 No. of defined jobs : 2.557 No. of started jobs : 1.210 No. of terminated jobs : 1.094 No. of restart jobs : 13
The displayed fields have the following meaning:
Start date date when AJM system was started
Start time time when AJM system was started
21 Group-specific Statistics
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
216
No. of defined nets
number of nets defined within this group
No. of defined jobs
number of jobs defined within this group
No. of started jobs
number of jobs which have been started by AJM for this group since the last start of the AJM system
No. of terminated jobs
number of jobs which have terminated for this group since the last start of the AJM system
No. of restart jobs number of jobs which have been started by AJM for this group since the last start of the AJM system within the scope of a restart
21.3 Authorization Check and Logging
For the authorization check the following profile will be taken when statistics are queried:
group-hlq.group-slq
There is no logging of this action.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
217
In this menu all the utilities available in AJM are listed. From a backup file you may restore definitions e.g. which you have deleted by mistake or have JES3 nets converted in AJM definitions.
The individual items of the menu are described in the following chapters.
22.1 Restoration of deleted definitions
Using this utility you may restore definitions deleted by mistake from a backup file. AJM generates these backup files in regular intervals. They contain all the definitions from AJM and AJM/P.
If you select selection 1 in the utilities menu the following panel will be displayed:
AJM ---------------------------- Utility AJMDBMRG ----------------------------CMD===> SCROLL==> PAGEGroup : *________________ Net: *_______ Job: *_______ Log. Resource : *________________ Calendar: *_______ Ext. Sys: *_______ Node : *_______ Path: *_______ AJM/P Variable : *_______ Package: *_______ Definitions AJM : Net/Job: Y Documentation: N Ext. System: N : Log. Res: N JCL-Def: N Calendar: N : Node-Def: N Path-Def: N AJM/P : Dialog: N Variable: N Link-Def: N Options : Lock job : Y : Add job to net: N Backup Dataset : HLQ.AJM.DATABASE.BACKUP.G0123V00____________
The following entries are possible:
Group name of a group for which definitions are to be restored
The name of the group must not be abbreviated.
Net name of a net for which definitions are to be restored
The name may be abbreviated as *. Selection according to the net name refers to restoration of job definitions, documentation texts, AJM/P dialogs and AJM/P variables.
Job name of a job for which definitions are to be restored
The name may be abbreviated as *. Selection according to jobname refers to the restoration of job definitions and documentation texts.
Log. Resource
name of a logical resource which is to be restored
The name may be abbreviated as *.
22 Utilities
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
218
Calendar name of a calendar which is to be restored
The name may be abbreviated as *.
Ext. Sys name of an external system for which the definition is to be restored
The name may be abbreviated as *.
Node name of a node definition which is to be restored
The name may be abbreviated as *.
Path name of a path definition which is to be restored
The name may be abbreviated as *.
AJM/P-Variable
name of an AJM/P variable which is to be restored
The name may be abbreviated as *.
Package name of an AJM/P package for which definitions are to be restored
The name may be abbreviated as *. Selection according to the package name only refers to the restoration of AJM/P variables.
Definitions AJM / AJM/P
Option which type of definitions are to be restored
Specify Y if you want to restore the corresponding definition.
Options The following options may be specified:
Lock job
Specify Y if the restored job is to be locked. You may then verify the retrieved definition first and adapt it if applicable. Subsequently you may submit the job using the UNL command.
If you specify N the restored job will not be locked and may start immediately if its schedule conditions are satisfied.
Add job to net
Specify Y if the job definition is also to be restored even if there is already a corresponding net. Take into account that an inconsistent net definition may result from it. It is mandatory to check the entire net using the PLS command after restoration.
If you specify N existing nets will not be completed. Backup Dataset
name of the backup dataset from which it is to be retrieved
Specify here from which dataset the definitions are to be retrieved. If you invoke the dialog the dataset name of the last backup will be entered automatically.
If you have specified all the options press the Enter key. Through this a job will be generated which will be displayed then. You may start this job using SUB or exit the generated JCL using PF3.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
219
22.2 Cleanup of Definitions
Using this utility you may obtain an overview of definitions which may possibly be cleaned up. E.g. jobs belong to it which have not run for a long time or documentation texts or AJM/P dialogs for which there does not exist the corresponding net definition (any more). Optionally such definitions may also be deleted directly.
If you select selection 2 in the utilities menu the following panel will be displayed:
AJM ---------------------------- Utility AJMDBCLN ----------------------------CMD===> SCROLL==> PAGECleanup : Jobs: Y Documentation texts: N : AJM/P Dialogs: N : "Old JCL": N Recorded datasets: N Selection : Group: *________________ : Job not run since: ____ days (Cleanup of jobs) : Net doesn't exist: N : Age: ____ days ("Old JCL" and datasets) Function : List: Y Delete: N Output DS: N Output DS : ____________________________________________ Text : ____________________________________________________________
The following entries are possible:
Cleanup type of definitions which are to be cleaned up
Specify here what you want to clean up.
Selection The following selection criteria are available:
Group name of a group
The group name must not be abbreviated. Only those definitions are selected which belong to the specified group.
Job not run since
option how long ago the last start of a job has to be
Only such job definitions are selected to which this condition applies.
Net doesn't exist
Only such documentation texts or AJM/P dialogs are selected for which there does not exist any associated AJM net or job definition.
Age "Old JCL" and recordings of datasets older than the specified number of days are selected.
Function type of processing
Here you decide what is to happen with the definitions corresponding to the specified
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
220
selection criteria.
List All the definitions corresponding to the specified selection criteria are listed. The list is written into the file allocated under AJMPRINT.
Delete All the definitions corresponding to the specified selection criteria are deleted.
Output DS
For each definition corresponding to the specified selection criteria a record is written into the output file allocated under AJMOUT. The structure of the record is defined in the field "text".
Output DS
Here the name of the output file may be specified. If this option is missing output is done to SYSOUT.
Text layout of the output records
If output into dataset was selected you may define here how the records are to be structured. For that purpose the variables group (%1), net (%2) and job (%3) may be interspersed into a text freely to be defined at any position.
Example for cleanup of job definitions: DEL GROUP(%1) NET(%2) JOB(%3) generates a file which may be used as an entry for the AJM batch interface.
If you have specified all the options press the Enter key. Through this a job will be generated which will be displayed then. You may start this job using SUB or exit the generated JCL using PF3.
22.3 Migration of Definitions (e.g. JES3 nets)
If you select selection 3 in the utilities menu you branch to the migration interface. You will find a detailed description in .
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
221
External Systems
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
223
23.1 Characteristics
External systems are those systems which have connections to other platforms and connections to other OS/390 systems which are outside the local JES2/JES3 complex. The goal is to be able to start and monitor jobs on these external systems. The scheduling of the jobs is performed centrally by AJM on the OS/390 host.
The following external systems are currently supported:
• SAP/R3 under UNIX (Sun Solaris 2.6)
The support of the following systems is planned:
• UNIX (execution of shell scripts) • SAP/R3 under WINDOWS NT • WINDOWS NT • OS/390 Unix System Services • non-local OS/390 systems
Generally the connection of external systems has the following characteristics:
• The scheduling is done centrally by AJM on the host. • The control data ("JCL") is maintained centrally on the host. • Job initialization and monitoring are performed by an AJM agent (UNIX, Windows NT, SAP/R3). • NCI from T-Systems International GmbH is used for communication with the external systems.
o TCP/IP for UNIX, SAP/R3, Windows NT (AJM agent required) o VTAM LU 6.2 for OS/390 systems
23.2 The AJM agent
An AJM agent is a simply structured assistant function which is installed on an external system (UNIX, Windows NT) and has the following tasks:
• Initiation of batch processes (e.g. SAP/R3 jobs, UNIX shell scripts) on the external system • Status monitoring of the batch processes • Reporting status changes (job start, job end, job error) to the AJM host
The AJM agent is currently available for the following platform:
• UNIX on Sun Solaris 2.6
Additional platforms are planned.
23 External systems
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
224
23.3 Coupling to SAP/R3
AJN
SAP
AJM 3.1: Linkage to SAP/R3
SAP/R3
AJMAgent
SAP/R3Background-proc.
XBP
A J M
Comm.
UNIXOS/390
NCI
The following technical requirements are necessary for the control of SAP/R3 jobs (background processes) by AJM:
• SAP/R3 Release 4.5 (support for the XMI/XBP interface). • Installation of an AJM agent on a UNIX system (starts and monitors the background processes). • Runtime environment for NCI from T-Systems International GmbH on the UNIX system (for the
communication between the AJM host and the AJM agent).
Notes on performance:
The installation of the AJM agent does not necessarily have to be on the same UNIX system on which the SAP/R3 system is installed, but this is recommended for reasons of performance.
Any number of SAP/R3 systems which are located on different UNIX computers can be operated using an AJM agent. The only requirement is that the SAP/R3 system can be reached by the AJM agent using TCP/IP.
If several SAP/R3 systems are operated which are located on different UNIX computers, then it is recommended that a separate AJM agent be installed on each for reasons of performance. This has the following advantages:
• Higher throughput through parallel processing
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
225
• Improved response times for status queries for the SAP/R3 system (faster since the query does not go via the network)
• Reduction of the risk of loss due to faults like o Problems with the TCP/IP communication between the AJM host and the AJM agent o Problems with the TCP/IP communication between the AJM agent and SAP/R3 o Ending individual SAP/R3 systems or UNIX base systems, e.g. because of
maintenance work or general system problems
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
227
AJM/P
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
229
24.1 Hints on AJM/P
This chapter describes AJM/P's operating mode and structure. If you intend to work with AJM/P you should at any rate read this introduction first as important basic concepts are explained and thus you get a general idea.
If you have any questions or problems while you practise AJM/P you should first invoke the associated online help information (HELP command, PF1). If these guidelines are not sufficient you will find a detailed description of the dialogs and panels of the AJM/P administration interface in the following chapters.
24.2 Characteristics of AJM/P
AJM/P is a job preparation system facilitating a far-reaching automation for the creation of variable JCL and the modification of flows. Using AJM/P you may restrict modifications of JCL subject to fixed rules to a defined frame. Using a preparation dialog the user may then update JCL and control cards.
A preparation dialog may be formulated according to user-specific needs in order that JCL knowledge is not required for execution.
Note: For JCL which has to be created only once and remains unchanged afterwards you do not need AJM/P. Using AJM variables and job variables you may already achieve a great variability of JCL within AJM (see "AJM Variables"on page 293).
AJM/P has the following important characteristics:
• The smallest unit to prepare is a net (AJM net). If several nets are to be prepared for an entire logical execution the preparation dialogs may be combined in a package.
• When the net is prepared one or more members may be created which may be changed again when the next net is prepared. A renewed preparation of the same net overwrites the one previously performed.
• A preparation dialog may be performed as often as you like (members are overtyped); it is also possible to modify its status manually.
• Overwriting of a preparation just being valid may be forbidden optionally (option for the definition of the dialog).
• Execution of a preparation dialog may be protected against the net run in AJM (exclusive preparation lock).
• A preparation dialog may only be performed within the AJM complex (shared DASD). • AJM/P uses ISPF file tailoring to create members or datasets (JCL, control cards) from
skeletons. You may assign skeletons to nets as you like; you may assign several output files (net, job,...) to a skeleton and several skeletons may be combined in an output file.
• There are AJM/P variables which are prompted in the preparation dialog by the user. You may access to AJM/P variables, AJM variables, job variables and ISPF variables in the preparation dialog.
24 Introduction AJM/P
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
230
AJPB
EN01
Principle of Job Preparartion
Job variabledata set
AJM/P
• creates members / files (for nets orsingle jobs) via File Tailoring
• substitutes AJM/P variables
• updates/creates job variables
• sets praparation valid in AJM
Skeletonsfor JCL
Skeletonsfor parametercards
ISPF data sets
AJM/P-DB
Updatedparametercards
UpdatedJCL
AJM
Job variabledata set
AJM/P-DB
Preparationcompleted
Job variable changed
The figure provides an overview of AJM/P's operation mode :
Input data are on the left. They may consist of ISPF files (panels, skeletons,...), of the AJM/P database (execution logic of the preparation dialog) and of the job variable dataset. In the example a great part of the input data consists of skeletons for JCL and control cards.
In interactive mode the designer creates members from this input data by file tailoring. These members contain the entire JCL or completely prepared control cards.
After the preparation was properly performed all modifications are saved and the schedule condition "job preparation required" is set on satisfied (right side of figure).
24.3 Variables
AJM/P variables may be used for file tailoring, in ISPF panels, for control of the preparation dialog and in user-own REXXs. They are stored on the AJM/P database centrally. Apart from AJM/P variables you may also use AJM variables, job variables and ISPF variables.
24.3.1 AJM/P Variables
24.3.1.1 Types and Properties There are different types of AJM/P variables differing in their scopes of application:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
231
• System variables are set by AJM/P and apply to all preparation dialogs (to the entire system). There are the following system variables:
$$CAL calendar name
$$GROUP name of the group to which the current preparation dialog belongs
$$MODE parameters for REXX procedures (test / perform)
$$MSG forwarding of messages from REXX procedures
$$NET name of the net being prepared
$$PACK name of the package being prepared
$$VAR name of the current variable (for test REXX)
• Global variables also apply to all preparation dialogs. They are set by the AJM system administrator and cannot be altered in the preparation dialog by users.
• Group variables are applicable within a specific group and are defined in the variable dialog of AJM/P. Within the preparation dialog they must not be altered.
• Furthermore there are package variables (valid within a package) and net variables (valid within a net). Both types may be changed during execution of the respective preparation dialog.
24.3.1.2 Integration into Preparation Dialog (prompt) AJM/P provides the following possibilities of definition for prompting AJM/P variables:
• Representation format of the prompt text may be defined freely (intensity, distribution on several lines).
• Length and position of the input field in the text may be chosen by the user. Besides the input field may be preallocated by a default value or the last value.
• There are extensive possibilities of checking the input value for its plausibility. • It is possible to define a help text displayed in accordance with the cursor position (field-
sensitive help).
24.3.2 Use of ISPF and Job Variables (AJM/J) ISPF and job variables may be used in the preparation dialog in different positions.
• ISPF Variables o In the dialog element SET values may be assigned to variables. The value or parts
from it may also be used as an input value for other variables. o According to the value of the variable you can control which parts of the preparation
dialog are to be passed. o Besides ISPF variables may be used in ISPF panels, REXX procedures and in
skeletons. • Job Variables
o In the dialog element SET values may be assigned to variables. The value or parts from it may also be used as an input value for other variables.
o Besides job variables may be used in REXX procedures.
24.3.3 Overview and Examples for Variables The following chart provides an overview of AJM/P variables, ISPF variables and job variables:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
232
AJQ
BEN
03
Variables within the Preparation Dialog
System variables:
$$GROUP, $$NET, $$PACK, $$CAL, ...
Global variables:
$... (e.g. $SYSRES, $SYSHLQ, $UNIT)
Group variables:
G$...
Packet variables:
P$...
Net variables:
8-figure, arbitrary
ISPF variables:
8-figure, arbitrary
Job variables:
17-figure, arbitrary
set by AJM/P
can be changed viavariable dialog
can be changed duringpreparation dialog
defined and storedto AJM/P data base
Examples for the use of the different variable types: System variables: system variables may be read by REXX procedures in AJM/P
Global variables: Sysout classes (for AJM/S, ...), HLQ for system files (SYS4)
Group variables: batch user for "USER=" options in the job card, HLQ for group datasets
Package variables: HLQ for datasets belonging to a subject area
Net variables: number of copies, control parameters for analysis
ISPF variables: Intermediate results, internal control of dialog
ISPF system variables:
Date / time, User-ID (ZDATE, ZTIME, ZUSER)
Job variable: Value of job variable decides if job can be started (value of job variable equals RUN or NORUN)
24.3.4 Substitution of Variables in JCL Notice that data getting into your JCL by resolution of variables depend on the moment of substitution.
Variable values replaced in JCL during the preparation dialog remain unchanged until job is submitted. That means that its value is independent of the time of submit of the job.
Example (AJM/P): The variable %DATE(DMY) is replaced by the day on which the preparation dialog is performed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
233
Unlike this the value of a variable replaced by AJM at the time of submit depends on the moment of submit of the job.
Example (AJM): The variable %DATE(DMY) is replaced by the day on which the job is submitted. If such a job is submitted later than intended (after midnight) JCL contains the date of the following day.
AJQ
BEN
04
Substitution at time ofpreparation dialog
• AJM/P variables
• job variables
Substitution at time ofjob submit
• AJM variables
• job variables in JCL
Variables in the AJM Product Family
24.4 Important Expressions
• Preparation Dialog
A preparation dialog for net preparation is a sequence of individual actions combined in dialog elements. Its objective is to generate a net capable to run. For that purpose JCL and input files are created or control parameters are set for net run. Execution of a preparation dialog has to be required by a user.
• Package
A package consists of a sequence of nets prepared one after the other. Package variables prompted prior to execution of the first net may be assigned to a package. They are valid during preparation of all nets belonging to the package.
• File Tailoring
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
234
File tailoring is used to create members and datasets by using skeletons. Skeletons represent a framework containing fixed parts, variables and logical elements. When file tailoring is performed variables are replaced and logical elements executed. (2)
• Linkname
The linkname is a one-to-eight-character name. By using it AJM/P finds the required input and output files. This linkname has to be defined in AJM/P.
Datasets are assigned to in AJM/P in different ways.
Default for input: use of ISPF user files already allocated
Linkname for input:
record of ISPF datasets (skeletons, panels, CLISTs, ...)
Linkname for output:
output files have to be assigned to the type ANY
For a member output is done onto the file containing a member of the wanted name or if no such member exists onto the first of the mentioned files.
For a PS file output is done onto the first of the mentioned files.
AJM reference for output:
reference to AJM definition
The following chart shows the link between linkname in AJM/P and the files addressed through it. Especially under the input linkname a series of various types of datasets may be addressed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
235
l:ajm
/fol
ien/
ajm
p/be
griff
e.pp
t/1
AJM/P Link name
ANYBrowse/Editof VLK, JCL, ...
MODLoad-Modul
TBLTables
MSGMessages
RXXREXX/CLIST
PNLPanels
FTLSkeletons
ANY• output file
from File Tailoring• Browse/Edit
Input Output
• Dialog Elements
Dialog elements are modules of each preparation dialog. Apart from the preparation notes each dialog element may occur as often as you like and in any order in a preparation dialog.
Preparation Notes
notes displayed once at the beginning of the net preparation
VAR list of variables which are to be prompted in a common panel
SET Assign statement for variables (AJM/P variables, job variables, ISPF variables) whereby you may refer to values from other variables (AJM, AJM/P, job and ISPF variables).
PNL list of panels which are to be displayed one after the other
FTL list of skeletons which are to be used to generate a dataset; besides the output file or the output member have to be defined.
DAT list of files or members which are to be displayed (BROWSE/EDIT)
DEL list of members which are to be deleted
RXX list of REXX procedures which are to be displayed one after the other
• Help for Creation of a Preparation Dialog
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
236
AJM/P provides a series of auxiliary possibilities to test preparation dialogs already completed. They range from trace functions, simulations to direct editing of used modules.
24.5 Link AJM - AJM/P:
In AJM there is the schedule condition "preparation required". Definition of this schedule condition is done in the AJM job update panel. After execution of a preparation dialog the schedule condition is set satisfied for the entire net. The status satisfied may also be set and cleared manually. Duration of validity is specified in the AJM/P preparation dialog definition (either period or "n times"). The following chart shows the interaction between AJM and AJM/P.
AJQ
BEN
07
AJM /P
File-Tailoring /direct editing
Preparartionrequired?Perform dialog
Set job variable
AJM
// JOBA ...// ....// ....// ....
Start job
Job variables
Scheduleconditionsfulfilled?
Preparation valid ?
yes
no
yes
JCL
During preparation JCL is created and job variables are set. As soon as the preparation dialog has been performed AJM is given "the green light". As soon as all the other schedule conditions (e.g. job variables) are satisfied AJM will start the prepared net.
During execution of a preparation dialog a net may be provided with a preparation lock. It protects the net run and the preparation dialog in AJM/P against each other.
1. A preparation dialog may only be started if the net is not active at that time. 2. While the preparation dialog is running the net in AJM can neither be started automatically nor
manually. 3. The preparation lock is cleared as soon as the dialog terminates (either successfully or
aborted). If a problem occurs the preparation lock may be undone manually using the line command PUL.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
237
4. Setting and undoing of the preparation lock is documented in the AJM log.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
239
A preparation dialog is a sequence of individual actions combined in dialog elements. It aims at generating a net capable to run. For that purpose JCL and input files are created or control parameters are set for net run. The preparation dialog provides the scope to the designer within which he can exert an influence on the execution of the application.
The author of the preparation dialog specifies which elements are to run in which order whereby different elements may be bypassed because of their conditions. AJM/P controls the execution of the preparation dialog accordingly.
After a successful preparation AJM is informed that the associated jobs are in status "prepared" and how long this preparation is to be valid.
A package consists of one or more preparation dialogs which are processed one after the other. A net may be a component of different packages.
A package has the following properties:
• Documentation texts may be stored. • There are preparation notes which are displayed at the beginning of the package preparation. • For each package one REXX which is invoked at the beginning and at the end of the package
preparation may be defined. • In the individual preparation dialogs and REXX procedures you may access to special package
variables.
25.1 Filter
When the AJM/P dialog (selection 10 in main menu or jump command PRP) is invoked a panel will be displayed through which you can select which preparation dialogs or which packages are to be listed.
AJM/P ------------------ Filter for Preparation Definitions ------------------CMD===> Group : _________________ Net : ________ Package: ________
The following entries are possible:
Group name of a group the preparation dialogs or nets of which are to be displayed
The name of the group must not be abbreviated.
Net net name
25 Defining Preparation Dialogs and Packages
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
240
The name of the net may be abbreviated as * to select all the nets of the group to which the user is authorized.
If neither net name nor package name are specified a list of preparation dialogs of the group is displayed. If instead of the net name a package name is specified a list of package definitions of the group is displayed.
Package package name
The name of the package may be abbreviated as * to select all the packages of the group to which the user is authorized.
If no package name is specified a list of preparation dialogs of this group is displayed.
25.2 List of Preparation Dialogs
After selection via the filter a list of preparation dialogs will be displayed having the following structure:
AJM/P ----------------- List of Preparation dialogs - Group: USER1.AJMDEMO CMD===> SCROLL===> CSR___ Net: DEMO01 Description of dialog 1 ___ Net: DEMO02 Description of dialog 2
Net name name of the net to which the preparation dialog belongs
Description short description of the preparation dialog
The following line commands are possible:
B(RW) display preparation definition
D(EL) delete preparation dialog
I(NS) define new preparation dialog
LOG Log information of AJM and AJM/P
You reach the logging dialog in which the fields group and net are already preallocated.
PRP start preparation dialog
PRU alter preparation definition
PVR clear preparation
PVS set preparation valid manually
R(EP) generate new preparation dialog with identical definitions
S(EL) display preparation definition
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
241
STT statistics information
The display is described in "Statistics Information on Preparation Dialog"on page 261.
U(PD) alter preparation definition
25.3 Definition of a New Preparation Dialog
If there is no preparation dialog in the group yet or if a new one is to be created the following panel will be displayed:
AJM/P ---------------- Definition of a new Preparation Dialog ----------------CMD===> Group: USER1.AJMDEMO____ Net : DEMO02__
Group group name
Net name of the net to which the preparation dialog is to belong
Specify the wanted net name and press the Enter key. Subsequently a blank definition panel will be displayed.
25.4 Definition of a Preparation Dialog
Using the line commands UPD and PRU (the latter is also possible in the net line of "Net/job processing") you reach the definition panel:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
242
AJM/P ---- Preparation Dialog Net ---- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSRX ALL _ DSC _ DOC _ PRP _ SEC _ LNK _ VAL _ CND ___ Description : ___________________________________________ ___ Documentation text: ___ ______________________________________________________________________ ___ Preparation notes : ___ ______________________________________________________________________ ___ Security : Lock net: _ (y/n) Overwrite valid prep.: _ (y/n) ___ Linkname (Default): ________ ___ Preparation: valid: ____ times / Hrs: __ Days: __ Wks: __ Mon:: __ ___ No. : ____ Type: ___ Descr.: _____________________________________________ Var.: ________ D: __ L: _ OP: __ Value: ________
Above descriptions on preparation dialog, default linkname and period of validity may be retained and the dialog element, preparation notes and protection of the preparation dialog may be defined. The order of the options is default.
In the lower area of the panel any number of dialog elements may be defined. An "if"-line belongs to each dialog element. When the preparation dialog is executed the dialog elements are processed according to the order of their definition if the conditions are satisfied, otherwise they are ignored.
25.4.1 Commands in the "CMD" Line of the Preparation Dialog Panel In the "CMD" line all the jump commands are possible which are described in "Jump Commands"on page 42. In addition there are the following commands: REN Renumbering of the elements
The dialog elements are serialized in steps of ten according to the order of their representation on the monitor.
SORT Sorting of dialog elements according to their sequence number
25.4.2 Selection of Display By marking with a cross you may select information which you want to be displayed. Combination of some partial information is possible. The first line of a dialog element is always displayed. ALL complete panel
DSC description of the preparation dialog
DOC documentation text
PRP preparation notes
SEC security
LNK linkname
VAL preparation valid
CND condition for dialog element
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
243
25.4.3 Descriptions and Properties
___ Description : ___________________________________________ ___ Documentation text: ___ _________________________________________________________________________ Preparation notes : ___ _________________________________________________________________________ Security : Lock net: _ (y/n) Overwrite valid prep.: _ (y/n) ___ Linkname (Default): ________ ___ Preparation: valid: ____ times / Hrs: __ Days: __ Wks: __ Mon:: __
These entries apply to the entire preparation dialog.
Description short description of the preparation dialog
The description entered here appears in the list of preparation dialogs.
Documentation text
documentation of preparation dialog (maximum of 15 lines)
The documentation entered here is meant for the designer of the preparation dialog. Information on execution logic of the preparation dialog may be stored there.
Preparation notes
notes for the designer (maximum of 15 lines)
A text may be retained here being displayed to the user at the beginning of each preparation. For formatting the text there are the following possibilities:
; Continuation text is written in a new line.
$ Continuation text is represented in normal intensity (default).
% Continuation text is represented in light colour.
If one of these characters is to appear in the text it has to be written twice (e.g. ;;).
Security protection of the preparation dialog
Lock net
Y If the net is active when the preparation is started preparation will be refused. Otherwise the net will be locked during preparation. Thus it is ensured that the net can neither be started during this time nor another user can invoke the preparation dialog.
N(Default)
There is no protection against AJM net runs.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
244
Overwrite valid prep.
Y(Default)
If the net is prepared valid at present the user obtains a warning note. He may then decide if he wants to perform the preparation nevertheless or if he aborts the preparation dialog.
N If the net is prepared valid at present the preparation dialog will be aborted providing a note to the user.
Linkname (Default)
linkname applying to the entire preparation dialog
The linkname applies to all dialog elements for which no other linkname was specified.
Via the linkname AJM/P detects those datasets which are to be used within the scope of the preparation dialog. Assignment of datasets to a linkname is done in the dialog "AJM/P datasets" which can be selected via the main menu or invoked by using the jump command PCD.
Preparation valid
period of validity of a preparation
The following options are possible:
times If a number n is specified the preparation applies to the next n net runs. In this case only such runs count which result in a proper net end (AJM recognizes net end), hence no net runs cleared by CLR.
If the word ALL is specified a preparation performed once remains valid as long as it is cleared again by the command PVR.
Hrs If a number n is specified the preparation applies to the next n full hours. Each broken hour counts as well.
Example: The preparation dialog is performed at 8:35 o'clock and is to be valid for 2 hours. Hence it is valid until 10:00 o'clock.
Days If a number n is specified the preparation applies to the next n full days. The broken day counts as well.
Example: The preparation dialog is performed on Monday and is to be valid for 3 days. Hence it is valid until Wednesday at midnight.
Wks If a number n is specified the preparation applies to the next n full weeks. Each broken week counts as well.
Mon If a number n is specified the preparation applies to the next n full months. Each broken month counts as well.
Using the commands PVS and PVR validity of preparation may be changed temporarily. As soon as a preparation dialog has been performed the values retained there are applicable again.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
245
The following line command is possible in the above described lines:
D(EL) delete line contents
In addition there are the following line commands for the continuation lines in "Documentation text" and "Preparation notes".
I(NS) insert blank line
R(EP) insert line with identical contents
UC convert contents of line to uppercase characters
25.4.4 "Dialog Element" Line and Condition Line
___ No. : ____ Type: ___ Descr.: _____________________________________________ Var.: ________ D: __ L: _ OP: __ Value: ________
The "dialog element" line including the condition line may be repeated. Thus you may define as many dialog elements as you like and in any order.
No. sequence number of the dialog element
In this position the number of the dialog element is mentioned. The individual elements are represented according to the order of their numbers on the monitor and processed while the preparation dialog is executed.
Type type of the dialog element
The type determines the function. The required parameters are defined in an own panel invoked by the line command UPD.
The following dialog elements are possible:
DAT list of files or members which are to be displayed (Browse/Edit)
DEL list of members which are to be deleted
FTL list of skeletons which are to be used
PNL list of panels which are to be displayed one after the other
RXX list of REXX procedures which are to be executed one after the other
SET assign statement for variables
VAR list of variables which are to be prompted in a common panel
The different dialog elements are described in the following chapters.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
246
Descr. description of the dialog elements
The description appears in the trace messages when the preparation dialog is executed.
The following line commands are possible in the dialog element line:
B(RW) display dialog element
D(EL) delete dialog element
I(NS) insert new dialog element
R(EP) generate new dialog element with identical definitions
S(EL) display dialog element
U(PD) alter dialog elements
A condition that has to be satisfied may be specified in the second line in order that the associated dialog element will be executed. Otherwise the dialog element will always be executed.
Var name of an ISPF or AJM/P variable
D distance to the beginning of the variable value from where to check it
For the first position of the variable value you specify zero.
L length in which to check it
OP operator
The following comparison operators are possible:
= equal to
> greater than
>= greater than or equal
<> not equal to
< less than
<= less than or equal Value comparing value against which to check it
Example:
___ No. : 10 Type: DAT Descr.: Edit JCL of job JOB01____________________ ___ Var.: ZUSER D: 0 L: 8 OP: = Value: USER1___ Only if the designer has the userid USER1 the dialog element no. 10 (edit JCL of job JOB01) will be executed.
The following line command is possible in the condition line:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
247
D(EL) delete line contents
25.5 Definition of Dialog Elements
Dialog elements are described in this chapter. In front all dialog elements contain an overview line consisting of a number fixing the order of processing during preparation, the type determining the function and a short description.
For all dialog elements apart from FTL further lines follow this first line. Thus you may establish lists of actions which AJM/P is to perform during preparation. Actually skeletons (input) may be repeated for the dialog element FTL but only one output file may be specified. Consequently you need an FTL dialog element for each output member or output file.
Job and AJM/P variables (apart from system, group and global variables) are only saved when the preparation dialog is completed. Therefore they remain unchanged if the preparation dialog is exited prematurely using CAN or PF3.
For all dialog elements jump commands with which you may branch to another menu are possible in the "CMD" line. The jump commands are described in "Jump Commands"on page 42. Besides the following commands may be specified:
REN Renumbering of blocks / lines
The blocks / lines are serialized in steps of ten according to the order of their representation on the monitor.
SORT Sorting of blocks / lines according to their sequence number
25.5.1 Dialog Element DAT - Edit / Browse of Datasets Using the dialog element DAT any number of datasets (PO/PS) may be displayed in browse or edit mode.
AJM/P -- BROWSE / EDIT for Dialog --- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSRNo. : 0010 Type: DAT Descr.: _________________________________________ ___ No.: ___ Type: _ (e/b) Descr.: ________________________ ___ Link: ________ Member: ________ ___ Job : ________ valid: _ (a/s/t)
The first line is the above described overview line.
The following block is repeatable. Thus you may specify several datasets or members which are to be displayed one after the other in browse or edit mode.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
248
No. sequence number of block
The individual blocks are represented according to the order of their numbers on the monitor and processed while the preparation dialog is executed. Sorting of the dialog elements is described in "Definition of Dialog Elements"on page 247.
Type selection Edit / Browse
Descr. description of the file
The description appears in the trace messages when the preparation dialog is executed.
Link AJM/P linkname
Use of the linkname is explained in "AJM/P Dataset Definitions"on page 263. A dataset of the type ANY is required.
Member member name (only for PO datasets)
If no member is specified for a PO dataset a member list will be displayed.
Job name of a job from the associated AJM net
If the wanted dataset is already used as a JCL dataset in the associated AJM net it is not necessary to additionally administer it in an AJM/P link definition. By specifying the corresponding AJM job it may be identified. In addition the field "valid" has to be filled in.
valid selection of the AJM link definition
A use the link option valid at present
S use the default link option
T use the temporary link option
The following line commands are possible in the "no." line:
B(RW) display member
D(EL) delete contents of block
I(NS) insert new block
R(EP) generate new block with identical definitions
S(EL) display member
U(PD) alter member
V(IE) execute dialog elements
The following line command is possible in the both continuation lines:
D(EL) delete contents of line
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
249
25.5.2 Dialog Element DEL - Deleting of Members Using the dialog element DEL members may be deleted.
AJM/P - Definition for DEL Dialog --- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSRNo. : 0010 Type: DEL Descr.: _________________________________________ ___ No.: 010 Descr.: _________________________ ___ Link : ________ Member: ________ ___ Job : ________ valid: _ (a/s/t)
The first line is the above described overview line.
The following block is repeatable. Thus you may delete several members.
No. sequence number of block
The individual blocks are represented according to the order of their numbers on the monitor and processed while the preparation dialog is executed. Sorting of the dialog elements is described in "Definition of Dialog Elements"on page 247.
Descr. description of the member to delete
Link AJM/P linkname Use of the linkname is explained in "AJM/P Dataset Definitions"on page 263. A dataset of the type ANY is required.
Member member name
If a linkname was specified a member name must also be specified.
Job name of a job from the associated AJM net
If the wanted dataset is already used as a JCL dataset in the associated AJM net it is not necessary to additionally administer it in an AJM/P link definition. By specifying the corresponding AJM job it may be identified. In addition the field "valid" has to be filled in.
valid selection of the AJM link definition
A use the link option valid at present
S use the default link option
T use the temporary link option
The following line commands are possible in the "no." line:
D(EL) delete contents of block
I(NS) insert new block
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
250
R(EP) generate new block with identical definitions
The following line command is possible in both continuation lines:
D(EL) delete contents of line
25.5.3 Dialog Element FTL - Generating Datasets Using the dialog element FTL an output file or an output member may be created from skeletons. Variables (ISPF and AJM/P variable) and control statements embedded in the skeletons are taken into account.
AJM/P - Definition FTL for Dialog -- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSR No.: 0010 Type: FTL Beschr.: _________________________________________ ___ Output: ___ Link: ________ Member: ________ ___ Job : ________ valid: _ (a/s/t) ___ Input: ___ No.: ___ Skels: ________ Link: ________ Descr.: _________________________
The first line is the above described overview line.
The other fields have the following meaning:
Output description of the output file
Link AJM/P linkname
Use of the linkname is explained in "AJM/P Dataset Definitions"on page 263. A dataset of the type ANY is required.
Member member name (only for PO datasets)
Job name of a job from the associated AJM net
If the wanted dataset is already used as a JCL dataset in the associated AJM net it is not necessary to additionally administer it in an AJM/P link definition. By specifying the corresponding AJM job it may be identified. In addition the field "valid" has to be filled in.
valid selection of the AJM link definition
A use the link option valid at present
S use the default link option
T use the temporary link option
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
251
The following line commands are possible in the "output" line:
B(RW) display member / dataset
D(EL) delete contents of block
S(EL) display member / dataset
U(PD) alter member / dataset
V(IE) test file tailoring
The following line commands are possible in both continuation lines:
B(RW) display member / dataset
D(EL) delete contents of line
S(EL) display member / dataset
U(PD) alter member / dataset
The "Skels" line described hereafter is repeatable. The skeletons specified herein are combined according to the order of their serialization and the variables included are replaced.
Input list of skeletons
No. sequence number of "Skels" line
Sorting of the lines is described in "Definition of Dialog Elements"on page 247.
Skels member name of skeleton
Link linkname differing from default linkname
In the dialog "AJM/P files" you may assign datasets of the type FTL to the linkname.
Descr. description of the skeleton
The following line command is possible in the "input" and "Skels" line:
D(EL) delete contents of line
In addition there are the following line commands in the "Skels" line:
B(RW) display skeleton
I(NS) insert new line
R(EP) insert line with identical content
S(EL) display skeleton
U(PD) alter skeleton
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
252
25.5.4 Dialog Element PNL - Display of ISPF Panels In the dialog element PNL you may define ISPF panels which are to be displayed during the preparation dialog. Values of AJM/P variables are available in ISPF variables of the same name during preparation dialog.
AJM/P - Definition Panels Dialog -- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSRNo. : 0010 Type: PNL Descr.: _________________________________________ ___ No.: ___ Panel: ________ Link: ________ Descr.: ________________________
The first line is the above described overview line.
The following line is repeatable. Thus you may define several panels which are then displayed one after the other.
No. sequence number of "panel" line
The individual lines are represented according to the order of their numbers on the monitor and the panels are displayed accordingly during the preparation dialog. Sorting of the lines is described in "Definition of Dialog Elements"on page 247.
Panel member name of panel
Link linkname differing from default linkname
In the dialog "AJM/P files" you may assign datasets of the type PNL to the linkname (see "AJM/P Dataset Definitions"on page 263).
Descr. description of this panel
The following line commands are possible in the "panel" line:
B(RW) display panel
D(EL) delete contents of line
I(NS) insert new line
R(EP) insert line with identical contents
S(EL) display panel
U(PD) alter panel
V(IE) test panel
25.5.5 Dialog Element RXX - Call of REXX In the dialog element RXX you may define own REXX procedures which are to be performed during the preparation dialog.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
253
As an own variable pool is opened for each REXX substitution of variable values is only possible if you notice the following:
• Within REXX you may access to ISPF and AJM/P variables using the function AJPRXVGT. The altered variables have then to be saved using the function AJPRXVPT.
• ISPF variables the values of which are to be substituted between preparation dialog and REXX have furthermore to be specified in the dialog element explicitly.
In order to query within a REXX how it was invoked there is the system variable $$MODE. If it has the value UPD REXX was invoked during the preparation dialog. If it has the value TST REXX was only invoked as a test.
AJM/P - Definition for REXX Dialog -- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSR No. : 0010 Type: RXX Descr.: _________________________________________ ___ No.: ___ REXX: ________ Link: ________ Descr.: ________________________ ___ ISPF Variables: ________ ________ ________ _________ ________ ________
The first line is the above described overview line.
The following block is repeatable. Thus you may define several REXX procedures which are then executed one after the other.
No. sequence number of "REXX" block
The individual lines are represented according to the order of their numbers on the monitor and the procedures are processed one after the other accordingly during the preparation dialog. Sorting is described in "Definition of Dialog Elements"Seite 247.
REXX member name of REXX
Link linkname differing from default linkname
In the dialog "AJM/P files" you may assign datasets of the type RXX to the linkname (see "AJM/P Dataset Definitions"on page 263).
Descr. description of REXX
ISPF Variables
ISPF variables the values of which are to be substituted between preparation dialog and REXX
The following line commands are possible in the "REXX" line:
B(RW) display REXX
D(EL) delete contents of block
I(NS) insert new block
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
254
R(EP) insert block with identical contents
S(EL) display REXX
U(PD) alter REXX
V(IE) test REXX
The following line commands are possible in the "ISPF variable" line:
D(EL) delete content of line
I(NS) insert new line
R(EP) insert line with identical content
25.5.6 Dialog Element SET - Variable Setting In the dialog element SET you may assign values to different variable types. AJM/P variables have to be defined in AJM/P before, job variables and ISPF variables are defined when required.
AJM/P -------- Variable Setting ------- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSRNo. : 0010 Type: SET Descr.: _________________________________________ ___ No. : ___ Variable: _________________ Type: _ D: __ L: __ ___ Value: ____________________________________________________________ ----+----1----+----2----+----3----+----4----+----5----+----6
The first line is the above described overview line.
The following block is repeatable. Thus you may assign values to several variables in a dialog element.
No. sequence number of "variable" block
The individual blocks are represented according to the order of their numbers on the monitor and processed during the preparation dialog. Sorting of the blocks is described in "Definition of Dialog Elements"on page 247.
Variable name of an AJM/P, ISPF or job variable
Length of the name depends on the type of variable.
Type type of variable
I ISPF variable
It may have a one-to-eight-character name.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
255
J Job variable
The name consists of two one-to-eight-character qualifiers.
P AJM/P variable
It may have a one-to-eight-character name. No system ($$...), global ($...) or group variables (G$...) are permitted apart from $$CAL.
D distance from the beginning of the variable from which the value is overwritten
If the value of variable is to be overwritten from the first position 0 has to be specified.
L length of character string which is to be assigned to variable
Job variables may be one to eight characters. For AJM/P variables their maximum length must not be exceeded. If the length specification does not match the defined value the preparation dialog will be aborted as failed.
Value new value of variable
If the length specified under L is greater than the length of the value the remaining positions are padded with blanks.
Instead of character strings variables may also be used in the value line.
ISPF variable %IV(variable name(displacement,length))
Jobvariable %JV(variable name(displacement,length))
AJM/P-Variable %PV(variable name(displacement,length))
AJM-Variable %DATE(parameter), %TIME(parameter), %CDATE(parameter)
You will find the permitted parameters under "AJM Variables"on page 293.
Example:
___ Nr. : 010 Variable: VAR1 Typ: P D: 01 L: 03 ___ Wert: %PV((VAR2(2,2))_____________________________________________
----+----1----+----2----+----3----+----4----+----5----+----6
Value of variable before: VAR1: 'ABCDE' VAR2: '12345' resolution of %PV(VAR2(2,2)) is: '34' value is extended to 3 positions : '34 ' values of variable afterwards: VAR1: 'A34 E' VAR2: '12345'
The following line commands are possible in the "no." line:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
256
D(EL) delete contents of line
I(NS) insert new line
R(EP) insert line with identical contents
V(IE) test assignment of value for variables
The following line commands are possible in the "value" line:
D(EL) delete contents of line
UC convert contents of line to uppercase characters
25.5.7 Dialog Element VAR - Prompt of AJM/P Variables In the dialog element VAR you may specify a list of AJM/P variables which are to be prompted in the preparation dialog.
All AJM/P variables of a VAR dialog element are prompted on a common panel. Unless all variables fit on one screen page you may turn pages. As the designer is possibly not able to recognize that there are further input fields on the next page important variables should be defined above or you should refer to a following page in the prompt text.
AJM/P -- AJM/P Variables for Dialog -- Group: USER1.AJMDEMO Net: DEMO01 CMD===> SCROLL===> CSRNo. : 0010 Type: VAR Descr.: _________________________________________ ___ No. : ___ Variable: ________
The first line is the above described overview line.
The following line is repeatable. Thus you may specify several variables which are then prompted in a common pool.
No. sequence number of "variable" line
Variables are represented according to the order of their numbers on the screen and prompted on the panel during the preparation dialog. Sorting is described in "Definition of Dialog Elements"Seite 247.
Variable AJM/P variable name
The following line commands are possible in the "variable" line:
B(RW) display definition of variable
D(EL) delete contents of line
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
257
I(NS) insert new line
R(EP) insert line with identical contents
S(EL) display definition of variable
U(PD) alter definition of variable
V(IE) test variable
25.6 List of Packages
After selection of packages via filter for preparation dialogs a list of packages will be displayed. The package list has the following structure:
AJM/P --------------------------- List of Packages -- Group: USER1.AJMDEMO CMD===> SCROLL===> CSR___ Package: PACK01 Description of package PACK01
The fields have the following meaning:
Package name of package
Description short description of package
The following line commands are possible in the list of packages:
B(RW) display definition of package
D(EL) delete definition of package
I(NS) define new package
R(EP) generate new package with identical definitions
S(EL) display definition of package
U(PD) alter definition of package
25.7 Define New Package
If you specify a name of package in the filter for preparation dialogs which has not existed yet or if you want to define a new package you obtain the following panel:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
258
AJM/P -------------------------- Define new package --------------------------CMD===> Group : USER01.AJMDEMO___ Package: PACK01__
The fields have the following meaning:
Group fully qualified group name
Package one-to-eight-character name which must not be abbreviated
Specify the wanted name of package and press the "Enter" key. Afterwards the blank panel for defining packages will be displayed.
25.8 Definition of a Package
Using the line command UPD in the list of package or via "Definition of new package" you reach the panel "preparation dialog package".
In the upper part of the panel a short description, a documentation text and preparation notes may be retained for this package. Besides a REXX procedure may be specified which is invoked prior to execution of the first net preparation dialog or after execution of the last net preparation dialog. In the lower part of the panel those nets are listed belonging to the package.
AJM/P - Preparation Dialog Pack. -- Group: USER1.AJMDEMO Package: PACK01 CMD===> SCROLL===> CSRX ALL _ DSC _ DOC _ PRP _ RXX ___ Document.: ___________________________________________ ___ Doc. text: ___ ______________________________________________________________________ ___ Preparation notes: ___ ______________________________________________________________________ ___ REXX: ________ Link: ________ Selective: _ (y/n) ______ ___ No. : ___ Net: ________
25.8.1 Selection of Display By marking with a cross you may select information which you want to be displayed. Combination of some partial information is possible. Net names are always displayed. ALL complete panel
DSC description of the preparation dialog
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
259
DOC documentation text
PRP Preparation notes
RXX REXX line
25.8.2 The Package Definition Panel
___ Document.: ___________________________________________ ___ Doc. text: ___ _________________________________________________________________________ Preparation notes: ___ _________________________________________________________________________ REXX: ________ Link: ________ Selective: _ (y/n) _________ No. : ___ Net: ________
The fields have the following meaning:
Document. short description of the package
The description entered here appears in the list of packages.
Doc. text notes for the designer of the package (maximum of 15 lines)
Information on structure of the package may be retained there.
Preparation notes
notes for the designer
At the beginning of each preparation of package the text will be displayed to the user. It appears in addition to the preparation notes of the individual nets. For formatting the text there are the following possibilities:
; Continuation text is written in a new line.
$ Continuation text is represented in normal intensity (default).
% Continuation text is represented in light colour.
If one of these characters is to appear in the text it has to be written twice (e.g. ;;).
REXX member name of REXX
Link linkname
Via this linkname AJM/P will find the dataset on which REXX is residing. In the dialog "AJM/P files" you may assign datasets of the type RXX to the linkname (see "AJM/P Dataset Definitions"on page 263).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
260
Selective option if preparation of different nets is permitted
Y Nets may be prepared one by one.
N Nets cannot be prepared one by one.
No. sequence number of "net" line
Nets are represented according to the order of their numbers on the screen and processed one after the other during preparation. Sorting of the lines is described in "General Commands"on page 37.
Net net name
The following line command is possible in the above described lines:
D(EL) delete line contents
In addition there are the following line commands for the continuation lines in "Documentation text", "Preparation notes", the ISPF variables and the nets.
I(NS) insert blank line
R(EP) insert line with identical contents
UC convert contents of line to uppercase characters
25.9 Notes for Creating a Preparation Dialog
A trace function for testing preparation dialogs may be activated in the main menu in the session options. If a Y is specified for "Trace" the dataset USERID.AJM.PREPTRCx.LIST (x equals to 1 or 2) will be displayed after execution of a preparation dialog. It contains trace information and error messages in the administration language selected by the user. The following information will be output according to dialog flow:
• Initialization of relevant AJM/P variables • Start and end of preparation • Activate and deactivate linknames • Execution of dialog elements (with associated serialization) • Edit / browse of members or datasets • Delete members • Execute file tailoring • Display of ISPF Panels • Invoke REXX procedures • Alter values of variable • Prompting of variables • Save AJM/P variables • Save job variables • Period of validity of preparation • Abortion of preparation (net or package) by user / REXX
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
261
In addition there are warnings and error messages which are not itemized here.
25.10 Statistics Information on Preparation Dialog
Using the line command STT you obtain statistics information on the selected preparation dialogs.
AJM/P ------------- Statistics Information Preparation Dialog Net -------------CMD===> SCROLL===> CSR Group : USER1.AJMDEMO Net : NET01 Last change: Definition : 18.01.96 14:49 User: USER1 Preparation: 15.01.96 09:45 User: USER2
The displayed fields have the following meaning:
Group group to which this preparation dialog belongs
Net net to which this preparation dialog belongs
The last changes are retained in the following lines:
Definition last change to definition of preparation dialog
Date, time date and time of last change
Userid userid by which last change was performed
Preparation last execution of preparation
date, time date and time of last preparation
Userid userid by which last preparation was performed
25.11 Authorization Check and Logging
AJM/P checks authorization for access to preparation dialogs and packages via profiles of the general resource class $AJM having the following structure:
For preparation dialogs:
group-hlq.group-slq.#PRP.net
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
262
For packages:
group-hlq.group-slq.#PAK.package
The following authorization levels are possible:
NONE does not permit any access to definitions
READ allows read access to definitions
UPDATE allows modification of definitions
CONTROL permits execution of preparation dialog / package
ALTER permits both alteration of definitions and execution of preparation dialog / package
All modifications for the definition of preparation dialogs and packages are logged in the AJM log. You will find information on AJM log in "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
263
Within the scope of a preparation dialog the user is mostly queried information which is used as variable parts of JCL or control cards or for further control of the preparation dialog. Besides they may modify net run within a defined scope.
User inputs have to be checked and have to be designed in a comfortable way for the user. For that purpose AJM/P variables may be provided with prompt and help texts as well as extensive plausibility checks. If they are assigned to the dialog element VAR AJM/P creates a panel for query of the wanted variables. Help texts in these panels are field-sensitive and checks are passed for every user input.
26.1 System Variables
System variables are set by AJM/P and are valid for the entire system. Apart from few exceptions they cannot be modified by the user. $$CAL calendar name
Default value is $STD but it may be changed during preparation. Calendar is used to calculate data with the %CDATE variable.
$$GROUP name of the group to which the current preparation dialog belongs
$$MODE parameter for REXX procedures
The variable may be queried in the REXX. When the preparation dialog is executed the variable gets the value UPD, when REXX is tested (line command VIE) it gets TST.
$$MSG forwarding of messages from REXX procedures
You will find further information on $$MSG in Appendix G. "Call REXX Procedures from AJM/P"on page 391.
$$NET name of current net
$$PACK name of current package
If no package preparation is executed the variable is blank.
$$VAR name of variable to check for test REXX
You will find further information on $$VAR in Appendix G. "Call REXX Procedures from AJM/P"on page 391.
26.2 Filter
When the dialog for definition of AJM/P variables (selection 11 in main menu or jump command PVR) is invoked the following panel will be displayed:
26 AJM/P Variables
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
264
AJM/P ----------------------- Filter for AJP Variables -----------------------CMD===> Group : _________________ Package : ________ Net : ________ Variable: ________ Type : Global: _ (y/n) Group: _ (y/n) Package: _ (y/n) Net :_ (y/n)
The following entries are possible:
Group name of the group for which AJM/P variables are to be displayed
The name of the group has to be specified and must not be abbreviated.
Package name of a package for which AJM/P variables are to be displayed
The name of the package may be abbreviated as *.
Net name of a net for which AJM/P variables are to be displayed
The name of the net may be abbreviated as *.
Variable name of the variable which is to be displayed
The name of the variable may be abbreviated as *.
In the following line the type of the variable which is to be displayed may be specified. Default value is Y for all types. The following types are possible:
Global global variables
Global variables are assigned to the group #GLOBAL. They apply to the entire system and may only be set by AJM system administrators. The name of global variables begins with $ (not $$).
Y list global variables
N do not list global variables
Group group variables belonging to the specified group
Group variables are only valid within the group. They may only be set in the dialog of variable. The name of group variables begins with G$.
Y list group variables
N do not list group variables
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
265
Package package variables for specified package / for specified packages
Package variables are applicable within a package and may be modified when a preparation dialog is executed. The name of package variables begins with P$.
Y list package variables
N do not list package variables
net net variables for specified net / for specified nets
Net variables are applicable within a net and may be modified when a preparation dialog is executed. The name of a net variable must not begin with $, G$ or P$.
Y list net variables
N do not list net variables
26.3 List of AJM/P Variables
After selecting the variable a list is displayed which may look like this:
AJM/P ------------------------- List of AJP Variables ------------------------CMD===> SCROLL===> CSR ___ Group : #GLOBAL ___ Variable: $SYSTEM Descr.: System variable for all AJM users ___ Group : USER1.AJMDEMO ___ Variable: G$USER1 Descr.: Group variable G$USER1 ___ Group : USER1.AJMDEMO Package: PACK01 ___ Variable: P$V01 Descr.: Package variable P$V01 ___ Group : USER1.AJMDEMO Net: NET01 ___ Variable: VAR01 Descr.: Net variable VAR01 ___ Group : USER1.AJMDEMO Net: NET02 ___ Variable: VAR01 ___ Variable: VAR02 Descr.: Net variable VAR02
The fields have the following meaning:
Group name of the group to which the following variables belong
Variables of the group #GLOBAL are global variables available in each preparation dialog.
If neither a net name nor a package name follows they are group variables available to all preparation dialogs or packages of the group.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
266
Package name of the package to which the following variables belong
If a package name is specified package variables are meant which are available in the corresponding package.
Net name of the net dialog to which the following variables belong
If a net name is specified net variables are meant which are available in the corresponding net dialog.
Variable name of variable
The following rules apply to their names: Global variables begin with $, group variables with G$, package variables with P$ and net variables must not begin with $, G$ or P$.
Descr. short description of variables (if defined)
The following line commands are possible in the "group" line:
D(EL) delete all variables of this group
The following line commands are possible in the "variable" line:
B(RW) display definition of variable
D(EL) delete variable
I(NS) define new variable
R(EP) generate new variable with identical definitions
S(EL) display definition of variable
U(PD) alter definition of variable
STT Statistics Information on Variable
You will find a description of this display in "Variable Statistics"on page 277.
26.4 Global Variables and Group Variables
Neither global variables nor group variables may be altered within the preparation dialog. The administrator sets them in the dialog "AJM/P Variable".
The panel to define group or global variables looks as follows:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
267
AJM/P -------------- Update Variables -------------- Group: #GLOBAL CMD===> SCROLL===> CSR___ Varname : $SYSTEM_ ___ Descr. : System variable for all AJM users__________ ___ Length : ___ ___ Value : ___ ______________________________________________________________________ ----+----1----+----2----+----3----+----4----+----5----+----6----+----7 ___ Doc. text: ___ ______________________________________________________________________
Varname name of variable
Descr. short description of variable
The description appears in the list of AJM/P variables.
Length length of value of variable (001 to 255)
Value value of variable (maximum of 5 lines)
If the length specified under L is greater than the length of the value the remaining positions are padded with blanks.
Instead of character strings variables may also be used in the value line.
ISPF-Variable %IV(Variable name(displacement,length))
Jobvariable %JV(Variable name(displacement,length))
AJM/P-Variable %PV(Variable name(displacement,length))
AJM-Variable %DATE(parameter), %TIME(parameter), %CDATE(parameter)
You will find the permitted parameters under "AJM Variables"on page 293.
Doc. text notes for the author (maximum of 15 characters)
The following line commands are possible in the "Var.Name" line:
VIE display of variable to test definition
STT display statistics information
You will find a description in "Variable Statistics"on page 277..
The following line command is possible in all further lines:
D(EL) delete line contents
In the following lines for "value" and "doc.text" in addition:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
268
I(NS) insert blank line
R(EP) insert line with identical contents
UC convert contents of line to uppercase characters
26.5 Net and Package Variables
Net variables are only applicable within a net in order that the same names may be defined in different nets. Package variables are only applicable within a package.
Panel to define net and package variables:
AJM/P ------ Variables Update ----- Group: USER1.AJMDEMO Net: NET01 CMD===> SCROLL===> CSR X ALL _ DSC _ CHR _ DFT _ PRP _ CNT _ HLP _ DOC ___ Var. Name: ________ ___ Descr.. : ___________________________________________ ___ Pad char.: _ (y/n) Char.: _ Justification: _ (l/c/r/n) Abbrev.: _ (y/n/i)___ Checks : Length min: ___ max: ___ mandat.: _ (y/n) Lowcase: _ (y/n) Datatype : VALUE___ ___ List : ___________________________________________________________ ___ REXX : ________ Link: ________ ___ Default : _ (y/n) ___ ______________________________________________________________________ ----+----1----+----2----+----3----+----4----+----5----+----6----+----7 ___ Prompttxt: ___ ______________________________________________________________________
Contents : ___ Help text: ___ ______________________________________________________________________ ___ Doc. text: ___ ______________________________________________________________________
26.5.1 Selection of Display By marking with a cross you may select information which you want to be displayed. Combination of some partial information is possible. "Var.names" are always displayed. ALL complete panel
DSC description of variable
CHR characteristics of value of variable
DFT default value
PRP prompt text
CNT contents
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
269
HLP help text
DOC documentation text
26.5.2 Variable Name and Description
___ Var. Name: ________ ___ Descr. : ___________________________________________
Var. Name
name of variable
The name of package variables has to begin with P$, the name of net variables must not begin with $, G$ or P$.
Descr. description of variable
The description appears in the list of AJM/P variables.
26.5.3 Plausibility Checks and Default Value In this segment of the panel you define representation format.
___ Pad char.: _ (y/n) Char.: _ Justification: _ (l/c/r/n) Abbrev.: _ (y/n/i)___ Checks : Length min: ___ max: ___ mandat.: _ (y/n) Lowcase: _ (y/n) Datatype : VALUE___ ___ List : ___________________________________________________________ ___ REXX : ________ Link: ________ ___ Default : _ (y/n) ___ ______________________________________________________________________ ----+----1----+----2----+----3----+----4----+----5----+----6----+----7
Pad char. pad character
Y fill variable with pad characters if input is shorter than length of variable
N do not fill variable with pad characters Char. characters for padding if input is shorter than length of variable
Justification justification of value
R right justified
C center
L left justified
N no justification, no pad characters possible
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
270
Default for justification depends on data type. There is no default for the data type PICT, default is right justified for numeric values (ENUM(E), NUM and RANGE), for the remaining types left justified.
Abbrev.: abbreviation of value of variable
Y value of variable may be abbreviated as * in a generic way
The asterisk has to be the last character. You have to append at least as many characters to the front as is defined as a minimum length.
This option is possible for the data types ALPHA, ALPHANUM, DATE, DSN, NAME, NET, PICT, TIME, JOBVAR, GROUP and VALUE.
N Value of variable must not be abbreviated.
I Value of variable may be abbreviated as *.
The asterisk may occur within the value. This option is possible for the data types ALPHA, ALPHANUM, DATE, DSN, NAME and TIME.
Length min minimum length of value of variable
The asterisk is not counted for generic options.
Length max
maximum length of value of variable
The asterisk is counted for generic options. Pad characters in front of (R/C) or behind (L/C) the input value do not count.
Size of input field results from maximum length.
mandat. user entry mandatory (Y, default) / not required (N)
Lowcase lowercase characters
Y small letters permitted
N value of variable may only contain uppercase characters (default)
User input will automatically be converted to uppercase characters.
Datatype Definition of permitted values
ALPHA alphabetic characters A-Z, a-z
ALPHANUM alphabetic characters A-Z, a-z, digits 0-9, special characters §, $, #
ANY no check
Values of this data type may contain all characters, lowercase characters and asterisks as well.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
271
DATE check for date mask
Date masks (see "list" line) may be abbreviated as * each. Entry in "list" line required.
DSN check for valid dataset name
ENUM signed numbers (representation with decimal comma)
Entry in "list" line required.
ENUME signed numbers (representation with decimal point)
Entry in "list" line required.
NAME First character A-Z or §, $, #, others A-Z, 0-9 or §, $, #
NET check for valid AJM net name (maximum of 8 characters)
First character A-Z, others A-Z, 0-9 or §, $, #
NUM digits 0-9
PICT check for PICT mask in "list" line
RANGE option of ranges (e.g. 0-5; (-2)-(+3); A-F)
Entry in "list" line required.
TIME check for time
Time masks (see "list" line) may be abbreviated as * each. Entry in "list" line required.
JOBVAR check for valid job variable name
Name of a job variable has the format hlq.slq and and may have one to 17 characters. The same conventions apply to both parts as to NET.
GROUP check for valid AJM group name
Name of a group has the format hlq.slq and and may have one to 17 characters. The same conventions apply to both parts as to NET.
VALUE list of permitted values
Entry in "list" line required.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
272
The following table shows which data types may be combined with which options.
Data Type Abbreviation Lowercase Characters "List" line required. ALPHA generic, within yes -
ALPHANUM generic, within yes -ANY - yes -
DATE generic, within yes yes DSN generic, within - -
ENUM(E) - - yes NAME generic, within - -NET generic - -NUM - - -PICT generic - yes
RANGE - yes yes TIME generic, within yes yes
JOBVAR generic - -GROUP generic - -VALUE generic yes yes
List format or permitted values (according to data type)
No entry is permitted in this line for the data types ALPHA, ALPHANUM, ANY, DSN, NAME, NET, NUM, JOBVAR and GROUP.
DATE date mask with or without defined texts
Date masks may be embedded in any text. The text is retained in the "list" line. As the user has to precisely specify the defined text it should also be retained in the "default" line. The following masks are possible:
DD numbers 01-31 (day of the month)
DDD numbers 001-366 (Julian date)
MM numbers 01-12 (month of the year)
WW numbers 01-53 (weeks of the year)
YY numbers 00-99 (year without century)
YYYY numbers 1900-2100 (year)
YYDDD numbers YY are arbitrary; DDD may adopt values from 001 up to last day of the year YY
Default is DD.MM.YY.
Example:
Definition in "list" and "default" line:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
273
Evaluation of DD.MM.YY. This is the week WW. ==> Possible entry of the designer: Evaluation of 01.01.96. This is the week 02.
TIME time masks with or without defined texts
Time masks may be embedded in any text. The text is retained in the "list" line. As the user has to precisely specify the defined text it should also be retained in the "default" line. The following masks are possible:
HH numbers from 00-24 (hours)
MM numbers from 00-59 (minutes)
SS numbers from 00-59 (seconds)
Default is HH:MM.
Example:
Definition in "list" and "default" line: Evaluation of data of HH:MM o'clock to HH:MM o'clock. ==> Possible entry of the designer: Evaluation of data of 06:00 o'clock to 18:00 o'clock.
ENUM(E) signed numbers, comma, point and blank as a separator
ENUM requires number representation with decimal comma. The comma may occur only once. ENUME requires number representation with decimal point. The point may occur only once.
Z # digits, leading zeroes are suppressed
9 digits, leading zeroes are displayed
, .blanks
characters express themselves
+ Sign is always output and written in front of the first valid digit.
- Sign is only output for negative numbers and written in front of the first valid digit.
Example for ENUM:
-Z ZZZZ ==> Input 12345 results in 1 2345 +9,999 ==> Input 1,234 results in +1,234 Example for ENUME
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
274
-# #### ==> Input 12345 results in 1 2345 +9.999 ==> Input 1.234 results in +1.234
PICT format for value of variable
C arbitrary character
A alphabetic character
N numeric characters
9 numeric characters (like N)
X hexadecimal character (0-9, A-F)
B binary character (only 0 and 1)
If one of these characters is to be used in a mask it has to be enclosed in apostrohes, apostrophes themselves have to be doubled. All other characters express themselves.
Examples:
Definition in "List" line: 'N'/NNN/BBBB ==> valid : N/123/1010, N/333/1111 or N/147/0000 ==> not valid: 1/123/1010, N/333/2111 or N/147/000 Definition in "List" line: AAA''X ==> valid : AJM'1 or ABC'D ==> not valid: AJM1 or ABC'G
RANGE Input values have to be within defined range.
The following ranges may be defined (n, m one-to-seven-digit numbers; x,y individual letters):
n-m variable may adopt values between n and m
(+n)-(+m) variable may adopt values between n and m
(-n)-(+m) variable may adopt values between (-n) and m
(-n)-(-m) variable may adopt values between (-n) and (-m)
x-y variable may adopt values between x and y VALUE list of all permitted values
Single values have to be separated with commas and may be enclosed in apostrophes. Apostrophes themselves have to be between inverted commas and be doubled.
Example:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
275
Definition in "List" line: 'CAR','TRAIN','BUS' bzw. CAR,TRAIN,BUS ==> valid : CAR or TRAIN ==> not valid: car or BICYCLE
REXX member name of own test REXX
You will find further information in Appendix G. "Call REXX Procedures from AJM/P"on page 391.
Link linkname
Via the linkname AJM/P will detect the dataset on which REXX is residing. In the dialog "AJM/P files" you may assign datasets of the type RXX to the linkname (see "AJM/P Dataset Definitions"on page 263).
Default default value for variable
Y At the beginning of the dialog variable contains the default value.
Default value may be entered in the following lines. Contents of the lines need not correspond to the above defined test instruction. Instead of character strings you may also use variables.
N At the beginning of the dialog variable contains the current value.
26.5.4 Texts about Variable
___ Prompttxt: ___ ______________________________________________________________________
Contents : current contents of the variable ___ Help text: ___ _________________________________________________________________________ Doc. text: ___ ______________________________________________________________________
Prompttxt prompt text (maximum of 10 lines)
Text is displayed during preparation. It may be structured by using the following parameters:
; Continuation text is written in a new line.
& put input field in this position (default: input field is behind prompt text)
&(n,m...) distribute input field on several lines whereby n, m stand for the number of characters per line
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
276
$ Continuation text is represented in normal intensity (default).
% Continuation text is represented in light colour.
If one of these characters is to appear in the text it has to be written twice.
Example:
Definition of the prompt text: Should the%monthly analysis$be executed today?&(y/n) Presentation for dialog user: should the monthly analysis be executed today? _ (y/n)
Contents Value that was set during the last valid preparation.
Help text help text on variable (maximum of 10 lines)
The text is displayed to the designer when he presses PF1 or enters HELP in the command line.
; Continuation text is written in a new line.
$ Continuation text is represented in normal intensity (default).
% Continuation text is represented in light colour. Doc. text notes for the author (maximum of 15 characters)
The following line commands are possible in the "Var. Name" line:
VIE display of variable to test definition
STT Statistics Information on Variable
You will find a description of the display in "Variable Statistics"on page 277.
The following line command is possible in all further lines:
D(EL) delete line contents
In the "list" and "default" line in addition:
UC convert contents of line to uppercase characters
In the following lines of "default", "prompt", "help text" and "doc.text":
I(NS) insert blank line
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
277
R(EP) insert line with identical content
UC change over content of line to uppercase characters
26.6 Variable Statistics
Using the line command STT you obtain statistics infomation on selected variables.
AJM/P ------------------ Statistics Information for Variables -----------------CMD===> SCROLL===> CSR Group : USER1.AJMDEMO Package : Net : NET01 Variable : VAR01 Last change: Definition : 12.01.96 09:48 User: USER1 Preparation: 11.01.96 10:20 User: USER2
The displayed fields have the following meaning:
Group group to which the variable belongs
Package package to which the variable belongs
Net net to which the variable belongs
Variable name of variable
The last changes of the variable are retained in the following lines:
Definition last change of definition of variable
Date, time date and time of last change
Userid userid by which change was performed
Preparation last change of value of variable (only for package and net variables)
Date, time date and time of last change
Userid userid by which change was performed
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
278
26.7 Protection of AJM/P Variables
AJM/P checks authorization for access to AJM/P variables via profiles of the general resource class $AJM having the following structure:
For global variables:
#GLOBAL.#VRG
For group variables:
group-hlq.group-slq.#VRG
For package variables:
group-hlq.group-slq.#VRP.package
For net variables:
group-hlq.group-slq.#VRN.net
The following authorization levels are possible:
NONE does not permit any access to definitions
READ allows read access to definitions
UPDATE allows modification of definitions
ALTER allows modifications
During a preparation dialog there is no check of access authorization. Since the user is in a secured environment because he can only move within the scope of the preparation dialog and only access to variables which the dialog author has made available for him.
All the modifications of AJM/P variables are logged in the AJM log. You will find information on AJM log in "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
279
When AJM/P preparation dialogs are executed it is possible to use further user-defined datasets in addition to the allocated ISPF libraries. These datasets are combined in a set under a linkname and when required they may be allocated in addition to the datasets already assigned by default for the user.
27.1 Filter
When the dialog for AJM/P dataset definition is invoked (selection 12 in main menu or jump command PCD) a panel will be displayed by means of which you can select the group the linknames of which are to be processed.
AJM/P ---------------------- Filter Dataset Definitions ----------------------CMD===> Group: __________________
The following entries are possible:
Group name of the group for which all defined linknames and the assigned datasets are to be displayed
The name of the group must not be abbreviated.
27.2 List of AJM/P Datasets
AJM/P detects datasets in different ways. By default ISPF user datasets already allocated are used for entry. If these datasets are not to be used input files may be defined in the following panel.
Output files may also be defined in this panel. But it is also possible to refer to JCL definitions in AJM when members are output. Thus the member created by preparation dialog is always positioned where it will be read in by AJM later on.
You will find general information about the linkname in "Important Expressions"on page 233.
27 AJM/P Dataset Definitions
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
280
AJM/P -------------- Dataset Definitions -------------- Group: USER1.AJMDEMO CMD===> SCROLL===> CSR___ Link: LINK01 ___ Type: ANY DS-Name: USER1.JCL.CNTL ___ Type: PNL DS-Name: GROUP2.ISPF.PANELS ___ Type: FTL DS-Name: GROUP2.ISPF.SKELS
The fields have the following meaning:
Link linkname under which the subsequent datasets are combined
A linkname consists of up to eight characters, the first having to be an alphabetic character A-Z or a special character (§, $ or #). The others may be any alphanumeric characters.
A linkname has to be unique within a group. It may be specified when preparation dialogs or variables are defined.
If a linkname is specified in the preparation dialog all datasets defined by it are used in the function defined by the type. Thus, by using a linkname in the element PNL, not only the defined PNL library is available but also the MSG library specified here.
Type data type
The type defines the function of the dataset. Several datasets may be assigned to a type (concatenation of datasets). For concatenated datasets output is done onto the dataset containing a member of the wanted name, if no such member exists or for PS datasets it is done onto the first dataset of a suitable type.
The following options are possible (in brackets always the DD name of the ISPF dataset):
ANY any dataset
This dataset may be used as an output file for file tailoring or in the element DAT as a browse/edit dataset.
FTL skeleton dataset (ISPSLIB)
This dataset may be used as an input file for file tailoring.
MOD load module file (ISPLLIB)
MSG dataset containing ISPF messages (ISPMLIB)
PNL dataset containing ISPF panels (ISPPLIB)
RXX dataset containing REXX procedures (SYSPROC)
TBL dataset containing ISPF tables (ISPTLIB) DS-Name
name of a dataset containing elements of the specified type
The name of the dataset has to be fully qualified without apostrophes.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
281
The following line commands are possible in the "link" line:
B(RW) switching to browse mode (linkname or dataset name)
D(EL) delete linknames and assigned dataset names
I(NS) insert blank block
R(EP) insert block with identical contents
U(PD) switching to update mode (change linkname or dataset name)
The following line commands are possible in the "type" line:
B(RW) switching to browse mode (for dataset names)
D(EL) delete dataset name
I(NS) insert new line
R(EP) insert line with identical content
U(PD) switching to update mode (to change dataset name)
27.3 Protection of AJM/P Dataset Definitions
Check of access authorization is performed via profiles in the general resource class $AJM having the following structure:
group-hlq.group-slq.#PCD
The following authorization levels are possible:
NONE does not permit any access to definitions
READ allows read access to definitions
UPDATE allows modification of definitions
ALTER allows modifications
Notice that there is no check of access authorization during a preparation dialog.
All modifications in dataset definitions are logged in AJM log. You will find information on AJM log in the chapter "Logging"on page 175.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
283
28.1 Introduction
Normally the objective of performing a preparation dialog is the creation of JCL or control cards. Furthermore it is possible to create any number of members or sequential datasets using AJM/P. Basically this functions by using default skeletons and the file tailoring function of ISPF. (3) Besides members may be deleted by performing a preparation dialog and user-own REXX procedures and panels as well as different types of variables may be used.
The following chart illustrates a simple example for an AJM/P preparation dialog:
AJQ
BEN
02
Example of an AJM/P Variable
AJM/P Variable: PGM
//JOBA JOB (accnt),// EDUCATIO,// CLASS=Q,// MSGCLASS=V,// USER=SAZ3530//*//TEST EXEC PGM=&PGM
Program: .........
AJM/P
//JOBA JOB (accnt),// EDUCATIO,// CLASS=Q,// MSGCLASS=V,// USER=SAZ3530//*//TEST EXEC PGM=IEFBR14
JCL Skeleton JCL
In the example above the person doing the preparation is asked for a program name. The AJM/P variable PGM is prompted by the text "program" and is assigned the value IEFBR14 by the person doing the preparation. Using file tailoring it is replaced by the value IEFBR14.
Apart from the above described function AJM/P still has another important characteristic. It is possible to alter values of job variables via the preparation dialog. As values of job variables may be used as schedule criteria in AJM it is possible to impact sequences in AJM this way. Such alterations to net and job sequences are only permitted within a defined scope as the different variants of sequences have to be planned in advance and be defined in AJM or AJM/P.
The following figure shows an example for the alteration of a net sequence:
28 Perform Preparation Dialog
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
284
AJQ
BEN
08
Example for a Dialog Processing
AJM/P
Net A
Should Job C be submitted? n (y/n)
Jobvariabledata set
AJM
Net A
Job A
Job B
Job D
Job C
Schedule criteria of Job C:
•Job A ends ok
•Job variable = NORUN ---> omit Job C
•Job variable = RUN ---> start Job C
In the figure the person doing the preparation is prompted if JOBC is to be submitted. As he answers by "no" the value NORUN is assigned to the job variable. JOBC is defined as follows in AJM:
1. The preparation dialog has to be performed validly. 2. JOBA must have terminated properly. 3. JOBC has two schedule lists with the following schedule criteria:
1st Schedule List JOBC is to run per BYPASS if the job variable has the value NORUN.
2nd Schedule List JOBC is to run really if the job variable has the value RUN
The following chart shows the interaction between AJM and AJM/P.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
285
AJQ
BEN
07
AJM /P
File-Tailoring /direct editing
Preparartionrequired?Perform dialog
Set job variable
AJM
// JOBA ...// ....// ....// ....
Start job
Job variables
Scheduleconditionsfulfilled?
Preparation valid ?
yes
no
yes
JCL
During preparation JCL is created and job variables are set. As soon as the preparation dialog has been performed AJM is given "the green light". As soon as all the other schedule conditions (e.g. job variables) are satisfied AJM will start the prepared net.
28.2 Execution
If you want to perform a preparation you have got two possibilities to select the wanted net for preparation.
1. If you are already familiar with AJM you may select the nets to prepare with one of your filters via selection 1.
2. Otherwise you may select the filter for preparation dialogs using the jump command PRP or selection 10. If you specify the name of your group and an asterisk for the net name you will obtain a list of all the nets for which a preparation dialog exists and to which you are authorized.
If you want to prepare a package you have to choose selection 10. If you specify the name of your group and an asterisk for the package name you will obtain the display of a package list. You will find further information on filters for preparation dialogs in "Filter"on page 239.
Using the line command PRP in front of the selected net the preparation dialog will be invoked. This may look like this:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
286
AJM/P ----------------- List of Preparation dialogs - Group: USER1.AJMDEMO CMD===> SCROLL===> CSRprp Net: NETA Evaluation Time Management (monthly) ___ Net: NETB Salary ___ Net: NETC
Structure and type of panels displayed now depend on the individual combination of each preparation dialog. Often preparation notes are displayed at the beginning of the preparation dialog. In this position you may decide whether to actually perform the preparation dialog. Using the command END in the command line or PF3 the preparation dialog may be exited again. Using the Enter key you begin performing the preparation dialog.
Hints on preparation may look as follows:
AJM --------------------------- Hints on Preparation --------------------------CMD===> SCROLL===> CSR If you want an evaluation of the time accounts please press the enter key.
Enter Start preparation PF3 Cancel preparation
After the preparation hints you might be asked various entries. This may occur via panels and REXX procedures which the author of the preparation dialog has created. Perhaps you may also edit datasets / members directly. The following figure shows an example for the "prompting" of variables:
AJM/P ------------------------- Prompt AJP Variables -------------------------CMD===> SCROLL===> CSR Do you need also a yearly evaluation (job C)? _ (y/n) How many evaluation lists should be printed? __ (1-10 copies)
If the author of the preparation dialog has provided it you may query information about the input fields using the PF1 key according to the position of the cursor.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
287
At the end of the preparation a file tailoring normally takes place during which JCL or the control cards are combined from the predefined skeletons and the entries without further messages.
28.2.1 Control of Preparation Dialog Using the command RETURN or CANCEL in the command line or using PF4 you may abort the preparation dialog at any time. In this case all modifications made by EDIT, by REXX procedures or by file tailoring are maintained.
During a preparation variables may also be changed. The modified variables are only saved at the end of a preparation dialog. So their values remain unchanged in case of a premature abortion of the preparation dialog.
Besides you have the possibility of returning to the hints on preparation or to the last preceding dialog element of the type PNL or VAR by using the command END in the command line or by using the PF3 key. (4) This is useful if you want to check your data input again.
Therefore design your preparation dialogs as follows if possible:
• Dialog elements the execution of which effects modifications which cannot be undone should be at the end of the preparation dialog.
• It might be useful to display a panel prior to execution of these concluding dialog elements which provides the user the possibilitiy of confirming his entries or aborting the preparation dialog.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
289
29.1 JCL Datasets
AJM always reads the JCL of a job directly from libraries of the user. Creation and maintenance of JCL is thus independent of AJM and may be performed by the user in the usual environment. Access to JCL from the AJM administration interface is also possible (see line commands BRJ and EDJ in chapter "Job and Net Definition"on page 86).
Note that AJM only checks at the moment of submit and not during definition of the job if JCL is available. However, you may have a check of your definitions be performed through the line command PLS or have generated JCL displayed using the line command SHJ.
AJM does not check if JCL is correct syntactically from JES's view.
For JCL datasets you have to observe the following:
1. AJM only supports JCL datasets in the format DSORG=PO, RECFM=FB, LRECL=80.2. PO datasets have to be provided with the profile attribute PACK OFF. AJM reads the member
directly, i. e. ISPF routines for unpacking data are not invoked. 3. AJM requires READ authorization for all defined JCL datasets. 4. Any number of JCL datasets may be defined. 5. JCL datasets may be concatenated as you like. 6. Members of a library may contain any number of individual jobs, AJM selects the individual jobs
during submit. 7. Assignment which JCL datasets are to be used may be performed in the running system,
modifications are effective immediately. 8. AJM allocates JCL datasets using "DISP=SHR". Allocation is done dynamically during first
access to dataset. A release of allocation is possible by administration command at any time, e.g. to perform a Compress or a relocation of the dataset.
You will find detailed information on administration of JCL datasets in "JCL Dataset Definitions"on page 163.
29.2 AJM-Specific Customizations of JCL
General features of AJM such as client-capability, independence of running JES as well as the supervision of jobstreams demand the following requirements or customizations in user JCL:
• The "USER=" parameter is mandatory
AJM always starts jobs under a USERID assigned to a client. Therefore the "USER=" parameter has necessarily be specified in the job card. Otherwise there is no job submit.
Which USERID may be specified in a job for submit is determined through a profile in the General Resource Class $AJM. Besides AJM has to be authorized via the resource class SURROGAT to perform submit under the respective USERID (details are contained in "Data Security"on page 325).
• The "PASSWORD=" parameter is not applicable
29 JCL Structure and Treatment
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
290
In order that AJM may start jobs under the respective USERID of the client ("USER=" option in the job card) AJM has to be authorized in the resource class SURROGAT. Therefore no password has to be supplied for submit and the PASSWORD= parameter in the job card is not applicable.
• Minimum size of a job amounts to 3 JCL cards (without comment cards).
Jobs which are to be controlled by AJM have to consist of 3 JCL control cards at least (JOB, EXEC, DD cards plus continuation). During submit AJM enters control information in the first 3 JCL cards from column 73 which are meant to assign the job to the respective AJM system and the correct net. If the job consists of less than 3 cards a job supervision by AJM is not possible (job remains in status submitted).
• JES3 net definitions have to be converted
AJM images the logical link of jobs to nets inside the respective job definitions (see "Nets"on page 19). JES3 net definitions have therefore to be converted into the corresponding AJM definitions. A conversion utility is available for doing that.
29.3 JCL Treatment during Submit
The original JCL in user libraries is only read by AJM, modifications during submit are not performed on the JCL dataset. If the JCL contains variables they will be replaced at the moment of submit. AJM stores JCL with resolved variables in a file in order to be able to rerun the job using JCL of the last run within a restart operation. Per job only the copy of the last job run is stored. It may be viewed by the user under Net/Job Processing (Function 1) using the line command ROJ (read old JCL).
If an error occurs during job submit the AJM job definition obtains the status "in error" (see also chapter "The Net / Job List"on page 75).
The following steps execute during a job submit:
1. Selection of job from JCL dataset
AJM first determines from the job definition which JCL, standard or temporary, is to use (see "Standard and temporary JCL"on page 96).
Subsequently the corresponding member of the assigned JCL dataset is read. If several JCL datasets are concatenated that member which is found first in the order of concatenation will be read.
Then the associated job is searched within the member. For that purpose the jobname from the AJM definition will be compared to the jobname in the job card. The job is taken if the names match or if the job name in the job card is %AJMMODL (cf. "The JCL Model Function (%AJMMODL)"on page 295). If the member contains several jobs of the same name always the first will be taken. As well a model job will be taken if it stands in the member further up.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
291
If no JCL member is found or the job is not contained in the member the submit procedure will be aborted and the job obtains the status "in error". In addition a corresponding error message will be written into the AJM log.
2. Substitution of AJM variables
AJM checks JCL for contained AJM variables and replaces them (see also paragraph "AJM Variables"on page 293). If errors occur during substitution the submit procedure will be aborted and the job obtains the status "in error". In addition a corresponding error message will be written into the AJM log.
3. Interpretation of AJMIF and AJMIMBED
AJM checks if JCL was designed variably with AJMIF or AJMIMBED. In this case the members addressed with AJMIMBED are added by being copied and the conditional parts are omitted according to AJMIF requirements (cf. "JCL Variable AJMIMBED"on page 294 or "The JCL Variable AJMIF"on page 293).
4. Entering AJM check information
AJM enters check information in the columns 73 to 80 of the first 3 JCL cards which are not comment cards. They are necessary in order that the system exits (SMF exits) used by AJM may identify the job as an AJM job.
Besides immediately after the job card comment cards are inserted containing information for the additional component AJM/S (Output-Management).
5. Transfer of job to executing system
The processed job will be passed to JES via Internal Reader or sent to the AJM agent on the relevant external system via TCP/IP.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
293
30.1 The JCL Variable AJMIF
30.1.1 Action If the condition specified in the AJMIF statement is satisfied all subsequent JCL statements are selected up to the next AJMENDIF and passed to JES during submit. If the condition specified in the AJMIF statement is not satisfied all subsequent JCL statements are bypassed up to the next AJMENDIF and not selected for submit.
Note: To test the action of the given definitions you may use the line command SHJ. The line command displays how JCL is processed during submit and provides you additional help information in case of incorrect definitions.
30.1.2 Format The AJMIF JCL variable has the following format
//*AJMIF (cond) //*AJMIF (cond1) AND (cond2) AND ... //*AJMIF (cond1) OR (cond2) OR ... //*AJMIF ( (cond1) OR (cond2) ) AND (cond3) ...
cond (value1;op;value2)
value1/2 1-32-character value. If the value contains blanks or apostrophes the entire value has to be enclosed in apostrophes.
op comparison operator: =, EQ, >, GT, >=, GE, <>, NE, <, LT, <= or LE
; separators
Note: If both values are purely numeric a numeric comparison will be performed. Otherwise a logical comparison will be performed (left justified, A < Z < 0 < 9 due to EDCDIC notation).
30.1.3 Features The JCL variable AJMIF has the following features:
• An AJMIF statement has always to be closed by an AJMENDIF. • AJMIF/ENDIF statements may be nested. • AJMIF statements may contain AJM variables.
30.1.4 Example A sequence of JCL statements is only to be selected if the current day is the last work day of the month:
//*AJMIF (%DATE(DD);EQ;%CDATE(LWM;DD)) // .... // ....
30 Variable JCL Design
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
294
// .... //*AJMENDIF
30.2 JCL Variable AJMIMBED
30.2.1 Action The specified PO member is integrated into the JCL.
Note: To test the action of the given definitions you may use the line command SHJ. The line command displays how JCL is processed during submit and provides you additional help information in case of incorrect definitions.
30.2.2 Format
//*AJMIMBED member,linkname
member name of PO member that is to be integrated.
linkname optional indication if another linkname as specified in the job definition is to be used for searching the member.
30.2.3 Features The JCL variable AJMIMBED has the following features:
• Within an IMBED member further AJMIMBED statements may be contained. Nesting is limited to 16 levels.
• Within an IMBED member AJMIF/ENDIF statements may also be contained.
30.2.4 Examples 1. Imperative IMBED statement:
// ... //*AJMIMBED IMBED01 // ...
2. Conditional IMBED statement:
// ... //*AJMIF (cond) //*AJMIMBED IMBED01 //*AJMENDIF
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
295
30.3 The JCL Model Function (%AJMMODL)
30.3.1 Action The JCL model function enables the use of the same JCL for jobs to have an identical structure and only differ in the jobname. In a model JCL the jobname is replaced by the variable %AJMMODL in the job card.
During submit the scheduler sequentially scans the PO member specified in the job definition for job cards (//jobname JOB (account),...) and compares the jobnames to the one from the job definition. If it first finds a JOB statement with a matching jobname the associated JCL is taken and further search is aborted. If, however, it first finds a JOB statement with the symbolic jobname %AJMMODL the model JCL will be used. The symbolic name will be replaced by the current jobname.
Note: To test the action of the given definitions you may use the line command SHJ. The line command displays how JCL is processed during submit and provides you additional help information in case of incorrect definitions.
30.3.2 Format
//%AJMMODL JOB (account),MSGCLASS=?,CLASS=?,..//* //STEP EXEC .. //* //DD1 DD DSN=.... //*
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
297
AJM offers the possibility of defining variable parts in JCL replaced at the moment of submit by the value of the corresponding variable. Original JCL in user libraries is not changed, it is only read on principle.
AJM saves a copy of the JCL in order to be able to rerun the job in case of net or job restart with the same JCL, consequently with the same variable values. This copy of the last job run may be displayed via the line command ROJ.
All variables described below may be used:
• in JCL of a job (JCL and data cards) • in the system name for the start of a started task • in the start command for the start of a started task • in AJM/P (e.g. in the SET dialog element)
For checking the variable definition (syntax, representation) in JCL or for started task in system name and start command the line command SHJ is available. This allows you to view the resolution prior to the actual submit.
The following rules apply to variable substitution:
• Variables may be in any position in JCL. • Several variables may be specified in one card. • Variables may be nested, resolution is done from right to left. You will find further information in
"Nesting of AJM Variables"on page 313. • If the result of the substitution is shorter or longer than the variable definition itself subsequent
data in the card is moved to the left or to the right. • In JCL cards variables are replaced up to column 71, in data cards up to column 80. • If the variable definition exceeds the available area of 71 or 80 positions (several variables in
the JCL card, variable definitions longer than the resolution) continuation cards may be specified. In addition the character string >> has to be specified from column 71. Contents of the line 1-70 will then be linked with the subsequent line from column 1. A logical JCL card may have up to 3 continuation cards. But you have to observe that the result of the resolution must not exceed the maximum length of 71 or 80 positions.
• If the valid area is exceeded when the variable is replaced substitution will be aborted in this position with error, a job submit will not be performed then.
31.1 Time Variable (%TIME)
Using this variable it is possible to have the current time inserted in different formats in JCL.
The format is described by the user in form of a model. In addition it is possible to shift time. Taking the current time as a basis you may date forward or backward by a certain period and have this calculated time inserted.
The variable has the following structure:
31 AJM Variables
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
298
%TIME(model) oder %XTIME(model)
%TIME keyword for qualifying a time variable
Time is not replaced again when the job is restarted within the scope of a restart operation. That value will be used which was replaced during the last "normal" run.
%XTIME keyword for qualifying a time variable
Time is replaced again when the job is restarted within the scope of a restart operation.
model description of the format in which time is to be represented
In the model position and order of the desired time fields (hours, minutes, seconds) are specified via fixed key values. Key values may additionally be shifted by positive or negative numeric values (+23 to -23 for hours, +59 to -59 for minutes).
Taking the current time as a basis you can calculate forward or backward before proper resolution is done. If more of such options are defined within a model they are calculated from left to right and the value resulting from it will be taken as a basis for representation.
The following key values are defined:
HH Two-digit insertion of hours
MM Two-digit insertion of minutes
SS Two-digit insertion of seconds
special key values:
HMS corresponds to indication HH:MM:SS
HM corresponds to indication HH:MM
In addition a model may contain any text parts. All characters within the model which do not correspond to a key value are adopted unaltered.
31.1.1 Examples for substitution of time variables:
basic time is 17:18:20
Variable Substitution
%TIME(HMS) 17:18:20 %TIME(HH-3:00 o'clock) 14:00 o'clock %TIME(HH o'clock MM-30 MIN SS SEC.) 16 o'clock 48 MIN 20 SEC. %TIME(HH-7 o'clock TO )%TIME(HH+3 o'clock) 10 o'clock TO 20 o'clock
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
299
31.2 Date Variable (%DATE)
Using this variable it is possible to have the current date inserted in different formats in JCL.
The format is described by the user in form of a model. In addition it is possible to shift date. Taking the current date as a basis you may date a certain period forward or backward and have this calculated date inserted.
Note: Relative reference to the current date is independent of the calendar for the variable %DATE. Reference to a particular daytype is not possible. For such requirements the variable %CDATE has to be used.
The date variable has the following structure:
%DATE(model) oder %XDATE(model)
%DATE keyword for qualifying a date variable
Date is not replaced again when the job is restarted within the scope of a restart operation. That value will be used which was replaced during the last "normal" run.
%XDATE keyword for qualifying a date variable
Date is replaced again when the job is restarted within the scope of a restart operation.
model description of the format in which date is to be represented
In the model position and order of the desired date fields (day, month, year) are specified via fixed key values. Key values may additionally be shifted by positive or negative numeric values (+999 to -999). Taking the current date as a basis you can date forward or backward before proper resolution is done. If more of such options are defined within a model they are calculated from left to right and the value resulting from it will be taken as a basis for representation.
The following key values are defined:
DD Two-digit insertion of the day
LD Two-digit insertion of the last day of the month
MM Two-digit insertion of the month
YY Two-digit insertion of the year
YYYY Four-digit insertion of the year
DDD Three-digit insertion of the current day of the year
special key values:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
300
DMY corresponds to indication "DD.MM.YY"
MDY corresponds to indication "MM/DD/YY"
YD corresponds to indication "YYDDD"
In addition a model may contain any text parts. All characters within the model which do not correspond to a key value are adopted unaltered.
31.2.1 Examples for substitution of date variables:
Basic date is 03.04.92 (92094)
Variable Substitution
%DATE(DMY) 03.04.92 %DATE(DMY-3) 31.03.92 %DATE(DMY = YD) 03.04.92 = 92094 %DATE(01.MM-1.YYYY) 01.03.1992 %DATE(LD.MM+1.YY) 31.05.92 %DATE(LD.MM+1.YY-2) 31.05.90 %DATE(MDY-80) 01/14/92 %DATE(TODAY'S DATE IS DD.MM.) TODAY'S DATE IS 03.04. %DATE(YESTERDAY'S DATE WAS DD-1.MM.YYYY) YESTERDAY'S DATE WAS 02.04.1992
31.3 Date Variable with Calendar Reference (%CDATE)
Using variables today's date can be calculated and represented in different formats. When the desired date is indicated it is possible to refer to a calendar and have the date calculated with regard to a daytype (workday, holiday, restday). Extensive possibilities of relative reference (e.g. next workday, last workday of a month) allow a flexible formulation of the desired date.
To represent a format numeric date values (e.g. day, month, year) and language-dependent text parts (e.g. name of the day, of the month) may be specified. Furthermore a multitude of calendar-dependent numeric values can be calculated using this variable.
The name of the calendar is taken from the associated job definition in the AJM database when the job is submitted.
The following sketch represents the schematic execution when the variable is substituted.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
301
AJM Variable: %CDATE
1995
Dienstag
AT Mai
MärzFR
MAY
WDTU
JCL(with submit)
Preparation dialog(AJM/P)
%CDATE (date selection; format; text module)
AJM Calendar Text module(German/English)
or
The variable has the following syntax:
%CDATE( [ date selection ] [ ; format ] [ ; text module ] )
%CDATE keyword for qualifying the variable
The variable is not replaced again when the job is restarted within the scope of a restart operation. That value will be used which was replaced during the last "normal" run.
%XCDATE keyword for qualifying the variable
The variable is replaced again when the job is restarted within the scope of a restart operation.
date selection
selection of the desired date (what)
With this it is specified which date is to be used for representation.
If no date selection option is made the current date will be used for representation.
format selection of the desired representation format (how)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
302
With this it is specified in which form the desired date is to be represented or which calendar-dependent numeric value is to be calculated.
If there is no option the format DD.MM.YY is used by default.
text module Reference to a text module containing display formats for language-dependent text parts (name of day, of month, etc). If no language-dependent text parts are used in format the option can be dropped.
31.3.1 Parameter "date selection" (what?) Using this parameter today's date which is to be used for representation is described. It is to specify when the desired date differs from the current date.
The parameter has the following syntax:
[ B(value) ] [ relative expression ]
There are two types to describe today's date:
• by setting the basic date with B(value). The current date is default. • by relative addressing of a particular daytype taking the basic date as a basis with relative
expression.
Both parameters are optional. They may be used individually or combined. If they are used together B(value) has always to be specified first. Both options have to be directly one after the other, i.e. there must not be blanks between them.
31.3.1.1 Subparameter "B(value)"
This parameter allows to describe each date differing from the current date. When value is specified you have to distinguish between absolute and relative expressions.
The following absolute expressions are possible for setting the basic date:
Dnn Setting a particular day within the month (01-31).
WKnn Setting date on a particular calendar week (01-53). The date will be set on Monday of this week.
Mnn Setting a particular month within the year (01-12).
Ynn Setting a particular year (95 = 1995, 02 = 2002).
The following relative expressions are possible for setting the basic date:
D+/-n Position forward / backward by n days
WK+/-n Position forward / backward by n weeks
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
303
M+/-n Position forward / backward by n months
Y +/- n Position forward / backward by n years
Values may be combined with each other. Contradictory combinations result in abortion of variable substitution.
Examples:
B(M+1) Setting basic date on the following month
B(D01) Setting basic date on the first day of the current month
B(D01M+1) Setting basic date on the first day of the following month
B(D01M05Y+1) Setting basic date on May 1st of the next year
31.3.1.2 Subparameter "relative expression"
Combined with an associated calendar the relative addressing may be referred to a particular daytype (workday, holiday, restday).
The relative expressions described below may be combined with each other. Then the interpretation of the individual expressions is done from left to right. Each calculated date is again basic date for every subsequent relative expression.
The following keywords are possible:
+nd/-nd To position forward / backward n days of a particular type (d).
ndp To position to the nth day of a particular type (d) within a period (p).
nLdp To position to the n-last day of a particular type (d) within a period (p).
Possible options for d (daytype):
D any daytype
W Workday
R Restday
H Holiday
X restday or holiday (eXceptional day)
Possible options for p (period):
W Week
M Month
Y Year
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
304
In the following table all valid keywords for "relative expressions" are summarized:
AJM Variable %CDATE
Options with date selection
B(value) defines a base date for the calculation of the desired date.
Default for B(value) is the current date.
For value absolute or relative entries may be specified.
absolute reference date: WKnn week number (01-53)Mnn month (01-12)Ynn yearDnn day of month
relative reference date: M +/- n curr. month +/- n monthsY +/- n curr. year +/- n yearsD +/- n curr. day +/- n days
Examples:
+1D the next day
-2D 2 days before
+2W the next workday but one
1WM the first workday of the month
2LWY the last workday but one of the year
+1H-1W the last workday before the next holiday
31.3.2 Parameter "format" (how?) Using this parameter the representation format is described in which the date selected via date selection or a numeric value derived from it is to be output. The format is specified via fixed keywords. All characters within the format option which do not correspond to a keyword are adopted unaltered.
There are the following 3 types of keywords:
• keywords analogously to variable %DATE • keywords without calendar reference • keywords with calendar reference
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
305
31.3.2.1 Keywords analogously to %DATE: DD Two-digit insertion of the day
MM Two-digit insertion of the month
YY Two-digit insertion of the year
YYYY Four-digit insertion of the year
DDD Three-digit insertion of the current day of the year
DMY Abbreviated notation for the format "DD.MM.YY"
MDY Abbreviated notation for the format "MM/DD/YY"
YD Abbreviated notation for the format "YYDDD"
31.3.2.2 Keywords without calendar reference: WK two-digit insertion of the week number (01-53)
DW one-digit insertion for the day of the week (1 = Monday, 7 = Sunday)
DN The name of the day is inserted alphabetically (format according to option in parameter text module).
MN The name of the month is inserted alphabetically (format according to option in parameter text module).
31.3.2.3 Keywords with calendar reference: DT The daytype is inserted alphabetically (format according to option in parameter text module).
#CNT The difference in days between the current date and the date calculated by date selection is represented by three digits.
#dp The number of days of a particular type (d) within a given period (p) is represented. Length of representation depends on the selected period.
Valid values for d are: W,R,H (workday, restday, holiday) Valid values for p are: W,M,Y (week, month, year)
Examples:
#WW Number of workdays of the week (one-digit).
#WM Number of workdays of the month (two-digit).
#HY Number of holidays of the year (three-digit). Cdp The current number of a particular daytype (d) within a given period (p) is represented. Length of
representation depends on the selected period.
Valid values for d are: W,R,H (workday, restday, holiday) Valid values for p are: W,M,Y (week, month, year)
Examples:
CWW Current workday of the week (one-digit).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
306
CWM Current workday of the month (two-digit).
CHY Current holiday of the year (three-digit).
Note: If the current day or the day calculated via date selection is not the desired type the last preceding day of this type will be used for calculation.
In the following table all calendar-referred keywords for "format" are summarized:
AJM Variable %CDATE
Options with format
Table of possible key values with relation to the calendar:
Option Meaning Substitution
#WW / #HW / #RW No. of WD/HD/RD per week n
#WM / #HM / #RM No. of WD/HD/RD per month nn
#WY / #HY / #RY No. of WD/HD/RD per year nnn
CWW / CHW / CRW curr. WD/HD/RD within week n
CWM / CHM / CRM curr. WD/HD/RD within month nn
CWY / CHY / CRY curr. WD/HD/RD within year nnn
#CNT calculated day - current day nnn
31.3.3 Parameter "text module" Using this parameter it is specified in which form language-dependent text parts (name of the day, of the month, daytype) are to be represented. It is only required if a keyword is used for language-dependent text parts within the format option. The parameter has the form xxi.
The following is applicable:
xx This option defines the language in which the text is output. The following options are possible:
EN English
GE German
i Designates an index defining the representation form of the text. The following options are possible:
1 Shortened form with uppercase/lowercase alphabetic characters (Mo,Tu, .. Jan,Feb, .. Wd,Hd, ..)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
307
2 Shortened form in uppercase alphabetic characters (MO,TU, .. JAN,FEB .. WD,HD, ..)
3 Long form with uppercase/lowercase alphabetic characters (Monday, .. January, .. Workday ..)
4 Long form in uppercase alphabetic characters (MONDAY, .. JANUARY, .. WORKDAY ..)
Note: Representation formats and available languages may be adapted and extended according to the data center. Therefore it is possible that additional representation formats exist in the individual locations. Get informed about it at your local AJM administrator if applicable.
31.3.4 Examples The following examples refer to the basic date 10.02.1995 and to the standard calendar $STD. %CDATE(;DMY) 10.02.95 (today)
%CDATE(+1D;DD.MM.YYYY) 11.02.1995 (tomorrow)
%CDATE(+1W;DD.MM.YYYY) 13.02.1995 (next workday)
%CDATE(1LWM;DD.MM.YYYY) 28.02.1995 (last workday in February)
%CDATE(B(M+1)1WM;DN, DD.MM;GE1) Mi, 01.03 (first workday in March)
%CDATE(B(D01M05);DD. MN is a DN;EN3) The 1st May is a Monday
%CDATE(;#WM) 20 (number workdays in February)
%CDATE(;) 10.02.95 (today), default format
%CDATE() 10.02.95 (today), default format
31.4 Contents of Job Variables (%JV)
AJM offers the possibility of having any character string replaced during submit in each position in JCL. The contents of a job variable or any substring are inserted as a character string.
If a job variable is not defined at the moment of substitution or its period of validity has expired the process of substitution will be aborted and a job submit will not take place.
Note: In order to be able to use the contents of a job variable in JCL AJM requires READ authorization for this job variable in the General Resource Class $JOBVAR.
The variable has the following structure:
%JV( name ( offset , length ) [ , T ] ) or %XJV ( name ( offset , length) [ , T ] )
%JV keyword for qualifying a job variable
The job variable is not replaced again when the job is restarted within the scope of a restart operation. That value will be used which was replaced during the last "normal" run.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
308
%XJV keyword for qualifying a job variable
The job variable is replaced again when the job is restarted within the scope of a restart operation.
name Name of the job variable
offset Position of the first desired character of the job variable, the following is applicable: offset=0 is the first sign, offset=59 the last.
length length of the desired string (1-60)
offset + length must not be greater than 60.
T truncation indicator
If the contents of the variable are shorter than the area specified with length the positions not used are usually filled with blanks. If the truncation indicator is set subsequent data immediately follows the last character of the value.
Note: The option %JV(name) corresponds to %JV(name(0,60,T)
Examples:
Name: A.B Contents: THISISANYVARIABLECONTENTS
Variable Substitution
%JV(A.B(0,4)) THIS %XJV(A.B(9,8)) VARIABLE %JV(A.B(0,2))%JV(A.B(16,9)) THECONTENTS %XJV(A.B(6,3))%JV(A.B(40,2))%JV(A.B(17,8)) ANY CONTENTS
31.5 Contents of SEM Variables (%SEM)
AJM offers the possibility of using the current value or a substring of the value of a variable defined in SEM in any position in JCL. If the SEM variable is not defined at the moment of substitution the process of substitution will be aborted and a job submit will not take place.
The variable has the following structure:
%SEM( group . name ( offset , length ) [ , T ] )or %XSEM( group . name ( offset , length ) [ , T ] )
%SEM keyword for qualifying a SEM variable
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
309
The variable is not replaced again when the job is restarted within the scope of a restart operation. That value will be used which was replaced during the last "normal" run.
%XSEM keyword for qualifying a SEM variable
The variable is replaced again when the job is restarted within the scope of a restart operation.
group group to which the SEM variable belongs
You will find more detailed information about the formation of the group name in the SEM manual.
name name of SEM variables
offset Position of the first desired character of the SEM variable, the following is applicable: offset=0 is the first sign, offset=59 the last.
length length of the desired string (1-60)
offset + length must not be greater than 60.
T truncation indicator
If the contents of the variable are shorter than the area specified with length the positions not used are usually filled with blanks. If the truncation indicator is set subsequent data immediately follows the last character of the value.
Examples:
Group: #SYSTEM Name: SV_JESNAME Contents: JES2
Variable Substitution
%SEM(#SYSTEM.SV_JESNAME(0,4)) JES2 %XSEM(#SYSTEM.SV_JESNAME(3,1)) 2
31.6 Group Name Variable (%AJMGRP)
Using this variable the group name under which the job is defined may be entered in JCL.
The variable has the following structure:
%AJMGRP( offset , length [ , T ] )
%AJMGRP keyword for qualifying a group name variable
offset Position of the first desired character of the group name, the following is applicable: offset=0 is the first sign, offset=16 the last.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
310
length length of the desired string (1-17)
offset + length must not be greater than 17.
T truncation indicator
If the contents of the variable are shorter than the area specified with length the positions not used are usually filled with blanks. If the truncation indicator is set subsequent data immediately follows the last character of the value.
Note: The option %AJMGRP corresponds to %AJMGRP(0,17,T)
31.7 Netname Variable (%AJMNET)
Using this variable the net name under which the job is defined may be entered in JCL.
The variable has the following structure:
%AJMNET( offset , length [ , T ] )
%AJMNET keyword for qualifying a net name variable
offset Position of the first desired character of the net name, the following is applicable: offset=0 is the first sign, offset=7 the last.
length length of the desired string (1-8)
offset + length must not be greater than 8.
T truncation indicator
If the contents of the variable are shorter than the area specified with length the positions not used are usually filled with blanks. If the truncation indicator is set subsequent data immediately follows the last character of the value.
Note: The option %AJMNET corresponds to %AJMNET(0,8,T)
31.8 Jobname Variable (%AJMJOB)
Using this variable the own job name may be entered in JCL.
The variable has the following structure:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
311
%AJMJOB( offset , length [ , T ] )
%AJMJOB keyword for qualifying a job name variable
offset Position of the first desired character of the job name, the following is applicable: offset=0 is the first sign, offset=7 the last.
length length of the desired string (1-8)
offset + length must not be greater than 8.
T truncation indicator
If the contents of the variable are shorter than the area specified with length the positions not used are usually filled with blanks. If the truncation indicator is set subsequent data immediately follows the last character of the value.
Note: The option %AJMJOB corresponds to %AJMJOB(0,8,T)
31.9 Calendar Name Variable (%AJMCAL)
Using this variable the name associated to the job may be integrated into JCL.
The variable has the following structure:
%AJMCAL( offset , length [ , T ] )
%AJMCAL keyword for qualifying a calendar name variable
offset Position of the first desired character of the calendar name, the following is applicable: offset=0 is the first sign, offset=7 the last.
length length of the desired string (1-8)
offset + length must not be greater than 8.
T truncation indicator
If the contents of the variable are shorter than the area specified with length the positions not used are usually filled with blanks. If the truncation indicator is set subsequent data immediately follows the last character of the value.
Note: The option %AJMCAL corresponds to %AJMCAL(0,8,T)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
312
31.10 Formatting Variable (%SP)
Using this variable JCL cards as well as data cards contained in them may be formatted. Above all the variable is meant to compensate the shifting of subsequent data resulting from the substitution of AJM variables. This effect of shifting always occurs when resolution of variables is longer or shorter than the description of the variable itself. The formatting variable may also be used for formatting of JCL and data cards containing no further AJM variables.
There are the following possibilities of formatting:
• insertion of a defined number of blanks • positioning to a specific column
Note: If AJM variables are included in a JCL or data card they are completely replaced first and then the formatting variable is interpreted. The formatting variable has the following structure:
%SP(value)
%SP keyword for qualifying a formatting variable
value formatting requirement
The following options are possible:
nn insertion of blanks
Using nn it is specified how many blanks are to be inserted in this position. The value may be specified with one or two digits. If insertion of blanks results in shifting of the subsequent text to the right across the valid area (71 or 80 positions) variable substitution will be aborted with error. If exclusively blanks are shifted across the valid area this is not regarded as an error.
Cnn positioning to a specific column
Using nn it is specified from which column in the JCL or data card the subsequent text is to be continued. The value may be specified with one or two digits. If positioning to a specific column number results in shifting of the subsequent text to the right across the valid area (71 or 80 positions) variable substitution will be aborted with error. If exclusively blanks are shifted across the valid area this is not regarded as an error.
Examples:
Input:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
313
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8 %DATE(DD.MM.YY) %SP(7)ANY CONTENTS Output: ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8 10.06.96 ANY CONTENTS without %SP: ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8 10.06.96 ANY CONTENTS
Input:
----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 %DATE(DD.MM.YY) %SP(C20)PARAM1%SP(C30)PARAM2%SP(C40)PARAM3 Output: ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8 10.06.96 PARAM1 PARAM2 PARAM3
Input:
----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 %DATE(DD.MM.YY) ANY CONTENTS %SP(C73)00110000 Output: ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8 10.06.96 ANY CONTENTS 00110000
31.11 Nesting of AJM Variables
Within a JCL or data card AJM variables may also be nested. The following rules are applicable:
• AJM variables may be nested several times. • Nested AJM variables are resolved step by step from left to right. • The formatting variable %SP will only be interpreted if all other AJM variables were resolved.
The following examples are to illustrate the procedure when nested AJM variables are resolved.
Example 1:
In a JCL card the first two qualifiers of a system file are to be inserted dynamically. The length of the qualifiers is to be variable, it will be provided via a job variable.
Structure of the contents of job variables is such that the first two positions specify the length of the qualifier and from the third position it is the qualifier itself.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
314
The following job variable will be used for the example:
Name: USER1.PRODHLQ Contents: '10SYS10.DBDC'
Structure of JCL card:
----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 //STEPLIB DD DSN=%JV(USER1.PRODHLQ(2,%JV(USER1.PRODHLQ(0,2)))).LOAD,>>00110000 DISP=SHR
Note: As the area of 71 positions does not suffice for the formulation of the variable a continuation card has to be used.
Resolution step 1:
----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 //STEPLIB DD DSN=%JV(USER1.PRODHLQ(2,10)).LOAD,DISP=SHR 00110000
Resolution step 2:
----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 //STEPLIB DD DSN=SYS10.DBDC.LOAD,DISP=SHR 00110000 Example 2:
A data card for an analyser is to be generated with the following structure:
From column 01: beginning of evaluation period (first workday of the month) From column 15: end of evaluation period (last workday of the month) From column 30: evaluation parameter (maximum of 30 positions) From column 65: any comment
Date format for evaluation period is retained in job variable USER1.FORM. Evaluation parameters are retained in job variable USER1.DATA.
The following job variables will be used for the example:
Name: USER1.FORM Contents: 'DD.MM.YY ' Name: USER1.DATA Contents: 'PARAMETER FOR THE PROGRAM '
Structure of data card:
----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 %CDATE(1WM;%JV(USER1.FORM(0,10)))%SP(C15)%CDATE(1LWM;%JV(USER1.FORM(0,>> 10)))%SP(C30)%JV(USER1.DATA(0,30))%SP(C65)/* COMMENT
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
315
Note: As the area of 71 positions does not suffice for the formulation of the variable a continuation card has to be used.
Resolution step 1 (substitution evaluation parameter):
----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 %CDATE(1WM;%JV(USER1.FORM(0,10))%SP(C15)%CDATE(1LWM;%JV(USER1.FORM(0,10)))%SP(C3 0)PARAMETER FOR THE PROGRAM %SP(C65)/* COMMENT Resolution step 2 (substitution format for end date): ----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 %CDATE(1WM;%JV(USER1.FORM(0,10))%SP(C15)%CDATE(1LWM;DD.MM.YY )%SP(C30)PARAMETER FOR THE PROGRAM %SP(C65)/* COMMENT Resolution step 3 (substitution end date): ----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 %CDATE(1WM;%JV(USER1.FORM(0,10))%SP(C15)31.05.95 %SP(C30)PARAMETER FOR THE PROG RAM %SP(C65)/* COMMENT Resolution step 4 (substitution format for start date): ----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 %CDATE(1WM;DD.MM.YY )%SP(C15)31.05.95 %SP(C30)PARAMETER FOR THE PROGRAM %S P(C65)/* COMMENT Resolution step 5 (substitution start date): ----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 02.05.95 %SP(C15)31.05.95 %SP(C30)PARAMETER FOR THE PROGRAM %SP(C65)/*COMM ENT Resolution step 6 (formatting): ----+----1----+----2----+----3----+----6----+----5----+----6----+----7----+----8 02.05.95 31.05.95 PARAMETER FOR THE PROGRAM /*COMMENT
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
317
There are comprehensive possibilities in AJM to respond to the end of a job. These range from a normal continuation of an execution through recovery/restart actions to stopping an entire net run.
The whole spectrum of possibilities which will be depicted in more details hereafter is summarized in the subsequent chart.
Job A
Termi-nation-Code
Ext-Netsynchron
Ext-Netasynchron
Recovery Recovery
WAITok
ALT1 ... 250 RESTART STOP
NETREL
Action
Option
alActi
ons
= C0000 ok= BYP okotherwise STOP
{
Termination Code Control
Defaults:Termination-Code
32.1 Termination Codes
The basis for each response is the termination code of a job including some additional AJM internal codes. For AJM a termination code means the last (processed) step within this job.
Possible codes which may be defined in AJM are
• Cxxxx : Completion codes • Uxxxx : User-Abend codes • BYP : AJM internal Code BYPASS - Job was bypassed • FLUSH : special system code • IPL : AJM internal code IPL - Job was terminated by IPL • Sxxx : System-Abend codes
If a job ends with a user or a system abend this code automatically represents the termination code of this job as both jobs result in abortion of this job. However, this does not apply to the completion code of a step; the latter will be modified again by subsequent steps. If the completion code of a particular step is hence to be responded to by AJM within a net run this has to be the last processed step within the job.
32 Termination Code - Control
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
318
Further codes are additional control possibilities for job execution.
BYP is set as a termination code of a job if the latter is ignored because of a BYPASS function (cf chapter "BYPASS Function"on page 22).
FLUSH is set by the system for special error situations if the last step within a job did not reach execution within the scope of the completion code control.
IPL is set as a termination code of a job by AJM if the latter is characterized as active internally in case of a restart of AJM and if an IPL took place meanwhile.
In addition to the above mentioned possibilities conditions which may be recognized from the contents of the joblog or other SYSOUT files may be responded to by using AJM/S.
Possible codes which may be reported via AJM/S are
• Oxxxx : O-Codes - depend on file contents • JCLER : JCL error • JFAIL : Job was aborted prior to execution • ABNRM : Job was ended abnormally without SMF exits
All termination codes may be used in the AJM definitions combined with a comparison operator (=, > , >=, etc.). AJM responds according to the first defined code for which the comparison with the termination code is met (first match). The following is applicable:
Cxxxx < Uxxxx < BYP < FLUSH < IPL < Sxxx and Oxxxx < ABNRM < JFAIL < JCLER Any number of termination code options may be defined per job.
32.2 Actions
AJM offers a variety of possible actions to define the further net run within the scope of the termination code control. Subsequently those actions affecting the direct net run are to be illustrated in detail. All actions which are possible prior to continuation of the net run are described under the item Optional Actions.
• OK
Net run is continued using the ok path. If the last job of a net ends with this code the net will be terminated by AJM; afterwards it will be available for further net runs (cf chapter "Net Structure / Definition"on page 21).
OK is also the default value if a job ends with completion code 00 or was ignored within the scope of the BYPASS function and no termination code option was defined.
• ALTernative nnn
Net run is continued using the mentioned alternative path. All in all up to 250 different alternative paths may be specified (cf chapter "ALTernative Function"on page 23).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
319
• RESTART
AJM performs a restart for the specified job. First of all the Restart Unit for this job is determined and subsequently the net will be restarted with the determined restart point (incorrect job or a previous one).
Furthermore there is the possibility for the optional action WAIT of having only the incorrect job rerun explicitly regardless of the determined restart unit.
Details for restart function are described in "Restart / Recovery Functionality"on page 317.
• STOP
AJM stops net run and does not start any further jobs from this net, jobs being active already will complete. Subsequently AJM characterizes the net as "in error". It will only be available again for a restart after a manual action.
STOP is the default value if none of the defined termination control statements applies in case a termination code does not equal C0000 or in case of BYP.
• NETREL
AJM stops net run and does not start any further jobs from this net, jobs being active already will complete. Subsequently AJM performs a NETCLEAR and characterizes the net as "ended". Afterwards it will immediately be available again for a restart.
32.3 Optional Actions
Besides AJM offers various actions explained beforehand. They are depicted hereafter:
• Recovery
AJM performs the specified recovery action prior to continuation of the net run. First AJM waits until no job from this net is active any longer; a restart of jobs does not take place during this phase. Subsequently AJM starts the specified recovery net and monitors its progression. During run time of the recovery net the original net execution becomes idle.
AJM does not analyse any schedule criteria for the start jobs of the recovery net with the exception of logical resources. In the further execution of the net all specified schedule criteria are analysed.
If the recovery net ends with the code OK AJM will subsequently perform the defined actions for continuation of the net. If termination of the recovery net fails the original net remains in STOP status. Only after a manual action a restart of the net will be possible.
Starting recovery nets is the most commonly used action within the scope of automating job executions and in combination with the restart function it is the crucial part of automated recovery/restart management in AJM.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
320
• External net synchronous
Prior to continuation of the original net the specified external net is started and completion of this net is waited for. When the external net is started only the logical resources - such as for restart - are analysed as a schedule criterion. In the further execution of the external net all specified schedule criteria are also analysed immediately.
Neither prior to start nor during execution of the external net the resting state is generated in the original net, i.e. independent branches of the net continue to run.
If the external net ends with the code OK the net run is continued using the mentioned path. If completion of the external net fails this path of the net remains in this position, independent paths are not affected.
• External net asynchronous
Prior to continuation of the original net the specified external net is started but its completion is not waited for. Especially its result has no impact on the original net. Immediately after starting the external net the current net run is continued using the mentioned action.
The same rules apply to observance of schedule criteria as to the synchronous start of a net.
• WAIT
After termination of the job this branch of the net is set idle for the indicated time and only after indicated time has elapsed the specified action will be continued.
If the defined action is a net restart it is waited prior to start of the restart unit until the entire net has become idle. Time indicated for WAIT is hence the minimum wait time in this case.
If the defined action is a job restart the specified job will be restarted after the wait time has elapsed. Paths which are independent of this job continue to run normally during the whole time.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
321
AJM includes a distinct restart / recovery function. Combined with the definition possibilities it is possible within the scope of the termination code control (cf "Termination Code - Control"on page 297) to also automate response in error situations. For that purpose AJM does not require any additional impulse from outside but begins the defined recovery/restart action when the corresponding event has occurred.
When an execution is defined the user may determine how often restart of a job is to be performed in case of error (default: once).
Beside the possibilities of the automatic restart there is also a manual restart during which the user may temporarily alter most of the options made beforehand as to restart behaviour.
33.1 Restart Attribute
As already represented previously a job is the smallest unit for AJM. Accordingly restart is always done on job level. There is no modification of JCL of a job for restart purposes.
The basis for processing a job in case of restart is the restart attribute of the job. It specifies if the job may be rerun alone, together with other jobs or not at all within the scope of a restart.
In AJM the following restart attributes may be defined for a job.
• RS
A job defined this way is "restart-capable", i.e. this job may be used by AJM as a restart point of a sequence of jobs to rerun (so-called restart unit) in case of restart.
• RR
A job defined this way is "rerun-capable", i.e. this job may be restarted by AJM if it belongs to the sequence of jobs to rerun. However, the job itself is not a restart point of a restart operation.
• none
The job defined this way is "not repeatable", i.e. this job must not be restarted by AJM in case of restart even if it belongs to a sequence of jobs to rerun.
AJM bypasses the job in this case and continues restart with the subsequent job. A job bypassed in such a way will be treated like a job ignored within the scope of a BYPASS function (cf chapter "BYPASS Function"on page 22).
According to these attributes AJM forms the restart unit in case of restart which determines the size of the jobs to rerun.
33 Restart / Recovery Functionality
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
322
33.2 Restart Unit
The smallest logical sequence of jobs required for a restart within the net on the basis of the previously described restart attributes is called a restart unit.
AJM determines the restart unit each time at the very moment the error occurs or within the scope of restart simulation in the interactive mode. For that purpose AJM proceeds as follows:
• If AJM discovers because of the termination code statement that a restart is required AJM will wait first until no job of this net is active any more. During this time new jobs are not started for the net. Basing on the incorrect job AJM subsequently locates the restart unit.
• If the incorrect job includes the restart attribute RS then the restart unit only consists of this job. • If the incorrect job includes the restart attribute RR or "none" the next predecessor job with
restart attribute RS which has been started within this net run will be determined. Because of the branch possibilities it may occur that several predecessors include this attribute.
• All jobs being successors of this or these job(s) and which have already been active during this net run form the restart unit.
AJM starts the restart unit using the determined RS job(s).
The following chart illustrates the selection of restart unit and jobstream in case of restart (broken line) using 3 examples.
AJM:Restart
JOB attributes:RS restart-capableRR rerun-capablenone not repeatable
Restart unit: smallest restartable sequence of jobs
Restart optional
• With/without deletion of datasets newly allocated (automatic/manual restart)• With JCL of last job run /with "new" JCL (manual restart)• From restart point determined / from any restart point (manual restart)
Job A
Job B
Job C
Job D
RS
RS RS
RS
Restart-Unit
Job A
Job B
Job C
Job D
RS
RS RS
RR
Restart Unit
Job A
Job B
Job C
Job D
RS
RS
RR
Restart-Unit
-
{
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
323
33.3 Automatic Restart
As already mentioned in "Termination Code - Control"on page 297 the automatic restart of jobstreams with preceding recovery in most cases is the main item of automated restart/recovery management in AJM.
The size of actions performed by AJM in case of automatic restart will be fixed by the user when defining the job. The following parameters are available for that purpose:
• Restart Attribute
Through this option the size of the restart unit is defined (cf item "Restart Attribute"on page 321).
• Restart Limit
AJM initializes a restart action on the basis of a specific termination code statement. As certain errors prove to be very persistent and may also recur the requirements for a new restart may be given repeatedly. To avoid endless loops AJM only once initializes a restart action for a job by default. This limit may be modified by the user via the parameter Restart Limit.
• Deleting of newly created files
Via this option it is defined if, within the scope of a restart, AJM deletes the files prior to rerun of a job which had newly been created during the last run. Default value is "no".
A requirement for deleting newly created files is that AJM has recorded the creation beforehand. For that purpose the parameter "DSN track" has to be set on yes (default value: no).
If AJM discovers that a restart has to be performed within a net then the restart unit is determined first. If prior to restart a particular action (e.g. start of a recovery net) is to be performed this one will be performed first and the result of this action will be waited for (cf chapter "Optional Actions"on page 319).
Subsequently AJM starts the restart unit at the determined restart point(s). When doing so all schedule conditions will be analysed again with the exception of the interval (cf "Schedule Criteria"on page 21). This especially applies to the period of validity of schedule criteria as well as to explicitly specified time windows.
In case of automatic restart of a job AJM uses the JCL of the last preceding run which is buffered in an AJM file at each start of the job. Only specific variables in JCL (AJM variables, cf chapter "AJM Variables"on page 293) are an exception.
33.4 Manual Restart
Beside the functionality of an automatic restart AJM offers the possibility of performing a manual restart. This will be necessary when unexpected errors have occurred.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
324
Within the scope of the manual restart the user may alter the values determined by AJM during automatic restart and the restart options specified in the job definition. For verifying these alterations an online function is available for the user to always display the restart unit resulting from his modifications.
The following data may be altered within the scope of a manual restart:
• Restart Attribute
The values defined within the scope of the job definition may be overwritten temporarily for the current restart case. AJM always displays the restart unit resulting from it and consequently the start point(s) of the restart operation.
• Deleting of newly created files
The user may temporarily alter the value retained in the job definition. In case of a manual restart deleting of newly created files also requires that AJM has recorded the creation beforehand. The parameter "DSN track" had therefore to be set on "yes" beforehand.
• JCL selection
By default AJM uses JCL of the last job run for restart as it is saved in the corresponding AJM file. In some cases, e.g. after JCL error, this does not lead to the desired result during rerun either.
In case of manual restart the user may hence specify which JCL (of the last run or a new one from the current JCL file) AJM is to use for the restart.
When the user has performed all the desired modifications he may prompt the manual net restart.
You will find a detailed description of all the modification possibilities within the scope of a manual restart in chapter "Restart Modification (Manual Restart)"on page 142.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
325
In this chapter the operation mode of the scheduler is explained when the job is selected or when nets and started tasks are processed. Besides the impact of particular user commands on the execution logic of nets is to be explained. A better understanding of AJM's internal control is aimed at and support is to be given when errors in the execution logic of nets are analysed and recovered. Together with Appendix B. "Tips and Tricks"on page 343 it also serves as a guide for efficient design of logical sequences.
34.1 Schedule Cycle
The AJM scheduler works according to the principle of direct scheduling, i.e. all jobs defined in AJM are checked in regular intervals if their schedule conditions are satisfied. The AJM administrator defines during installation of AJM in which intervals a check is performed. As a default a 5 second interval is set. This value represents a meaningful compromise between high response speed by AJM and usage of resource (CPU time). By this procedure it is ensured that newly created or modified job definitions, administration commands or occurring events (e.g. internal predecessor job has terminated) are interpreted by the scheduler with a maximum delay of 5 seconds. Of course it does not make sense to permanently check all available job definitions in this cycle. A job having defined as a selection condition e.g. "on the last workday of the month" has definitely not to be checked every 5 seconds if the condition is satisfied. Therefore the check logic of the scheduler is optimized by an algorithm working according to the following rules:
• A job will definitely not be checked if o it has the status locked o it is being active o it terminated but the net is still active
• If a job is not excluded generally from checking a check will always be performed for the following events:
o start of AJM system o daily changeover (00:00 o'clock) o alteration of job definition o occurrence of an event criterion (e.g. internal predecessor) o release of logical resources which the job uses as schedule criterion o execution of a CLR command o modification of the calendar using the job o release of the linkname using the job (UNL/CLR)
In addition with AJM/P:
o execution of a valid job preparation o manual setting of the status prepared validly (PVS)
• If a job cannot be selected because in none of the defined schedule lists all criteria are satisfied it is ascertained from which moment a new check is useful at the earliest. The job is only checked again when this moment is reached or when one of the previously mentioned conditions has occurred. Via the job status information (line command STA) you can ascertain when the next check by the scheduler will be performed (line "schedule status"). If there is displayed as a status "Next selection will be at ..." the next automatic check will be on the same day at that time. If there is displayed as a status "schedule element ... not satisfied" the next automatic check will be at the daily changeover (00:00 o'clock).
Important:
34 Operation Mode of the Scheduler
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
326
• AJM does not check jobs with the status in error automatically if the error condition has been recovered meanwhile. The next automatic check will be performed at daily changeover. If a new check of the job is to be performed beforehand the job status has to be reset using the line command CLR.
Exceptions: If the status is set in error because the linkname is locked (status "Linkname locked by administrator") the job will immediately be checked again when the linkname is released. If the status is set in error because the calendar specified is not defined (status "Calendar invalid or not defined") the job will immediately be checked again after the calendar has been defined.
• If the scheduler was deactivated by the AJM administrator the following message will be faded in when function 1 is called (net/job processing):
AJM0050W - AJMADDBR: scheduler is not active
If this message is displayed there is no checking of jobs by the scheduler and no jobs will be started automatically. A job start may then be performed only manually (STR, RUN, EXE, BRN). Attention: As there is no checking of jobs by the scheduler the job status display is possibly not up-to-date either. The status determined during the last check will be displayed.
• If the scheduler is deactivated or if jobs are in status locked events occurring during that time will be processed nevertheless and the schedule conditions will be set valid if applicable. But a check is only done when the scheduler is activated again or the lock has been undone.
34.2 The Check Logic for Schedule Lists
The following basic rules apply to the selection of a schedule list:
• A schedule list is only selected if all of its schedule conditions checked are satisfied. • If several schedule lists are defined the check of the schedule lists is done in the order of their
definition. The first schedule list selected results in job selection. Therefore the order of the schedule list is essential for job selection and, if applicable, also essential for the execution logic of a net.
The following rules apply to the checking of a schedule list:
1. Schedule conditions of a schedule list, designated as schedule elements hereafter, are checked in the order of their definition from top to bottom.
2. Schedule elements of different types (e.g. interval and daytype) are always linked with a logical AND.
3. Schedule elements of the same type (e.g. several internal predecessors or several job variables) may be linked by the user optionally with a logical AND/OR.
4. The scheduler interprets the logical dependency as follows: o If a schedule element is satisfied all immediately following schedule elements linked
with OR are not checked. The check will be continued for the next schedule element linked with AND. If only schedule elements follow linked with OR or the currently checked schedule element is the last within the schedule list the schedule list is selected.
o If a schedule element is not satisfied and the next schedule element is linked with an AND the check of the schedule list will be cancelled and it is regarded as not met.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
327
o If a schedule element is not satisfied and one or more schedule elements follow linked with OR at least one of them has to be satisfied. Otherwise the first subsequent schedule element linked with AND or the end of the schedule list terminates the check, the schedule list is then considered not satisfied.
Examples:
Subsequently some examples which are to illustrate the interpretation by the scheduler:
___ Interval: Min: __ Hrs: __ Day: 1 WD: __ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: Y WD: * HD: _ RD: _ ___ Time : y/n: Y after: 20:00 before: 19:00 once: N (y/n)
As all schedule elements are of different type linkage between the elements is AND, i.e. all three conditions have to be satisfied concurrently.
___ int.Dep.: Job: JOBA Alt: 000 (0-250, ANY) AND Job: JOBB Alt: 000 (0-250, ANY) ___ ext.Dep.: Net: NETB Job: ________ active: N
: Durat: ___ Hrs __ Min Code: __ _____
The schedule list is valid if JOBA and JOBB have run and the net NETB is not being active.
___ int.Dep.: Job: JOBA Alt: 000 (0-250, ANY) OR Job: JOBB Alt: 000 (0-250, ANY) ___ ext.Dep.: Net: NETB Job: ________ active: N
: Durat: ___ Hrs __ Min Code: __ _____
The schedule list is satisfied if at least one of the jobs JOBA and JOBB has run and the net NETB is not being active.
___ int.Dep.: Job: JOBA Alt: 000 (0-250, ANY)OR Job: JOBB Alt: 000 (0-250, ANY)AND Job: JOBC Alt: 000 (0-250, ANY)
The schedule list is satisfied if at least one of the jobs JOBA and JOBB has run and JOBC has also run.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
328
( JOBA OR JOBB ) AND JOBC
___ int.Dep.: Job: JOBA Alt: 000 (0-250, ANY)OR Job: JOBB Alt: 000 (0-250, ANY)AND Job: JOBC Alt: 000 (0-250, ANY)OR Job: JOBD Alt: 000 (0-250, ANY)
The schedule list is satisfied if at least one of the jobs JOBA and JOBB has run and from JOBC and JOBD also one has run at least.
( JOBA OR JOBB ) AND ( JOBC OR JOBD )
___ int.Dep.: Job: JOBA Alt: 000 (0-250, ANY)AND Job: JOBB Alt: 000 (0-250, ANY)OR Job: JOBC Alt: 000 (0-250, ANY)AND Job: JOBD Alt: 000 (0-250, ANY)
The schedule list is satisfied if JOBA has run and at least one of the both jobs JOBB or JOBC. Besides JOBD still has to have run.
JOBA AND ( JOBB OR JOBC ) AND JOBD
If you want to create the following dependency
( JOBA AND JOBB ) OR ( JOBC AND JOBD ) you have to define two schedule lists:
List 00: ___ int.Dep.: Job: JOBA Alt: 000 (0-250, ANY)
AND Job: JOBB Alt: 000 (0-250, ANY)List 01: ___ int.Dep.: Job: JOBC Alt: 000 (0-250, ANY)
AND Job: JOBD Alt: 000 (0-250, ANY)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
329
34.3 Schedule Condition Interval
To be able to calculate if the schedule condition interval (daily, hourly, etc.) is satisfied the scheduler needs a reference date. For this purpose it uses date and time of the last job selection, when the job was selected last on the basis of a satisfied schedule list or started manually by the line command STR. Please notice that time of job selection is decisive and not the time of the actual job start by operating system. Date and time of the last job selection may be queried by entering the line command STA in the net-job list.
Attention: If a job is newly defined in AJM the schedule condition interval is immediately regarded as satisfied. Hence the job is selected immediately after being defined unless no further schedule conditions prevent this. To avoid an unintentional start an automatic lock (LCK) of all new jobs on definition may be activated using the session options dialog.
If a job has several schedule lists with the condition interval please take into consideration that the time of last job selection and not the moment at which the respective schedule list was selected last is decisive for checking each interval condition. The following example is to illustrate the interpretation of several interval conditions by the scheduler.
One job with two schedule lists (SL) and the following definitions
___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ Interval: Min: __ Hrs: 05 Day: ___ WD: __ Wk: __ Mon: __ Year: __ ___ Time : y/n: Y after: 02:00 before: _____ once: N (y/n) ___ Schedlst: No: 01 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ Interval: Min: __ Hrs: __ Day: 001 WD: __ Wk: __ Mon: __ Year: __ would be selected by the scheduler as follows: 00:00 h (SL01) 05:00 h (SL00) 10:00 h (SL00) 11:30 h <== "STR" (manual start by the user) 16:00 h (SL00) 21:00 h (SL00) 00:00 h (SL01) 05:00 h (SL00) ...
34.4 Handling of Schedule Lists LATE
Schedule lists of the type LATE are to help control time-sensitive applications, but they must not affect normal flow control by schedule lists of the type S(ubmit) or B(ypass) at the same time. To ensure this the following rules apply to the treatment of schedule lists LATE:
• If a job is selected on the basis of a schedule list LATE it gets the status late, and the following standardized message (WTO) is output:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
330
AJMEH83I - AJMEHPRC: group/netname/jobname LATE
• If a job has the status late all schedule lists of the job continue to be checked by the scheduler. To prevent the schedule list LATE from being recognized as satisfied during every check cycle of the scheduler and from generating a standardized message in the Syslog it is mandatory to define a schedule condition interval.
• By selecting a schedule list LATE no trigger (internal/external dependency) will be initiated. • Selecting a schedule list LATE does not affect date and time of the last job selection. Otherwise
an alteration would affect the calculation of the interval condition of schedule lists of the type S(ubmit) and B(ypass) and consequently impact the flow control of the net.
• In the status late calculation of the interval condition for schedule lists LATE is not done as usual by referring to date and time of the last job selection but referring to date and time of the last selection of a schedule list LATE.
Hint: Using the line command STA you may recognize in the field "Last Sub/Late" which last selection time is being valid for the schedule list(s) LATE.
34.5 Selection of Recovery Nets and External Nets
Normally recovery nets and external nets are no regularly executing nets scheduled according to fixed rules but are required by other nets on demand and therefore timewise not to be foreseen. As AJM demands on the one hand that a schedule list with options of selection criteria is defined for a job, but on the other hand these criteria are not to lead to a selection without explicit request the following rule applies to recovery nets and external nets:
If execution of another net is required by a termination control statement (R-OK, R-RST, EXT-S, EXT-A or similar) the scheduler interprets this net as a recovery net or an external net.
All initial jobs of this net (all jobs without internal predecessor) are directly started without analysing the schedule list(s). Logical resources are not taken into account either.
Important: The jobs must not have the status locked (LCK) !
All subsequent jobs in the net are subject to normal check logic of the scheduler.
If a net is to run as a pure recovery net or an external net it therefore suffices to define a schedule list for the start jobs (for formalistic reasons) and set them invalid (valid: N).
34.6 Handling of Restarts
In case of a net restart (automatic or manual) the scheduler performs the following actions:
1. All the jobs of the net are automatically locked by the scheduler for selection. 2. The end of all jobs still active in the net is waited for. 3. If no job is active any longer it is ascertained which jobs of the net are to be rerun (restart unit)
in case of restart.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
331
4. For all jobs of the restart unit except of the jobs being a restart point: o the indicator that the job has already run within the scope of the current net run is
reset o all schedule conditions internal predecessor are set invalid
5. All the jobs of the net are released again for selection by the scheduler.
If the scheduler discovers that a job is to rerun because of a restart the following schedule conditions are not checked for validity.
• interval • time chamber
The scheduler does not check if the job has already run within the time chamber on this day, but if the current time is within the time window.
The scheduler interprets all the other schedule conditions normally.
34.7 Net Run
34.7.1 Definition and Properties A net run is a sequence of jobs executing within the net as logical unit. A net run starts with the scheduler recognizing the beginning of net and ends with recognizing the end of net. Number and order of the jobs within a net run result from the schedule criteria defined by the user.
The following rules apply to a net run:
1. Within a net run a job is selected only once even if schedule criteria are already satisfied again before the current net run terminates. Exception: In case of an automatic or manual restart a job may be selected several times if it is part of the restart unit.
2. The scheduler starts a new net run only if one of the following conditions is satisfied: o The preceding net run has terminated (end of net was recognized). o The net run was terminated prematurely by the termination control statement
NETREL. o Net was reset by the CLR command.
34.7.2 Beginning of Net The scheduler recognizes a beginning of net if the net is in status end of net or was reset with CLR and one of the following situations has occurred:
• A job of the net is selected having no definition internal dependency. This job is called a net start job. Hint: Via the line command PLS you may ascertain which jobs of a net initiate a beginning of net.
• A user starts any job of the net manually using a STR/RUN command. The job need not be a net start job.
The beginning of a net run is logged in the AJM log.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
332
34.7.3 End of Net As AJM does not prescribe an unambiguous net end job, i.e. the net may have several logical end points, a rule is necessary for recognition of end of net. A net is declared terminated when a job of the net terminates and the following conditions are satisfied:
• The job has ended with OK. (It has terminated with completion code C0000 or BYPass or one of the termination control statements OK, R-OK, ALT, R-ALT was performed successfully.)
• The job is not predecessor of any job within the path recognized at end of job. • No other job must be active within the net. • There is no restart/recovery action left for any job of the net.
Hint: Via the line command PLS you may ascertain which jobs of a net can initiate an end of net.
AJM performs the following actions in case of end of net:
• Job status of all jobs executed during net run or ignored using BYPass is reset, consequently the jobs may be reselected by the scheduler.
• All conditions internal dependency are set invalid. • For the conditions external dependency, external trigger and DS trigger it is checked if the
event has occurred again while the job was being active. Only then the corresponding condition is not set invalid, the job may hence be reselected immediately after end of net unless no further conditions prevent this. The condition only remains valid for one further run regardless of the fact whether the event has occurred once or several times during the job run.
• The end of a net run is logged in the AJM log.
Only with AJM/P:
• If a preparation had been performed for the net which is applicable for a particular number of net runs the counter for the number of net runs still permitted will be reduced by one. As soon as the counter is 0 preparation is reset invalid by the scheduler. The counter will also be reduced by one if the net was terminated prematurely via the termination control statement NETREL.
34.8 Scheduling of Started Tasks
Started Tasks are started via MVS start command. Your JCL resides in procedure libraries from which it is read out by the operating system at the moment of start.
Beside the start command the name of the system on which the start is to take place is stored in AJM. In order that they may access to the corresponding procedure libraries by means of EDJ or BRJ you have to define these procedure libraries under a linkname which you then specify in the STC definition.
As soon as the scheduler recognizes that the start conditions are satisfied for a started task it will read the system name and the start command and possibly replaces AJM variables contained in it.
The start command is transferred to the local AJM system running on the corresponding computer. It will check if the user who changed the AJM definition of the started task last is authorized to use the specified procedure on this system (profile #GLOBAL.#STC.proc in general resource class $AJM). Only
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
333
then the start command is appended by the parameter "JOBNAME=ajmjobname" and submitted to the operating system for execution. Up to this moment the started task is in status pending in AJM.
If the local AJM system performed the start command the started task will get the status submitted. Start and end of started task are reported and handled in the same way as start and end of an AJM-controlled job.
34.9 The CLR Command
In many cases errors during job execution or incorrect job definitions result in the fact that a net cannot be terminated properly by the scheduler. Typical error situations are
• A job remains in status submitted because of a JCL error. • A job remains in status in error because of missing or wrong definitions. • A net encounters a stop situation because of errors in job execution and a manual restart of the
net is not possible. • The maximum number of automatic restarts to be permitted is reached (R-LIMIT). • A restart attempt failed (R-FAIL).
Using the CLR command the current status of individual jobs or of the entire net may be reset and the jobs be made available again for the scheduler.
The CLR command has the following impacts on a job:
• Job status (submitted, in error, ended, late) is reset. • All allocated logical resources are released. • All conditions internal dependency are set invalid. • The internal counter for the number of executed automatic restarts is zeroed.
Important hints:
The conditions external dependency and DS trigger are not set invalid. If the conditions are to be set invalid this is only possible through one of the following procedures:
1. Perform UPD on job definition and a temporary modification in the schedule conditions which are to be reset, e.g. by overwriting any position within the netname or the DS trigger name.
2. Save job definition with the temporary modifications (PF3) 3. Perform again UPD on job definition and undo the temporary modifications. 4. Save job definition with corrected entries (PF3)
or:
1. Generate a copy of the original job using REP and save it under any job name not present yet. 2. Delete original job using DEL 3. Recreate job on copy under its original name using REP 4. Delete copy using DEL
Note: For the second procedure you have to take into account that the job is handled like a new definition, especially that it has no entry for date and time of the last job selection. Through this the
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
334
interval condition is immediately regarded as satisfied and may possibly result in unintentional impacts on the job control. According to the setting in the session options (lock of new jobs Y/N) the job has possibly to be released subsequently using UNL.
A CLR on a job with status submitted or active should only take place after ensuring that the job no longer resides in the JES queue (WAITING FOR EXECUTION) or the job is no longer active on the system. Otherwise the following situations may occur:
• The job is restarted by the scheduler although it is still active in the system. This results in the fact that the second job waits in the JES queue and remains in the status submitted in AJM. When the active job ends AJM will set conditions internal dependency and external dependency valid in dependent jobs and thus initiates subsequent jobs and dependent nets. In AJM the job has the status ended although the second job still resides in the system. If the second job ends as well this one may also initiate a sequential scheduling.
• If a job ends the status of which was reset using CLR the latter sets the condition internal dependency in the subsequent jobs and thus initiates an unintentional continuation of the net.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
335
One of the characteristics - especially important for service computer centers - of AJM is its client capability. This means that users from different clients (e.g. from different customers or from different departments within one customer) can work independently of each other without seeing or especially without being able to change data from another client.
This function is implemented on the basis of the security server (e.g. RACF from IBM, TopSecret from CA). Every time a resource in AJM (job / net definitions, calendar, JCL library assignments, etc.) is accessed, a check is made whether the user has authorization for the access. Only when the corresponding security check allows it, the desired access is executed and the requested data displayed. This applies both to status queries as well as to definition changes.
In order to make this protection transparent and not require much administration effort, the expression group exists in AJM. (see also "Basic Concepts"on page 17) Each client is clearly assigned to a group; the different groups are separated from each other on the access side. Finer structuring of the access rights is possible within a group so that different responsibilities within a client can be taken into account.
Depending on the object to be protected in AJM, different protection mechanisms which are explained below are used.
35.1 Protection of Jobs / Nets / Started Tasks / External Systems
For started tasks, external systems, jobs and nets, the access to the definitions, status queries, and the use of commands in the administration are protected. This is done using profiles in the general resource class $AJM.
Furthermore, a check is made whether the user ID given in the job card ("USER=" entry) may be used by this user. This prevents a client from being started via AJM which would run under the user ID of another client without authorization. This check is also made using the general resource class $AJM.
AJM must have the authorization to start a job under the user ID which is given on the job card in order to be able to start a job. The security server uses the profiles in the resource class SURROGAT for this purpose.
For started tasks a check is made whether the user who last changed the AJM job definitions on the local system has the start authorization for the procedure given.
For external systems a check is made whether the user who last changed the AJM job definitions is authorized to initiate jobs on this system.
AJM requires suitable authorization for the MVS start command for the start of a started task ("S proc..."). This authorization is checked using the resource class OPERCMDS or using SEM.
The profiles for the access to the net and job definitions have the following structure:
group-hlq.group-slq.net
They can be de-centrally administered.
35 Data Security
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
336
The following authorization levels are possible:
NONE Allows no access to definitions
READ Allows read access to definitions
UPDATE Allows changing definitions
CONTROL Allows execution of commands
ALTER Allows both commands and modifications
The profile for protection of the "USER=" entry in the job card has the following structure:
group-hlq.group-slq.#SUB.net.job
They are administered centrally by the computer center.
The following levels of authorization are possible
NONE Forbids the use of the corresponding user in the job card
READ Allows the use of the corresponding user in the job card
The profile for the protection of starts of a stated task is checked on the local computer in question. The user ID that last changed the definition of the started task is used for this. The profiles have the following structure:
group-hlq.group-slq.#STC.proc
"proc" is the name of the start procedure.
The following levels of authorization are possible
NONE Forbids the start of the started task
CONTROL Allows the start of the started task
ALTER Allows the start of the started task
Generally the authorization NONE is assumed when either
1. the user ID checked is not authorized via the access list or 2. no suitable profile is found.
The profile for the protection of job starts on external systems is checked against the user ID which last changed the associated job definition in AJM. The profiles have the following structure:
group-hlq.group-slq.#XSD.xsdname
"xsdname" is the name of the external system definition.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
337
The following levels of authorization are possible
NONE Forbids the start of jobs on the external system and access to external system definitions.
CONTROL Allows the start of jobs on external systems and read access to external system definitions.
READ Allows the start of jobs on external systems and read access to external system definitions.
ALTER Allows the start of jobs on external systems and changing or re-creating external system definitions.
Generally the authorization NONE is assumed when either
1. the user ID checked is not authorized via the access list or 2. no suitable profile is found.
35.2 Protection of Other AJM Resources
For calendars, logical resources, JCL definitions, and job variables a check is made as to who may view, use, and/or change these resources. This is done using the general resource classes $AJM or $JOBVAR (for job variables).
For calendars and logical resources we differentiate between global and local use. Globalresources are assigned to the group #GLOBAL, local resources to the group of the client in question.
Global calendars are created and administered by the computer center. Their names begin with $ (e.g. $STD). These calendars can be read by all users and used within job definitions. Local calendars are created and administered by the client himself. They may only be used within the group to which they belong. Another group may define a calendar with the same name; AJM can differentiate between these calendars.
Global logical resources are created and administered by the computer center. Their names begin with $ (e.g. $CTAPE). They are used to achieve serialization across clients. Local logical resources are assigned to a group like local calendars and are used to achieve serialization within clients.
The PROFILE for the access to the job variables must be administered centrally by the computer center, all other profiles can be administered centrally or de-centrally.
Profiles for AJM resources are administered using thegeneral resource class $AJM. They have the following structure:
For Calendars:
group-hlq.group-slq.#CAL.calendar
For logical resources:
group-hlq.group-slq.#LRS.lrs-hlq.lrs-slq
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
338
For JCL definitions
group-hlq.group-slq.#JCD
The following authorization levels are possible for all these profiles: NONE Allows no access to definitions
READ Allows only read access to definitions Additionally for logical resources: the use of this resource in a job definition
UPDATE Allows the change of definitions
CONTROL Allows the execution of commands
ALTER Allows both commands and modifications Profiles for the security of job variables are administered in the general resource class $JOBVAR and and have the following structure:
jobvar-hlq.jobvar-slq
The following authorization levels are possible for these profiles:
NONE Allows no access to job variables
READ Allows only read access to job variables
UPDATE Allows the change of job variables
ALTER Allows the creation, deletion, and change of job variables
Generally the authorization NONE is assumed when either
1. the user ID checked is not authorized via the access list or 2. no suitable profile is found.
35.3 Protection of External Triggers
If an application wants to set an external trigger the following profile is checked:
#GLOBAL.#XTR.type.subtype
l trigger in
The following authorization levels are possible for these profiles:
NONE Forbids triggering an external trigger
UPDATE Allows triggering an external trigger
ALTER Allows triggering an external trigger
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
339
35.4 Protection of JCL Libraries
The JCL which AJM uses to start a job is usually located in libraries which belong to the client in question. The access security is performed here, like for other files, using the DATASET profile.
So that AJM can use the JCL from this file, it must be given the appropriate READ authorization.
35.5 Protection of Preparation Dialogs and Packages
For AJM/P preparation dialogs and packages a check is made as to who may view, change or delete them. This is done using profiles in the general resource class $AJM which have the following structure:
For preparation dialogs:
group-hlq.group-slq.#PRP.net
For packages:
group-hlq.group-slq.#PAK.package
The following authorization levels are possible:
NONE Allows no access to definitions
READ Allows only read access to definitions
UPDATE Allows the change of definitions
CONTROL Allows the execution of preparation dialogs /packages
ALTER Allows both modifications and execution of the preparation
35.6 Protection of AJM/P variables
For AJM/P variables a check is made who may view and change them. This is also done using profiles in the general resource class $AJM which have the following structure:
For global variables:
#GLOBAL.#VRG
For group variables:
group-hlq.group-slq.#VRG
For package variables:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
340
group-hlq.group-slq.#VRP.package
For net variables:
group-hlq.group-slq.#VRN.net
The following authorization levels are possible: NONE Allows no access to definitions
READ Allows only read access to definitions
UPDATE Allows the change of definitions
ALTER Allows modifications Please remember that during a preparation dialog no check of the access authorization takes place. The user is in a secure environment at this point, i.e. he is within a dialog that was thought out ahead of time by the dialog designer. He may only access those variables which the designer of the dialog has made available to him. An explicit check is therefore unnecessary here.
35.7 Protection of AJM/P file definitions
For AJM/P file definitions a check is made who may view and change them. This is also done using profiles in the general resource class $AJM which have the following structure:
group-hlq.group-slq.#PCD
The following authorization levels are possible: NONE Allows no access to definitions
READ Allows only read access to definitions
UPDATE Allows the change of definitions
ALTER Allows modifications Please remember that during a preparation dialog these authorizations are not checked (see above). It is enough when the preparer has the necessary authorization in the resource class DATASET.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
341
Appendix
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
343
In the following chapter the AJM's functional mode and the usage with the AJM administration interface is to be represented by means of some examples.
36.1 Example 1: First definition of a simple job
For the first time you want to define a job which is to run once on every workday. For that purpose you have prepared JCL in the dataset 'USER1.JCL.CNTL'.
The following steps are necessary for that purpose:
• Request of AJM (step 1) • Defining a filter for net/job processing (step 2) • Creating the job definition (steps 3 to 7) • Defining the linknames (step 8) • Creating JCL (step 9)
1. Main Menu
After invoking AJM the main menu appears:
AJM ------------------------ Main Menu (Administrator) -----------------------CMD===> Action: __ 0. Session Options N. News
1. Net/Job Processing 2. Mass Update 3. Job Variables 4. Logical Resources 5. Dataset Trigger 6. JCL Dataset Definition 7. Calendar 8. Forecast 9. External systems
10. AJM/P Preparation dialogs 11. AJM/P Variables 12. AJM/P Datasets
20. Log View 21. Group-specific Statistics 22. Utilities
2. Filter Definitions
As you aim at defining a job you select menu item 1 (Net/Job Processing). Then the following panel will be displayed:
36 Appendix A. Examples
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
344
AJM ---------------------------- Filter Definition ---------------------------CMD===> SCROLL===> PAGEX ALL _ DSC _ SEL _ STA _ DEF Filter : ________ ___ Descr. : __________________________________________________ ___ Selection by Group, Net, Job: ___ Include : Group: _________________ Net: ________ Job: ________ ____ ___ Exclude : Group: _________________ Net: ________ Job: ________ ____ ___ Selection by status: Net status : active : _ (y/n) end of net: _ (y/n) M-Restart: _ (y/n) locked : _ (y/n) preparation lock: _ (y/n) Job status : active : _ (y/n) since: ___ days ___ hours ended : _ (y/n) since: ___ days ___ hours W-Restart: _ (y/n) ended(O) : _ (y/n) late : _ (y/n) in error : _ (y/n) submitted: _ (y/n) locked : _ (y/n) Code : __ _____ TT = OK : _ (y/n) Preparation : required : _ (y/n) valid : _ (y/n) ___ Selection by definition: ___ Calendar: ________ ___ Linkname: ________ ___ temp.Lnk: ________ ___ Targets.: ________ ___ Rec.-Net: ________ ___ int.Dep.: Job : ________ ___ ext.Dep.: Job : ________ Net : ________ ___ Jobvar : _________________ ___ log.Res.: _________________ ___ DS-Trigg: ____________________________________________ ___ Ext.Trig: Type: ________ Subtype: ________
A filter serves to make a preselection which jobs / nets are to be displayed or processed. Hence it is a kind of selection panel the options of which may be saved under a specific name. When the AJM administration interface is invoked the next time its definitions are available again.
Several filters for different purposes (e.g. for different fields of work) may be created.
As a new definition is to be made you have to specify both group name and net name. These options have to be made in the "Include line", the "Exclude line" remains blank.
Your data center supporting you will tell you which group(s) you may use. As to the expression of group you will find explanations under "Basic Concepts"on page 17.
Each job must be included into a net. Within an AJM system the net name has to be unambiguous. You will also learn from your data center supporting you which net names you may use. As to the expression of net you will find explanations under "Basic Concepts"on page 17.
For the example we use the group USER1.TEST. A net USER1N1 is to be created containing only the job USER1J1.
In order that the filter will be saved after exiting AJM you have to name it. If you do not name it it will be interpreted as a temporary filter and deleted when the AJM dialog is exited. You will find further information on the subject filter in "The Selection Filter"on page 55.
For the example we use the name TEST.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
345
Hence you make the following entries:
AJM ---------------------------- Filter Definition ---------------------------CMD===> SCROLL===> PAGEX ALL _ DSC _ SEL _ STA _ DEF Filter : TEST____ ___ Descr. : My first net______________________________________ ___ Selection by Group, Net, Job: ___ Include : Group: USER1.TEST_______ Net: USER1N1_ Job: ________ ____ ___ Exclude : Group: _________________ Net: ________ Job: ________ ____ ___ Selection by status: Net status : active : _ (y/n) end of net: _ (y/n) M-Restart: _ (y/n) locked : _ (y/n) preparation lock: _ (y/n) Job status : active : _ (y/n) since: ___ days ___ hours ended : _ (y/n) since: ___ days ___ hours W-Restart: _ (y/n) ended(O) : _ (y/n) late : _ (y/n) in error : _ (y/n) submitted: _ (y/n) locked : _ (y/n) Code : __ _____ TT = OK : _ (y/n) Preparation : required : _ (y/n) valid : _ (y/n) ___ Selection by definition: ___ Calendar: ________ ___ Linkname: ________ ___ temp.Lnk: ________ ___ Targets.: ________ ___ Rec.-Net: ________ ___ int.Dep.: Job : ________ ___ ext.Dep.: Job : ________ Net : ________ ___ Jobvar : _________________ ___ log.Res.: _________________ ___ DS-Trigg: ____________________________________________ ___ Ext.Trig: Type: ________ Subtype: ________
Afterwards you press PF3. Then you obtain the following display:
AJM ----------------------------- Filter Dialogs -----------------------------CMD===> SCROLL===> PAGEX ALL _ DSC ___ 01 Filter : TEST My first net Include: Group: USER1.TEST Net: USER1N1 Job:
Now you see a list of all filters defined under Userid. In our example it is only the filter TEST just created.
If you invoke AJM for the next time and select the function net/job processing you directly reach this filter list.
3. Net-New Definition-Panel
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
346
To define the net USER1N1 you select the filter TEST by entering the line command SEL (=Select). You may also abbreviate the command as S.
As the net USER1N1 has not been defined yet you obtain the net definition panel:
AJM ------------------------- Definition of a new Net ------------------------CMD===> Group: USER1.TEST_______ Net: USER1N1_
AJM0516I - AJMADSTK: No nets found. Enter net name for definition of a new net or press PF3 to return
As the group name and net name are already entered you only need to press the Enter key. Afterwards the blank net update panel will be displayed.
4. Net Update Panel
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
347
AJM ------------ Net Update ----------- Group: USER1.TEST Net: USER1N1 CMD===> SCROLL===> PAGE X ALL _ JCD _ RSY _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: ________ Seq.No: ____ Calendar: ________ Trace: _ (y/n)___ JCL : Link: ________ Member: ________ ___ Temp. JCL: Link: ________ Member: ________ : from: ________ _____ to: ________ _____ ___ Targetsys: Name: ____________________________________________________________ STC : Cmd.: ____________________________________________________________ Preparat.: req.: _ (y/n) ___ Restart : Attr: __ (RS/RR) Limit: __ DSN track: _ (y/n) del: _ (y/n) ___ Term-Cntl: Code: __ _____ Action: ______ Param: ___ Rec-Net: ________ ___ Schedlst: No: __ Type: _ (Sub/Byp/Late) Prev. WD: _ (y/n) : valid: _ (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: __ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: _ WD: _ HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: _ ___ rel.Day : y/n: _ Type: __ Wk: __ Mon: ___ Year: ____ ___ Time : y/n: _ after: _____ before: _____ once: _ (y/n) ___ Date : y/n: _ from: ________ to: ________ ___ Jobvar : Name: _________________ D: __ L: __ OP: __ : ____________________________________________________________ ___ log.Res.: Name: _________________ No: ____ ___ DS-Trigg: DSN: ____________________________________________ : Durat: ___ Hrs __ Min ___ Ext.Trig: Type: ________ Subtype: ________ : Durat: ___ Hrs __ Min : Parm1: __ _______________________________________________ : Parm2: __ _______________________________________________ ______________________________________________________________________________
Here you view all input fields which are possible for the definition of a job. You will find the detailed description of the individual fields in "Net / Job Processing"on page 57.
You will realize that you need only a small part out of the host of possibilities to define your job in the desired form.
Basically the definition panel can be divided into three logical parts:
1. Where does AJM find JCL (general part) ? 2. How are you to respond to specific end conditions (termination control) ? 3. According to which criteria is the job to be started (schedule list) ?
Note: Because of better clarity only those parts of the panel which are just being treated are represented hereafter.
5. General part of the net update panel
First you define where AJM finds JCL. For that purpose you have to specify name of the JCL library and the member, and finally name of the job within the member (there may be any number of jobs within one member, see "JCL Structure and Treatment"on page 283).
For the example it is assumed that the member name equals the net name in AJM, i.e. USER1N1.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
348
The name of the JCL library is not specified directly in the job definition but only a linkname is specified. This linkname is an expression of assignment comparable to the "ddname" field in a DD card. In function 6 of the main menu you have to define later which datasets are assigned to this linkname.
For the example we use the linkname LINK01.
Hence you make the following entries in the panel:
AJM ------------ Net Update ----------- Group: USER1.TEST Net: USER1N1 CMD===> SCROLL===> PAGE X ALL _ JCD _ RSY _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USER1J1_ Seq.No: ____ Calendar: ________ Trace: _ (y/n)___ JCL : Link: LINK01__ Member: USER1N1_ ___ Temp. JCL: Link: ________ Member: ________ : from: ________ _____ to: ________ _____ ___ Targetsys: Name: ____________________________________________________________ STC : Cmd.: ____________________________________________________________ Preparat.: req.: _ (y/n) ___ Restart : Attr: __ (RS/RR) Limit: __ DSN track: _ (y/n) del: _ (y/n) ___ Term-Cntl: Code: __ _____ Action: ______ Param: ___ Rec-Net: ________
Afterwards you press the Enter key.
Subsequently the panel looks as follows:
AJM ------------ Net Update ----------- Group: USER1.TEST Net: USER1N1 CMD===> SCROLL===> PAGE X ALL _ JCD _ RSY _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USER1J1_ Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ JCL : Link: LINK01__ Member: USER1N1_ ___ Temp. JCL: Link: ________ Member: ________ : from: ________ _____ to: ________ _____ ___ Targetsys: Name: ____________________________________________________________ STC : Cmd.: ____________________________________________________________ Preparat.: req.: N (y/n) ___ Restart : Attr: __ (RS/RR) Limit: __ DSN track: _ (y/n) del: _ (y/n) ___ Term-Cntl: Code: __ _____ Action: ______ Param: ___ Rec-Net: ________
As you realize AJM has completed the input fields by default values.
Especially the entry $STD in the field calendar is important for this example:
You want to define a job which is to run on every workday. In order that AJM knows on which days of the year there is a workday the job must have a reference to a calendar. As you have not made any option yourself the default calendar $STD defined by AJM during installation will be entered. It contains the holiday regulation valid for the respective data center. You may view the definitions about function 7 (calendar) in the main menu.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
349
6. Schedule List
Next you define according to which criteria the job is to be started. Once a day your job is to be started on every workday irrespective of further jobs or other events. For that purpose you have to enter 1 behind WD (for workday) in the "interval" line in the second part of the net update panel (you will find further information on the definition of intervals in the paragraph "Interval"on page 111):
___ Schedlst: No: __ Type: _ (Sub/Byp/Late) Prev. WD: _ (y/n) : valid: _ (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: 1_ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: _ WD: _ HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: ____ rel.Day : y/n: _ Type: __ Wk: __ Mon: ___ Year: ____ ___ Time : y/n: _ after: _____ before: _____ once: _ (y/n) ___ Date : y/n: _ from: ________ to: ________ ___ Jobvar : Name: _________________ D: __ L: __ OP: __ : ____________________________________________________________ ___ log.Res.: Name: _________________ No: ____ ___ DS-Trigg: DSN: ____________________________________________ : Durat: ___ Hrs __ Min ___ Ext.Trig: Type: ________ Subtype: ________ : Durat: ___ Hrs __ Min : Parm1: __ _______________________________________________ : Parm2: __ _______________________________________________
If you press the Enter key now you are required a number for the schedule list. You may enter e.g. 00 for your first schedule list in the "Schedlst" line behind No.
Now you have made all necessary entries in the net update panel. As you see there is a whole series of further possibilities of definitions. The first lines of the schedule list look as follows:
___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n): valid: Y (y/n) from: ________ _____ to: ________ _____
___ int.Dep.: Job: ________ Alt: ___ (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: 01 Wk: __ Mon: __ Year: __
In the schedule list the default value S for Submit was entered for "Type" and the default value N for no was entered for "WD before". These default values are correct for our job. The meaning of these expressions is explained in paragraph "Definition of Job Attributes"on page 92
Furthermore a Y for yes was set automatically behind "valid". This means that the schedule list is valid. As soon as this panel is exited for the first time using PF3 AJM will search for the entered job and submit it for the job is to be started on every workday, i.e. today as well, according to the entries in the schedule list. AJM will always respond immediately. If you do not want this you may set the schedule list invalid using N. You may definitely lock new definitions of jobs if you enter a Y in the Session Options for
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
350
"Locking new jobs". In this case AJM only selects new jobs if you release them using the line command UNL.
7. Overview
Using the command BRW in the command line you may change into browse mode. This type of representation is very clear as only those lines containing entries are displayed.
AJM ------------ Net Update ----------- Group: USER1.TEST Net: USER1N1 CMD===> SCROLL===> PAGE X ALL _ JCD _ RSY _ PRP _ RST _ LST _ INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USER1J1_ Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ JCL : Link: LINK01__ Member: USER1N1_ ___ Preparat.: req.: N (y/n) ___ Restart : Attr: __ (RS/RR) Limit: 01 DSN track: N (y/n) del: N (y/n) ___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: 01 Wk: __ Mon: __ Year: __ ______________________________________________________________________________
Using the command UPD you return to the update mode again.
8. JCL Dataset Definition
In our example AJM would not find JCL and would assign to your job the status 'in error'. Therefore you have to assign your JCL dataset(s) to your selected linkname LINK01 in menu 6 now. Best you specify the jump command JCD in the command line for that purpose. Thus you directly reach menu 6 without having to exit the net update panel.
AJM ------------------- Filter for JCL Dataset Definitions -------------------CMD===> Group: USER1.TEST_______
As shown the group name has already been entered. If you press the Enter key now you obtain the following display:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
351
AJM ------------- JCL Dataset Definitions ------------- Group: USER1.TEST CMD===> SCROLL===> PAGE___ Link : ________ Status: ___ DS Name: ____________________________________________
Enter the linkname LINK01 desired by you for "Link". Enter the dataset behind DS name on which JCL resides. In our case it is the dataset 'USER1.JCL.CNTL'.
The following figure results from it:
AJM ------------- JCL Dataset Definitions ------------- Group: USER1.TEST CMD===> SCROLL===> PAGE
T___ Link : LINK01__ Status: ___ DS Name: USER1.JCL.CNTL______________________________
You may also concatenate several datasets under the linkname LINK01. Using I(NS) (=Insert) or R(EP) (=Repeat) you may generate further lines. Besides it is possible to define several linknames. You will find further information in "JCL Dataset Definitions"on page 163.
As soon as you have exited this menu using PF3 AJM knows the JCL dataset concatenated under your linkname. If you press the PF3 key again you are in the original net update panel.
9. Creating JCL
If you have not got a job named USER1J1 in the member USER1N1 yet on your dataset you may create this job now. For that purpose simply enter EDJ (=Edit JCL) in front of the "JCL" line. Using this command you reach the usual ISPF Edit. When the job is created (Attention: "Userid=" is required in job card, see "JCL Structure and Treatment"on page 283) you may exit the member via PF3 as you are used to it. As soon as you exit the net update panel using PF3 AJM will start your first job.
Next append an S to the front of your net name. Using this command you invoke the job list. If the job has run properly there is an OK behind the job name.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
352
AJM ------ Job List ----- Group: USER1.TEST Net: USER1N1 Job: * CMD===> SCROLL===> PAGEGroup: USER1.TEST ___ Net: USER1N1 end of net 30.10.92 09:17 OK ___ Job: USER1J1 30.10.92 09:16 OK
If your job is, however, in status 'in error' you will be displayed the reason in front of the affected job via the line command STA (=Status). The panel displayed then is described in "Job Status Information"on page 127. When you have corrected the error you may reset the net using the command CLR (=Clear) in the net line. Now you may restart your job using the command STR or RUN (in front of the corresponding job). You will find the exact description of these start commands in paragraph "The Net / Job List"on page 75.
36.2 Example 2: Definition of Concatenation
After having succeeded in defining your first job under AJM you now want to start several jobs one after the other in your net.
We again use the net USER1N1:
• The first job in this net is the job USER1J1 which we have already defined. • As soon as the job USER1J1 has run successfully (condition code C0000) the job USER1J2 is
to be started. • When the job USER1J2 has run successfully (condition code C0000) the job USER1J3 is to be
started as the last in this net.
In order to obtain the net described above you have to define the jobs USER1J2 and USER1J3 yet. Best you invoke the job list (S in front of filter TEST; S in front of net). Using the line command R(EP) in front of the job you obtain the following display:
AJM ------------------------- Definition of a new Job ------------------------CMD===> Group: USER1.TEST Net: USER1N1 Job: USER1J1_
If you now replace USER1J1 by USER1J2 and press the Enter key you reach the job update panel for the job USER1J2. Apart from the job name the job update panel for the job USER1J2 is a copy of the job update panel of the job USER1J1.
As the job USER1J2 is only to be started when the job USER1J1 has run successfully you have to enter the job USER1J1 in the "int.Dep" line. As soon as you press the Enter key 000 (this corresponds to OK) is entered for ALT automatically. Besides you have to delete the interval option for the subsequent job.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
353
Normally the interval option is only useful for the first job of a net as, otherwise, unnecessary time delay during submit may occur.
___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n): valid: Y (y/n) from: ________ _____ to: ________ _____
___ int.Dep.: Job: USER1J1_ Alt: 000 (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: __ Wk: __ Mon: __ Year: __
When you create the definitions for the last job USER1J3 you proceed in the same way. Copy the definitions of the job USER1J2 and replace the name of the predecessor USER1J1 by USER1J2 in the update panel.
As soon as you have created JCL for the jobs USER1J2 and USER1J3 and exited the associated job update panel via PF3 (see step 10 in example 1) you may start your net. Best you release the net using CLR and then start the first job using STR or RUN. Both commands cause possible subsequent jobs to be started as well. You will find further explanations in "The Net / Job List"on page 75.
You may view definitions for the entire net in the net update panel (B in front of net name). In browse mode only those lines containing definitions are displayed. You will recognize the net structure best by entering an X in front of "INT" in the first line. You will find further information on this line in "Selection of Display"on page 90.
AJM ------------ Net Update ----------- Group: USER1.TEST Net: USER1N1 CMD===> SCROLL===> PAGE _ ALL _ JCD _ RSY _ PRP _ RST _ LST X INT _ EXT _ TER _ JVR _ LRS _ DST _ XTR___ Job-Id : Name: USER1J1_ Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)______________________________________________________________________________ ___ Job-Id : Name: USER1J2_ Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ int.Dep.: Job: USER1J1 Alt: 000 (0-250, ANY) ______________________________________________________________________________ ___ Job-Id : Name: USER1J3_ Seq.No: 0001 Calendar: $STD____ Trace: N (y/n)___ int.Dep.: Job: USER1J2 Alt: 000 (0-250, ANY) ______________________________________________________________________________
36.3 Example 3: Definition of a More Complex Net
In the previous example you have defined a small net the execution of which is given rigidly. Hereafter net execution is to be more variable.
We again use the net USER1N1:
• The first job in this net is the known job USER1J1.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
354
• When the job USER1J1 has run successfully (condition code C0000) the job USER1J2 is to be started as the next job in this net. Hence the job USER1J2, too remains unchanged.
• When the job USER1J1 has run successfully and today is the last workday of the week the job USER1X2 is to be started in addition.
• The job USER1J3 is the last job in this net. It is started on all workdays except the last workday of the week as soon as the job USER1J2 has run successfully. On the last workday of the week the job USER1J3 is only started if both jobs USER1J2 and USER1X2 have run without error.
You may adopt definitions for job USER1J1 and USER2J2 unchanged for this more complex net.
Job USER1X2
First you create definitions for the job USER1X2. On the last workday of the week the job USER1X2 is to be submitted and on the other days of the week it is to be bypassed. In order to define this in the job update panel use two schedule lists.
The first schedule list is to cause the job to be submitted on the last workday of the week.
The second schedule list is to cause the job USER1X2 to be bypassed on all weekdays except the last workday of the week. For this case there is the possibility of setting a job on BYPASS. That means that the corresponding job will not be submitted and that AJM sets the status of this job (normally) on OK. You will find further information in paragraph "BYPASS Function"on page 22.
In order to create definitions for the job USER1X2 we recommend to copy the values of the job USER1J2 using R(EP).
1st Schedule List
In the schedule list No 00 existing already the last day of the week has now to be entered in the "relDay" line. I.e. enter Y for yes behind y/n, behind type "WD" for workday and behind Wk (=Week) '-0' for the last workday. You will find a detailed description of the "relDay" line in paragraph "Daytypes, Daynames and Relative Days"on page 114.
As soon as you press the Enter key the following figure results from it:
___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: USER1J1_ Alt: 000 (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: 1_ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: _ WD: _ HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: ____ rel.Day : y/n: Y Type: AT Wk: -0 Mon: ___ Year: ____
2nd Schedule List
In order to create the second schedule list we recommend to copy the first list using the line command R(EP) in front of "Schedlst". At first overtype number 00 by 01 in the second schedule list. Then set
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
355
"Type" on B (for Bypass) and at last replace Y by N in the "relDay" line. The second schedule list now looks as follows
___ Schedlst: No: 01 Type: B (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: USER1J1_ Alt: 000 (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: 1_ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: _ WD: _ HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: ____ rel.Day : y/n: N Type: AT Wk: -0 Mon: ___ Year: ____
As soon as you have created JCL for the job USER1X2 and exited the job update panel using PF3 you have created all the definitions for the job USER1X2.
Job USER1J3
As the job USER1J3 on the last workday of the week is only to be started if both jobs USER1J2 and USER1X2 have run you have to enter the job USER1X2 as an internal dependency in addition. For that purpose you enter into the job update panel of the job USER1J3 and append R(EP) to the front of the "int.Dep" line. Now you have only to rewrite USER1J2 into USER1X2 for the second predecessor job.
The first part of the schedule list subsequently looks as follows:
___ Schedlst: No: 01 Type: B (Sub/Byp/Late) Prev. WD: N (y/n) : valid: Y (y/n) from: ________ _____ to: ________ _____ ___ int.Dep.: Job: USER1J2_ Alt: 000 (0-250, ANY) ___ AND Job: USER1X2_ Alt: 000 (0-250, ANY) ___ ext.Dep.: Net: ________ Job: ________ active: _ : Durat: ___ Hrs __ Min Code: __ _____ ___ Interval: Min: __ Hrs: __ Day: ___ WD: 1_ Wk: __ Mon: __ Year: __ ___ Daytype : y/n: _ WD: _ HD: _ RD: _ ___ Dayname : y/n: _ Mo: _ Tu: _ We: _ Th: _ Fr: _ Sa: _ Su: ____ rel.Day : y/n: _ Type: __ Wk: __ Mon: ___ Year: ____
By doing this all necessary changes for the job USER1J3 are performed.
Now you have made all the entries for the net USER1N1. If you want to control your definitions again you may view all the definitions by appending B to the front of the net name. Only those lines containing entries are displayed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
356
36.4 Example 4: Definition of a Filter for Control
After having defined several nets running regularly you want to define a filter helping you control the execution of this net and detect error situations.
For that purpose you enter an I in front of any filter in the filter list and you reach the following panel:
AJM ---------------------------- Filter Definition ---------------------------CMD===> SCROLL===> PAGEX ALL _ DSC _ SEL _ STA _ DEF Filter : ________ ___ Descr. : __________________________________________________ ___ Selection by Group, Net, Job: ___ Include : Group: _________________ Net: ________ Job: ________ ___ Exclude : Group: _________________ Net: ________ Job: ________ ___ Selection by status: Net status : active : _ (y/n) end of net: _ (y/n) M-Restart: _ (y/n) locked : _ (y/n) preparation lock: _ (y/n) Job status : active : _ (y/n) since: ___ days ___ hours ended : _ (y/n) since: ___ days ___ hours W-Restart: _ (y/n) ended(O) : _ (y/n) late : _ (y/n) in error : _ (y/n) submitted: _ (y/n) locked : _ (y/n) Code : __ _____ TT = OK : _ (y/n) Preparation : required : _ (y/n) valid : _ (y/n) ___ Selection by definition: ___ Calendar: ________ ___ Linkname: ________ ___ temp.Lnk: ________ ___ Targets.: ________ ___ Rec.-Net: ________ ___ int.Dep.: Job : ________ ___ ext.Dep.: Job : ________ Net : ________ ___ Jobvar : _________________ ___ log.Res.: _________________ ___ DS-Trigg: ____________________________________________ ___ Ext.Trig: Type: ________ Subtype: ________
As all your nets belong to the group USER1.TEST enter this name in the field "group" in the "Include line". For "net" and "job" always enter * as an overview of all defined jobs is desired.
As you do not want to select according to definition contents of the job the last block of the filter definition "selection according to definition" is not relevant in this case. You would use it e.g. if you delete a calendar and want to check first if this calendar is still used in a job definition.
The second block of the filter definition "selection according to status" provides possibilities of controlling nets and jobs. Here you may specify in which current status of nets and jobs you are interested.
In order to obtain an overview which nets of a group are being active enter Y in the "net status line" for "active". If you press the Enter key you see that an N is entered automatically when the "net reaches completion". In the field "M-Restart" a Y is entered, however.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
357
If you save this filter and select it then you will obtain all the nets being active at present, also those waiting for manual restart.
If you want only nets which are actually being processed overtype the Y in the field "M-Restart" by N.
But you have aimed at structuring a filter providing you troubles of your transactions.
Nets being on 'end of net' are not interesting for you. Therefore you specify an N in the field "end of net" for "Net status". After having pressed the Enter key a Y is in the fields "active" and "M-Restart".
Now a selection is made according to the status of the job. Active jobs are without any problems, therefore you enter N in the field "active". For "ended", "W-Restart", "ended(O)", "submittted", "in error" and "late" you always enter Y. As out of the terminated jobs only those are interesting which have not completed by OK enter N in the field "TT = OK".
Hence your filter definition looks as follows:
AJM ---------------------------- Filter Definition ---------------------------CMD===> SCROLL===> PAGEX ALL _ DSC _ SEL _ STA _ DEF Filter : ERRORS__ ___ Descr. : Jobs in error_____________________________________ ___ Selection by Group, Net, Job: ___ Include : Group: USER1.TEST_______ Net: *_______ Job: *_______ ___ Exclude : Group: _________________ Net: ________ Job: ________ ___ Selection by status: Net status : active : Y (y/n) end of net: N (y/n) M-Restart: Y (y/n) locked : _ (y/n) preparation lock: _ (y/n) Job status : active : N (y/n) since: ___ days ___ hours ended : Y (y/n) since: ___ days ___ hours W-Restart: Y (y/n) ended(O) : Y (y/n) late : Y (y/n) in error : Y (y/n) submitted: Y (y/n) locked : _ (y/n) Code : __ _____ TT = OK : N (y/n) Preparation : required : _ (y/n) valid : _ (y/n) ___ Selection by definition: ___ Calendar: ________ ___ Linkname: ________ ___ temp.Lnk: ________ ___ Targets.: ________ ___ Rec.-Net: ________ ___ int.Dep.: Job : ________ ___ ext.Dep.: Job : ________ Net : ________ ___ Jobvar : _________________ ___ log.Res.: _________________ ___ DS-Trigg: ____________________________________________ ___ Ext.Trig: Type: ________ Subtype: ________
The field "Code" provides a further possibility of making a restriction after the jobs reached completion.
In order to specifically find out after IPL which jobs were affected you define the following filter:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
358
AJM ---------------------------- Filter Definition ---------------------------CMD===> SCROLL===> PAGEX ALL _ DSC _ SEL _ STA _ DEF Filter : IPL_____ ___ Descr. : Jobs that were active at IPL time_________________ ___ Selection by Group, Net, Job: ___ Include : Group: USER1.TEST_______ Net: *_______ Job: *_______ ___ Exclude : Group: _________________ Net: ________ Job: ________ ___ Selection by status: Net status : active : _ (y/n) end of net: _ (y/n) M-Restart: _ (y/n) locked : _ (y/n) preparation lock: _ (y/n) Job status : active : N (y/n) since: ___ days ___ hours ended : Y (y/n) since: ___ days ___ hours W-Restart: Y (y/n) ended(O) : Y (y/n) late : N (y/n) in error : N (y/n) submitted: N (y/n) locked : _ (y/n) Code : =_ IPL__ TT = OK : _ (y/n) Preparation : required : _ (y/n) valid : _ (y/n) ___ Selection by definition: ___ Calendar: ________ ___ Linkname: ________ ___ temp.Lnk: ________ ___ Targets.: ________ ___ Rec.-Net: ________ ___ int.Dep.: Job : ________ ___ ext.Dep.: Job : ________ Net : ________ ___ Jobvar : _________________ ___ log.Res.: _________________ ___ DS-Trigg: ____________________________________________ ___ Ext.Trig: Type: ________ Subtype: ________
You will find a detailed description of the individual fields and their meaning under "The Selection Filter"on page 55.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
359
What is to be observed when you create a new definition of nets ?
• Set the field "Lock new jobs" on Y under session options, selection 0. Then new definitions are automatically locked.
• Use the command PLS to check the new definition. The generated file shows you not only errors in your definition but also net start and end jobs.
• Using FOR you may subsequently check if the next start of the net is done at the time scheduled by you. Using the forecast function (selection 8) you may have several start dates calculated.
• Only then the new definition should be unlocked (UNL).
Which filters should be defined ?
In addition to the filters which are required for the listing of definitions (e.g. of a working area) an "error" filter makes sense listing all nets in which a problem is present. In chapter "Example 4: Definition of a Filter for Control"on page 356 such a filter is described.
Where do I define conditions for a net ?
In most cases it is sufficient to define time and event criteria in the first job of a net. Subsequent jobs often contain only concatenating criteria, i.e. internal dependencies. Hence it is not necessary to repeat conditions of the start job (e.g. "only runs on Mondays") in all jobs of the net. Consequently modifications (e.g. "is to run also on Tuesdays") are limited to the start job of the net, the definitions are hence more easy to maintain.
Exception: If special conditions are required for individual jobs in the net (e.g. if logical resources are used to make jobs run one after the other and not parallely) these conditions have to be defined in the respective job.
How can I guarantee that my net does not end right in the middle ?
If AJM ascertains that a job which is not a predecessor of another job ends with OK and if no other job of the net was started (i.e. submitted or active) the net is regarded as terminated.
As soon as a net has several parallel paths which do not end in a common job a premature end of net may occur. This is the case e.g. if for two parallel paths a job ends in one path and at almost the same time the last job ends in the other path. AJM processes the two end events one after the other without a job start taking place in this phase. All the above mentioned conditions apply to the second job, AJM hence recognizes the end of net.
This problem may be solved by defining a common end job. This definition includes the desired predecessors (i.e. the end jobs of the respective net paths) and the end job may run with BYPass. So it is not necessary to instal JCL for it either.
• Use the command PLS to check the net start and end jobs of your definition.
How can I make sure that a net which had problems during execution will nevertheless be restarted at the next defined time ?
If a job does not end with condition code 0 and if no termination control is defined for this job AJM sets the corresponding net in status "M-Restart". Then a manual action is necessary to release execution again.
37 Appendix B. Tips and Tricks
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
360
By the definition "> C0000 - NETREL" you can make sure that the net will be terminated with each condition or abend code. It may then be restarted at the next time possible.
Note: You should scrutinize whether a trouble-free restart of the net is really possible in any case. Then you should define exceptional cases in addition. Observe for further termination control definitions that they have to stand in front of the ">C0000" definition as AJM checks in the order of the definition.
What can I do if a net is on M-Restart ?
The status M-Restart means that a path of the net has run on STOP. No termination control or explicitly STOP is defined for the occurred return code or abend.
Check in the net / job list first which job has initiated this status. You recognize it by the termination type STOP. Now you may decide whether execution (possibly after repair) can be restarted or whether this net run is regarded as terminated and is only to run at the next start date.
For restarting an execution there are always two methods available: You may perform a restart via RMO and specify which jobs (also with new JCL if applicable) are to be rerun or which jobs are not to be performed any more. This is the recommended procedure.
You may also reset jobs in the net using CLR and manually restart execution using STR or RUN. For this purpose you have to check schedule conditions of these jobs, however, as well as of the dependent jobs. Jobs which were started with STR or RUN do not allocate logical resources, so control problems may occur. Observe furthermore that all internal dependencies are reset when there is a CLR on the entire net. If execution is restarted in the middle of the net it may occur that a job gets stuck because predecessor jobs have not all run. Then you would have to start this job manually as well.
If the net is to be terminated without jobs being rerun you may start a net end job using BRN. This job will then initiate a clean net end. Using the command PLS you learn which jobs are net end jobs.
What may I use a time chamber for ?
A time chamber (period with "once=Y") is required if a job is to start during the day at times which are not periodical, i.e. they cannot be defined in form of an interval.
Example: A job is to run once each time between 09:00 and 10:00 o'clock, between 11:00 and 12:30 and between 16:00 and 21:00 o'clock. Then the definition is as follows:
___ Schedlst: No: 00 Type: S (Sub/Byp/Late) Prev. WD: N (y/n): valid: Y (y/n) from: ________ _____ to: _____________
___ Time : y/n: Y after: 09:00 before: 10:00 once: J (y/n)___ OR y/n: Y after: 11:00 before: 12:30 once: J (y/n)___ OR y/n: Y after: 16:00 before: 21:00 once: J (y/n)
How can I define that a net runs exactly "n" times ?
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
361
For this purpose you may use the command PVS. Define the net as usual (e.g. with an interval as a start criterion) and specify "preparation required" for the start job. You need not define a preparation dialog. Using the command PVS you may ascertain how often your net is to run.
How do I find out why my job does not start ?
• Check the job status. AJM can only select a job if it has not been selected in the current net run yet. Therefore it must not be in status submitted, active, ended or the like.
• If you have the definition displayed using BRW the criteria avoiding selection are represented inversely in each schedule list.
• If other fields (e.g. "job") are represented inversely you may find out the exact cause using the STA command.
• If there are problems with access to JCL libraries you should check in selection 6 if the linkname is defined. If it is in status in error you may reset it using the CLR command. If this linkname gets the status in error right away you may consult AJM log for the reason. Have all AJM messages of the corresponding period displayed. An S913 abend often is the cause. Verify if the AJM system has read authorization for all files summarized under this linkname.
• If you want a diagnosis of the job over a whole period, e.g. to find out why the job does not start at night, you may activate a trace for this job. Specify Y in the field "Trace" in the job line. In the AJM log you may view which conditions have prevented the scheduler from selection.
Why do jobs which do not start because of JCL errors get stuck in status submitted ?
AJM only receives information if a job has started. If JES already aborts a job beforehand (e.g. if a job is cancelled before it starts) this information is not transferred to AJM. Such cases may be reported to AJM using AJM/S provided the joblog reaches the output class used for AJM/S.
What has to be observed when "USER=" is specified in the job card ?
• The userid specified there has to have read access to grp.#SUB.net.job in the general resource class $AJM. This entry is performed centrally by the data center.
• The userid must not be revoked. • The AJM system must have read access to userid.SUBMIT in the resource class SURROGAT.
If you obtain the display "userid in job card not permitted for submit" when you use the STA command you should verify the above mentioned points.
What do you have to observe for the CLR command ?
A CLR command may only be performed if the corresponding job is no longer active. So verify e.g. via JLG command if this is the case. If the job still runs you should lock the corresponding net before you abort it e.g. by cancel. Then you are sure that no further jobs are started because of the job end. You should proceed in the same way when the job is in "waiting for execution".
Only when you are sure that no affected job is active any longer or can start you may use the CLR command. Otherwise the end of the job may result in further unintentional starts in the net. Besides there may occur subsequent problems in jobs which verify the status of the affected job in their schedule conditions.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
362
Note: The impact of the CLR command on nets or jobs is explained in details in the chapter "The CLR Command"on page 333.
How can I monitor my executions in order to recognize when an execution does not start at the desired moment or runs too long ?
You may use a schedule list LATE to recognize and report such conditions. If such a schedule list LATE is selected AJM generates a message (SYSLOG). The corresponding job obtains the status late, the latter may be queried via a corresponding filter.
A fixed moment when an execution is late may be defined as a schedule list in the start job of the execution. If duration of an execution is to be monitored you may set a job variable with the corresponding lifetime at the beginning of monitoring (e.g. in the start job of execution). Then a schedule list (e.g. in the end job) may be defined which checks the conditions "start job is predecessor" and "job variable is no longer valid (^=)".
Note: The "Late" function is explained in details in the chapter "Handling of Schedule Lists LATE"on page 329.
When is a preparation dialog necessary ?
As soon as JCL contains a card the value of which cannot be calculated according to fixed rules a user entry is required. Besides members of a header card library e.g. may be generated within the scope of an AJM/P preparation dialog.
Note: AJM variables may be used for variable options in JCL which are subject to a fixed algorithm.
How can standardized definitions be multiplied or major modifications be performed on nets ?
Using the EXT command a file containing definitions for a job or a net in a standard format may be generated. The structure of these files is described in chapter "AJMIN Structure for Job Definitions"on page 380.
Via ISPF edit this file may be processed. Afterwards the definitions may be loaded into the AJM system via the program AJMAICMD using the UPDATE command (see Appendix D. "Command / Batch / Program Interface"on page 363).
Note: Make sure that you set the language you had used when dumping definitions (e.g. "PROFILE LANGUAGE(GE)") via the PROFILE command when you invoke AJMAICMD.
How can executions be controlled on the own or on external systems?
AJM administration interface may be installed in such a way that you can work with any AJM system on external computers. However, you need a userid with the required authorizations on the target system. Your AJM system administrator may perform the installation of the access.
The AJM batch / command interface may initiate almost all commands being possible in the AJM administration interface in jobs or from any programs or REXX procedures / CLISTs. These commands may be sent to any AJM systems. Of course it will also be checked if the corresponding userid is defined and authorized.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
363
Error messages in AJM have the structure
AJMnnnns - module name: message text.
Error messages from AJM/P have the structure
AJPnnnns - module name: message text.
Whereby:
AJM Message prefix for AJM messages
AJP Message prefix for AJM/P messages
nnnn Message number
This part contains the subnumber of the message.
s Severity Code
The following values are possible:
I Information
W Warning
E Error
A fatal error
Q Error, reply necessary
Module name name of the module causing the message
Message text explanatory text
The messages are available in two languages.
The most important messages from the administration interface are explained below: A detailed description of all error messages including guidelines for measures is planned in a manual "AJM Messages".
38 Appendix C. Error Messages in AJM
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
364
AJM0001E Error during session INIT, ID=xxxxxxxx, Macro=yyyyyyyy, RCFB=nnnnnnnn,Sense=nnnnnnnn
Module: AJMADDBR
Explanation: When the connection to the AJM system was established an error occurred. Probably the AJM system is not active at present.
User Response: Try again after about 5 minutes whether the connection may be established now. If an error occurs repeatedly you should inform the person responsible for AJM in your data center.
AJM0002E Error during SEND, Sessid=xxxxxxxx, Macro=yyyyyyyy, RCFB=nnnnnnnn,Sense=nnnnnnnn
Module: AJMADDBR
Explanation: During communication with the AJM system an error occurred. If the option for macro is TIMEOUT then processing of your last command lasted longer than a maximum default time of your data center.
User Response: Try again after about 5 minutes whether your command may be performed now. If the error occurs repeatedly you should inform the person responsible for AJM in your data center.
AJM0005W Part of request not performed due to missing authorization
Module: AJMADDBR
Explanation: You have entered a generic inquiry (e.g. filter with a generic group option). For a part of the definitions corresponding to your search criteria you have no access authorization, however. The displayed list only contains the elements for which your authorization suffices.
User Response: Consult your AJM administrator if necessary and have the authorization established.
AJM0007E Request(s) not performed due to missing authorization
Module: AJMADDBR
Explanation: You have entered a command for which you are not authorized.
User Response: Consult your AJM administrator if necessary and have the authorization established.
AJM0014W RU Overfllow. Data incomplete
Module: AJMADDBR
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
365
Explanation: You have queried a very large amount of data (e.g. all nets in a group). The displayed list does not contain all information to which your query applied.
User Response: Restrict your query by specifying a (generic) net name e.g.. If you really need all information you may increase the parameter "number data buffer" in selection 0, Session Options (see "Session Options"on page 47).
AJM0017E No data found for this request
Module: AJMADDBR
Explanation: You have entered a query but there are no definitions corresponding to your selection criteria.
User Response: Check your selection criteria. If a + is displayed in the filter list your filter contains further selection criteria in addition to group, net and job. Maybe you have made a typing mistake.
AJM0026E Error on manual restart, check AJM log for details
Module: AJMADDBR
Explanation: In the "Manual Restart" panel (see "Restart Modification (Manual Restart)"on page 142) restart attributes were assigned on the basis of which no restart unit may be determined.
User Response: Check and correct your restart modifications. You will find an explanation on the subject restart in AJM under "Restart / Recovery Functionality"on page 317.
AJM0028E Request denied by security server
Module: AJMADDBR
Explanation: You have entered a command for which you are not authorized.
User Response: Consult your AJM administrator if necessary and have the authorization established.
AJM0033E JCD not in use, cannot perform request
Module: AJMADDBR
Explanation: You tried to lock a JCL linkname using LCK. This command is only permitted if at least one linkname from the JCL definition of the group is in status active.
User Response: Specify the command SHJ for any job in the group. Doing this the JCL definition will be activated and you may perform the LCK command.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
366
AJM0034E Error on JCL read / write processing
Module: AJMADDBR
Explanation: This message may occur when using the SHJ command. When JCL was generated for submit an error was detected. For instance AJM variables could not be resolved or problems occurred when accessing to the linkname.
User Response: You will find detailed information in AJM log. Select the corresponding period and enter Y for "AJM messages". Using the PLS command you may check whether the access to the linkname and the associated JCL library functions.
AJM0039E Not authorized to use specified logical resource
Module: AJMADDBR
Explanation: You are not authorized to use the logical resource specified in your job definition.
User Response: Have the required authorization established by your AJM system administrator or delete the logical resource from your job definition if you want to save the definition nevertheless.
AJM0049E Job currently uses logical resource which is deleted in job definition
Module: AJMADDBR
Explanation: As long as a job is active its definition must not be altered in such a way that a currently used logical resource will be deleted.
User Response: Exit the definition using CAN or wait until the job has terminated.
AJM0050W Scheduler is not active
Module: AJMADDBR
Explanation: Automatic scheduling, i.e. selection of jobs (start, bypass, late) was stopped by the AJM system administrator. Jobs may still be started manually (STR / RUN) but their end does not initiate a start of dependent jobs. As soon as automatic scheduling is restarted these dependent jobs will run unless their other conditions are satisfied.
User Response: You may start jobs using STR or RUN.
AJM0052W Parts of tht net have no valid preparation
Module: AJMADDBR
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
367
Explanation: You have added new jobs to a prepared net and specified that a preparation would be required for these jobs as well. However, these jobs are not prepared valid, so a net run could stagnate.
User Response: Perform the preparation dialog again. Check beforehand if it has to be adapted to the new jobs. It could be useful to declare the preparation of the net totally invalid using the PVR command before.
AJM0311E No data found
Module: AJMADPCD
Explanation: When the AJM log was browsed no messages corresponding to your selection criteria were found.
User Response: Check your selection criteria. It could be that you are not authorized to display the selected information. Maybe you have made a typing mistake.
AJM0315I Refresh active, please wait
Module: AJMADPCD
Explanation: Using the Enter key you have started a query which is to update the displayed list (Refresh).
User Response: Wait until the updated list is displayed.
AJM0506E Net not defined and no update authorization
Module: AJMADSTK
Explanation: You have tried to newly create a net, but you have no authorization for it.
User Response: Consult your AJM administrator if necessary and have the authorization established.
AJM0510E No read authorization
Module: AJMADSTK
Explanation: You must not read the definitions selected by you.
User Response: Consult your AJM administrator if necessary and have the authorization established.
AJM0515E No update authorization
Module: AJMADSTK
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
368
Explanation: You must not create, alter or delete the definitions selected by you.
User Response: Consult your AJM administrator if necessary and have the authorization established.
AJM0516I No nets found. Enter net name for definition of a new net or press PF3 to return
Module: AJMADSTK
Explanation: You have entered a query but there are no definitions corresponding to your selection criteria. AJM now offers you to create a new definition.
User Response: Specify either the name of the net which you want to create or return to the filter selection panel using PF3 (END).
AJM0601E No data to display
Module: AJMADSCR
Explanation: You have quitted a new definition e.g. using CANCEL. Normally the list of information corresponding to the filter selected by you would be displayed now. But this list is empty, so you return to the corresponding selection panel.
User Response: none
AJM0705E No changes on days of the past
Module: AJMADCAL
Explanation: You have tried to alter the daytype for days which are over already. This is not permitted for reasons of revision.
User Response: Alter only daytypes in the calendar in the future.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
369
39.1 Introduction
With the aid of this interface it is possible to transfer commandsdefinitions from the following environments to AJM:
• From a batch job • From a CLIST or REXX or from any place under TSO • From a program.
The authorization checks for the access generally take place on the computer on which the addressed AJM system runs. Accesses on job variables are only possible within the same complex, the authorization check takes place on the computer on which the job runs which performs the access.
The following table shows what each call looks like:
Call from Program Parameters via Example Batch job AJMAICMD Parm entry
or AJMCMD file
see SAMPLIB member AJMBATCH (SYS4.SAMPLIB)
TSO / ISPF / CLIST / REXX
AJMCMD Command parameter TSO AJMCMD LOCK GROUP(...) NET(...) JOB(...)
Program AJMCMD Program area (2 byte length field (length of the command string) followed by commands (separated by a semi-colon))
... 01 CMD. 02 CMDLEN PIC 9(2) COMP. 02 CMDVAL PIC X(250). .... CALL "AJMCMD" USING CMD. ....
39.2 Return codes
Error conditions are reported back as return codes. In addition, messages are output in AJMPRINT (provided they are not suppressed via PROFILE MSGLEVEL(...)).
If a return code of 4 or 8 occurs (error in the execution of a command), then the following commands are only executed when this is explicitly desired using "PROFILE ONERROR(CONT)". If this was not set or a higher return code occurred (e.g. syntax error), then the execution breaks off at the faulty position.
The following return codes are possible:
0 All commands from the AJMCMD file or the PARM entry were executed successfully
4 Warning when the command is executed (e.g. EXTRACT data incomplete)
39 Appendix D. Command / Batch / Program Interface
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
370
8 Error on execution of the command (e.g. Job not found, lack of authorization, etc.)
12 Faulty command (e.g. Command not recognized, incorrect parameters, etc..)
16 Command too long (a command from the AJMCMD file is longer than 1024 bytes)
20 File end reached before the command ended (a line in the AJMCMD file ended with '- ' (continuation), but no continued line followed)
39.3 DD names
The following files are used for the batch / program interface: DD name Use RECFM LRECL AJMPRINT Log file (messages) VBA 137 AJMCMD Commands (only columns 1-72 are interpreted)
If a PARM entry is specified on call, the file AJMCMD is ignored FB 80
AJMIN Input file for UPDATE commands (Default, DD name can be overwritten by INDD entry)
FB 80
AJMOUT Output file for EXTRACT, LOGREAD, and LOGLIST commands (Default, DD name can be overwritten by OUTDD)
FB 80
133 (Log)
39.4 Examples
A job is locked in AJM with the following JCL:
//jobname JOB ... //TEST EXEC PGM=AJMAICMD, // PARM='LOCK GROUP(group) NET(net) JOB(job)'//AJMPRINT DD SYSOUT=* //
Several commands can be sent using the AJMCMD file:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
371
//jobname JOB ... //TEST EXEC PGM=AJMAICMD //AJMPRINT DD SYSOUT=* //AJMCMD DD * PROFILE LANGUAGE(GE) UNLOCK GROUP(group) NET(net) JOB(job)
START GROUP(group) NET(net) JOB(job)//
The call looks as follows in a CLIST:
PROC 0 ALLOC DD(AJMPRINT) DS(*) AJMCMD LOCK GROUP(group) NET(net) JOB(job)...
The call looks as follows in a REXX:
/* REXX */ address TSO "ALLOC DD(AJMPRINT) DS(*)" "AJMCMD LOCK GROUP(group) NET(net) JOB(job)"...
39.5 Syntax
The following rules apply to syntax: Commands via
Rules
AJMCMD
1. Every command begins with a command keyword (e.g. LOCK) which is followed by the corresponding parameters (e.g. NET(net)).
2. If a command does not fit onto a line, then this line must be ended with a blank followed by a hyphen (' -'). The continuation must be in the next line that is not a comment line.
3. Parameters cannot be continued over several lines. 4. If a line does not end with a continuation sign it is interpreted as a new
command.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
372
5. Comment lines begin with a star (*). They may be placed in any position.
PARM entry or Program area 1. Every command begins with a keyword (e.g. LOCK) which is followed by the
appropriate parameters (e.g. NET(net)). 2. Commands are separated with a semi-colon (;).
39.6 Commands and their parameters
The following table gives an overview of the commands which are possible using the interface. Command Function GROUP NET JOB other
parameters ADDRESS Select AJM system AJM(ajmname) PROFILE Set profile values LANGUAGE(language)
MSGLEVEL(msglvl) LOCKNEW(YES/NO) BUFFERS(number) ONERROR(TERM/CONT)
AJMSTAT Query AJM status
START Start job M M M
RUN Start job M M M
EXECUTE Start job M M M
LOCK Lock net/job M M O/G
UNLOCK Unlock net/job M M O/G
DELETE Delete net/job M M O/G
CLEAR Manual net/job clear M M O/G
BYPASS Bypass job on next run M M M
BYPRUN Bypass with run M M M
RESET Delete files of the last run M M M
UPDATE Add / change definition INDD EXTRACT Save definition in file M/G M/G O/G OUTDD
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
373
PLSCHECK Plausibility check M/G M/G
STATUS Query status of a job M M M
LRSUPD Set total counter of a logical resource
M LRS(lrsname) TOTAL(number)
LRSWHO Display current "user" of a logical resource
M LRS(lrsname)
JCDLOCK Lock link name M LINKNAME(link name) JCDUNL Unlock link name M LINKNAME(link name) JVRSET Define / set job variable name NAME(jvrname)
VALUE(value) OFFSET(offset) LENGTH(length) LIFETIME(validity)
JVRDEL Delete job variable NAME(jvrname) XTRSET Red out external trigger TYPE(type)
SUBTYPE(subtype) LEN01(length) VAL01(value) LEN02(length) VAL02(value)
NDOCUPD Add / change net documentation
INDD
JDOCUPD Add / change job documentation
INDD
NDOCEXT Save net documentation in a file M/G M/G O/G OUTDD
JDOCEXT Save job documentation in a file M/G M/G O/G OUTDD
LOGREAD Output AJM log in a file O/G O/G O/G OUTDD LIMIT FORMAT FROMDATE FROMTIME TODATE TOTIME LAST LRS VAR EXEC ADMI
LOGLIST List available AJM log files OUTDD M Mandatory parameter
O Optional parameter
G Generic input possible
39.6.1 The parameters GROUP / NET / JOB In the table above it indicates whether the command in question supports the parameters GROUP / NET / JOB, whether these are mandatory parameters (M) and whether they may be abbreviated (G).
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
374
These parameters have the following meanings:
Parameter Meaning GROUP Name of the group which the command in question refers to
The group name consists of two expression each of which is up to 8 characters long which are separated by ".". (See also "Basic Concepts")
NET Name of the net which the command in question refers to.
The net name is a maximum of 8 places. (See also "Basic Concepts") JOB Name of the job which the command in question refers to.
The job name is a maximum of 8 places. (See also "Basic Concepts")
39.6.2 The ADDRESS command The ADDRESS command is used to "address" the AJM system which is now to execute the following commands.
Note: The ADDRESS command does not work on commands which refer to job variables or to external triggers.
Parameter Meaning AJM Name of the AJM system
This name is kept in the AJMNAMES module and serves as the key to finding the associated parameter module. If no ADDRESS command is given, then all commands go to the AJM system which is defined first in the AJMNAMES module.
39.6.3 The PROFILE command The PROFILE command is used to set the run parameters for the following commands. It may be used as often as you like, e.g. to set a sequence of commands ONERROR(CONT) and afterwards to change to ONERROR(TERM). Parameter Meaning LANGUAGE Language in which the messages are output and definitions are to be implemented.
All subsequent messages are output in this language. For the UPDATE command the definitions are interpreted with the language given, the EXTRACT command supplies the data in the language given.
Possible inputs are:
EN English (Default)
GE German
MSGLEVEL Selection of the messages which are to be logged in the AJMPRINT file
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
375
Possible inputs are:
INFO Error messages, warnings, and information messages (default)
WARNING Error messages and warnings
ERROR Error messages
NONE No messages
TRACE Like INFO, but additional messages
ONERROR Reaction on errors
If a return code > 8 occurs, processing is cancelled. For return codes 4 and 8 (Error executing a command) the following may be defined:
TERM The processing is cancelled.
CONT The processing is continued with the next command. The job ends with the highest return code that occurred.
LOCKNEW Locking new definitions in the AJM database
Possible inputs are:
YES New definitions are locked in the AJM database (default), they must be unlocked using an UNLOCK command (online or via the interface) before new jobs can be started by AJM.
NO New definitions are not locked in the AJM database, they may be selected immediately by the scheduler.
BUFFERS Maximal number of response buffers of the AJM system
The default response of the AJM system, for example to an EXTRACT command, is to send a 32 KB buffer. If a great deal of data is extracted, then this buffer may not be large enough. The BUFFERS command can be used to specify the maximum number of buffers per command. A value between 1 and 64 is permitted.
39.6.4 The LRSUPD command The total counter of a logical resource can be set using the LRSUPD command. Parameter Meaning GROUP Group to which the logical resource belongs LRS Name of the logical resource TOTAL New value of the total counter of the logical resource
This value must be numeric and may include up to 4 places.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
376
39.6.5 The LRSWHO command The LRSWHO command can be used to query who is occupying a logical resource. The list of users is output on the AJMPRINT file. Parameter Meaning GROUP Group to which the logical resource belongs LRS Name of the logical resource
39.6.6 The JCDLOCK command A link name can be locked for AJM with the JCDLOCK command. All files assigned are then released and may then be moved or compressed. Parameter Meaning GROUP Group to which the JCL definition belongs in which the link name can be locked LINKNAME Name of the link name
39.6.7 The JCDUNL command A link name for AJM can be released again using the JCDUNL command. Parameter Meaning GROUP Group to which the JCL definition belongs in which the link name can be unlocked LINKNAME Name of the link name
39.6.8 The JVRDEL command A job variable can be deleted using the JVRDEL command. The return code of JVRCMD is recorded in a message and changed to one of the return codes listed above.
Note: The ADDRESS command has no influence on the JVRDEL command. This always refers to job variables on the computer on which the command was issued.
Parameter Meaning NAME Name of the job variable which is to be deleted
39.6.9 The JVRSET command A job variable can be defined and changed using the JVRSET command. The return code of JVRCMD is recorded in a message and changed to one of the return codes listed above.
Note: The ADDRESS command has no influence on the JVRSET command. This always refers to job variables on the computer on which the command was issued.
Parameter Meaning NAME Name of the job variable which is to be defined / changed VALUE New value of the of the job variable OFFSET Offset as of which the value is to be set
If this value is not given then OFFSET(0) is assumed. LENGTH Length of the value to be set
If this value is missing then the length of the VALUE entry is used. LIFETIME Period of validity of the job variable
The entry has the format days/hours/minutes and each entry may have up to two digits or may be missing. In addition, * can be entered for infinite. If no lifetime is specified with a new job variable, LIFETIME(*) is assumed. If no lifetime is specified with an existing job
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
377
variable, the lifetime remains unchanged.
39.6.10 The XTRSET command An external trigger can be triggered using the XTRSET command.
Note: The ADDRESS command has no influence on the XTRSET command. The JVRSET command always refers to all global AJM systems.
Parameter Meaning TYPE Type of the external trigger
The type is used to group the various types of triggers (e.g. MQSeries, RFTS, User). It s used to check authorization.
SUBTYPE Subtype of the external trigger
The subtype is used to subdivide triggers of the same kind. It is also used to check authorization.
LEN01 Length of the first parameter
If this entry is missing, then a length of "0" is assumed. VAL01 may not be used then. VAL01 Value of the first parameter
This value may contain as many characters as are entered in the parameter LEN01. If the value is shorter, then it is filled with blanks.
LEN02 Length of the second parameter
If this entry is missing, then a length of "0" is assumed. VAL02 may not be used then. VAL02 Value of the second parameter
This value may contain as many characters as are entered in the parameter LEN02. If the value is shorter, then it is filled with blanks.
39.6.11 The LOGREAD command Data from AJM log files can be written into an output file using the LOGREAD command. In addition, the available log files are listed (see also "The LOGLIST command"on page 379). The LOGREAD command allows the following parameters: Parameter Meaning GROUP Name of a group for which the log files are to be evaluated
The group name may be abbreviated with '*'. NET Name of a net for which the log files are to be evaluated
The net name may be abbreviated with '*'. JOB Name of a job for which the log files are to be evaluated
The job name may be abbreviated with '*'. LRS Name of a logical resource for which the log files are to be evaluated
The name may be abbreviated with '*'. VAR Name of an AJM/P variable for which the log files are to be evaluated
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
378
The name may be abbreviated with '*'. FROMDATE Date as of which the log files are to be evaluated
The date must be given in the format DD.MM.YY. FROMTIME Time as of which the log files are to be evaluated
The time must be given in the format HH:MM. TODATE Date until which the log files are to be evaluated (default: current day)
The date must be given in the format DD.MM.YY. TOTIME Time until which the log files are to be evaluated (default: 23:59)
The time must be given in the format HH:MM. LAST Relative entry indicating which time period is to be evaluated
The entry consists of two parts: a two digit number followed by the unit (MIN for minutes, HRS for hours, DAY for days, WK for weeks or MON for months). The entries for number and unit must be separated by a blank. It always goes back to be beginning of the unit entered (e.g. 01 DAY goes back to yesterday, 00:00 o'clock).
If this parameter is entered the entries for FROMDATE / FROMTIME or TODATE / TOTIME are ignored.
EXEC Selection of information on nets / job runs
The following entries are possible (multiple entries are separated by commas):
JOB Start / end of nets and jobs
TRC Additional information on processes (e.g. job trace, DS trigger)
SYS Messages of the AJM system
ALL All record types listed above are evaluated
ADMI Selection of information on user actions
The following entries are possible (multiple entries are separated by commas):
JOB Administration of nets and jobs (new system, changes, manual start, locking, unlocking, etc.)
LRS Administration of logical resources
JCD Administration of JCL definitions
CAL Administration of calendars
XSD Administration of external system definitions
PRP Administration of AJM/P dialogs (new systems, changes, execution)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
379
VAR Administration of AJM/P variables
PCD Administration of AJM/P file definitions
ALL All record types listed above are evaluated
FORMAT Selection of the list format S Standard format (prepared language-dependent texts)
R Report format (standard structure as the basis for evaluations)
L List format (equivalent to the result from LOGLIST)
OUTDD DD name of the output file (default: AJMOUT)
39.6.12 The LOGLIST command The available AJM log files can be listed using the LOGLIST command. Output of the list is done in the file AJMOUT file or in the file whose DD name is given in the parameter OUTDD.
The list displayed has the following structure:
LIST OF AVAILABLE LOG FILES ---------------------------
DATASET FROM TO hlq.AJM.LOGFILE1 * 18.09.97 17:56 29.09.97 15:06hlq.AJM.LOGFILE2 05.09.97 12:00 18.09.97 17:56hlq.AJM.LOGFILE.ARCHIVE.G0005V00 (M1) 05.09.97 12:00 18.09.97 17:56hlq.AJM.LOGFILE.ARCHIVE.G0004V00 (M2) 31.08.97 11:17 05.09.97 12:00
The active AJM log files are listed first followed by the archived ones. Each line contains information on the time period which the log file covers. The list is sorted in descending order, i.e. the latest data is listed first.
A * before the date entry indicates which files were select ed based on the time parameters given (FROMDATE/TIME, TODATE/TIME, or LAST).
If (M1) or (M2) is displayed behind the file name, then the file has been migrated (migration level 1/2). A selection of log files from this file leads to an automatic recall by AJM.
39.7 AJM Definition File (AJMIN)
The input records have the following structure:
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
380
)Subsection Parameter(value) Parameter(value) ....
The following rules apply to this:
1. The beginning of a subsection is marked with a right bracket ) in column 1. 2. Continuation lines of a subsection must begin with a blank in column 1, as of column 2 the
parameter entries may follow. 3. Parameter entries which do not fit completely into one line may be continued in the
continuation line. To do this, add a * in column 72. The parameter value must be continued in the following line as of column 12.
4. Comment lines are marked with * in column 1. 5. If there are definitions for several jobs in an input file, then the end of a job is to be marked with
// as of column 1.
39.7.1 AJMIN Structure for Job Definitions Subsection / Parameter Meaning JOB-ID Job definitions JOB Job name NET net name GROUP Group name SEQ Sequential number (determines the display sequence on the screen) CALENDAR Calendar name TRACE Trace Y/N JCL JCL information LINK Link name MEMBER Member name JCLT Temporary JCL information LINK Link name MEMBER Member name FROMDATE Date of validity (from) FROMTIME Time of validity (from) TODATE Date of validity (to) TOTIME Time of validity (to) STC Definitions for started tasks SYSTEM System name CMD Start command string EXTSYS Definition for external systems NAME Name of the external system JOBPREP Preparation information REQ Preparation required y/n RESTART Restart definitions ATTR Restart attribute (RR, RS, none) LIMIT Restart limit (max. number of restart attempts) DSN-TRACK Record datasets DSN-DEL Delete datasets (on automatic restart) TERM-CNTL Termination control definitions OP Comparison operator (e.g. =, >)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
381
CODE Code (e.g. C0004, U1111, S0C4) ACTION Action (e.g. OK, R-RST, J-WAIT) PARAM Parameter for action RECNET Name of a recovery net SCHEDLST Schedule list NR Number of the schedule list TYPE Type of the schedule list (S(ubmit), B(ypass), L(ate)) WD-BEFORE Work day before ? VALID Valid y/n FROMDATE Date of validity (from) FROMTIME Time of validity (from) TODATE Date of validity (to) TOTIME Time of validity (to) INTERNAL Internal precedent JOB Job name of the internal precedent LOGDEP Logical link to previous definition (AND, OR) ALT Number of the alternative path or ANY EXTERNAL External dependency NET net name of the external dependency JOB Job name of the external dependency LOGDEP Logical link to previous definition (AND, OR) ACTIVE Active y/n HOURSVAL Validity (in hours) MINSVAL Validity (in minutes) OP Comparison operator (e.g. =, >) CODE Code (e.g. C0004, U1111, S0C4) INTERVAL Interval MINUTE Interval in minutes HOUR Interval in hours DAY Interval in days WDAY Interval in work days WEEK Interval in weeks MONTH Interval in months YEAR Interval in years DAYTYPE Type of day VALID y/n WD Work day HD Holiday RD Day of rest DAYNAME Name of day VALID y/n MO Monday TU Tuesday WE Wednesday TH Thursday FR Friday
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
382
SA Saturday SU Sunday RELDAY Relative day VALID y/n LOGDEP Logical link to previous definition (AND, OR) TYPE Type of day WEEK Relative day within a week MONTH Relative day within a month YEAR Relative day within a year TIME Time window VALID y/n LOGDEP Logical link to previous definition (AND, OR) AFTER Time window(from) BEFORE Time window (to) ONCE One time DATE Date window VALID y/n LOGDEP Logical link to previous definition (AND, OR) FROM Date window (from) TO Date window (to) JOBVAR Job variable NAME Name of the job variable LOGDEP Logical link to previous definition (AND, OR) DISP Offset after which check is to take place LENGTH Length in which check is to take place OP Comparison operator VALUE Value to be checked against LOGRES Logical resource NAME Name of the logical resource LOGDEP Logical link to previous definition (AND, OR) NUMBER Number to be filled (number or ALL) DSTRIGG Dataset trigger DSN Dataset name (also generic) LOGDEP Logical link to previous definition (AND, OR) HOURSVAL Validity (in hours) MINSVAL Validity (in minutes) EXTTRIG External trigger TYPE Type of the external trigger SUBTYPE Subtype of the external trigger LOGDEP Logical link to previous definition (AND, OR) HOURSVAL Validity (in hours) MINSVAL Validity (in minutes) LEN01 Length of the first parameter VAL01 Value of the first parameter LEN02 Length of the second parameter VAL02 Value of the second parameter
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
383
39.7.2 AJMIN Structure for Documentation
Subsection / Parameter Meaning JOB-ID Job information (only for job documentation) GROUP Group name NET net name JOB Job name NET-ID net information (only for net documentation) GROUP Group name NET net name DOC Documentation text TEXT Text contents (may be repeated) ACT Action note TEXT Text contents (may be repeated)
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
385
Job variables can be created, deleted, changed, read or queried with the program JVRAICMD. The program runs in batch as well as under a CLIST / REXX. The appropriate function is controlled by the PARM entry.
Access to job variables is only possible within the same complex; the authorization check takes place on the computer on which the job which performs the access runs.
The call looks as follows:
//jobname JOB ... //TEST EXEC PGM=JVRAICMD, // PARM='SET USER1.V3(10,5)=TEST1 LIFETIME(2/5)'//
In a CLIST the call looks as follows:
ISPEXEC SELECT PGM(JVRAICMD) PARM(SET USER1.V3(10,5)=TEST1 LIFETIME(2/5))
The following functions are available:
SET Create or change a job variable
IF Query a job variable
GET Read the value of a job variable
DEL Delete a job variable
40.1 SET - Creating or changing job variables
A job variable can be created and filled with a value and a lifetime using the SET command. If a job variable already exists, then SET can be used to change its value and lifetime.
The trace options of a job variable and the descriptive comment can only be modified using the administration interface. (See "Job Variables"on page 151)
The SET command is structured as follows:
40 Appendix E. Batch/Command interface for job variables
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
386
SET jvr-hlq.jvr-llq(d,l)=value [LIFETIME(days/hours/minutes)] [ABEND]
The individual parameters have the following meanings:
jvr-hlq High level qualifier of the job variable name
jvr-llq Low level qualifier of the job variable name
d Offset
The value is overwritten as of this offset. Offset 0 is the beginning of the job variable value, offset 59 the last place.
l Length
The value is entered into the job variable in this length. Any previously existing value is overwritten. The maximum length that may be entered is 60. The entry for value must correspond to this length.
value New contents of the job variable
The contents of a job variable cover 60 places. It may consist of any characters. Parts of the value that are not defined by explicit setting contain blanks.
LIFETIME Period of validity
The lifetime can be given in days / hours / minutes. Valid numeric values are 0 - 99. The time entries can also be combined with each other or be individual entries (see following examples).
During the LIFETIME(*) the job variable retains unlimited validity.
If this entry is missing, then the previous lifetime is maintained for an existing job variable and an unlimited lifetime is assumed for a new job variable.
After expiry of the lifetime the job variable has an undetermined value and cannot be used in a JCL. (See "Contents of Job Variables (%JV)"on page 307. How an expired job variable affects the job control is described under "Job Variable"on page 120.)
Examples for the parameter LIFETIME:
(0) Valid until 24:00 of the current day
(1) Valid until 24:00 of the next day
(/12) Valid for the next 12 hours
(//30) Valid for the next 30 minutes
(/5/30) Valid for the next 5 1/2 hours
(1/5/30) Valid for a day (24 hours) + 5 1/2 hours
(1//30) Valid for a day (24 hours) + 1/2 hour
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
387
ABEND Conversion of condition codes into user abends
This entry means that a condition code other than 0 is converted into a user abend. Instead of a condition code C0012 a user abend U0012 would be output.
The following return codes may occur:
0 Processing without errors
12 Lack of access authorization. See message ICH408I.
16 Access to job variable file (VSAM) not possible.
20 Syntax error on calling JVRAICMD
40.2 IF - Querying a job variable
To query the value of a job variable you have the IF command available. It generates a return code based on the query which triggers a reaction, for example, using "Dependent Job Control".
The IF command is structured as follows:
IF jvr-hlq.jvr-llq(d,l)=value [THEN(rc) ELSE(rc)] [ABEND]
The individual parameters have the following meanings:
jvr-hlq High level qualifier of the job variable name
jvr-llq Low level qualifier of the job variable name
d Offset
The value is queried as of this offset. Offset 0 is the beginning of the job variable value, offset 59 the last place.
l Length
The value is checked to this length. The maximum length that may be entered is 60. The entry for value must correspond to this length.
value Comparison value
THEN Return code for true
If the job variable exists, is currently valid, and agrees with the entry for value in the area given, then the return code entered is set. Without a THEN entry the return code 0 is used.
ELSE Return code for false
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
388
If the conditions listed under THEN are not fulfilled or an error occurs accessing the job variable (e.g. lack of authorization, VSAM file access unsuccessful), then the return code entered here is set. Without an ELSE entry the return code 12 is used.
ABEND Conversion of condition codes into user abends
This entry means that a condition code other than 0 is converted into a user abend. Instead of a condition code C0012 a user abend U0012 would be output.
40.3 GET - Reading a Job Variable
In order to read the value of a job variable the GET command can be used. Either the value can be placed in an ISPF variable in the profile pool or the address of the value can be made available in register 1.
The GET command is structure as follows:
GET jvr-hlq.jvr-llq(d,l) [ispf-variable]
The individual parameters have the following meanings:
jvr-hlq High level qualifier of the job variable name
jvr-llq Low level qualifier of the job variable name
d Offset
The value is read as of this offset. Offset 0 is the beginning of the job variable value, offset 59 the last place.
l Length
The value is read to this length. The maximum length that may be entered is 60.
ispf-variable
Name of an ISPF variable
The value of the job variable is set in the ISPF variable here (as of place d in the length l). This can now be read out of the profile pool with VGET ... PROFILE and, for example, further processed in a CLIST. The entry of an ISPF variable only makes sense under ISPF and is only allowed there.
After a GET command the following condition codes may occur:
0 Processing without errors
4 Lifetime of the job variable expired
8 Job variable not found
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
389
12 Lack of access authorization. See message ICH408I.
16 Access to job variable file (VSAM) not possible.
20 Syntax error on calling JVRAICMD
40.4 DEL - Deleting a job variable
The DEL command is to delete job variables.
The DEL command is structured as follows:
DEL jvr-hlq.jvr-llq [ABEND]
The individual parameters have the following meanings:
jvr-hlq High level qualifier of the job variable name
jvr-llq Low level qualifier of the job variable name
ABEND Conversion of condition codes into user abends
This entry means that a condition code other than 0 is converted into a user abend. Instead of a condition code C0012 a user abend U0012 would be output.
The following condition codes are possible:
0 Processing without errors
8 Job variable not found
12 Lack of access authorization. See message ICH408I.
16 Access to job variable file (VSAM) not possible.
20 Syntax error on calling JVRAICMD
40.5 Examples
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
390
//SETJV EXEC PGM=JVRAICMD,PARM='SET USER1.TEST(4,1)=T LIFETIME=(0/12)'
The value of the job variable USER1.TEST is changed as of the fifth place to T. The job variable remains valid for 12 hours after the change.
//IFJV EXEC PGM=JVRAICMD, // PARM='IF USER1.TEST(4,1)=T THEN(4) ELSE(0) ABEND'
If the job variable USER1.TEST is valid and has a value of T in the fifth place, then the job is cancelled with the user abend U0004, otherwise it ends with condition code C0000.
ISPEXEC SELECT PGM(JVRAICMD) PARM(GET USER1.TEST(4,1) VALUE)ISPEXEC VGET VALUE PROFILE IF &LASTCC. = 0 THEN WRITE &VALUE.
The value which is in the fifth place in the job variable USER1.TEST is read into the ISPF variable VALUE, taken out of the profile pool, and can then be used further. If the return code is not zero, then the value could not be read out.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
391
AJMTEST is an auxiliary program that is used to simulate a job run. Both the runtime (WAIT=) as well as the termination code (TERM=) can be parameterized.
In the SAMPLIB library you will find the following sample job in the member AJMTEST:
//AJMTEST JOB (ACCNT,...),AJM,CLASS=Q,MSGCLASS=V, // USER=??????? //* //*-------------------------------------------------------------------//* //* SAMPLE JOB FOR AJMTEST //* //*-------------------------------------------------------------------//* //TEST EXEC PGM=AJMTEST,PARM='WAIT=5,TERM=C0008' /*
The following parm entries are possible:
WAIT=NNN NNN is the number of seconds which the job should be active.
TERM=Cxxxx Condition code with which the job should end. For xxxx values from 0000 to 4095 are possible.
TERM=Uxxxx User abend code with which the job should end. For xxxx values from 0000 to 4095 are possible.
TERM=Sxxx System abend code with which the job should end. For xxx values from 000 to FFF are possible.
The program ends with the system abend SFFF on incorrect or incomplete parm entries.
You can check whether the net definitions made in AJM make sense with the help of the program AJMTEST. In the example above the job AJMTEST ends with the condition code C0008 after 5 seconds. You can use this to test termination code controls, for example to check whether the desired alternative path is taken after the occurrence of the condition code.
41 Appendix F. Program AJMTEST
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
393
AJM/P offers standard solutions for many problems in the design of a preparartion dialog. For example the author of a dialog needs not to program how to display a panel or how to create a dataset. Checks routines are available for standard checks (e.g. valid date or valid dataset name).
Sometimes, however additional functions are required. Here specific solution can be inserted via REXX procedures.
REXX procedures can be called in following cases:
• as dialog element RXX everywhere in the preparation dialog • as package REXX beforte the first or after the last preparation within a package • as check REXX during a plausi check of a variable
42.1 Hand Over of Variables
All respective AJM/P variables can be accessed by a REXX procedure that runs within a preparation. This affects AJM/P system variables and global variables as well as the appropiate group, package or net variables.
Furthermore ISPF variables can be exchanged between REXX procedures in RXX dialog elements and other dialog element. Their names need not to be specified explicitly (cf. "Dialog Element RXX - Call of REXX"on page 252). This is also valid for package REXX procedures.
The access is done via specific built-in functions (see below). The values of the AJM/P or ISPF variables is stored into REXX variables with identical names (read access) or into the respective AJM/P or ISPF variable (update access).
Read access is done by the built-in function AJPRXVGT. Update access is processed by the built-in function AJPRXVPT. The names of the variables are handed over to the built-in function by call parameter. If no call paramezter is specified all variables are read or updated, respectively.
Note: A variable may be changed via AJPRXVPT even if it not read previously (AJPRXVGT). The following AJM/P system variables have a special meaning in the REXX environment:
• $$MODE indicates if a real preparation (value UPD) or only a test (Value TST) is running. • Via $$MSG a message can be output. • In case of a check RXX $$VAR contains the name of the variable to be checked. The current
variable valueis handed over to the check REXX as parameter.
42.2 Return Codes
A package REXX or a REXX within a dialog element can set a return code that gives information how to continue the preparation dialog. Analogously a check REXX returns the result.
Additionally the AJM/P system variable $$MSG can be used to output own error or information messages.
42 Appendix G. Call REXX Procedures from AJM/P
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
394
Following return codes are possible:
0 no error detected
In case of a check REXX the value of the variable is correct. In the other cases the REXX endet correctly.
4 user was to return to the previous dialig element
This return code may only be set by REXX procedures in RXX dialog elements. It results in returning to the last dialog element of the type PNL or VAR, respectively that is processed again. Therefore the return code corresponds the reaction to the END command by the user.
In case of a check REXX AJM/P reacts as on return code 12.
8 user wants to quit the preparation dialog
This return code may only be set by REXX procedures in RXX dialog elements or by package REXX. It results in cancelling the preparation dialog. Therefore the return code corresponds to a CAN command by the user.
In case of a check REXX AJM/P reacts as on return code 12.
12 error condition detected
In case of a check REXX the value of the variable is incorrect. In the other cases the preparartion dialog is cancelled.
others not defined
In case of package REXX or RXX dialog elements the preparation dialog is cancelled and a corresponding error message is output.
If a check REXX return an undefined code AJM/P reacts as on return code 12.
42.3 Examples
The following REXX reports an error and hands over a corresponding error message to AJM/P that subsequentially displays it.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
395
/* rexx */ rc = ajprxvgt('NETV1','ISPFV2') if netv1 = 'N' ! ispfv2 = 'N' then do
$$msg = 'This is an error message'rc = ajprxvpt('$$msg')
retcode = 12 else do retcode = 0 end return(retcode)
The following REXX reads all AJM/P variables and the ISPF variables defined to the dialog element. If the REXX is processed in test mode (VIE line command) a corresponding message is output. Otherwise the message variable $$MSG is set.
/* rexx */ rc = ajprxvgt() if $$mode = 'TST' then do say 'Current calendar:' $$cal end else do $$msg = 'Current calendar:' $$cal
rc = ajprxvpt('$$msg') end return
The following REXX procedures are delivered with AJM/P:
• AJPCDSDF checks if the value of the variable is an existing dataset
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
396
Special Characters A B C D E F G H I J K L M N O P R S T U V W Z
Special Characters • Overwriting Modifications 86 • %AJMCAL 311 • %AJMGRP 309 • %AJMJOB 310 • %AJMNET 310 • %CDATE 300 • %DATE 299 • %JV 307 • %SEM 308 • %SP 312 • %TIME 297 • %XCDATE 300 • %XDATE 299 • %XJV 307 • %XSEM 308 • %XTIME 297 • #GLOBAL
• Calendar 169 • Data security 337 • External Systems (AJM Agent) 186 • Logical Resources 159 • Path Definitions 180 • Privacy 161, 192
• "USER="-Angabe See Submit-User
A• Administration
See Administrationsoberfläche • Administrationsoberfläche
• chracteristics 41 • Overview 37 • Selection of Display 90 • Structure 37
• Administrationssprache See Sprache
• AJM-Agent • Characteristics 223
• AJM-Log See Logging
• AJM-Netz See Netz
• AJM-Variablen • %AJMCAL 311 • %AJMGRP 309 • %AJMJOB 310 • %AJMNET 310 • %CDATE 300 • %DATE 299 • %JV 307 • %SEM 308 • %SP 312
43 Index
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
397
• %TIME 297 • %XCDATE 300 • %XDATE 299 • %XJV 307 • %XSEM 308 • %XTIME 297 • Date 299 • Job Variables 307 • Nesting of Variables 313 • SEM Variables 308 • Substitution 297 • Time 297
• AJM/P-Variablen • Administration 263 • Check for Input Value 269 • Data Type 270 • Filter for 263 • Global Variables 231, 264 • Group Variables 231, 264 • Introduction 230 • ISPF and Job Variables 231 • List of 265 • Net Variables 231, 268 • Overview 231 • Package Variables 231, 268 • Statistics Information 277 • System Variables 231, 263
• AJMAICMD See Batch-/Command-Interface
• AJMCMD See Batch-/Command-Interface
• AJMIF 293 • AJMIMBED 294 • AJMMODL 295 • AJMTEST 391 • ALT
See ALTERNATE-Pfade • ALTERNATE-Pfade
• Expression 23 • Job Definition 102
• Arbeitstag • Calendar Definition 172 • expression 26 • Job Definition 114 • Previous workday 106
B• Batch-/Command-Interface
• ADDRESS 372, 374 • AJMSTAT 372 • BYPASS 372 • BYPRUN 372 • CLEAR 372 • DELETE 372 • Examples 370 • EXECUTE 372 • EXTRACT 372 • for job variables (JVRAICMD) 385 • JCDLOCK 373, 376 • JCDUNL 373, 376 • JDOCEXT 373 • JDOCUPD 373 • JVRDEL 373, 376 • JVRSET 373, 376 • LOCK 372
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
398
• LOGLIST 373, 379 • LOGREAD 373, 377 • LRSUPD 373, 375 • LRSWHO 373, 376 • NDOCEXT 373 • NDOCUPD 373 • Overview 369 • PLSCHECK 373 • PROFILE 372, 374 • RESET 372 • RUN 372 • START 372 • STATUS 373 • Syntax 371 • UNLOCK 372 • UPDATE 372 • XTRSET 373, 377
• Befehle See Befehle in der Command-Zeile, Zeilenbefehle, Batch-/Command-Interface
• Befehle in der Command-Zeile • BRW 43 • CAL 42 • CAN 41 • CHANGE 44 • DO 43 • DOWN 45 • DST 42 • END 41 • EXIT 41 • FIND 43 • FOR 42 • HELP 41 • JCD 42 • Jump Commands 42 • JVR 42 • LOG 42 • LRS 42 • MAIN 42 • NET 42 • PCD 42 • PRP 42 • PVR 42 • RCHANGE 45 • REN 127, 242, 247 • RESET 43 • RETURN 41 • RFIND 44 • SAVE 43 • SORT 127, 242, 247 • UNDO 43 • UP 46 • UPD 43 • UTI 42 • XSD 42
• Bestätigungspanel • Activate / Deactivate 51
• BYP See BYPASS
• BYPASS • Completion Code 102 • Expression 22 • Job Definition 106
C• CLR command
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
399
• action 333 • Command-Zeile
See Befehle in der Command-Zeile • Confirmation-Panel
See Bestätigungspanel D
• Datenschutz • "USER=" entry 335 • "USER=" option 149 • AJM/P Dataset Definitions 281 • AJM/P File Definitions 340 • AJM/P Variables 278, 339 • Calendar 172, 337 • Documentation 153 • External system 335 • External Systems 192 • External triggers 338 • JCL definitions 338 • JCL Definitions 167 • JCL files 339 • Job Variables 157, 338 • Jobs 149, 335 • Logical resources 337 • Logical Resources 161 • nets 335 • Nets 149 • Overview 335 • Packages 261, 339 • Preparation dialogs 339 • Preparation Dialogs 261 • Started Tasks 335 • STC 335 • Submit user 335 • Submit-User 149
• Datumsfenster • expression 27 • Job Definition 117
• DEL See Dialogelemente
• Dialog See also Administrationsoberfläche, Vorbereitungsdialog • parallel 39, 59
• Dialogelemente • DAT 235, 247 • Definition 247 • DEL 235, 249 • Expression 235 • FTL 235, 250 • PNL 235, 252 • Preparation Note 235 • RXX 235, 252 • SET 235, 254 • VAR 235, 256
• Dokumentation • of nets and jobs 151 • of Preparation Dialogs 243
• DS-Trigger • Administration 163 • as a schedule criterion 30 • Job Definition 123
E• Event 28 • Event Criteria 28 • Externe Systeme
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
400
• Administration 175 • Characteristics 223 • define AJM Agent 188 • define Node 177 • define Path 183 • display node status 178 • display Path Status 185 • display Status (AJM Agent) 190 • SAP/R3 224
• Externe Trigger • as a schedule criterion 30 • Batch/Command interface 377 • Data security 338 • Job Definition 125
F• Feiertag
• Calendar Definition 172 • expression 26 • Job Definition 114
• Feldsensitives Help • Expression 37 • Query 41
• File-Tailoring See also Dialogelemente • Expression 233
• Filter • Definition 60 • Examples 356 • Expression 38 • Filter List 57 • Overview 57
• Forecast • Line Command 141
• FTL See Dialogelemente
G• Gruppe
• #GLOBAL See #GLOBAL
• AJM/P Dataset Definitions 279 • AJM/P Variables 264 • Calendar 169 • Data security 335 • Expression 19 • External Systems (AJM Agent) 186 • Filter Definition 61 • JCL Definitions 165 • Log View 196 • Logical Resources 159 • Path Definitions 180 • Preparation Definitions 239 • Statistics 215
H• Hilfe
See Feldsensitives Help • Hilfsinformationen
See Feldsensitives Help I
• Intervall • calculation 329 • expression 27 • Job Definition 111
J• JCL
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
401
• "PASSWORD" option 289 • "USER=" option 289 • AJM Variables 297 • Datasets 289 • JES3 Net Statements 290 • Job Selection 290 • Job size 290 • Job Structure 289 • Submit 290 • Variable Substitution 291, 297
• JCL-Dateien • Data security 339 • Format 289
• JCL-Definitionen • Administration 165
• JES3 • Net Statements 290
• Job • Overwriting Modifications 86 • Aufbau
See JCL • Definition 86 • Definition of a new Net 87 • Expression 19 • Filter Definition 61 • Job Definition 92 • Status 127 • Update Panel 88
• Job list 85 • Job-Control
See JCL • Jobname
• in the JOB Card 290 • Job Definition 92
• Jobstatus See Status
• Jobvariablen • Administration 155 • as a schedule criterion 29 • Batch/Command interface 376, 385 • expression 29 • Expression 19 • in JCL 307 • Job Definition 120
• JVRCMD See Batch-/Command-Interface
K• Kalender
• Administration 169 • expression 25 • Job Definition 93
L• LATE
• Job Definition 106 • Scheduling 329
• Laufvorhersage See Forecast
• Linkname • Administration 279 • AJM/P Datasets 280 • Expression 234 • JCL Definitions 166 • Job Definition 96
• Logging
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
402
• AJM/P Dataset Definitions 279 • AJM/P Variables 263 • Calendar 169 • Dialog 195 • Display of Log Data 195 • Documentation 151 • External Systems 193 • Introduction 195 • JCL Definitions 165 • Jobs 149 • Log-Format L 212 • Log-Format R 204 • Log-Format S 202 • Logical Resources 159 • Nets 149 • Packages 239 • Preparation Dialog 239
• Logische Ressource • Administration 159 • as a schedule criterion 29 • Job Definition 122
M• M-Restart
See also Restart • Display 71
• Main-Menü • Functions 47
• Migration N
• Net List 69 • Netname 21 • Netz
• Definition of a new Net 87 • AJM/P Variables 264 • ALTernative Paths 23 • Beginning of Net 331 • BYPASS 22 • Definition 86 • End of Net 332 • Expression 19 • Filter Definition 61 • Forecast 141 • JES3 Net Statements 290 • Name of Net 21 • Net Run 331 • Overwriting Modifications 86 • Preparation Dialogs 239 • Restart
See Restart • Run Forecast 141 • Scheduling of external nets 330 • Scheduling of recovery nets 330 • Set Preparation Valid Manually 148 • Statistics 140 • Status 69 • Structure 21 • Update Panel 88
• Netzstatus See Status
O• Oberfläche
See Administrationsoberfläche • Online-Administration
See Administrationsoberfläche
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
403
P• Paket
• AJM/P Variables 264 • Definition 257, 258 • Expression 233 • Preparation Definitions 240
• Panel See Dialogelemente
• period of validity 28 • PNL
See Dialogelemente R
• RACF See Datenschutz
• Relativer Tag • expression 28 • Job Definition 114
• Restart • automatic 323 • Functionality 321 • Job Definition 99 • Limit 100 • manual 142, 323 • Restart Attributes 100, 321 • Restart Unit 322 • Scheduling 330 • Simulation 146
• Restart Attributes 100, 321 • Restart-Unit 322 • REXX
• Call REXX Procedures from AJM/P 393 • Ruhetag
• Calendar Definition 172 • expression 26 • Job Definition 114
• RXX See Dialogelemente
S• SET
See Dialogelemente • Sprache
• Setting 51 • Sprungbefehle
• Expression 38 • in AJM and AJM/P 42
• Status • Selection according to net status 62 • of a job 76 • of a net 69 • Selection according to job status 63
• Submit-User • Data security 335 • in JCL 289 • Privacy 149
T• Tagesdatum
• expression 26 • Job Definition 117
• Tagesname • expression 26 • Job Definition 114
• Tagestyp • expression 26 • Job Definition 114
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
404
• Tagestypwechsel • Calendar 170 • expression 25
• Termination-Typ • of a job 79 • of a net 70 • Overview 317
• The Net/Job List 75 • time criteria 25
U• Uhrzeit
• expression 26 • Job Definition 117
V• VAR
See Dialogelemente • Variablen im AJM/P
See AJM/P-Variablen, Dialogelemente • verspätet
See LATE • Vorbereitungsdialog
• Administration 239 • Definition 241 • Dialog Elements 245 • Execution 285 • Expression 233 • Filter 239 • List 240 • Statistics Information 261
• Vorhersage See Forecast
W• Wechsel des Tagestyps
See Tagestypwechsel Z
• Zeilenbefehle • "JCL" Line 97 • "Job-ID" line 94 • "Restart" Line 101 • "Schedlst" Line 108 • "STC" Line 98 • "Temp. JCL" Line 97 • "Term-Cntl" Line 105 • BRJ 81, 97 • BRN 82 • BYP 82 • Calendar 170 • CLR 73, 82, 333 • CLR (Linknames) 167 • DAC 75, 85, 95 • DCU 75, 85, 95 • DEX 75, 85, 95 • Dialog List 240 • Display of last line command 80 • Display of the last line command 72 • DOC 75, 85, 95 • Documentation 152 • EDJ 81, 97 • EXE 82 • EXT 72, 81 • External Systems (AJM Agent) 188 • Filter 67, 67 • FOR 74, 84, 141 • JCL Definitions 166
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
405
• JLG 84, 94 • Job List 86 • LCK 73, 82 • LCK (Linknames) 167 • List of Node Definitions 177 • List of Variables 266 • List Path Definitions 182 • LOG 74, 84, 240 • Logical Resources 160 • Net List 72 • Net/Joblist 81 • OUT 74, 84, 94 • PLS 72 • PRP 75, 240 • PRT 73, 81 • PRU 75, 240 • PUL 74 • PVR 75, 240 • PVS 75, 148, 240 • RES 82 • Restart Modification 145 • REX 145 • RMO 74, 142 • ROJ 84 • RSI 74, 146 • RUN 83 • SDS 170 • SHJ 84, 97 • STA 84, 95, 127 • STR 83 • STT 74, 85, 95, 138, 241 , 266, 267, 276 • SUC 160 • UNL 74, 83 • UNL (Linknames) 167 • WHO 161 • with schedule criteria 108
• Zeitberechnung See Forecast
• Zeitfenster • expression 27 • Job Definition 117
• Zeitkammer • expression 27 • Job Definition 118
(1) DFSMS is a product name of IBM
(2) File tailoring is a function in ISPF. You will find further information in the corresponding IBM manuals.
(3) File tailoring is a function in ISPF. You will find further information on file tailoring in the corresponding IBM manuals.
(4) In the dialog element DAT (edit / browse) you exit the member / dataset just displayed by using this command and the next dialog element will be displayed.
AJM – Advanced Job Management User Manual
T-Systems International GmbH Edition: 16/06/2005
406
Backpage
Copyright T-Systems International GmbH 2005
T-Systems International GmbH Computing Services & Solutions (CSS), System Products & Solutions (MSY-PS) Fasanenweg 9, 70771 Leinfelden-Echterdingen, Germany Phone: +49 89/1011-4685 Fax. : +49 711/972-91622 E-mail: [email protected] Intranet : http://t-systems.telekom.de/sps Internet: www.t-systems-systemproducts.com
====!"§==Systems=