Sie sind auf Seite 1von 180

AUTOMIC UNIVERSITY

ONE AUTOMATION

Automation Engine - Basics Part 1


Basics training for Automation Engine
V11.2151113
Preface
The AE - Basics Part 1 training course provides an introduction to the use of the Automa-
tion Engine. It gives you the knowledge and skills you need to handle the UserInterface
and set up simple scheduling procedures.

This training material is supposed to support you in studying the Automation Engine
Basics.

Please direct any questions, comments, or suggestions for improvements to:

training@automic.com

Product names referred to herein are protected trademarks or registered trademarks of


the corresponding owners.

This training material contains proprietary protected information, which is subject to


copyright. It is prohibited to transmit or reproduce this document, as well as to use or
disclose its content without express consent. Anyone found to do so shall be liable to
damages.

© Automic Software GmbH

All rights reserved.

2
Aim of this Training Course
In this training, we aim at communicating the relevant knowledge for handling the User
Interface as well as the basics of Automation Engine object creation.

Requirements
You should know how to use a PC. You should also be able to operate a computer mouse.

Exercises
We will spend a lot of time practicing the acquired knowledge. The exercises include a
time specification on the corresponding pages in order to provide you with a time frame.
Upon completion of an exercise, we will discuss it. After the training, you may export
your solutions and the trainer's solutions from the Automation Engine system and im-
port them into your system for further reference.

Last day
On the very last day, we aim at putting together all we have learned into one greater
whole. During this day, we may consolidate open issues.

Course Evaluation Survey


In order to continuously improve the contents and quality of our trainings, we will ask
you to fill in a Course Evaluation Survey after the training is complete at:
https://www.surveymonkey.com/r/AutomicUniversity
Please take a few minutes at the end of the training to tell us your opinion about the
course organization, quality of information/trainer, etc.

All about Training at Automic


If you are interested in our widespread classroom and/or eLearning training offerings,
even beyond this specific product training, just vist our homepage at:
http://automic.com/university
Here, you will find everything around Automic University and Training at Automic:
• Training Centers (locations, contact details and other useful information)
• Product and IT Management Courses (dates, booking possibilities, etc.)
• Onsite Training (what we can do for you)
• eLearning (available courses and video samples)
• Management Certification Courses (approved by APMG and EXIN)

Check it out!

3
4
Agenda

5
Agenda, Day 1

Start

Introduction of instructor and participants

What is AE?

AE's system architecture

The UserInterface (UI) and accessing the system


Set up your work environment

Object orientation in AE: What does it mean?


Naming conventions for objects

Job object:

--Introduction to the Job object including the three most


important parameters
--Information about object execution

1. Exercise, Job

Lunch Break

Job object: Further (Job) Parameters

Login object:
--Storage of login information for Job executions

Queue object:
--Quantity limiter for tasks
2. Exercise, Queue

Filter object:
--Creating simple Filter objects
--Usage in Jobs
3. Exercise, Filter

Break

FileTransfer object:
--Introduction to the FileTransfer object
--The most important information about object execution
4. Exercise, FileTransfer

End

6
Agenda

Agenda, Day 2

Start

Workflow object:
--Introduction to the Workflow object
5. Exercise, Workflow

Workflow object:
--Properties

Break

6. Exercise, Workflow

Workflow object:
--Further properties

7. Exercise, Workflow

Workflow object:
--Attributes
--Nested Workflows
--Handling Workflows

Lunch Break

Calendar object:
--Calendar object including all functions

8. Exercise, Calendar

Break

Schedule object:
--Scheduling tasks

9. Exercise, Schedule

End

7
Agenda, Day 3

Short recap of previous day

Executing objects
--Recurring execution of tasks
--Non-recurring execution
10. Exercise, recurring execution

Notification object:
--Internal and external notification of users
--Variable Notifications

Break

Notification object:
--Sending of Job reports via email
--Usage in Workflows
11. Exercise, Notification

PromptSet object:
--Operation and usage

Lunch Break

Time Event object:


--Recurring execution of Automation Script

File System Event object:


--Recurring check of defined conditions in the file system

Database Event object:


--Comparing variable and DB values
12. Exercise Time and File System Event

Break

Include object:
--Sourcing out recurring scripts in text modules

AgentGroup object:
--AgentGroup object including all functions
--Usage in Jobs

End

8
Agenda

Agenda, Day 4

Short recap of previous day

Documentation:
--Individual object and tab form

Exporting and importing objects

Break

Frequently asked questions (FAQ)

Practicing entire contents in teams or individually =>‘Put it


all together’

Lunch Break

Practicing entire contents in teams or individually =>‘Put it


all together’

End

9
10
Table of Contents
Preface ��������������������������������������������������������������������������������������������������������������� 2

Aim of this Training Course ��������������������������������������������������������������������� 3

Requirements �������������������������������������������������������������������������������������������������� 3

Exercises ����������������������������������������������������������������������������������������������������������� 3

Last day ������������������������������������������������������������������������������������������������������������� 3

Course Evaluation Survey ������������������������������������������������������������������������� 3

All about Training at Automic ����������������������������������������������������������������� 3

Agenda ��������������������������������������������������������������������������������������������������������������� 5
Agenda, Day 1 ��������������������������������������������������������������������������������������������� 6

Agenda, Day 2 �������������������������������������������������������������������������������������������� 7

Agenda, Day 3 �������������������������������������������������������������������������������������������� 8

Agenda, Day 4 �������������������������������������������������������������������������������������������� 9

Table of Contents ���������������������������������������������������������������������������������������� 11

Introduction to Automation Engine (AE) ����������������������������������������� 19

1.1. What Is the Automation Engine? ����������������������������������������� 21


1.1.1. Task Control��������������������������������������������������������������� 21
1.1.2. Event Handling����������������������������������������������������������� 21
1.1.3. AE System Architecture�������������������������������������������� 22
1.1.4. Several AE Systems��������������������������������������������������� 23
1.1.5. The Client Concept���������������������������������������������������� 23
1.1.6. ECC����������������������������������������������������������������������������� 23
1.1.6.1. ECC System Architecture������������������������������� 24

The UserInterface (Rich Client) ����������������������������������������������������������� 25

2.1. The Rich Client UserInterface ��������������������������������������������� 27


2.1.1. Login�������������������������������������������������������������������������� 27

11
2.1.1.1. Single Sign-On���������������������������������������������� 28
2.1.2. The Three Most Important Windows������������������������� 29
2.1.3. Setting Up Your Working Environment��������������������� 30
2.1.3.1. Suppressing Queries�������������������������������������� 30
2.1.3.2. Magnetic Windows���������������������������������������� 30
2.1.3.3. Font Sizes in the Editor and in Windows������������ 30
2.1.3.4. Multi-Desktop����������������������������������������������� 30
2.1.3.5. Filtering the Activity Window�������������������������� 31
2.1.3.6. Saving Window Settings��������������������������������� 31
2.1.4. Search Functions for Objects������������������������������������ 32
2.1.4.1. QuickAccess������������������������������������������������� 32
2.1.4.2. Search Function in the AE Explorer������������������ 32
2.1.4.3. Standard Search�������������������������������������������� 33
2.1.5. Global Statistics Search (Selective Statistics)���������� 34
2.1.5.1. Default Values for Search Criteria�������������������� 34

AE Object Orientation ������������������������������������������������������������������������������� 37

3.1. Object Orientation in AE ������������������������������������������������������� 39


3.1.1. AE short form for objects������������������������������������������ 39
3.1.2. Character Conventions for Objects��������������������������� 40
3.1.3. Naming Conventions for Objects������������������������������ 40
3.1.4. Creating objects��������������������������������������������������������� 40
3.1.4.1. Assigning a Name and Title���������������������������� 41
3.1.4.2. Duplicating Objects��������������������������������������� 41
3.1.5. Opening Objects�������������������������������������������������������� 41
3.1.6. Creating Folders�������������������������������������������������������� 42
3.1.7. Object Hierarchy and Order in this Training Course� 42

Job Object ������������������������������������������������������������������������������������������������������ 43

4.1. The Job (JOBS) ����������������������������������������������������������������������� 45


4.1.1. Operating System Job����������������������������������������������� 45
4.1.2. Application Job���������������������������������������������������������� 45
4.1.3. The Three Most Important Job Parameters�������������� 45
4.1.3.1. Selecting the Agent��������������������������������������� 46
4.1.3.2. Selecting the Login Object������������������������������ 46
4.1.3.3. Commands or Program Calls��������������������������� 47
4.1.4. Executing Tasks��������������������������������������������������������� 47
4.1.5. Information on Job Execution������������������������������������ 47

12
4.1.5.1. Job Report��������������������������������������������������� 48
4.1.5.2. Interim Job Report for Windows and Unix Jobs�� 48
4.1.5.3. Statistics Window������������������������������������������ 49
4.1.5.4. Detail Window����������������������������������������������� 50
1. Exercise �������������������������������������������������������������������������������������������������� 51
4.1.6. Further (Job) Parameters������������������������������������������ 52
4.1.6.1. The Title������������������������������������������������������ 52
4.1.6.2. Tasks Running Parallel����������������������������������� 52
4.1.6.3. Automatically Deactivate when Finished����������� 52

Login Object �������������������������������������������������������������������������������������������������� 55

5.1. The Login Object (LOGIN) ���������������������������������������������������� 57


5.1.1. Login into the Operating System/Application����������� 57
5.1.2. Changing the password��������������������������������������������� 57
5.1.3. Entering Agents Fully Qualified��������������������������������� 57
5.1.4. Entering Agents Partially Qualified �������������������������� 57
5.1.5. Entering Agents Fully and Partially Qualified����������� 58

Queue Object ������������������������������������������������������������������������������������������������ 59

6.1. The Queue (QUEUE) �������������������������������������������������������������� 61


6.1.1. Selecting a Queue Object������������������������������������������ 61
6.1.2. Function as a ‘Quantity Limiter’��������������������������������� 61
6.1.2.1. CLIENT_QUEUE as a ‘Quantity Limiter’������������� 61
6.1.2.2. General Queue Object as a ‘Quantity Limiter’����� 62
6.1.2.3. Function as a ‘Prioritizer’�������������������������������� 63
6.3.1. Possible Ways to Modify Queues������������������������������� 63
6.3.1.1. Changes to the Object����������������������������������� 63
6.3.1.2. Changes in the Activity Window���������������������� 64
6.3.1.3. Stopping One or All Queues ��������������������������� 65
6.3.2. Displaying Queues in the Activity Window �������������� 66
6.3.3. Modifying Tasks Waiting for Queue Resources��������� 66
6.3.3.1. Ignoring the Queue Limit�������������������������������� 66
6.3.3.2. Canceling ���������������������������������������������������� 66
2. Exercise ������������������������������������������������������������������������������������������������� 67

Filter Object ��������������������������������������������������������������������������������������������������� 69

7.1. The Filter (FILTER) ����������������������������������������������������������������� 71


7.1.1. Preparation for Usage in a Job���������������������������������� 71
7.1.2. Creating a Simple Filter Object��������������������������������� 71
7.1.3. Using the Filter Object����������������������������������������������� 72

13
3. Exercise ������������������������������������������������������������������������������������������������� 74

FileTransfer Object ������������������������������������������������������������������������������������ 75

8.1. The FileTransfer (JOBF) ������������������������������������������������������� 77


8.1.1. FileTransfer Properties���������������������������������������������� 77
8.1.2. The Four Most Important Parameters ��������������������� 78
8.1.2.1. Sending and Receiving Agent�������������������������� 78
8.1.2.2. Login Object������������������������������������������������� 78
8.1.2.3. From and To File�������������������������������������������� 78
8.1.2.4. Using Wildcards in File Names������������������������� 78
8.1.3. Other FileTransfer Parameters���������������������������������� 80
8.1.3.1. Code (Table)������������������������������������������������� 80
8.1.3.2. Compression������������������������������������������������� 80
8.1.3.3. Cancel on First Error�������������������������������������� 80
8.1.3.4. Erase Source������������������������������������������������� 80
8.1.3.5. Include sub-directories���������������������������������� 81
8.1.4. Special Points to Note����������������������������������������������� 81
8.1.5. Using the Output Scan����������������������������������������������� 81
4. Exercise ������������������������������������������������������������������������������������������������� 82

Workflow Object ������������������������������������������������������������������������������������������ 83

9.1. The Workflow (JOBP) ������������������������������������������������������������ 85


9.1.1. Result Relation����������������������������������������������������������� 85
9.1.2. Time relation�������������������������������������������������������������� 85
9.1.3. Creating a Simple Workflow�������������������������������������� 86
9.1.4. Search Function in the Workflow������������������������������� 86
5. Exercise ������������������������������������������������������������������������������������������������� 87
9.1.5. Object ‘Properties’����������������������������������������������������� 88
9.1.5.1. Dependencies Tab����������������������������������������� 89
9.1.5.2. Earliest Tab�������������������������������������������������� 89
9.1.5.3. Calendar Tab������������������������������������������������ 90
6. Exercise ������������������������������������������������������������������������������������������������� 91
9.1.5.4. Postconditions Tab���������������������������������������� 92
9.1.5.5. Functionality of Condition and Instruction Blocks
������������������������������������������������������������������������������������ 97

7. Exercise�������������������������������������������������������������������������������������������������� 99
9.1.6. Attributes Tab���������������������������������������������������������� 100
9.1.6.1. Selecting a Queue and Children Queue����������� 100
9.1.6.2. Result Evaluation of Individual Tasks�������������� 100
9.1.7. Sub-Workflows��������������������������������������������������������� 101

14
9.1.7.1. Advantage of Using Sub-Workflows �������������� 101
9.1.7.2. Disadvantage of Using Sub-Workflows ���������� 101
9.1.8. Monitoring Active Workflows (Best Practice)��������� 101
9.1.8.1. Stop and Stop (Recursive)���������������������������� 102
9.1.8.2. Go and Go (Recursive)��������������������������������� 102
9.1.8.3. Cancel and Cancel (Recursive)���������������������� 102

Calendar Object ����������������������������������������������������������������������������������������� 103

10.1. The Calendar (CALE) ����������������������������������������������������������� 105


10.1.1. Six Different Keyword Types ���������������������������������� 105
10.1.2. Creating a Calendar keyword���������������������������������� 106
10.1.3. Referencing Calendar Keywords in Other Calendars
�������������������������������������������������������������������������������������������������� 106
10.1.4. Using the Static Keyword Type������������������������������� 107
10.1.5. Display Formats in the CALE����������������������������������� 108
10.1.5.1. Color Display of Days in a Calendar���������������� 108
10.1.5.2. Vertical Week Display (Default)��������������������� 108
10.1.5.3. Horizontal Week Display������������������������������� 109
8. Exercise ����������������������������������������������������������������������������������������������� 110

Schedule Object ����������������������������������������������������������������������������������������� 111

11.1. The Schedule (JSCH) ���������������������������������������������������������� 113


11.1.1. Execution interval���������������������������������������������������� 113
11.1.1.1. Alternatives to a Schedule���������������������������� 113
11.1.2. Creating a Schedule������������������������������������������������� 113
11.1.2.1. Start Time�������������������������������������������������� 113
11.1.2.2. Execution Days (Calendar Tab)���������������������� 114
11.1.2.3. Result Evaluation after Execution������������������ 114
11.1.3. The Active Schedule������������������������������������������������ 114
11.1.3.1. Editing an Active Schedule��������������������������� 114
11.1.3.2. Reloading Definitions During a Period Turnaround
115
����������������������������������������������������������������������������������

11.1.3.3. Setting Comments��������������������������������������� 115


11.1.4. Changing the Period Turnaround���������������������������� 116
9. Exercise ����������������������������������������������������������������������������������������������� 117

Execution of Objects ������������������������������������������������������������������������������� 119

12.1. Immediate Execution of Objects ��������������������������������������� 121

12.2. Time-Delayed, Non-recurring Task Execution �������������� 122


12.2.1. Difference Between the Date and Logical Date������� 122

15
12.3. Recurring Execution of Objects ���������������������������������������� 123
12.3.1. Logical AND Between Tabs������������������������������������� 123
12.3.1.1. Frequency Tab�������������������������������������������� 123
12.3.1.2. Timeframe Tab�������������������������������������������� 124
12.3.1.3. Days���������������������������������������������������������� 124
12.3.1.4. Range�������������������������������������������������������� 125
12.3.2. Object Type “Period”����������������������������������������������� 125
12.3.3. Recurring Tasks in the Activity Window ���������������� 127
10. Exercise ��������������������������������������������������������������������������������������������� 128

Notification Object ����������������������������������������������������������������������������������� 129

13.1. The Notification (CALL) ������������������������������������������������������ 131


13.1.1. Using Notifications ������������������������������������������������ 131
13.1.2. Notification within the UserInterface���������������������� 131
13.1.2.1. Type "Notification" �������������������������������������� 132
13.1.2.2. Type "Request" ������������������������������������������� 132
13.1.2.3. Type "Alert" ����������������������������������������������� 132
13.1.3. Notifying Outside of the AE System������������������������ 133
13.1.3.1. Type "E-mail"���������������������������������������������� 133
13.1.4. Variable Notifications���������������������������������������������� 133
13.1.4.1. Variable Subject and Message Text���������������� 133
13.1.5. Recipients���������������������������������������������������������������� 135
13.1.6. Sending a Report Using a Notification Object�������� 136
13.1.7. Notification Usage Examples ���������������������������������� 136
13.1.7.1. Usage as a direct Dependency���������������������� 136
13.1.7.2. Usage on the “Dependencies” Tab����������������� 137
13.1.7.3. Usage on the “Postconditions” Tab���������������� 138
13.1.7.4. Miscellaneous Notification Usage������������������ 138
13.1.8. Notification Priority������������������������������������������������� 138
11. Exercise ���������������������������������������������������������������������������������������������� 140

PromptSet Object ������������������������������������������������������������������������������������� 141

14.1. The PromptSet (PRPT) ������������������������������������������������������� 143


14.1.1. Operation����������������������������������������������������������������� 143
14.1.2. Using PromptSets in Objects����������������������������������� 143
14.1.2.1. Usage in Workflows ������������������������������������ 143
14.1.2.2. Displaying PromptSets in the Properties of a Task
in a Workflow �������������������������������������������������������������� 144

Event Object ������������������������������������������������������������������������������������������������ 147

15.1. The Event (EVNT) ���������������������������������������������������������������� 149

16
15.1.1. Time Event��������������������������������������������������������������� 149
15.1.1.1. Usage�������������������������������������������������������� 149
15.1.2. File System Event���������������������������������������������������� 150
15.1.2.1. Usage�������������������������������������������������������� 150
15.1.3. Database Event�������������������������������������������������������� 151
15.1.3.1. Usage�������������������������������������������������������� 151
15.1.4. Using Events as Stand-alone Runs/within a Workflow
�������������������������������������������������������������������������������������������������� 152

12. Exercise ���������������������������������������������������������������������������������������������� 153

Include Object ��������������������������������������������������������������������������������������������� 155

16.1. Include Object as Text Component (JOBI) ��������������������� 157


16.1.1. Calling Include Objects via Automation Script������� 157
16.1.2. Usage Search for Include Objects��������������������������� 157

AgentGroup Object ���������������������������������������������������������������������������������� 159

17.1. The AgentGroup (HOSTG) ������������������������������������������������ 161


17.1.1. Use Cases����������������������������������������������������������������� 161
17.1.2. Object Creation�������������������������������������������������������� 161
17.1.2.1. Selecting Agents����������������������������������������� 162
17.1.3. Usage in Jobs����������������������������������������������������������� 162

Documentation ������������������������������������������������������������������������������������������� 163

18.1. Documentation Methods ���������������������������������������������������� 165


18.1.1. The Documentation Object (DOCU)������������������������ 165
18.1.2. Documentation on an Object’s Tab�������������������������� 165
18.1.2.1. Version Management����������������������������������� 165
18.1.2.2. Structured Documentation��������������������������� 166
18.1.2.3. Changing the Defaults��������������������������������� 166

Export and Import of Objects ������������������������������������������������������������� 167

19.1. Exporting and Importing Objects ������������������������������������� 169


19.1.1. Export����������������������������������������������������������������������� 169
19.1.2. Import����������������������������������������������������������������������� 170
19.2. Export/Import of Folders and Links ��������������������������������� 171

‘Put it all together’ ������������������������������������������������������������������������������������ 173

20.1. Practicing Entire Contents ������������������������������������������������� 175

17
18
Chapter 1
Introduction to Automation
Engine (AE)

19
Chapter 1

1.1. What Is the Automation Engine?


Automation Engine is a software application for controlling tasks and handling events.
The short form AE is used to refer to the Automation Engine in this training document.

1.1.1. Task Control


Tasks primarily refer to Jobs. A Job may consist of one or several OS commands or
several program calls. FileTransfers are also tasks. It is possible to define dependencies
between these and other AE specific tasks and control them. There are logical and time-
based dependencies. For example, Job_B may only start if Job_A has ended successfully
(logical dependency) or FileTransfer_X may only start on the last workday of a month
(time-based dependency).

1.1.2. Event Handling


Another key feature of AE is the option of reacting to events. Events include:

• Positive or negative ends of tasks executions


• Achieving particular threshold values (e.g., 1 GB available disk space)
• The arrival of a particular file

Responses include:

• Starting (alternative) tasks


• Sending SNMP traps
• Dispatching e-mails
• Internal user alerts
• Restarting tasks

21
1.1.3. AE System Architecture
An AE system consists of several components. The AE Server and the AE Database
build its core. All the information required to manage tasks is read from/written to the
database by the server. If a Job is to start on a particular operating system, the server
generates an executable Job from the Job definitions stored in the database. The op-
erating system Agent accepts the Job and passes it to the operating system. Agents
therefore serve as the connecting link between the operating system and AE server. AE
users access the AE system via the UserInterface.

Figure 1.1

The figure shows an AE system schema. A minimum AE system consists of a server,


database, Agent, and UserInterface.

22
Chapter 1

1.1.4. Several AE Systems


We recommend installing additional AE systems in order to protect your AE production
system from possible damage during testing. These additional systems may be test,
transfer, or training systems. Users may connect to just one system or to all systems at
the same time:

Figure 1.2

1.1.5. The Client Concept


AE is multi-client capable. A client is a self-contained environment within an AE system.
This allows IT providers to place their customers’ tasks (Jobs) with different clients, for
example. Doing so ensures that the individual tasks are not mixed up. An AE system
may consist of up to 9,999 clients.

1.1.6. ECC
Automic’s Enterprise Control Center (or ECC) was initially introduced as an Add-
On Feature to Automic’s Automation Engine (AE). Its main purpose is to access AE using
different, predefined perspectives, depending on the users needs, via any web browser.
This has been enhanced to provide standard AE functionality, but also perspectives for
several different AE Add-On products. The available perspectives within ECC depend on
your installed ONE Automation products and their corresponding plugins.

23
1.1.6.1. ECC System Architecture
The ECC web application itself was tested to run on Microsoft Windows or SuSE Linux
and is supposed to work on various distributions of Unix/Linux. It requires an Apache
Tomcat web server and an Oracle Java Runtime Environment (JRE). It has been tested
to run on Google Chrome, Mozilla Firefox and Microsoft Interner Explorer. The
exact specifications for this environment can be found within the ECC Installation Guide
or the corresponding ECC System Requirements brochure.
This web-based concept allows users to log on to ECC via the Web by using any com-
puter in order to monitor and control various ONE Automation processes in an easy way.
ECC is used on a computer within this structure and is connected to the different appli-
cations. The following illustration describes a network structure that includes computers
using various applications:

Figure 1.3

User 1 has logged on to ECC via the Web and starts a task (an executable object that is
going to run). Tasks are also referred to as activities. The effect is that job JOB01 starts
in the AE system “AE” and runs on the computer WIN01.
As the main focus within this training is set to the basic functions of the Automation En-
gine, these functions will be shown using the standard AE rich client UserInterface. Just
keep in mind that ECC can currently be used as well for most of the functions described
here, especially for monitoring purposes and that ECC is planned to cover all of AE‘s
UserInterface functionalities in future releases. If you are interested in more information
about ECC, just ask for the separate trainings available covering the ECC UserInterface.

24
Chapter 2
The UserInterface
(Rich Client)

25
Chapter 2

2.1. The Rich Client UserInterface


As already mentioned within the Introduction, this training will use the Rich Client User-
Interface to show the basic AE functions, although a lot of its functions are also already
covered by the ECC web client.
The UserInterface is the interface to your AE system. In the UserInterface you create,
schedule and start tasks etc. System administration also takes place in the UserInter-
face.

2.1.1. Login
You must first log in to be able to access an AE system:

Figure 2.4

1. Select the AE system to which you wish to connect from the Connection drop-
down list (see Chapter 1, Figure 1.2).
2. Enter the client in which you intend to work.
3. The user name has been provided by your system administrator. Enter it in the
field "Name".
4. In the field "Department", enter the department name provided by your admin-
istrator. If your user name exists only once within the client, it is unique and you
do not have to fill in the field "Department".
5. When you log in for the first time, your default password is ‘pass’. If an LDAP
connection has been activated, you will need to log in with your domain user
and password.
6. The languages German (D), English (E) and French (F) are available.
7. There is no functional difference between the different colors. If you establish
additional connections to other clients, these connections are also distinguished
by different colors.

27
2.1.1.1. Single Sign-On
Starting with AE V11, users can log on to their AE systems (standard UserInterface and
ECC) without having to enter login details any more. Authentication then takes place via
a Service Directory (for example: Microsoft Active Directory).
As soon as your administrator has installed and configured SSO for your environment,
your AE login screen will show 2 additional entries:

Figure 2.5

Use integrated authentication: The fields Name, Department and Password are
greyed out when you select this option:

Figure 2.6

The OS user under which the UserInterface was started is used for the authentication
process in this case, but you still can enter a different connection, client, language and
session color.
Enable autologin: With this option being activated, you will automatically be logged in
when you start the UserInterface the next time, without the login dialog being displayed
any more, except that your attempt to log on fails (for whatever reason).
Note: As soon as you select “Enable autologin”, the UserInterface will not prompt you
any more for a different AE connection or client. Thus, the option is useful if you always
have to connect to the same AE system and client. But you should avoid flagging this
option as soon as you may need to login to different systems and/or clients.
Note for administrators: The configuration and activation of Single Sign-On for AE needs
the setup of a new AE server process called JWP (Java-based Work Process) and is de-
scribed in detail within the AE Administration Guide, under “ Setting up Single Sign-On”.

28
Chapter 2

2.1.2. The Three Most Important Windows


After the first login, the UserInterface is displayed with its three most important win-
dows. The positions and sizes of the windows are preconfigured but may be adjusted
(see Setting Up Your Working Environment, ff). The Explorer, the Activity window, and
the Message window all display functions and information that you require on a regular
basis to operate the system.

Figure 2.7

AE Explorer
You can open one or several AE Explorer(s) by selecting FILE => EXPLORER.

Activity Window
You can open one or several Activity windows by selecting VIEW => ACTIVITIES.

Message Window
You open the Message window by selecting VIEW => MESSAGES. Only one Message
window may be opened per UserInterface.

You can also open the three windows using the buttons in the toolbar:

Figure 2.8

29
2.1.3. Setting Up Your Working Environment
Particular settings can be set up individually for each user. These include:
• Suppressing queries
• Magnetic windows
• Font Sizes in the editor and in windows
• Multi-Desktop
• Position and number of windows
• Filtering the Activity Window
Most of the user settings are done via OPTIONS => SETTINGS on the main menu bar:

Figure 2.9

2.1.3.1. Suppressing Queries


In many situations, AE will ask for a confirmation: "Do you really want to ...". When
starting to work, these queries are useful. The more experienced you get, the more
cumbersome these queries can become. You can turn these queries off: Select OPTIONS
=> SETTINGS => CHECK-BACK . For security reasons, some queries are activated
again when the UserInterface is restarted.

2.1.3.2. Magnetic Windows


You may have windows docking on to other windows or frames. You can determine
yourself whether and how this works: Select OPTIONS => SETTINGS => GENERAL
=> MAGNETIC WINDOWS.

2.1.3.3. Font Sizes in the Editor and in Windows


The font size and style may be predefined in the Script Editor and in the Message win-
dow. You can define your preferred font type and size via OPTIONS => SETTINGS =>
FONT SETTINGS .
TIP: The font size may also be modified temporarily in an individual window by holding
down the CTRL key and rotating the mouse wheel button. The size remains the same
until you reopen the window.

2.1.3.4. Multi-Desktop
To open a new desktop, click the large plus
icon on the lower edge of the UserInterface.
In a new desktop, you can open Activity win- Figure 2.10
dows or Explorers, for example.
TIP: You cannot drag a window from one desktop to another.

30
Chapter 2

2.1.3.5. Filtering the Activity Window


An Activity window displays a lot of information when no filters have been set. You can
find a list of all the possible information in the online help (F1). Only rarely do you need
to see all this information at a glance. For this reason, you can set filters that allow only
certain information to be displayed. You will find the Filter button on the window bar.
Click the button to open the Filter window:

Any filter criteria may be combined.


The left lower frame of the Activity
window displays the filter you have
set. The following is displayed if no
Figure 2.11
filters have been specified: ‘Filter:
/*/*/*/*/*/*’.
If you only filtered for Jobs, the entry is as follows: ‘Filter: /*/*/*/*/*/JOBS’.
TIP: You can give the filtered Activity window a title (for example, ‘Displays all active
Jobs of user John Q. Public.’

2.1.3.6. Saving Window Settings


Many windows are split into rows and columns. You can move columns by clicking them
with the mouse, holding the mouse button and draging the column to the desired posi-
tion.
Your changes will be lost when you close the particular window. To save the changes you
made to the column order, click SAVE WINDOW SETTINGS NOW on the OPTIONS menu
(Figure 2.12).
The settings will be saved in all
opened windows.
The window positions and sizes
will also be written to the AE data-
base. After saving, you can make
further changes to the windows;
however, when you log in again,
your desktop and windows will be
Figure 2.12
displayed as they were when you
saved your changes.
If you click SAVE WINDOW SETTINGS ON EXIT, all windows and window positions will
only be written to the AE database once you exit the UserInterface.
PLEASE NOTE: Saving a modified window does not affect any new windows you subse-
quently create. When a new window such as an Activity window is opened, it is always
sorted and sized according to AE default settings.
TIP: Positioning and modifying windows can sometimes be very complex and time-con-
suming. Try to save your changes straight away. If you then close a modified window by
mistake, you can exit the UserInterface and open it again. Your original window configu-
ration will be restored. This saves you having to change the window again.

31
2.1.4. Search Functions for Objects
Three search functions are available for objects within the UserInterface.

2.1.4.1. QuickAccess
The QuickAccess function allows you to search for objects and access the objects di-
rectly from the hit list. A search is carried out across all clients. The folder structure of
the objects is not relevant.

Click the QuickAccess button in the upper left


corner of the UserInterface . Enter an ob-
ject name or part of a name (no wildcards)
in the box and press Enter to confirm. You
can now open or start an object, for example,
directly from the list of results . Right-click
an object to open its respective menu. Click
the Refresh button to perform the search
again. Press the ESC key to close the results
list .

Figure 2.13

2.1.4.2. Search Function in the AE Explorer


You can also search for objects in AE Explorer. In contrast to the QuickAccess function,
this search is restricted to the folder in which it is started.

Figure 2.14

To open the search, press CTRL + F. An input field and control elements appear on the
right-hand side of the Explorer. By default, the search is conducted according to the
object name. However, you can also search for other attributes. Select the attribute you
require from the drop-down list . Enter your search string in the search field . Results
are highlighted in AE Explorer and are displayed in a results list.

32
Chapter 2

Click the Reduce button to re-


strict the objects displayed in
the folder to the ones found in
your search .

IMPORTANT NOTE: the same


search functionality is also pro-
vided within Activity and Statis-
tics windows.

Figure 2.15

2.1.4.3. Standard Search


Similar to the QuickAccess search, the Standard search is carried out across all clients;
however, it is not restricted to object names.

Open the search by clicking the Search button in


the main menu bar of the UserInterface .

Figure 2.16

In the window that opens (Figure 2.17), first select the object type if you know the type.
If you do not know the object type, select ‘All’ .

PLEASE NOTE: if you perform this search in clients that have a lot of objects, this can
have a significant negative impact on the performance of the entire AE system. There-
fore, try to use as many filters as possible in your search (be as accurate as possible).

Figure 2.17

33
You can narrow down your search further by restricting the path from where the search
begins . The selected path is displayed in the From path field . You can also manually
enter the path here. Enter the full object name or part of the name in the Name field
. You can use the question mark wildcard to represent exactly one character and the
asterisk wildcard (*) to represent any number of characters. To start the search, click
Start or press the Enter key.

You can make further selections on the Date and


Further options tabs. The tabs are linked with each
other by a logical AND. In the example, a search is
conducted for Jobs, whose Process tab contains
the dir string.

Figure 2.18

2.1.5. Global Statistics Search (Selective Statistics)


A statistics record is created in the AE database for each
task that is started in a client. The record remains in the
database until it is deleted from the database by the inter-
nal AE reorganization mechanism. You can use the Statis-
tics search to search for these statistics records.

Figure 2.19

2.1.5.1. Default Values for Search Criteria


Depending on which subitem you select in your Statistics search, certain search criteria
are already selected. For example, if you preselect the Time period item, the current
date minus one day is preset as the search period (Figure 2.20). All possible suitable
object types are automatically selected on the Objects tab (Figure 2.21).

Figure 2.20 Figure 2.21

34
Chapter 2

All relevant results are displayed in the results window. You can redefine your filters by
clicking Filter :

Figure 2.22

To export your list of results to a CSV file


(comma-separated values), press CTRL + A
to highlight all the results. Right-click the
selected records to open a menu. and then
click EXPORT TO FILE. The file will be saved
in your PC’s file system if you do not select
another location.

TIP: This method of reporting can also be


started automatically via the DB Reporting
Tool. Please check with your AE Administra-
tor.
Figure 2.23

35
36
Chapter 3
AE Object Orientation

37
Chapter 3

3.1. Object Orientation in AE


Processes handled by AE are shown as objects. An object is a predefined mask in which
it is possible to specify various parameters. These parameters may vary depending on
the task to be solved. An individual object may be created for each task. You can cre-
ate modular process chains from these individual tasks. The individual components may
also be used repeatedly and simultaneously in any combination. This concept has huge
advantages compared to non-object-oriented programming:
• Clarity - All processes have a clear structure.
• Simple maintenance procedures - Modifications can easily be assumed.
• Expandability - New requirements are easily integrated.
• Distributed operations - Complex processes may be handled in simple indi-
vidual steps.
• Reusability - Defined tasks may be integrated in various processes.

3.1.1. AE short form for objects


Each object belongs to a particular object type. A short form exists for each object type.
It is shown in many places within the system. Below is a list of all objects that are dis-
cussed in this training course:
• Job (JOBS): Determines the processing steps to be executed in a target sys-
tem.
• Login (LOGIN): Stores login data for operating systems and applications.
• Queue (QUEUE): Works as a quantity limiter or prioritizer.
• Filter (FILTER): Contains Filter definitions for the contents of reports and ex-
ternal files.
• Filetransfer (JOBF): Transfers files of any kind between two computers.
• Workflow (JOBP): Comprises objects which form a process and executes them
together.
• Calendar (CALE): Determines the days to be considered as start conditions for
the execution of tasks.
• Schedule (JSCH): Starts executable objects recurrently.
• Notification (CALL): Notifies a user.
• PromptSet (PRPT): Used in dialogs to prompt users to enter values.
• Event (EVNT): Checks conditions and triggers an Automation Script.
• Include (JOBI): Contains commonly-used processing instructions from Auto-
mation Script for shared usage by objects.
• AgentGroup (HOSTG): Combines Agents in order to execute a task on one
particular or several Agents.
• Documentation (DOCU): Administers documentation not referring to a single
object.
• Folder (FOLD): Help to keep your clients clearly arranged. Folders are also
regarded as objects.
• Period (PERIOD): holds parameters for periodical object executions.

39
3.1.2. Character Conventions for Objects
An object name can be up to 200 characters long and may comprise the following char-
acters: A-Z, 0-9, $, @, _, . # and, from V11 on, the hyphen (-). TimeZone objects are
exempted. Their names are limited to eight characters.

3.1.3. Naming Conventions for Objects


You can use an object name of your choice; however, please make sure you adhere to
the character conventions. A name may only be used once in a client. Carefully think
about your naming conventions, especially if you just have started using AE. There are
3 good reasons:

1. Based on object names, you may establish a sophisticated authorization concept. This
authorization concept may be used to handle access to objects (e.g., particular users
may only access objects which start with ‘APP01’).

2. Using Automation Script, object names can be used to set parameters for objects.

3. A certain system for object names makes it easier to find objects via the search func-
tion.

3.1.4. Creating objects


AE objects are created in the AE Explorer. The folder in which you create or store an
object is irrelevant. Click on the Explorer if it is not in the foreground. A new object may
be created in 3 ways:

1. FILE => NEW OBJECT...


2. CTRL + N shortcut
3. Explorer menu bar: NEW OBJECT...

Figure 3.24

TIP: You may create objects using the keyboard using shortcuts. A list of all shortcuts
can be found in the online help under User manual, UserInterface, Shortcuts.

40
Chapter 3

If you create a new object using one of the above-


mentioned methods, the Templates window appears
at first. Various template objects are available for
selection. A small black triangle appears in front of
some objects. This indicates that the entry compris-
es further objects. Click the triangle to expand the
entry. Select an object and click CREATE OBJECT(S)
to confirm or create an object by double-clicking it.

Figure 3.25

3.1.4.1. Assigning a Name and Title


Immediately after creating your new object,
you can change its name and give it a title.
The title is displayed in the Explorer in the
Title column. The title may be freely chosen
and could contain a brief description of the
object. Figure 3.26

3.1.4.2. Duplicating Objects


Duplicating objects is a very useful function. Duplicating objects is a very useful func-
tion. Duplicating creates a copy of the object which is identical to the original. As object
names must only occur once within a client, assign a different name for the copy. The
folder in which the copy and original are stored is irrelevant. To duplicate an object,
right-click the object, and then click DUPLICATE/LINK => DUPLICATE.

3.1.5. Opening Objects


When you select an object in the Templates window, a window opens at first in which
you can give the object a new or different name. After you have clicked OK to confirm,
the object will automatically open for editing. After you have closed an object, you can
open it again by double-clicking the object, by right-clicking the object and then clicking
EDIT, or by pressing CTRL + E.

NOTE: Entries in an object and changes made to an object take effect as soon as you
save the object.

41
3.1.6. Creating Folders
Folders (FOLD) are created by clicking FILE => NEW FOLDER or NEW FOLDER on the
Explorer menu bar. Folder names are based on the same naming conventions as objects.

3.1.7. Object Hierarchy and Order in this Training Course


AE objects have a particular hierarchy (not in the technical sense). The Schedule object
is ‘on top,’ followed by the Workflow and the Job.

During this training course, we begin at the bottom of the hierarchy with the Job. We will
first explain how something works that must be started automatically later on, before
we discuss the actual start mechanism.

42
Chapter 4
Job Object

43
Chapter 4

4.1. The Job (JOBS)


A Job is the central object of AE. There are 2 variants of Jobs:

1. Operating System Job


2. Application Job

4.1.1. Operating System Job


An Operating System Job interacts with the operating system on which an Agent is in-
stalled. Here, it may set operating system commands and start programs.

4.1.2. Application Job


The application Job interacts with applications. The most common usage is the combina-
tion of AE and SAP. Such a Job is able to execute particular tasks in the SAP system but
it cannot interact with the operating system.

Direct communication with SQL data bases or systems such as PeopleSoft or Siebel also
form part of the application Job.

In order to permanently satisfy the requirement for new interfaces for specific applica-
tions without having to create a completely new Agent each time, Automic developed RA
(Rapid Automation) Jobs. RA Jobs serve to uniformly communicate with various applica-
tions (for example, Business Objects, Mail, FTP, HyperV, Informatica, Oracle eBusiness,
VMWare, WebServices etc.).

Discussing these various interfaces would exceed the scope of this basic training course.
Application Jobs are therefore not discussed in this training course.

4.1.3. The Three Most Important Job Parameters


The most important parameters for executing a Job are:

• Host (Agent)– where something should be executed


• Login– which user (authorization) should it be executed under
• Commands/program calls + application parameterization– what exactly
should be executed

The Job does not work if there is no Host or Login. The Job is ineffective if the command
or program call is missing.

All other parameters are optional.

45
4.1.3.1. Selecting the Agent
When you create a Job, you determine
the operating system or application
on which the Job will run by selecting
the corresponding template. The Job
opens automatically as soon as you
have assigned an object name. Go to
the Attributes tab. From the Host drop-
down box, select the Agent on whose
operating system or application the
Job should run. If you know the name
of the Agent, you can also enter the
name directly in the field using the
keyboard.

Figure 4.27

If you only know parts of the Agent


name, enter the part of the name that
you are familiar with. A list of all Agents
in which the part of the name appears
will be displayed automatically. In very
long lists, this makes it easier to se-
lect the Agent. In the example, only
the letter ‘E’ was entered as the search
string. The results list contains the
hosts ‘PERL’ and ‘POWERSHELL’.

TIP: At this point we would like to draw


your attention to a particular short ex-
pression. It has become common to
say: ‘A Job runs on an Agent.’
Figure 4.28

4.1.3.2. Selecting the Login Object


Login information is stored in a Login object. For OS Jobs, it includes the OS users and
their passwords. For application Jobs, it includes the users which have been defined
within the application(s). Many AE customers have specified technical users for Job
executions, for whom particular rights and prohibitions have been defined. Select the
Login object provided for Job execution. Login objects are subject to the assignment of
user rights within the AE client. You may be able to select a particular Login object but
it may not be possible to start the Job because you do not have the authorization.

TIP: If you have the right to edit a Login object, you may open it by right-clicking the
entry in the drop-down box.

For more information on Login objects, please see “Login Object” page 55ff.

46
Chapter 4

4.1.3.3. Commands or Program Calls


You enter commands or program calls on the Process tab. This is what we then will re-
fer to as JCL (JobControlLanguage) during this training. The following table lists some
simple commands:

Windows Unix
dir ls
echo test echo test
ping 127.0.0.1 ping -c 4 127.0.0.1
net start sleep 5

NOTE: This training material discusses Windows and Unix/Linux Jobs as all AE custom-
ers have an Agent for at least one of these two operating systems. This Agent is the AE
Server Agent.

4.1.4. Executing Tasks


After you have parameterized and stored a Job (SAVE menu item), it is ready to be exe-
cuted. If the Job is still open, you can start it by clicking EXECUTE on the Job’s menu bar.
If the Job has already been closed, highlight it in the AE Explorer and press CTRL + E
or right-click the Job and then click EXECUTE.

TIP: You do not have to close an object to be able to execute it. Simply leave it open if
you want to edit it further.

4.1.5. Information on Job Execution


After a Job has been executed, its report and some other
information is available (by default) in the AE Database.
This information is available to all AE users in a particu-
lar client. The only requirement is that the user has the
right to view the information. If the user is not autho-
rized, the window shown on the right appears:
Figure 4.29

You can access the Job report described below and the Statistics window directly from
the Job’s menu bar, provided the Job is still open. If the Job is no longer open, highlight
the Job in the Explorer. The LAST REPORT and STATISTICS menu items are also avail-
able on the Explorer menu bar.

You can access the Detail window described under “4.1.5.4. Detail Window” page 50
via the previously opened Statistics window only.

Figure 4.30

47
4.1.5.1. Job Report
A Job report contains the information returned by the operating system or application.
If a Job is still open, you will be able to see the LAST REPORT button. If the object has
already been closed, this pushbutton is available in the AE Explorer’s menu item if you
click the object in the AE Explorer. The following example shows a Windows Job report:

Figure 4.31

TIP: It is possible to search automatically for specific messages in this and other reports.
The Filter object is used for this.

Please note that a Job may have multiple Report tabs. The Report tab displays the actual
Job report after a Job has ended on the target system. If a Job has not ended yet, you
can view an interim Job report via the Directory tab.

4.1.5.2. Interim Job Report for Windows and Unix Jobs


If a Job has not ended yet on the target system, you can open an incomplete Job report
in the Directory tab (only for Windows and Unix Jobs). The report is transferred to the
.\UserInterface\temp\downloads\ directory on your computer.

Highlight the report as shown in Figure 4.32 page 49 by right-clicking the report and
then click OPEN. The report will open in your standard editor.

48
Chapter 4

Figure 4.32

You can specify how many lines will be displayed by clicking OPEN AS TEXT. This is use-
ful for very large reports as only the requested lines are transferred from the Agent to
the UserInterface file system. If the re-
quested report is larger than 10 MB, the
following message appears (Figure
4.33):

PLEASE NOTE: All reports that you open


via the Directory tab are stored in the
UserInterface file system. They remain Figure 4.33
there until they are (manually) deleted.

4.1.5.3. Statistics Window


The Statistics window contains information on the task’s individual Job executions. The
entries are sorted according to the time they were activated. You can change the order
by clicking the respective column title. This changes the sorting sequence:

TIP: If a Statistics window contains exactly 50 entries, this is most probably due to a
setting made in your UserInterface. You can change this value: Menu bar OPTIONS =>
SETTINGS => STATISTICS tab.

Figure 4.34

Figure 4.35

49
4.1.5.4. Detail Window
You can access the Detail window via the Statistics window only (see Figure 4.34).
Highlight the statistics record whose Detail window you want to open and click DETAILS
on the menu bar. Alternatively, you can also double-click the statistics record. The Detail
window is especially helpful if error messages have been returned. It provides informa-
tion that can only be found here or in the Message window:

Figure 4.36

TIP: You can copy values or information from the Detail window to the clipboard by
highlighting the relevant information with the mouse and pressing CTRL + C. This also
applies to many other windows in which the COPY menu item is not available (for ex-
ample, the Message window).

50
Chapter 4

1. Exercise
Duration approx. 20 minutes

The following applies to all tasks: Execute the Jobs several times. Read
the corresponding reports, statistics and details for the execution. Fa-
miliarize yourself with how Jobs are handled.

1. Task:
Create four Jobs. Select the commands from the following table:

Windows Unix
dir ls
echo test echo test
ping 127.0.0.1 ping -c 4 127.0.0.1
net start sleep 5

2. Task
Create one Job where all 4 commands from task 1 are executed one
after the other and check the results.

3. Task:
Add an incorrect command like "eco error" as the first command to the
Job from task 2. What is different in the results? Move the incorrect
command to the end of the commands. What is different now?

51
4.1.6. Further (Job) Parameters
The following parameters are optional. They are also available in FileTransfer and Work-
flow objects:

Header tab: Title


Attributes tab: Tasks running parallel and
Attributes tab: Automatically deactivate when finished

4.1.6.1. The Title


All objects include a Header
tab. Here you can provide a
brief description of the object
if the object name is not de-
scriptive enough. The title is
displayed in the Explorer.

TIP: Press the F5 key if the


Figure 4.37
object title is not displayed
after the object has been
closed. This forces the win-
dow to be refreshed. This
also applies to other windows.

4.1.6.2. Tasks Running Parallel


You can specify whether execut-
able objects such as a Job may
run in parallel. A typical exam-
ple of a task that must not run
twice at the same time is a data-
base update. Set the value from
0 to 1 in such a case. The value
Figure 4.38
zero means that the particular
task may run parallel as often
as required. Value 1 means that
it cannot be started twice. It may only be active once.

4.1.6.3. Automatically Deactivate when Finished


In practice, it is often the case that ‘er-
ror-free runs,’ i.e., tasks that ran with-
out any errors, are not particularly in-
teresting to monitor in the beginning.
It is normally the ‘erroneous runs’ that
are most interesting.

Figure 4.39

52
Chapter 4

The quickest way to find erroneous runs after they were executed with errors is to keep
them in the Activity window. They will remain there until they are deactivated. Deactiva-
tion only removes entries from the Activity window but does not delete them from the
database.

You specify whether and under what conditions Jobs are kept in the Activity window as
follows:

• No: ‘Error-free runs’ and ‘erroneous runs’ remain in the Activity window. You
must deactivate these manually. This setting can be useful for debugging pur-
poses. However, it should not be the default setting.
• After error-free execution: ‘Error-free runs’ are automatically deleted from the
Activity window. ‘Erroneous runs’ remain in the Activity window and must always
be deactivated manually. This setting can be combined with the Error-free status
and Time delay.
• After an error-free restart: ‘Error-free runs’ are automatically deleted from the
Activity window. ‘Erroneous runs’ remain in the Activity window until the restart
has been completed successfully. If the restart is not successful, the entries must
always be deactivated manually. This setting can be combined with the Error-
free status and Time delay.
• Always: ‘Error-free runs’ and ‘erroneous runs’ are always automatically deleted
from the Activity window. This setting can be combined with the Time delay.

The example in Figure 4.39 shows how the individual parameters can be combined.
After error-free execution, the Job is automatically removed from the Activity window
after a time delay of a day (1440 mins = 24 hours). To be ‘error-free’, the Job must have
been assigned the ENDED_OK status.

TIP: The maximum value of tasks that can be displayed in the Activity window is 20,000
(default: 5,000). If this value is exceeded in an Activity window, it remains empty and
a message is displayed at the lower edge of the Activity window indicating that the limit
has been exceeded. In such cases, you need to filter the Activity window (see “2.1.3.5.
Filtering the Activity Window” page 31), so that the records that you are interested
in appear again. Please also remember to deactivate records that you no longer need.

TIP: If you deselect ‘Always’, no ‘error-free runs’ or ‘er-


roneous runs’ will remain in the Activity window. How-
ever, you can still obtain an overview of the erroneous
runs using the statistics search, which you can access
from the upper menu bar in the UserInterface (see
“2.1.5. Global Statistics Search (Selective Statistics)”
page 34).

Figure 4.40

53
54
Chapter 5
Login Object

55
Chapter 5

5.1. The Login Object (LOGIN)


As described in Chapter 4, a Login object is required for Job executions, among other
things.

For many AE customers, the Login object is an administrative object that may be cre-
ated and edited by only a few users.

5.1.1. Login into the Operating System/Application


The AE server reads login information from the Login object when it generates a Job.
This information is then transferred to the Agent together with the JCL. The Agent
subsequently logs into the operating system/application. The Job is only passed to the
operating system/application if the login was successful.

5.1.2. Changing the password


Changing the OS or application password requires that this modification also made in
the Login object.

5.1.3. Entering Agents Fully Qualified


Individual Agents can be selected from the drop-down box in the Host column. The AE
server automatically enters the corresponding operating system. The Login info and
Password must be entered carefully by the user. Detailed information about the input
format of the parameters used in the individual operating systems is provided in the
online help.

Figure 5.41

5.1.4. Entering Agents Partially Qualified


Instead of selecting a particular Agent, you may also use the wildcard character (*) as
a place holder for any Agent. You must then specify the operating system yourself. In
the example shown below (Figure 5.42 page 58), each Windows Job that uses the
‘LOGIN.TRAINING’ Login object will be executed under the ‘SBB01\cr’ user account, re-
gardless of the Windows Agent specified in the Job.

57
This is useful if, for example, there is a technical user for all computers of the same op-
erating system. In this case, the same Login object can always be entered in the Jobs
for the purpose of Job execution.

Figure 5.42

5.1.5. Entering Agents Fully and Partially Qualified


The following applies if the Host/Agent of a Login object was entered fully and partially
qualified:

• The Login information of the fully qualified entry is used if an Agent which has
been fully qualified in the Login object is used in a Job.

• The Login information of the partially qualified entry is used if an Agent that has
been partially qualified in the Login object is used in a Job.

Figure 5.43

58
Chapter 6
Queue Object

59
Chapter 6

6.1. The Queue (QUEUE)


A Queue object is a mechanism that

• limits the number of tasks that can start (‘quantity limiter’) and
• controls the processing sequence of tasks that are waiting in different Queues
(‘prioritizer’).

All executable objects (Jobs, FileTransfers, Workflows, and so on) must be allocated to
a Queue.

6.1.1. Selecting a Queue Object


When you create a new executable
object, it is already allocated to the
CLIENT_QUEUE. You can change
this allocation by selecting another
Queue. To do this, go to the Attri-
butes tab and select a Queue from
the Queue field.

TIP: Your AE system may not (yet)


have a Queue concept. In this case,
use the CLIENT_QUEUE. If a con-
cept is implemented at a later date,
you can carry out a mass replace
in the UserInterface to replace
the CLIENT_QUEUE with another
Queue of your choice. Figure 6.44

6.1.2. Function as a ‘Quantity Limiter’


Queues can be used to limit the number of tasks to be started or set the number to zero.
The limit can be restricted to a specific date or date range and/or have a timeframe.

6.1.2.1. CLIENT_QUEUE as a ‘Quantity Limiter’


The CLIENT_QUEUE only recognizes the ‘All tasks
may be started’ and ‘No tasks may be started’
states. It is also not possible to define a time/
date window for a task limit. The CLIENT_QUEUE
is therefore of limited use as a ‘quantity limiter.’
The only parameter that you can set in the CLI-
ENT_QUEUE is the Priority.

Figure 6.45

61
6.1.2.2. General Queue Object as a ‘Quantity Limiter’
Unlike the CLIENT_QUEUE, all other Queue objects
allow you to set the number of tasks that may be
started (Slots). By default, the value is unlimited,
that is, the Max. Slots check box has not been se-
lected. If you set the value to 1, the Queue will only
allow one active task. Please note that a process that
is permanently active, such as an Event, will occupy
this one slot permanently. This means that no other
task using the same Queue will be able to start.

Using exceptions: You can also specify a timeframe


Figure 6.46
in a Queue object that has a different number of slots
available than outside of the timeframe. This makes
it possible to take established maintenance windows
into consideration, for example. Tasks that may not be started within a particular main-
tenance window are allocated to the respective Queue. Calendars can also be used
here to ensure, for example, that no task is started via the Queue on Holidays between
10 p.m. and 11 p.m. In the example (Figure 6.47), the number of slots is limited to 500.
However, on Holidays from 10 p.m. to 11 p.m., the free slots are set to zero. During this
time, no tasks that are allocated to this Queue will be started.

Figure 6.47

A Queue with zero free slots is displayed with a yel-


low dot in the Activity window:

PLEASE NOTE: The exceptions described above can


only be applied if the Max. Slots check box has been
selected under Default settings (see Figure 6.43).

Figure 6.48

62
Chapter 6

6.1.2.3. Function as a ‘Prioritizer’


The three basic conditions listed below must be met to allow Queue objects to control
priorities.

1. At least two Queue objects exist in the client.


2. The priorities that have been set for the individual Queue objects differ.
3. The tasks allocated to the Queue objects are in a wait state, for example, WAITING
FOR SYNC or WAITING FOR RESOURCE.

HERE’S AN EXAMPLE: The number of tasks that an Agent accepts can be limited to one,
for example, by the AE Administrator. If Jobs that are allocated to different Queues are
now started on this limited Agent, those Jobs whose Queue object has a lower priority
value are prioritized. The priorities range from 1 (highest priority) to 255 (lowest prior-
ity).

PLEASE NOTE: If one of the conditions specified above is not met, setting or changing
the priority in a Queue object will have no influence on the order in which tasks are
executed.

6.3.1. Possible Ways to Modify Queues


There are two ways to change Queue objects while AE is running:

6.3.1.1. Changes to the Object


You can open a Queue object in the Explorer and change its individual parameters. Modi-
fications are applied immediately, however, only for tasks that are still active.

EXAMPLE: The number of free slots in a Queue object is currently set to 2. In the Activity
window, there are two tasks with the ACTIVE status and a further task with the WAIT-
ING FOR QUEUE SLOT status.

Figure 6.49

The number of free slots in the Queue object is subsequently increased to 3. A third task
may occupy the third slot that is now available. It is assigned the ACTIVE status.

Figure 6.50

63
6.3.1.2. Changes in the Activity Window
You can also change a Queue object in the Activity window (Edit object). These changes
are permanent (just like those made using the Explorer)!

Right-click the Queue and then click MODIFY to make temporary modifications:

Figure 6.51

In the example, the number of slots is increased to 3. The task that has been waiting
immediately occupies the additional third slot:

Figure 6.52

PLEASE NOTE: Changes made in the Activity window under the MODIFY menu item ap-
ply until a further change is made in the Activity window or in the object definition, or
until the next automatic modification by an Exception (see Figure 6.47).

You can find out which AE user changed the settings for a Queue in the Activity window
by reading the Queue’s report.

64
Chapter 6

6.3.1.3. Stopping One or All Queues


When you stop a Queue, tasks that are associated with the particular Queue are not
started.

To stop an individual Queue, right-click the Queue


in the Activity window and then click STOP (Figure
6.53).

PLEASE NOTE that Jobs that are currently active will


not be stopped or paused.

Other types of objects such as Workflows (see the


next chapter) will be stopped. They are then as-
signed the STOP – QUEUE PROCESSING HAS BEEN
STOPPED status in the Activity window. If tasks are
started after a Queue has been stopped, they are
assigned the WAITING FOR QUEUE SLOT status Figure 6.53
even if there are enough free slots:

Figure 6.54

To stop all Queues in a


single step, click CLI-
ENT STOP on the Sys-
tem menu in the User-
Interface.

This allows you to ‘ap-


ply the emergency
brake,’ as from now on
Figure 6.55
the server will not start
any more tasks.

You can set individual Queues to GO again in the Activity


window so that at least individual tasks (generally Jobs)
can be executed until the client restarts. Workflows and
Events, for example, retain the STOP - CLIENT-WIDE
STOP OF AUTOMATIC PROCESSING status.

Figure 6.56

65
6.3.2. Displaying Queues in the Activity Window
Click the Queue
root entry in
the Activity
window to see
the activities of
all the Queues:

Figure 6.57

Click on a spe-
cific Queue to
only display the
activities for
this particular
Queue.

Figure 6.58

6.3.3. Modifying Tasks Waiting for Queue Resources


Tasks that are waiting for a Queue can be modified in two ways in the Activity window.

6.3.3.1. Ignoring the Queue Limit


Here, the server is instructed to ignore the Queue limit and therefore the limit on slots
when executing the selected task. The task(s) start straight away.

Figure 6.59

6.3.3.2. Canceling
As shown in Figure 6.59, you can also cancel a task that is waiting (click CANCEL). The
task will then have the ENDED_CANCEL – MANUALLY CANCELLED status in the statistics.

66
Chapter 6

2. Exercise
Duration approx. 10 minutes

The aim of this training course is not to teach you how to create Queue
objects, but rather to show you how to use them. For this reason, each
participant is provided with a predefined Queue object.

1. Use the QUEUE.SCHOOL.XX Queue in two of your Jobs, preferably


Unix Jobs with a sleep 30 instruction. Start both Jobs. Ensure that the
Job that is waiting becomes active by ignoring the Queue limit.

2. Modify your Queue object so that it has five slots.

3. Check the current Queue settings in the Queue’s report.

67
68
Chapter 7
Filter Object

69
Chapter 7

7.1. The Filter (FILTER)


A Filter object stores stings that can be searched for in particular reports and/or files.
Searching can take place in reports and files at the same time. Objects whose reports
may be searched are:

• Job
• FileTransfer
• RemoteTaskManager

It is possible to search all text-based files such as:

• txt
• doc
• csv

7.1.1. Preparation for Usage in a Job


Before you can use the Filter object, you must enter it in the Job’s Output Scan tab. By
default, this tab is not visible. To make the tab appear, click the plus sign and then click
Output Scan:

Figure 7.60

7.1.2. Creating a Simple Filter Object


We pointed out at the beginning that a Filter object can search
for strings in reports and files. During this training course, we will
only search reports.

After you have created your Filter object, click the <blank> field
and select the report type that you want to scan from the drop-
down list. Select REP to search a Job’s operating system report.

PLEASE NOTE: If you select a report type that does not exist for
the execution of a task, for example, PLOG (Agent log), the AE
server will set the task to the FAULT_POST_PROCESSING status.

Figure 7.61

71
After you have selected the report type, click the <blank> field
and specify whether the search string should appear in the report
(contains) or should not appear (does not contain).

Figure 7.62

Enter your search string in the empty field (in this case:
‘not found’).

Figure 7.63

If you want to search for additional strings, click the plus sign at the end of the line.
Here, it is important to note how search strings are related to each other:

• AND relation: All search strings must occur in a report


• OR relation: At least one search string must occur in a report

7.1.3. Using the Filter Object


After you have saved your Filter object, you can select it from the drop-down box on
the Job’s Output Scan tab. This list includes all the client’s Filter objects. Please bear in
mind how important it is to use a naming convention for objects.

In your Filter object, you made an ‘assertion’ (i.e., ‘the report contains/does not contain
xyz’). In the output scan, this assertion is now combined with a condition.

This goes as follows:

• If the assertion that was made in the Filter object is true (or false), then
change the return code of the task (and execute an object).

In the True/False column, specify whether the assertion made is true or false. In the
Set return code column, enter the return code that will be set for the Job if the asser-
tion is true. In the Execute column, you can specify an optional object that should be
executed in addition to the return code modification. This could be a so-called Notifica-
tion object, for example.

Figure 7.64

72
Chapter 7

Here is the condition under which a Job’s return code is set to 5 once again in text form:

• If it is ‘true’ that the Job’s report contains the search string specified in the Filter
object, set the Job’s return code to 5.

• Or, to put it more simply, if ‘not found’ occurs in the Job report, the Job will end
with return code 5.

NOTE: If you specify the same Job under Execute, you will end up with a loop. There will
be no warning from the system. So be careful when you select objects.

The Output Scan generates its own Output Scan tab in a Job report:

Figure 7.65

73
3. Exercise

Duration approx. 45 minutes

1. Task:
Have a Job report searched for a particular string. When the search
string has been found, set the Job's return code to 3.

Example: ‘ERROR’ is available in the Job report and the return code is
set to 3.

2. Task:
You wait for a particular ‘trigger word’ in an application. If this does not
appear in the Job report, the Job should end with return code 7.

For example: ‘Trigger word’ is not found in the Job report, return code
is set to 7.

3. Task:
The word ‘Test’ must occur in a Job report and the word ‘error’ should
not appear. If one of these conditions cannot be met, the Job should
end with return code 10.

TIP: Under Windows and Unix, you can use the echo command to generate any output
of your choice in a Job report (for example, ‘echo test’).

74
Chapter 8
FileTransfer Object

75
Chapter 8

8.1. The FileTransfer (JOBF)


The AE FileTransfer, also referred to as Managed FileTransfer, allows files to be ex-
changed between different operating systems, in addition to many other functions. The
FileTransfer is a proprietary product that was developed by Automic Software and is in-
cluded in the installation package. Two Agents are required for a Managed FileTransfer.
However, in this case, an active FTP server is not required.

8.1.1. FileTransfer Properties


An AE FileTransfer features the following:

• Encryption during transfer with max. AES 256 is possible


• The record length of text files to be transferred can be up to 4 GB
• Aborted transfers can be restarted at the restart point under Windows and Unix
• MD5 checksum check
• Option to transfer as Unicode files in UTF 8, UCS 2BE or UCS 2LE format
• A target directory is created if it does not exist at the time of transfer

Figure 8.66

77
8.1.2. The Four Most Important Parameters
The four most important FileTransfer parameters are:

• Sending and Receiving Agent


• Login Object
• From and To File
• Using Wildcards

8.1.2.1. Sending and Receiving Agent


In the From host field, select the Agent that should send the file. In the To host field,
select the Agent that should receive the file. <OPERATING SYSTEM> is simply a place-
holder for an Agent.

8.1.2.2. Login Object


Similar to a Job object, a FileTransfer requires the indication of a Login object. The Fi-
leTransfer is then processed with the authorizations of the user specified in the Login
object. The FileTransfer is canceled if the user does not have sufficient rights.

NOTE: In some cases, a FileTransfer can still be executed even if a Login object has not
been specified. An AE privilege makes this possible. In this case, files are processed with
the rights of the user who started the Agent.

8.1.2.3. From and To File


From and To files must be specified with their directory/identifier. Wildcards may only
be used in the file name.

8.1.2.4. Using Wildcards in File Names


Wildcard characters are only permitted
in file names. A star character (*) rep-
resents any number of characters and Figure 8.67
a question mark (?) represents exactly
one character. Regular expressions can-
not be used. If you intend to use wildcard characters, you must select the Use wildcards
checkbox. If one or several wildcards are used in From file, you must also specify one
or several stars (*) in To file .

When specifying the destination file, you can use the star character (*) as often as you
want. This represents the entire variable part of the source specification, beginning with
the first (? or *) and ending with the last wildcard character (? or *).

In addition, up to nine placeholders can be used when specifying the destination file.
These refer to a specific wildcard character (?, *) in the source file name. These place-
holders are composed of the & character and the numbers 1 to 9: &1, &2, &3... &9. The
number indicates which wildcard in the source specification is referred to (see examples
6, 7, and 8 on the following pages).

78
Chapter 8

NOTE: If you do not specify a path in From file but only include a star (*), and you select
Use wildcards and Include sub-directories, the system will search for every file starting
in the root directory. When combined with Erase source file, this will result in a vast
quantity of files being transferred and deleted.

Here are some examples of how to create file names with wildcards. Here we assume
that the file ABC123YXZ.txt exists:

EXAMPLE 1:
Search filter ABC1 * XYZ.txt
Hit ABC123XYZ.txt
Pattern for generating the new file name PPP *.ini
Name of the new file after the transfer PPP23.ini

EXAMPLE 2:
Search filter ABC1 * XYZ.txt
Hit ABC123XYZ.txt
Pattern for generating the new file name *_ZZZ_*
Name of the new file after the transfer 23_ZZZ_23

EXAMPLE 3:
Search filter A * 2 * .txt
Hit ABC123XYZ.txt
Pattern for generating the new file name * .ini
Name of the new file after the transfer BC123XYZ.ini

EXAMPLE 4:
Search filter A *12* Y *.txt
Hit ABC123XYZ.txt
Pattern for generating the new file name * .ini
Name of the new file after the transfer BC123XYZ.ini

EXAMPLE 5:
Search filter A*BC12*Y*.txt
Hit ABC123XYZ.txt
Pattern for generating the new file name * .ini
Name of the new file after the transfer BC123XYZ.ini

EXAMPLE 6:
Search filter A*123X*.txt
Hit ABC123XYZ.txt
Pattern for generating the new file name &1_GGG_&2.ini
Name of the new file after the transfer BC_GGG_YZ.ini

79
EXAMPLE 7:
Search filter A*123X*.txt
Hit ABC123XYZ.txt
Pattern for generating the new file name &2_GGG_&1.ini
Name of the new file after the transfer YZ_GGG_BC.ini

EXAMPLE 8:
Search filter ???.txt
Hit AE_.txt
Pattern for generating the new file name &3&2&1.txt
Name of the new file after the transfer _EA.txt

8.1.3. Other FileTransfer Parameters


As in Jobs, the FileTransfer also has additional parameters which are relevant but op-
tional. Some of these parameters were discussed when we looked at the Job object, and
will therefore not be repeated here. These are Title, Tasks running parallel and Auto-
matically deactivate when finished.

The meaning of the parameters Code, Compression, Delete source and ­Include sub-
directories which are available in the Attributes tab will be explained below.

8.1.3.1. Code (Table)


The Administrator assigns a Code table to each Agent appropriate to the operating sys-
tem and the character set in use. If character conversion problems arise with the as-
signed code tables, all you need to do is enter a code table in the CODE field.

8.1.3.2. Compression
Compression is disabled by default (Default value). If a 10 Mbit line (or less) is used,
compression can help save time when transferring files, as transfers will be faster. On
the other hand, you must bear in mind that you will need time to compress and decom-
press your files.

8.1.3.3. Cancel on First Error


If this flag is set for a partially qualified FileTransfer, the FileTransfer will be canceled with
the ENDED_NOT_OK status as soon as the first erroneous transfer takes place.

8.1.3.4. Erase Source


With this flag being set, the source file will be deleted whenever a file has successfully
been transferred.

80
Chapter 8

8.1.3.5. Include sub-directories


If sub-directories are included in your search and files are found in these sub-directo-
ries, an identical directory structure will be generated on the target system and the files
that were found will be transferred to this directory structure. This will only work on
operating systems that recognize directory structures.

8.1.4. Special Points to Note


• If a fully qualified FileTransfer does not find any files to transfer (without the use
of wildcards), it is assigned the ENDED_NOT_OK status.
• If no files are found for a partially qualified FileTransfer, it ends with the ENDED_
EMPTY status. If no files are found, AE does not view this as an error. Refer to
the next section to learn more about possible responses.

8.1.5. Using the Output Scan


If a partially qualified FileTransfer does not find any files, it will still obtain a positive
status (return code). It may be necessary to change this status to a negative one. You
can use the Output Scan to subsequently change the status.
To do this, you must create a Filter object that searches for the ‘U00011133’ string in
the FileTransfer’s report. This number is an internal AE message number indicating that
a file was transferred successfully. Starting with V11, this is an 8 character message
number; in earlier versions, message numbers were only 7 characters long and you had
to search for ‘U0011133’ instead.
The following is displayed in the Filter object:

Figure 8.68

The following entry is shown in the FileTransfer's Output Scan:

Figure 8.69

81
4. Exercise

Time required: approx. 30 minutes

1. Task:
Create a fully qualified FileTransfer which transfers one file of your
choice.

2. Task:
Create a partially qualified FileTransfer which transfers several files.
You may ask the trainer for some files.

3. Task:
Create a partially qualified FileTransfer that should transfer files with
the D2VH*.zxb name pattern. In this task, we assume that the FileT-
ransfer does not find any files.

Your task: Change the FileTransfer’s return code to 14 if no files have


been transferred. Use a Filter object for this.

82
Chapter 9
Workflow Object

83
Chapter 9

9.1. The Workflow (JOBP)


The Workflow is a further object (as is the Job) which is used by each AE customer.
Although there are different types of Workflow objects available from V9 on (Standard,
Foreach, If), this training deals with the Standard type only. Various tasks may be com-
bined in a Workflow. Different relationships can be defined between tasks. These can be
divided into two main groups:

1. Result Relation
2. Time Relation

Figure 9.70

9.1.1. Result Relation


The simplest result relation is: Task_B may start as soon as Task_A has ended, regard-
less of the status delivered by Task_A. This simple relation is the only relation that is
predefined when a Workflow is created. This causes some confustion because it seems
not to correspond to the practical needs of customers. However, what is needed in prac-
tice varies greatly from case to case and from customer to customer. For this reason, AE
does not set any guidelines for this. Of course, result relations can be made as complex
as required.

9.1.2. Time relation


A time relation may be defined time or date dependent. Calendar objects are used for
date dependencies. These are described in a later chapter. The ‘Earliest Start time’ for
a task within a Workflow is defined via a respective property. The start time and date
for an automated Workflow start are not defined in the Workflow itself but in a Schedule
object, for example.

85
9.1.3. Creating a Simple Workflow
Open your Workflow and insert one or sev-
eral objects by dragging them from the AE
Explorer to the Workflow tab.

The first simple relation is established once


you use the line tool to connect the objects
(JOB_B may start, when JOB_A has fin-
ished). Further relations may now be de-
fined between the objects.
Figure 9.71
TIP: Once objects have been connected
by lines, they can be repositioned without
changing their process order.

9.1.4. Search Function in the Workflow


It can be difficult to find tasks in large Workflows. To make it easier to find tasks, you
can use the Workflow search function. On your open Workflow tab, press CTRL + F. En-
ter the full object name or part of the name in the blank field. All the results appear in
the drop-down list. The objects that have been found are also highlighted in the Work-
flow. Please note that the task numbers in round brackets are also part of the names:

Figure 9.72

86
Chapter 9

5. Exercise
Duration approx. 15 minutes

Create a simple
Workflow with three
Jobs and set them
up as shown.

Familiarize yourself
with the line tool
(create, delete, and
reposition lines).

Figure 9.73

87
9.1.5. Object ‘Properties’
In an object, click the
square symbol shown in
Figure 9.74. The Prop-
erties window opens in
which you can set prop-
erties for this object.

The properties always re-


late to this object in this Figure 9.74
Workflow. If the object is
used within this Workflow again or in another Workflow, other properties may be as-
signed.

The Properties window has the following tabs:

Figure 9.75

To display the properties that have been


defined for a particular task, move the
mouse over the task. A tooltip display-
ing the properties pops up automati-
cally.

Figure 9.76

NOTE: You cannot specify which tab is displayed when you open the Properties window,
as the Dependencies tab is always active.

88
Chapter 9

9.1.5.1. Dependencies Tab


The settings on the Dependencies tab are the ones that are used most often (Figure
9.77). In the Status column , you can specify which (AE) status you expect from the
preceding task’s execution. Click in the column and select the status that you expect
from the drop-down list that opens. This will usually be a ‘positive’ status. The number
shown in brackets indicates which preceding task is referenced . This number is also
shown in the Workflow view . In the Else section, you can specify the response that
should be initiated if the defined status is not reached:

Figure 9.77

What is important to know when selecting the status?


EXAMPLE: You want to block a Workflow if a preceding Job does not run correctly and
therefore set the expected status to ENDED_OK,and select ‘Block’ in the Else section.
If a Job ends with a return code that exceeds 0, the AE Server assigns the ENDED_
NOT_OK status to the Job and the Workflow is blocked, as expected. In this case, the
Workflow will be blocked. A Job obtains the status ENDED_INACTIVE if it did not start
due to a Calendar Condition. Whether or not these responses are suitable depends, of
course, on the individual case. It may be useful to combine both statuses here (END-
ED_OK_OR_INACTIVE).
TIP: A list of all statuses defined in AE is available in the online help under: ‘System
Return Codes of Executable Objects’

9.1.5.2. Earliest Tab


If a task should start no earlier than 9 p.m., enter
this time in the Earliest tab. If a preceding task
has not finished by 9 p.m., the task will start later.

Figure 9.78

89
9.1.5.3. Calendar Tab
Let us assume that a Workflow is started every day by a start mechanism that we are not
yet familiar with. A particular Job, however, should only run on Saturdays and Sundays.
Solution: Go to the Calendar tab and select a proper Calendar object and corresponding
Keyword (the Calendar object will be discussed within the next chapter).

Using the Radio Buttons

Execute if one condition matches


: If (one or) more Calendars have
been specified, a logical OR (dis-
junction) exists between the key-
words. Either the highlighted days
of one Calendar or the other or both
apply. If none apply, nothing is ex-
ecuted.

Execute if no condition matches :


If one or more Calendars have been
specified, a task will only be exe-
cuted if ‘today’ has not been high-
lighted in all the keywords.

Execute when all conditions match


Figure 9.79
: If several Calendars have been
specified, a logical AND (conjunc-
tion) exists between the keywords For a task to be executed, ‘today’ must have been
highlighted in all the keywords.

When using Calendars, PLEASE NOTE that the Calendar Condition, as shown here, will
be checked as soon as the Workflow starts. Let us assume that Job_A and Job_B are or-
dered one after the other in a Workflow. Job_A has a runtime of three hours, for Job_B,
the Calendar Condition ‘Every Tuesday’ applies. If the Workflow starts on Monday at
11 p.m., Job_B’s Calendar Condition will still be checked on Monday and the system will
establish that the Job is not allowed to start on Mondays. Due to Job_A’s long runtime,
Job_B would not actually be executed until Tuesday. Despite this, Job_B will not start on
Tuesday because its Calendar Condition has already been checked.

TIP: In such a situation, either use Sub-Workflows or Automation Script.

TIP: Even if you have not yet defined any Calendars in a client, the Calendar list will still
contain some Calendars. These are Calendar templates from the system client (client
0).

90
Chapter 9

6. Exercise
Duration approx. 15 minutes

Specify the follow-


ing properties in the
Workflow from Exer-
cise 5:

• Task starts at 7 a.m. at


the earliest.
• Task may only start if
task ended with ENDED_
OK. Otherwise it should
block. Figure 9.80
• Task should only be in-
cluded on German public
holidays.

91
9.1.5.4. Postconditions Tab

The Dependencies tab is used, among other things, to check the results of preceding
tasks. The Postconditions tab described below is used to formulate conditions that are
checked after a task has been executed. Preconditions work the same way (and there-
fore will not be mentioned separately), but they are used to formulate conditions that
are checked before a task is being executed.

The Postconditions tab is split into two parts: On the right, you will find a list of Condi-
tions or Instructions (depending on which category has been chosen). You can drag any
condition or instruction into the empty space on the left, as required.

The following step-by-step instructions show you how you can implement the follow-
ing requirement:

The expected end status of the task in question is ENDED_OK. If the task ends with an-
other status, it should be repeated twice after one minute in each case. If the last repeat
does not deliver the ENDED_OK status, an Alert object should be started. The Workflow
should also be blocked.

1. Step:
Open the task’s Properties (see Figure 9.74 page 88) and go to the Postconditions
tab. On the right you will find the Conditions tab. Drag the Status condition from the list
of Conditions to the left side of the window.

Figure 9.81

92
Chapter 9

2. Step
In the Parameter window that opens, select the ENDED_OK status from the drop-down
list and click OK to confirm.

Figure 9.82

3. Step
Insert an Else block via the menu indicator:

Figure 9.83

93
4. Step
Drag the USER DEFINED condition from the Conditions tab into the Else block. The Pa-
rameter window opens (Figure 9.85).

Figure 9.84

5. Step
Value1 should be highlighted in the
opened Parameter window. Click the
text “Value 1” and then the variable
picker which becomes available. The
Variable Selection window opens (see
Figure 9.86)

Figure 9.85

94
Chapter 9

Select Object as the category. The Vari-


ables field now lists all the variables that
are available for this object. Select Num-
ber of restarts. The AE system variable is
&$RESTART_COUNT# . Click OK to confirm
your selection.

Select the less than symbol (<) in the Op-


erator field (see Figure 9.85 page 94).
Enter 2 in the Value2 field.

Figure 9.86

6. Step
Go to the Instructions tab and drag a RESTART_TASK instruction to the USER DEFINED
block. In the window that opens, enter the interval between repeats in minutes:

Figure 9.87

95
7. Step
Insert an EXECUTE OBJECT instruction underneath the USER DEFINED block. In the
window that opens, enter the name of the Notification object to be executed (this is
explained in more detail in the CALL Notification chapter). There is no need to wait for
this object to end:

Figure 9.88

96
Chapter 9

8. Step
In the final step, insert a BLOCK instruction underneath the EXECUTE OBJECT block. In
the window that opens, you can add additional information that will be displayed in the
detail window for the task:

Figure 9.89

9.1.5.5. Functionality of Condition and Instruction Blocks


The blocks on the Postconditions tab function as follows:

In a postcondition, a (Condition or Instruction) block runs only once, re-


gardless of whether or not it has been defined as a repeat (Figure 9.90)
or a non-recurring execution (Figure 9.92).

Figure 9.90

The RESTART_TASK in-


struction is an exception.
In the configuration shown
in Figure 9.91, the Repeat
after 6 p.m. definition will
result in an infinite loop:

In such a
case, click
Figure 9.91
the loop
symbol.
Figure 9.92
The symbol will now change to a ‘1 in a circle.’ The RESTART TASK block
will now only be processed once.

97
The three green BLOCK, CANCEL_PROCESS_FLOW and RESTART_TASK instructions on
the Instructions tab generate a green frame. A green frame around a block indicates
that no further block will be processed after the particular block has been processed.
Postcondition processing thus ends.

If the condition ap-


plies, block will be pro-
cessed. The Workflow will
be blocked at the point
where this task is located.
Block will no longer be
processed. The postcondi-
tions are abandoned.

If the condition in block


does not apply, block
will be processed once. As
no further block has been
defined, processing for
the postconditions ends.
Figure 9.93

A NOTE ON REPETITION:
In this configuration, it makes no difference whether the blocks have been set to repeat
or non-recurring execution. They will only be processed once.

Blocks can be deactivated and activated. This can be useful if you have created very
extensive and complex blocks that you occasionally need to replace with other blocks.

A deactivated block has a gray header. Open the menu by clicking the menu indicator
and then click Deactivate/Activate.

TIP: You can copy blocks within a postcondition, as well as copy a block from one post-
condition to another. Select the required block and press CTRL + C to copy the block to
the AE clipboard. Close the source’s Properties window and open the target’s Properties
window. Press CTRL + V to paste the block into the postcondition. It would be possible
to have a Workflow that serves as a template. This could contain objects whose post-
conditions are preconfigured and would be used solely for Copy&Paste.

98
Chapter 9

7. Exercise
Duration approx. 15 minutes

Change the Workflow from Exercise 6 so that task (see Figure 9.80
page 91) is always included.

In addition, the task should check its own result. If this is not ENDED_
OK, the Workflow should be canceled.

99
9.1.6. Attributes Tab
Some of the parameters on the Workflow‘s Attributes tab are identical to the parameters
on the Attributes tab of a Job or FileTransfer. Children queue and Result evaluation of
individual tasks are new parameters.

9.1.6.1. Selecting a Queue and Children Queue


Like all other tasks, a Workflow must be started in a Queue. The Children queue field,
which is empty by default, lets you specify in which Queue the sub-tasks (Children) of
a Workflow will start. If the Children queue has no entry, the children will use their own
Queue object. If you select *OWN, the children will inherit the Workflow’s Queue. Alter-
natively, any another Queue object may be passed on to the children.

Figure 9.94

PLEASE NOTE: If children inherit a Workflow’s Queue that only has one free slot, the
children will not start as the only free slot is already occupied by the Workflow.

9.1.6.2. Result Evaluation of Individual Tasks


If you simply want to check the results of a Workflow’s sub-tasks (Children) and send
a Notification in case of an error, you can use the Result evaluation of individual tasks
feature in each individual task as an alternative to postconditions. To do this, select the
expected status for all the tasks.

PLEASE ENSURE that you do not set too restrictive conditions for the result evaluation.
For example, if you select ENDED_OK for all the tasks, a Notification will also be sent for
a task that does not run due to a Calendar Condition. The ANY_OK status will capture
all the ‘error-free
runs’. In the con-
figuration shown in
Figure 9.95, a Noti-
fication will only be
sent for tasks that
have been assigned Figure 9.95
‘any’ kind of nega-
tive status.

100
Chapter 9

9.1.7. Sub-Workflows
A Workflow may be used as an individual object within another Workflow. It is then re-
ferred to as a Sub-Workflow. All in all, there may be a maximum of 16 levels.
Sub-Workflows offer both advantages and disadvantages.

9.1.7.1. Advantage of Using Sub-Workflows


If some of the Jobs in a Workflow may only be executed on Thursdays, but the rest of
the Jobs can run on every day of the week, each individual Thursday Job must be linked
to a Calendar. Creating or modifying such a Workflow is very time consuming. A more
preferable way of creating such a Workflow is using a Sub-Workflow for all Thursday
Jobs and linking this Sub-Workflow to the relevant Calendar. Using Sub-Workflows also
makes it possible to control the time the Calendar Condition is checked. More details are
provided under ‘Generate at Runtime’.

9.1.7.2. Disadvantage of Using Sub-Workflows


One of the disadvantages is that the line tool may only be used within one Workflow.
If you want to draw a line between two separate Workflows, you must use an external
Workflow dependency. Creating such an external dependency is more time-consuming;
however, it offers further options for designing Workflows. The external Workflow de-
pendency is explained in detail in the AE Basics Part 2 training course.

9.1.8. Monitoring Active Workflows (Best Practice)


When you start a Workflow manually, the Workflow’s Monitor opens automatically. You
can perform various actions (STOP, GO, CANCEL) in this window. If a Workflow starts
automatically, its monitor is not displayed automatically. However, the active Workflow
appears in the Activity window. You can also manage the Workflow from there.
First check to ensure that the Activity window is
not filtered in such a way that no Workflows are
displayed. Please also make sure that you have
selected All Queues on the left side of the Activity
window. If you know in which Queue the Workflow
was started, select this Queue.

Provided that you have the right to do so, you can


get to where you need to go faster by right-clicking
the Workflow in the Explorer and opening the Ac-
tivity window from there (Figure 9.96). Set the Ac-
tivity window to Hierarchical , so that
you can also see the Workflow’s child tasks. To do
so, click the small black triangle in front of the
Workflow:
Figure 9.96

Figure 9.97

101
9.1.8.1. Stop and Stop (Recursive)
It is possible to stop an active Workflow. This can be done in one of two ways: STOP and
STOP (RECURSIVE).

To stop a Workflow, click Modify task


=> STOP/STOP (RECURSIVE) on the
Workflow’s menu in the Activity win-
dow.

When a Workflow is stopped ‘nor-


mally’ , automatic processing of the
Workflow stops. This means that cur-
rently active tasks such as Jobs and
FileTransfers, and, above all, Sub-
Workflows, are processed to the end. Figure 9.98
Event objects (see the ‘Event’ chap-
ter) and Job Groups are not stopped either. However, no more new tasks will be started.

If a Workflow is recursively stopped , Jobs and FileTransfers will again run until they
have finished. No further tasks will be started. However, in this case, Sub-Workflow,
Events, and Job Groups will be stopped. If Sub-Workflows contain further currently ac-
tive Workflows, Events, or Job Groups, these will also be stopped.

TIP: You can also stop specific types of tasks in an active Workflow without having to
stop the entire Workflow. These include: Workflow (JOBP), Event (EVNT) and Job Group
(JOBG). Jobs and FileTransfers cannot be stopped; they can only ever be canceled.

9.1.8.2. Go and Go (Recursive)


After a Workflow has been stopped, you can use GO or GO (RECURSIVE) to get it started
again. If a Workflow was stopped recursively, you can restart it again by clicking GO
(RECURSIVE). All stopped tasks are restarted. If you only click GO to restart the Work-
flow, Sub-Workflows, Events, and Job Groups remain stopped. These must then be set
individually to GO.

9.1.8.3. Cancel and Cancel (Recursive)


If a Workflow is canceled with tasks that are still running, it is stopped immediately
(ENDED_CANCEL status). However, the tasks that are running are not canceled. If a
Workflow is canceled recursively, all running tasks are also canceled immediately.

102
Chapter 10
Calendar Object

103
Chapter 10

10.1. The Calendar (CALE)


"Execution days" are highlighted in Calendars. If a task needs to be executed every
Monday, each Monday is highlighted in a Calendar Keyword and the task is then linked
with this Calendar Keyword. For information on how they are linked, please refer to the
Workflow chapter (“9.1.5.3. Calendar Tab” page 90).

10.1.1. Six Different Keyword Types


Calendar keywords are subdivided into six different keyword types, each of them offer-
ing particular functions for highlighting days. Apart from the STATIC keyword type, all
keyword types automatically prolong themselves at the turn of the year, i.e., the high-
lighted days are valid for another year. Manual intervention is not necessary.

• WEEKLY: for tasks which should start every Friday, for example

• MONTHLY: for tasks which should run every last day of a month, for example

• YEARLY: for tasks which always start on December 29 for end of the year pro-
cessing, for example

• GROUP:
--groups two or more keywords to a new keyword (e.g. all Saturdays and all
Sundays = "Weekend")

--subtracts a keyword’s highlights from another keywords highlights (the days)


from another keyword’s highlights (for example, all Mondays to Fridays minus
holidays = "Working Days")

--forms the intersection of two keywords (e.g. all days which are the last work-
day of a month and a Friday)

• ROLL: Moves highlights of other keywords and creates a new keyword from
these, for example, moves the last day of a month from Sunday to the previous
Friday and makes it the last working day of the month

• STATIC: includes all highlights (days) which are not subject to rules (e.g., for
‘Jobs upon request’)

TIP: At first glance, creating a static keyword seems to be easier than creating a dy-
namic keyword. However, static keywords must be prolonged and maintained all the
time. Therefore, it is certainly worth dedicating some time to creating keywords that are
based on calculation logics or algorithms, as these keywords will subsequently prolong
themselves and no further time will be required to maintain them.

105
10.1.2. Creating a Calendar keyword
When creating a new Calendar, the right half of the Calendar sheet already contains a
Static keyword (‘place holder’).

Right-click the right half of the Calendar and open


a menu. Select the required keyword type and as-
sign a name. Keyword names are based on the
same character conventions as objects.

Figure 10.99

NOTE: Pay particular attention when naming Calendar keywords. Basically, Calendar
keywords may be renamed or deleted but doing so requires manual interference if Cal-
endars are accessed via Automation Script.

10.1.3. Referencing Calendar Keywords in Other Calendars


You can also create Calendar Keywords by referencing Calendar Keywords in other Cal-
endars. For example, the KEYWORD_A used in CALENDAR_A may be used to create
KEYWORD_B in CALENDAR_B.

In the following figure, the Group keyword SAT_AND_START_OF_MONTH was defined


in the CALE.002 Calendar, referencing keywords from the CALE.WEEKDAYS and
CALE.MONTHDAYS Calendars:

Figure 10.100

When exporting CALE.002, make sure that the CALE.WEEKDAYS and CALE.MONTHDAYS
Calendars are also exported or available in the target system.

More details about exports will be provided in this training. When a referenced keyword
is renamed, the AE system informs the user about its usage.

106
Chapter 10

10.1.4. Using the Static Keyword Type


Static keywords are used if there is no calculation logic upon which highlighted days are
based. This means that a Job execution may depend on a particular unforeseeable event
at the international Stock Exchange which does not recur in regular intervals. This is
where a Static keyword is the best type to use.

The Static keyword is the only type of keyword whose days can be highlighted manually
as required or that can be created and highlighted via Automation Script.

Double-click a highlighted day in order to cancel the highlight.

A task, such as the one described above, could thus remain permanently in a Workflow.
It is linked with a Static keyword (here: SPONTANEOUS_JW.PC.001), whose execution
days are only highlighted on request:

Figure 10.101

107
10.1.5. Display Formats in the CALE
A Calendar features different displays and display formats.

10.1.5.1. Color Display of Days in a Calendar


A Calendar displays days in specific colors, as follows:

• Black : The day does not belong to any


keyword
• Pink : The day belongs to exactly one
keyword
• Yellow : The day belongs to more than
one keyword
• Gray : The day is outside of the validity
of the Calendar

Figure 10.102

10.1.5.2. Vertical Week Display (Default)


Calendars open in vertical mode by default. The week display appears on the left and
the available Calendar Keywords are on the right.

Figure 10.103

Days that were defined in the Calendar Keyword selected on the right are highlighted
on the left.

108
Chapter 10

10.1.5.3. Horizontal Week Display


Click the Horizontal weeks button to activate the display below. There are no functional
differences between the vertical and horizontal displays.

Figure 10.104

Use the arrows pointing left and right (<, <<, >, >>) to scroll though the months in
both displays.

109
8. Exercise

Duration approx. 45 minutes

Create a Calendar object with the following highlighted days:

1. Task
each Monday till Friday
(WEEKLY)

2. Task
each Saturday and Sunday
(WEEKLY)

3. Task
Working days (all days except for Saturdays, Sundays and Holidays)
(GROUP, WEEKLY)

4. Task
Non-working days
(GROUP, WEEKLY)

5. Task
all Tuesdays starting April 3rd to June 30th
(WEEKLY, YEARLY, GROUP)

6. Task
Link a keyword to an object in a Workflow

7. ‘A hard nut to crack’


Second day of a quarter (the quarter starts January 1st, April 1st, July
1st, October 1st). If the day is a Friday, postpone to the next working
day)
(MONTHLY, WEEKLY, GROUP, ROLL)

110
Chapter 11
Schedule Object

111
Chapter 11

11.1. The Schedule (JSCH)


Together with the Job and Workflow, the Schedule (Schedule object) is the most impor-
tant object in AE. You may enter all tasks in it which should start automatically. In other
words, the Schedule is the processing or to-do list for the AE server. The server will start
everything that has been entered in this list. Keep in mind that a Schedule is a process
which is permanently active. If a Schedule is not active or has been stopped, its tasks
will not be started. For example, if a tasks has not started because the AE Server failed,
it will not automatically start when the AE Server/Schedule is up again.

11.1.1. Execution interval


The minimum interval in which a Schedule executes tasks is 1 day. This interval may
be extended but not reduced. By default, the interval is changed (also referred to as a
PERIOD TURNAROUND at 12 midnight.

11.1.1.1. Alternatives to a Schedule


A task may be included in a Schedule several times. Despite this, the interval remains
one day. For tasks which should be executed in an interval of 5 minutes, you may either
use the Event object or the function RECURRING EXECUTION from the task's menu in
the AE Explorer. The recurring execution of tasks will be explained later on.

11.1.2. Creating a Schedule


After having created a Schedule, the Schedule tab opens automatically. Drag an ex-
ecutable object to this tab and drop it. The Properties window opens.

TIP: If you have closed the Properties window, you can reopen it by right-clicking the
object and then clicking TASK PROPERTIES.

11.1.2.1. Start Time


In the Properties window, go to the Start
time tab and enter the daily starting time
.
NOTE: The specified start time refers to
the TimeZone used in the particular cli-
ent. Ask your AE Administrator for the Ti-
meZone used in your client or look it up
in the System Overview, under Clients.
TIP: If you drag a task onto another task,
the second task automatically adopts the
Figure 11.105
start time of the first task.

113
11.1.2.2. Execution Days (Calendar Tab)
In the Properties window, you can use a Calendar and its Calendar Keyword on the Cal-
endar tab. If you retain the Execute if one condition matches default setting, the task
will only be executed on the days highlighted in the Calendar.
NOTE: If you do not use a Calendar, the specified task will be executed every day.
If you start a Workflow only on Thursdays and a task within the Workflow is linked with
a Calendar in which only Sundays are highlighted, the task will never start.

11.1.2.3. Result Evaluation after Execution


A task’s result may be checked automatically. A possible response to a non-expected
result may be to repeat the task and/or start another task. In a Schedule, you may only
check the status. A task’s report can only be accessed indirectly using a Filter object (for
Jobs and FileTransfers) or Automation Script. Similar to the result evaluation of a task in
a Workflow, you always specify the expected result, which normally is a ‘successful run’.
NOTE: A Job obtains the ENDED_INACTIVE status if it did not run due to a specified
Calendar Condition. If you check a Job’s status for ENDED_OK in the result evaluation
and specify Else repeat, the Job will be repeated unnecessarily.

11.1.3. The Active Schedule


Unlike the objects that we have looked at so far, an active Schedule remains active until
it is ended. Once ended, it will not start any tasks.

11.1.3.1. Editing an Active Schedule


A Schedule that has not started may be edited in the same way as all the other objects
that we are familiar with: Open-Edit-Save Finished. An active Schedule, however, may
be edited in two ways:
1. Editing the object: Open the object
and edit it as usual. When you save, the
AE server will ask whether the changes
should be applied from the next period
turnaround. If you click Yes, the changes
will take effect from the period turn-
around at 12 midnight. If you click No, Figure 11.106
the changes will not take effect until you
stop and restart the Schedule. Please
also refer to “11.1.3.2. Reloading Definitions During a Period Turnaround” page 115.
2. Editing in the Schedule’s monitor: Open the
Schedule’s monitor and change the start times
or enter a new task, for example. When you
save, the AE server will ask if you really want
to modify the task. Your changes will take ef-
fect immediately. BUT PLEASE NOTE: Changes
made in the monitor are only valid until the
Schedule is ended and restarted or ‘RELOADED Figure 11.107
FROM DEFINITIONS’.

114
Chapter 11

11.1.3.2. Reloading Definitions During a Period Turnaround


In the monitor of the active
Schedule, you can force a RE-
LOAD FROM DEFINITIONS to
take place ( ). Here, the server
is instructed to read the ‘to-do
list’ from the database again at
12 midnight so as to allow chang-
es to take effect.
NOTE: When you select RELOAD
DEFINITIONS DURING PERIOD
TURNAROUND, all the tempo-
rary changes made in the moni-
tor will be reset to their original
state when the period turnaround
takes place. If definitions are not
reloaded, your changes will re-
main beyond the period turn-
around. Please also note that
making a change to an object
while it is running may also result Figure 11.108
in definitions being reloaded dur-
ing the period turnaround (see “11.1.3.1. Editing an Active Schedule” page 114).
TIP: If you do not want to make changes via the monitor, however, you still want chang-
es to the object to take effect immediately, end the active Schedule instance and restart
the modified Schedule. You may find that a task is scheduled to start just as you make
the changeover. However, if the Schedule is not active at that exact moment, it will not
start any tasks and you may have to start the task manually.
To ensure a smooth changeover, set the value
for the maximum number of tasks running
parallel to 1 (default) on the Attributes tab
and select WAIT instead of ABORT (see Fig-
ure 11.109). If you restart the Schedule with
this setting, the second instance will wait until
the first instance has ended. The first instance
only needs to be stopped now, the second in-
stance becomes active automatically.

Figure 11.109

11.1.3.3. Setting Comments


Users who have the right to edit Schedules should agree on how and where changes
should be made so as to avoid ‘unnecessary reloads’. Even though changes made in the
monitor of an active Schedule are logged in a report, it is still advisable to set some
Comments. To set a Comment, right-click the Schedule monitor and then click Com-
ments... In the window that opens, you can enter a Comment of your choice. You can
also open a Comment for reading. A task that has a Comment appears with a small red
triangle in the monitor and in the statistics record. Comments can also be set for all
other executable tasks. Comments cannot be deleted. They are stored in the AE data-
base together with the statistics records of the executed tasks.

115
11.1.4. Changing the Period Turnaround
A period turnaround has the effect that the ‘to-do list’ is reestablished (RELOAD FROM
DEFINITIONS). In addition, the status that tasks obtained after their execution is also
reset to WAITING FOR START TIME. In the Schedule’s monitor, you will not be able to
immediately see which status a Job that ended at 11:59 p.m. has obtained. From 12
midnight, it will have the ‘WAITING FOR START TIME’ status. In order to hold the states
of individual tasks in the Schedule's monitor (e.g., until 10:00 a.m.), you may resched-
ule the period turnaround accordingly. However, this will have on impact on the schedul-
ing of tasks. The following diagrams explain the time relationships:
A period length of one day is shown along with a period turnaround at 12 midnight
(these are the default settings).

Figure 11.110

Figure 11.111 illustrates the time relationships for a period length of one
day and a period turnaround at 10 a.m. When tasks are scheduled, an error message
will be generated if an attempt is made to specify a start time before 10 a.m. with a
period start +0. The time bar shows that this point in time does not exist. A similar case
would be to indicate a period start + 2 days:

Figure 11.111

116
Chapter 11

9. Exercise

Time required: approx. 30 minutes

Create a Schedule with the following requirements:

1. The Schedule’s period turnaround takes place at 10:30 a.m.

2. A Job starts every day at 09:00am, except for weekends (Saturdays


and Sundays).

3. The Schedule checks the Job result. The Job should automatically be
repeated if it ends with an error.

4. Make a temporary modification in the Schedule monitor which should


only apply for the current period. The original definitions should be re-
established after the period turnaround.

5. How can you find out whether temporary changes were made in the
Schedule’s monitor?

117
118
Chapter 12
Execution of Objects

119
Chapter 12

12.1. Immediate Execution of Objects


This is what you already learned from the very beginning on: the direct execution of
tasks. Within the AE UserInterface, there are multiple ways to accomplish this. For ex-
ample:
1. Click the object to be executed within the Explorer folder in order to mark it and then
just click the Execute button in the Explorer menu:

Figure 12.112

2. Right click the object, then select Execute --> Execute from the context menu:

Figure 12.113

3. Drag&Drop the object from the Explorer window into the Activity window:

Figure 12.114

4. And, when you are just editing an executable object, you also can directly click the
Execute button within the Edit menu of the object:

Figure 12.115

121
5. Besides of the direct activation possibilities above, you can also activate any execut-
able object using the ACTIVATE_UC_OBJECT() Automation Script function. This func-
tion can be used wherever you can use Automation Script. The most popular use is on
any Pre Process, Process and/or Post Process tab of any other executable object and the
!Process tab of any Event object.
Example of usage:

:SET &RUN_ID# = ACTIVATE_UC_OBJECT(<object_name>[,<optional_parameters>])

For more information see the online help under AUTOMATION ENGINE SCRIPT GUIDE or
visit our training course AE - Script.

12.2. Time-Delayed, Non-recurring Task Execution


You can use the EXECUTE=> ONCE... function to ensure
that tasks that are scheduled for a one time start in the
future do not need to be entered in a Schedule and then
removed again.
Instead of clicking on “Execute” directly, just select the
pulldown or sub-menu available for any Execute command
within the Userinterface and select the appropriate execu-
tion option (here it is ONCE); a new window opens, pre-
senting further options.

Figure 12.116

12.2.1. Difference Between the Date and Logical Date


Select Date/Time if you want to start
a task at a specified date and time in the
future. The task will start at the specified
date and time.

You can simulate an execution date by


selecting Logical date . However, the
task will start straight away. This func-
tion can be useful if you need to restart a
task with Calendar Conditions.

Example (assuming today is Tuesday): A


Job has the following Calendar Condition
in a Workflow: Start only on Tuesdays.
You start the Workflow with the execu-
tion date Monday. Result: The Job is not
started.
Figure 12.117

122
Chapter 12

12.3. Recurring Execution of Objects


You already know one way to execute objects in intervals, namely using a Schedule ob-
ject.

The second option involves using a menu item that is avail-


able on the menu of every executable task. Right-click the
object in the AE Explorer. Click EXECUTE and then click
RECURRING.

Figure 12.118

12.3.1. Logical AND Between Tabs


The input window for defining execution intervals includes four tabs (Frequency, Time
frame, Days, Range). All tabs are linked to each other through a logical AND. This
means that if you specify a frequency of 1 minute and select Monday on the Calendar
tab, the task will only be executed on Mondays in an interval of one minute.

12.3.1.1. Frequency Tab


The AE server will not start a task a second
time that it started via the Recurring Ex-
ecution function and that is still active. This
stops tasks from being executed in paral-
lel. The Allow one overlap parameter (see
Figure 12.119), however, allows a task to
be active twice.

Figure 12.119

Please note that a task’s Tasks running parallel


setting (see Figure 12.120) has nothing to do
with the setting described above. If, for exam-
ple, the Tasks running parallel parameter is set
to 2 in a Job (Attributes tab), this means that
the Job can, in principle, only have two active
instances, regardless of the process/mechanism
that started it.

Figure 12.120

123
12.3.1.2. Timeframe Tab
This is where you set limits
for the timeframe in which
task executions are to take
place. If you retain the
Force adjustment on time
frame default, the first ex-
ecution will start promptly
at the specified time. If you
uncheck the box, time will
be counted from the point
at which you click OK to
confirm.

Figure 12.121

Please note the difference between the two settings in the following figure. A frequency
of 60 minutes has been selected in our example.

Figure 12.122

12.3.1.3. Days
On this tab, you select the
days on which you want
an object to start. Simi-
lar to the Calendar tab in
the Properties of a task in
a Workflow (see “Figure
9.79” page 90), you can
use a Calendar object and
its associated keyword
here.

Figure 12.123

124
Chapter 12

12.3.1.4. Range
On this tab, you specify
when the execution should
start. You also specify
when it should end, based
either on a date or a spec-
ified number of execu-
tions. You can also choose
not to specify an end date.

Figure 12.124

12.3.2. Object Type “Period”


Starting with AE V11.2, there is a new object available now, called “Period”.
You may use a Period object to determine detailed time frames or execution periods for
executable objects, when their execution is being modified by the option “Execute Re-
curring”. This option may be accessed via the “Execute” button of the object itself, via
the context menu of the object in the Automation Engine’s explorer window or, in short,
wherever you can call the periodic execution of an object.
The Period tab used to define your reoccurring intervals etc. looks as follows:

Figure 12.125

125
You will notice that the 4 areas on this screen do not only have the same names as the
tabs on the “Recurring Execution” dialog display, even the contents are identical. Thus,
the Period object enables you to load a predefined set of recurring execution options
in the execute recurring dialog instead of typing them in for every new execution; the
advantage of this object is to have settings available that may be reused, even for other
executable objects later.
The Header tab of the Period object looks like any other object’s Header tab, although
the Title field has a special importance here:

Figure 12.126

The description you enter in the Title field will also be used and displayed in the “Ex-
ecute Recurring” context (Period description field), when you load the respective Period
object. Special about this Period description field is the fact, that you may change the
description manually in all tabs of the Execute Recurring function without changing the
title of the respective Period object. The manual changes afterwards will be shown in the
Statistics records and Activities selection window of executable objects.
After you defined your “new” Period object, you can use it on your next recurring ob-
ject ececution. Just execute your object as usual and select the “Recurring” option. The
upcoming dialog window now looks a little different to the one of former AE versions:

Figure 12.127

126
Chapter 12

The lower part now shows 2 new fields and an additional button:
--Period object: just click the pulldown menu and select the Period object or en-
ter the Period object name to be used for the execution manually
--Period description: contains the Title information of your selected Period ob-
ject; this information can be overtyped manually (as already explained above)
--Load button: loads your selected Period object and fills the description field

Figure 12.128

When you completed your selection, pressed the Load button, changed the description
(optionally) and possibly set an alias for your executable and/or selected a dedicated
queue to run it in, you activate it by pressing OK. From this moment on, your executable
will occur in your Activity display (depending on filter settings), with type “C_PERIOD”
(as it already did for periodic tasks in former versions), either as “Sleeping”, waiting for
the next occurrence, or as “Active”, triggering a new instance of your executable object:

Figure 12.129

In this figure you can see the description from the Period object Title which was modified
in the “Recurring Execution” dialog and will also be written to the job statistics.

12.3.3. Recurring Tasks in the Activity Window


Any task which is executed
recurrently will be listed in
the Activity window un-
der the SLEEPING status
with the C_PERIOD start
type. To make subsequent
changes to the properties,
right-click and then click-
PROPERTIES:

Figure 12.130

127
10. Exercise

Duration approx. 15 minutes

Task
A Job should start in an interval of four minutes between precisely
4.05 p.m. and 7.15 p.m. from Monday to Friday. It can be active two
times at the most at the same time.

128
Chapter 13
Notification Object

129
Chapter 13

13.1. The Notification (CALL)


A Notification is used to alert particular users. Notifications can be sent within the User-
Interface and/or outside of the AE system via e-mail. When you create a Notification ob-
ject during this training, please select the CALL STANDARD object from the Templates
window. The CALL ALARM and CALL EMAIL objects are preconfigured templates based
on CALL STANDARD.

13.1.1. Using Notifications


Notifications may be used in several ways within a AE system. Below some situations:
Alerting
• after a Job has been canceled in a Workflow
• after an individual task in a Schedule has been canceled
• when a particular file has arrived
• when an Agent fails
• for a time-triggered note in the Schedule ("Insert tape in the tape unit")

13.1.2. Notification within the UserInterface


Notification within the UserInterface (of types Request, Notification and Alarm ) ac-
tivates the monitor, a pop-up window that contains a user-defined message text. The
monitor requires manual acknowledgement via mouse click. In addition, you can send
the subject and message text via e-mail ( ). Do not confuse this with the E-mail type
which is used exclusively to send e-mails.

Figure 13.131

There are three types of Notifications that can be sent within the UserInterface; they will
be discussed on the following page.

131
13.1.2.1. Type "Notification"
The Notification only ends once all no-
tified users have clicked OK.
This type is mostly used for non-criti-
cal messages that do not require any
special measures to be taken, for ex-
ample, when processing ends.
Special use: Processing could come to
a halt until all users have clicked OK
to confirm.

Figure 13.132

13.1.2.2. Type "Request"


This type of Notification only requires
the acknowledgement of one user for
it to end. If the user clicks YES, the
request ends with the ENDED_OK sta-
tus. If the user clicks NO, it will end
with the ENDED_NOT_OK status. Es-
calation is possible.
USE CASE: The user can control pro-
cessing procedures in a Workflow.

Figure 13.133

13.1.2.3. Type "Alert"


This type also only requires the ac-
knowledgement of one user for it to
end. If the user clicks ACCEPT, the
monitor of the other users will be can-
celed first. If the user decides to click
REJECT, his/her monitor will be can-
celed and the monitor will be resent
to all the other users. The Notifica-
tion will only end once a user clicks
ACCEPT and DONE. If all users click
REJECT, this results in an automatic
escalation and the procedure starts
again from the beginning. The first
instance remains in the Activity win-
dow. It must be canceled to remove it
Figure 13.134
from the Activity window. This type is
mostly used for serious problems such
as the termination of an Agent.

132
Chapter 13

13.1.3. Notifying Outside of the AE System


Notifications outside of the AE system are made using the AE email function. This func-
tion can only be used if it has been set up before. If required, contact your administrator.

13.1.3.1. Type "E-mail"


Unlike the three types discussed before, no monitor is displayed for the E-mail type.
Only an e-mail is sent instead. To create a Notification of this type, select E-mail under
TYPE on the Attributes tab (see Figure 13.131 page 131). Go to the Notification tab
and enter the subject and message text. Go to the Recipients tab and enter the e-mail
address of one or more recipients of your choice in the Recipients column.

Useful functions include Attach reports from and Attach file. The ‘Attach file’ function
requires you to specify a file (including the path) that exists in the AE Server file system.

When an AE report is attached, the RunID of the corresponding task must be retrieved
and passed on. Automation Script is used for this. The following shows how to create a
variable message text (13.1.4.1) and attach a report (see 13.1.6 page 136).

13.1.4. Variable Notifications


You can use system and object variables to create dynamic subject and message texts.
Automation Script may also be used for this. However, Automation Script is not part of
this training course. The normal procedure is to construct dynamic Notifications; other-
wise you would have to create separate Notification objects for all possible eventualities.

13.1.4.1. Variable Subject and Message Text


To simply create dynamic subject and message texts, follow the step-by-step instruc-
tions listed below. The aim is to show the number of the client and the name of the task
causing the error in the Subject. The name should be repeated in the message text with
the date and time of the error, the run number, the status, and the return code added
to it.
1. Step
After you have created a new object of the CALL STANDARD type, click the Plus symbol
(+) in the tab bar and select Process to open the Process tab:

Figure 13.135

133
2. Step
Insert the four
lines in the Pro-
cess tab exactly
as shown in the
figure on the
right.
These lines offer
detailed infor-
mation (name,
number of run,
status, and, if
Figure 13.136
necessary, re-
turn code) on
the object that the Notification triggered.
TIP: You can Copy&Paste the lines from every CALL ALARM or CALL EMAIL object (or
from the online help by searching the keyword UC_CAUSE). Or, if your document is a
PDF file, just copy the following 4 lines:

:read &UC_CAUSE_NAME,,
:read &UC_CAUSE_NR,,
:read &UC_CAUSE_STATE,,
:read &UC_CAUSE_RETCODE,,

3. Step
Open the Notification tab. Select the
Subject field and click the variable
picker.

Figure 13.137

In the window that opens, select Automation


Engine System from the Category drop-down
list. Select Client as the variable ( ). The vari-
able that you selected is displayed in the Variable
name field. Click OK to confirm. The variable
you selected now appears in the subject text.
You also can get the AE System name variable
using the variable picker.
Add some explanatory text so that the following
text appears in the subject line (without quota-
tion marks):
‘Error in system &$SYSTEM#, client &$CLI-
ENT#, task &UC_CAUSE_NAME’.
TIP: If you know the name of a variable, you can
also enter this name directly in the Subjectfield.

Figure 13.138

134
Chapter 13

4. Step
Enter the text from Fig-
ure 13.139 or similar
for the message text.
TIP: You can insert the
keywords shown in
green in the figure us-
ing the variable picker,
as described in Step 3.
You can transfer the val-
ues shown in light blue
from the Process tab
using Copy&Paste (see
“2. Step” page 134 ). Figure 13.139

And here, once again, the subject and message body (for Copy&Paste):

Error in system &$SYSTEM#, client &$CLIENT#, task &UC_CAUSE_NAME

An error has occured!!!

Name of task: &UC_CAUSE_NAME


Date/time: &$PHYS_DATE_DD_MM_YYYY_d#, &$PHYS_TIME_HH_MM_SS#
Run no./RunID: &UC_CAUSE_NR
Status: &UC_CAUSE_STATE
Returncode: &UC_CAUSE_RETCODE

13.1.5. Recipients
Now all you have to do is specify one or several recipients for the Notification. Enter
any number of e-mail recipients or AE users/user groups for message recipients in the
Recipient column on the Recipients tab ( in Figure 13.140 page 135). Select the us-
ers/user groups available in the client by opening the pull-down menu in the column, or
enter them manually if you know them.
The Calendar and Keyword columns allow you to select Calendar Keywords to send
the Notification to different recipients depending on the day. If nothing is entered here
(default), the Notification is forwarded to the recipient(s) specified in the line on the
right during activation.

Figure 13.140

135
13.1.6. Sending a Report Using a Notification Object
You can use a Notification object of type E-mail to send a task’s report as an attachment.
If the Notification object is started in a Workflow via the task’s properties (Dependen-
cies or Postconditions tab) or in a Schedule (Result tab), it can ascertain some of the
information of its activator. The run number (RunID) is required to send the activator’s
report. In the following, we describe how to send the activator’s report.
As already shown and described in Figure 13.136 page 134, the &UC_CAUSE* variable
provides detailed information on the activator of the Notification. If you have filled the
&UC_CAUSE* variable in the Process tab using the corresponding :READ script lines
(see “13.1.4.1. Variable Subject and Message Text” page 133 f), all you have to do now
is enter the &UC_CAUSE_NR variable (run number or RunID of the activator) in the

Figure 13.141

Attach reports from task (RunID) field ( ).


From now on, the reports from the task triggering the Notification will be delivered as an
attachment if these are to be send via e-mail (see Figure 13.131 page 131).
As you can see in Figure 13.141, you also may “Attach file from AutomationEngine”; this
file (including its full path) must be stored in a directory that can be accessed by the AE
Server (see “13.1.3.1. Type “E-mail”” page 133).
NOTE: If external job output files of jobs are attached (Notification tab - Attach reports
from), the email is sent via the agent on which the job has been executed. The notifica-
tion aborts if the agent is not active, if the files cannot be found or if the user does not
have the required authorizations (the right “P” for the autorization types “JOBS” and
“EXTREP”).
KEEP IN MIND: If a task’s reports exceed a specified size, they will only be sent as at-
tachment up to the size specified in the client and then automatically cut off (default
value = 8000 bytes, minimum = 400 bytes, maximum = 50000 bytes). The following
appears at the end of the file if the length is exceeded: ‘Truncated through SMTP_MAX_
ATTACHMENT_SIZE limit’.

13.1.7. Notification Usage Examples


As Notification objects belong to the group of executable objects, they can be handled
as such. This means that you may execute a Notification object manually as well as plan
its execution through a schedule. As this does not make much sense in general, Notifi-
cations are usually activated from within workflows. The following sections will show a
few examples.

13.1.7.1. Usage as a direct Dependency


Within the following example a Notification object called CALL.COMPLETED was put into
workflow JOBP.CALL with the intention to send a message to one or several recipients
every time that job JOBS.WIN.001 is finished successfully.

136
Chapter 13

Figure 13.142

Of course, you may also trigger a Notification object if a problem occurs. Using the
above example, you could add a notification and set its dependency to ENDED_NOT_OK
of job JOBS.WIN.001.

13.1.7.2. Usage on the “Dependencies” Tab


When the CALL starts, it sends its no-
tification together with the reports of
task ‘JOBS.WIN.016(2)’ and not those
of task ‘JOBS.WIN.017(3)’ , assumed
that CALL.001 is a type E-Mail Notifica-
tion and the “Attach reports from task”
feature is used (see 13.1.6 above).
This happens because the definition
of task ‘JOBS.WIN.016(2)’ (the prede-
cessor) within the properties of ‘JOBS.
WIN.017(3)’ triggers the CALL if the
status is different from ANY_OK, with-
out the ‘JOBS.WIN.017(3)’ task being
started.

Anything with a status different from


ANY_OK is expressed by ‘Else block and
execute CALL.001’ in this example.

Figure 13.143

137
13.1.7.3. Usage on the “Postconditions” Tab
In opposite to the usage on
the Dependencies tab (see
above), the CALL within this
example sends the reports of
task ‘JOBS.WIN.017(3)’ .
This is a different situation:
Here, the ‘JOBS.WIN.017(3)’
task checks itself (Postcondi-
tion) and triggers the CALL if
it was not ended with a ‘Good’
status (ANY_OK) (expressed
by ‘Else...’).

Figure 13.144

13.1.7.4. Miscellaneous Notification Usage


The examples here just show the most popular Notification usage definitions within AE,
but there are several other tabs and screens available within AE which allow the addi-
tional execution of tasks. And, as Notifications are “tasks”, just like any other task, you
may execute them as well.
This means: as soon as you find any tab/screen with the possibility to execute any task
(normally expressed by “Execute:”, followed by an object selection field), you can trig-
ger any type of Notification there and - depending on the type - even escalations.
If this is not enough, you still have the possibility to use Automation script commands
:SEND_MSG and/or :SEND_MAIL, together with their appropriate parameters, wher-
ever you can use Automation script.

13.1.8. Notification Priority


The Priority attribute on the Attributes tab determines the priority to be used for an e-
mail to appear in the e-mail system:

Figure 13.146

Figure 13.145

138
Chapter 13

For an internal Notification, the Pri-


ority is displayed in the Notification
window as shown in Figure 13.147.
It shows the priority text (Low, Nor-
mal or High), together with a specific
color (green=Low, yellow=Normal,
red=High) and a special symbol (circle
with an I=Message, speech bubble with Figure 13.147
a question mark=Request, triangle with
an exclamation mark=Alert).

Additionally, a corresponding symbol appears in the top right-hand corner of the AE


UserInterface beside the traffic light symbol:
High Priority Normal Priority Low Priority

Figure 13.148

139
11. Exercise

Duration approx. 15 minutes

1. Task
Create a Notification object of type ‘notification’ or ‘e-mail’ (your
choice). The name and RunID of the task causing the error should be
displayed in the Subject along with the AE system name and client
number.

2. Task
Use the Notification object in a Workflow in the Postconditions of a Job.
The Notification should inform you if the Job in the Workflow aborts.

3. Task (optional)
The Notification should include the name and run number of the Work-
flow in the message text. The report of the erroneous task should also
be sent in case of e-mail correspondence.

140
Chapter 14
PromptSet Object

141
Chapter 14

14.1. The PromptSet (PRPT)


PromptSets are linked with executable objects. They are used in dialogs to prompt us-
ers to enter values. Values entered by a user can be used for processing in the calling
object. In this training course, we only look at how to handle PromptSets.

14.1.1. Operation
A PromptSet only ever appears on the screen of the user who started the object the
PromptSet is linked to, i.e., a PromptSet cannot be sent to any other user. The example
shows a PromptSet that prompts for parameters for a database backup.

A PromptSet can be designed


in such a way that certain fields
must be filled in. If these fields
are not filled in, a message will
appear for each element in the
Errors field at the bottom of the
screen. The PromptSet can only
be saved once all the required
entries have been made.

NOTE: By default, the user input


is not logged. The user who cre-
ates a PromptSet must explic-
itly read the entries and write
them (:PRINT) to the task log
(report). This is the only way to
subsequently find out which val-
ues were provided by a user in a
PromptSet.

Figure 14.149

14.1.2. Using PromptSets in Objects


In principle, a PromptSet may be used with any executable object.

14.1.2.1. Usage in Workflows


Before AE Version 9, Service Pack 1, the input screen did not open if a PromptSet was
used in objects of a Workflow or Sub-Workflow. In such case, an error message was
displayed when the Workflow was processed if no default value had been assigned to
the elements. Only if PromptSets were used on the Variables & Prompts tab of the main
Workflow itself, the input screen appeared on the screen of the user who started the
Workflow.

143
Currently, PromptSets can be displayed in objects of a Workflow or Sub-Workflow, de-
pending on the settings of the task’s Properties in the Workflow:

Figure 14.150

If a task’s PromptSet is only displayed at the start time of the task but should appear
at the start time of the Workflow, change this by checking the Parameter evaluation at
workflow generation checkbox.

14.1.2.2. Displaying PromptSets in the Properties of a Task in a Workflow


The PromptSet(s) used in a Workflow is or are displayed for checking purposes as Par-
ent PromptSets in the Properties of a task in the Workflow . Values cannot be changed.

Figure 14.151

144
Chapter 14

The PromptSets of objects and/or Sub-Workflows in a Workflow are also displayed in the
object properties. Unlike Parent PromptSets, it is possible to modify their values:

Figure 14.152

The creation of PromptSets is part of the AE - Basics Part 2 Training.

145
146
Chapter 15
Event Object

147
Chapter 15

15.1. The Event (EVNT)


There are four differt types of Event objects (EVNT):

• Time Event
• File System Event
• Database Event
• Console Event

Conditions may be specified in all Event types. If a condition applies, the !Process tab
will be processed. Time, File System, and Database Events are time-controlled. The
Console Event is not time-controlled and simply ‘listens’ permanently.

NOTE: Event objects always endeavor to execute !Process.

NOTE: Console Events are not discussed in this training course.

15.1.1. Time Event


!Process is processed when a predefined period of time has expired. The shortest time
period is one minute and is referred to as an Interval.

A Schedule object works similarly. It starts tasks when a predefined period of time has
expired. The shortest time period is one day and is referred to as a Period.

15.1.1.1. Usage
Time Events may be used when tasks need to be executed in an interval that is shorter
than one day. Tasks are started with the ACTIVATE_UC_OBJECT() script function on
the !Process tab.

Basically, any Automation Script may be used on the !Process tab.

Under Check , you may


determine, whether the
Event ends itself after ac-
tivation (non-recurring)
or waits for the next acti-
vation (repeat).

Click Check in an interval


of x minutes under Timer
control to define wheth-
er the first action can go
ahead directly after ac-
tivation or only after the
first interval has expired
. If you select a certain
time for the check, you Figure 15.153
can determine , whether
during activation, a re-
sponse should be initiated after this time or only after this time is reached again (i.e.,
on the next day).

149
15.1.2. File System Event
!Process is processed when a predefined condition applies. The condition must have
been defined by the user on the File System tab. In contrast to a Time Event, you can
specify that the Event ends itself if the condition applies (Event tab => Check => Until
the first hit).

15.1.2.1. Usage
A typical applica-
tion of a File Sys-
tem Event is to use
it as a ‘File Watch-
er’. A File Watcher
waits for a specific
file to arrive or for
a particular num-
ber of files to be
available in the file
system. In the first
case, this can be a
file that needs to be
further processed
or a ‘trigger file’ or
an ‘OK file’.

Figure 15.154

Under , enter which computer/Agent should be checked and which file(s) need to be
searched (path or file name). It is also possible to search related directories and use
wildcards (* and/or ?) under Path.
Provide the exact details of what should be checked in the specified path under Event
. In the example above, PATH_FILE_COUNT > 0 indicates that the relevant file must ex-
ist at least once. It is also possible to check the file system for available disk space and
initiate a response if a value exceeds or falls below a certain threshold.
Check may be used to determine, whether and when the Event ends itself (Repeated:
does not end automatically; Once: after a non-recurring check, regardless of the result;
Until the first hit: recurs until a match is found).
Time control corresponds to the TimeEvent settings.
If FILE_STABLE or FILE_
CHANGED is entered un-
der and: in the Event sec-
tion, the Check and Timer
control options are deac-
tivated (grayed out) and
the Event ends as soon as
the file in the above exam-
ple is present and remains
unchanged for more than Figure 15.155
one minute.

150
Chapter 15

15.1.3. Database Event


!Process is processed when a predefined condition applies. The condition must have
been defined by the user on the Database tab. In contrast to
a Time Event, you can specify that the Event ends itself if the
condition applies (Event tab => Check => Until the first Hit).

Figure 15.156

15.1.3.1. Usage
Similar to a File System Event and a trigger file, a Database Event can also wait for a
trigger in order to start further processing in AE. Not only can a Database Event com-
pare values retrieved with an SQL statement; it can also compare values from Variable
objects and even static values:

Figure 15.157

151
15.1.4. Using Events as Stand-alone Runs/within a Workflow
File System Events and Database Events are mainly used as stand-alone runs and as
part of a Workflow. Stand-alone here means that the Event is available in the Activity
window as an individual process without a parent process such as a Workflow.
Time Events usually start as stand-alone runs and are not part of a Workflow or Sched-
ule. If further processing is required when a defined Event occurs, there are two ways
of doing so:
1. The Event is a stand-alone run: It starts further processing from its !Process tab us-
ing ACTIVATE_UC_OBJECT() and ends itself where applicable.
2. The Event is part of a Workflow: It ends itself without starting another task in it’s
!Process tab. Further processing commences in the Workflow as soon as the Event has
ended.
These are just two of the many possible options. Another possible variation for the sec-
ond option would be that the Event starts a second task from it’s !Process tab before it
ends itself and releases further processing in the Workflow.
It is also possible to schedule an Event in a Schedule object. For example, the Schedule
could start the Event at 10 a.m. The Event would start a Job in an interval of x minutes
before it ends itself at 4 p.m. Its termination at 4 p.m. is specified on the Runtime tab.
The Runtime tab is explained in detail in the AE - Basics Part 2 training course.

152
Chapter 15

12. Exercise

Duration approx. 20 minutes

1. Task

Create a Time Event. Start a Job in an interval of one minute at 10 a.m.


at the earliest. Use the following script line

:SET &RUN_ID# = ACTIVATE_UC_OBJECT(NAME_OF_YOUR_CALL)

Make sure that the Job is not activated twice.

2. Task

Create a File System Event. Let the Event wait for the c:\temp\FS.txt
file. The Event should end itself if the file is available in the file system.
Make sure that the Event only ends itself if the file has remained un-
changed in the file system for at least two minutes.

153
154
Chapter 16
Include Object

155
Chapter 16

16.1. Include Object as Text Component (JOBI)


Script parts which are used very often and repeatedly are best stored in an Include ob-
ject. If you repeatedly use the same 30 JCL lines in Jobs, we recommend putting them
in an Include object and simply call this Include object in the Process tab of Jobs.

Include objects can be nested, for example, you could call Include_02 in Include_01. A
maximum of 16 levels is allowed.

TIP: If you unintentionally generate a loop by calling Include_01 in itself, the AE server
will send an error message.

Figure 16.158

16.1.1. Calling Include Objects via Automation Script


Integrate an Include object in a Script (Process tab) using the following script state-
ment:

:INCLUDE NAME_OF_THE_INCLUDE_OBJECT

16.1.2. Usage Search for Include Objects


Use the Search-for-use function to find out whether or not an Include object is used
by other objects: Right-click the object in the AE Explorer and then click SEARCH/RE-
PLACE => SEARCH FOR USE.

NOTE: The Search-for-use function needs to be activated by your AE Administrator;


otherwise your searches will return no results. The same is true for deleting an Include
object. It will be deleted without any note for possible usage in other objects!

The Administrator must set the SEARCH_SCRIPT_FOR_USAGE parameter.

157
158
Chapter 17
AgentGroup Object

159
Chapter 17

17.1. The AgentGroup (HOSTG)


An AgentGroup (or HostGroup) combines Agents of the same operating systems or ap-
plications.

17.1.1. Use Cases


Virtual machines (VM) are often used in the IT world. They can start based on require-
ments or workload, and can participate in Job processing. For Jobs, it is mostly irrel-
evant on which machine they run. The same applies to Active/Passive clusters. This is
where the AgentGroup is used.

Identical Jobs (such as backups) often need to be started on more than one machine.
Instead of creating an individual Job for each Agent, you can create one Job and allocate
an AgentGroup to the Job that contains all the relevant Agents.

17.1.2. Object Creation


First create the AgentGroup, then determine the OS, version, hardware, etc. whose
Agents should be combined. Then determine the mode.

The following modes are available:


ANY: Any active Agent

FIRST: The first active Agent in the table

NEXT LISTED: ‘Round Robin’ or ‘Each active Agent takes a turn’

LOAD DEPENDENT: The Agent that currently has the most available AE
resources
• ALL: The task is started on all active Agents
• Special form ALL => FORCE COMPLETE BROADCAST:
Also distributes Jobs to inactive Agents

Figure 17.159

161
TIP: You can change the order in which Agents appear in the table using the gray arrows
at the side . Highlight the Agent that you want to move and click the arrows . In
the example shown here, the WIN02 Agent is moved to the first position in the table.

Figure 17.160

NOTE: Forcing a complete broadcast may result in a Job not ending as it will wait for
possibly inactive Agents too.

17.1.2.1. Selecting Agents


There are two ways of selecting the relevant Agents. You can select them from a list
of existing Agents (fully qualified) or you can use filters (partially qualified). To select
an Agent from the list, click ADD HOSTS. The advantage of this method is that you can
avoid ‘chance hits’. When working with filters, even though the Simulation allows you to
see which Agents currently belong to an AgentGroup, you do not know which Agents will
be available in your client the next day.

A third option involves selecting an Agent via the Role (see “Figure 17.159” page 161).
The AE Administrator must specifically assign the role to the Agent. This is usually car-
ried out only on request. The chance of ‘catching’ an unwanted Agent is much less here
than when using filters (partially qualified).

17.1.3. Usage in Jobs


You use an AgentGroup in the same way you use an individual Agent, i.e., you enter the
AgentGroup in the Host field.

TIP: You can also open an AgentGroup directly for editing by right-clicking the Host field
and then clicking EDIT. You can find out on which Agent a Job was started by reading
the Job’s report and statistics.

162
Chapter 18
Documentation

163
Chapter 18

18.1. Documentation Methods


AE provides two methods of documentation:
• Documentation as a standalone object (DOCU)
• Documentation on another object’s tab

18.1.1. The Documentation Object (DOCU)


As its name already suggests, the Documentation object can be used to document
things. It can be used if a user has no read access to other objects but still requires
information. It can also be used for cross-object and/or object-independent documenta-
tion. As on the Documentation tab of each object, it may also include Structured Docu-
mentation (see below).

18.1.2. Documentation on an Object’s Tab


Each object has its own Documentation tab. This tab contains at least the two sub-tabs
Version Management and Docu (by default). The Docu tab allows plain text to be stored.

18.1.2.1. Version Management


The Version Management tab stores the object’s last saved versions. Saved versions
10 to 25 are displayed in the example . Executions exist for some of these saved
versions. The Statistics window of the task allows you to see the version with which a
respective execution was started . The different versions can be restored by the user,
provided they have the necessary write permission.

Figure 18.161

NOTE: Version Management must be activated by the AE Administrator. It is disabled


by default.

165
The AE database must be reorganized on a regular basis. As a result, the object versions
are also normally removed from the database. To ensure that you can, if necessary, ex-
port specific versions from the version management system before they are removed,
ask your AE Database Administrator whether they reorganize the database, and, if so,
when.

18.1.2.2. Structured Documentation


The AE Admin-
istrator can also
set up Structured
Documentation
(see “18.1.2.3.
Changing the De-
faults” below).
This can be used
to keep docu-
mentation in a
folder structure.
It has proved
helpful to use the
file:\\ notation to
Figure 18.162
specify a file on
the computer of
your UserInterface or a shared drive. The object documentation can be stored in a
separate wiki and can therefore be made centrally available.

18.1.2.3. Changing the Defaults


If more than the default documentation sub-tabs or different sub-tabs are needed, in-
cluding Structured Documentation (see “18.1.2.2. Structured Documentation” above),
your AE administrator can use the AE client variable UC_OBJECT_DOCU to define these
tabs per client and object type.
The following UC_OBJECT_DOCU example sets a default DOCU tab for all object types
(KEY=*), except for all job objects (Key=JOBS):

Figure 18.163

With this definition, the job objects will contain 2 documentation sub-tabs in addition
to the Version Management sub-tab: one called “General” for plain text, and one called
“Details” for Structured Documentation (note the @ character in front of the text!);
multiple sub-tabs are separated by comma. All other objects get just the default plain
text sub-tab called “Docu”.

166
Chapter 19
Export and Import
of Objects

167
Chapter 19

19.1. Exporting and Importing Objects


Any AE user may export objects. This means that the user can write object definitions to
an xml file and then import them to another client, for example. The Import and Export
functions are subject to the AE authorization concept and therefore can be limited by
the AE Administrator.

19.1.1. Export
Right-click the object to be exported and then click EXTERNAL & PRINTING => EX-
PORT....

In the following window, you can rename the uc4_export.xml file (default) and select a
storage location.

Figure 19.164

PLEASE NOTE that all the objects belonging to an object must also be exported. Objects
may also be linked to other objects via Automation Script. These objects must also be
exported if they do not yet exist in the target client.

You may also write objects to an export file individually and also import them individu-
ally. Of course, it is much quicker and easier to write all the objects to be exported to
one file. However, it can be difficult to select all the objects at the same time when they
are stored in different folders.

The Search function can help you. Right-click the folder


whose sub-folders contain the objects you are looking
for and then click SEARCH... .

The Search window will now start to search in the fold-


er structure you specified (From path).

Figure 19.165

169
Select the object types you want to search for and then click START. Please note that
folders cannot be exported before V11. Do not include them in your search.

You can see the


search results in
Figure 19.166. You
can now highlight
some (press CTRL  +
click the mouse) or
all (CTRL + A) of the
results, right-click
the highlighted ob-
jects and then click
EXTERNAL & PRINT-
ING => EXPORT....

Figure 19.166

19.1.2. Import
Using the Import function to another client requires write access for this particular cli-
ent. If this write access has been granted for the objects stored in your export file, im-
porting objects follows the same procedure as the one used to export objects, although
in reverse order.

Open the IMPORT command from


the FILE menu of the UserInter-
face or from the context menu in a
specific file and select the xml file
to be imported. Specify whether
any available objects should be
replaced. Objects with the same
name will be skipped when im-
porting if this option is not active.

You can also specify whether any Figure 19.167


existing links to other folders
should be kept for each replaced object. If you do not select the ‘Keep existing folder
links’ option, all existing links of the replaced objects are removed.

Keep in mind that (prior to V11) all import objects are written into one folder even if
they derive from different folders.

TIP: In a Transport, the original folder structure of objects will automatically be created.
Transporting objects is part of the AE - Basics Part 2 and AE - Administration training
courses. Should you wish to make use of the transport function, contact your AE Admin-
istrator for details.

170
Chapter 19

19.2. Export/Import of Folders and Links


Starting with V11, the standard AE Export/Import functions allow you to export/import
AE objects together with folders and folder structures and even links. No special settings
are necessary: when you position your cursor on a folder within the AE Explorer (no
matter if used in the tree view or the file view), your export file will contain the folder
and all files and sub-folders within this structure and can be imported into another AE
system or another AE client using the Import function at a folder location of your choice
within the target client.
If any link is found within the files/folder structure, the following message will pop up:

Figure 19.168

Here, you can decide if you want linked objects to be exported as well. If you click “YES”
and import the XML file to another client later, a new folder called ##INCLUDED_EX-
TERNALS## will be created in the target client, at the same level as the imported folder,
containing the linked objects.
Note: Do not use Export/Import for mass transports (instead, use the Transport Case),
as:
1. The import and export functions cause a heavy workload for the Dialog Work Pro-
cesses (DWP), whereas the Transport Case loads directly into the database.
2. From V11 on, the size of the XML file for Import must not exceed 30720 KB (30 MB).

171
172
Chapter 20
‘Put it all together’

173
Chapter 20

20.1. Practicing Entire Contents


We will complete this training by handling all the objects we have discussed in a greater
whole. During this time, you may check and complete the AE knowledge you have.

This individual tasks are parts which will be composed to a whole afterwards.

These tasks do not necessarily cover all your processes. There are some customers who
do not use FileTransfers, other ones do not use Notification objects etc. These tasks
mainly serve to introduce you to the way AE works and functions. Initially, many new
users ask themselves: “Which object is the best one to use?”

Exercises
1. Task

Mondays through Fridays you expect to have a file in your file system
at 10:00 a.m. at the earliest. This file will be sent to you by a business
partner via FTP (not AE FileTransfer). When this file has arrived, you
transfer it to another computer. Delete the file from the source com-
puter after it has been successfully transferred and end the ‘search
process’ so that it does not use up resources unnecessarily.

Notes:

2. Task

You need three Jobs for a Workflow. The Jobs must end with return
code 22 if the string ‘error’ appears in their report.

Notes:

175
3. Task

The three Jobs from the second task should be started sequentially in
a Workflow. Each Job checks whether its preceding Job has run without
errors. The last Job is checked by the End object. The Workflow should
be blocked if an error occurs.

Notes:

4. Task

A Sub-Workflow runs before the last Job of the second task starts. Its
two Jobs must only run on every second Tuesday. The Agent to be used
by the Jobs should be the one of all Windows (or Unix) Agents which
uses the fewest resources when the Jobs starts. Assume that this load
balancing is important for your virtual machines.

Make sure that the Sub-Workflow’s status is checked by its successor.


In case of an error, the Sub-Workflow should block and an e-mail alert
should be sent to you. The e-mail should contain the name and the
RunID of the ‘initiator’.

Notes:

176
Chapter 20

5. Task
Occasionally, an additional Job must be started after the two Jobs in
the Sub-Workflow in task 4. You do not know when this will happen.
Make sure that the Sub-Workflow does not have to be edited each time
the additional Job needs to run.

Notes:

6. Task

The Workflow in task 3 should start on all Working Days at 10:15 a.m.


and every day at 5 p.m.

Notes:

Good luck!

177
178
Course Evaluation Survey
Now, at the end of this training, we would like you to tell us about your
AUTOMIC Training - experience with this course. For this purpose please take a few minutes
Flexibility for your convenience and fill in the Course Evaluation Survey which is available under the fol-
lowing link:
• Classroom training
--Training Centers https://www.surveymonkey.com/r/AutomicUniversity
--On Site
• eLearning
--Online (AUTOMIC Learning Portal)
• Certifications
Further links and contact information
--Training Centers In case you need any additional information, support, product down-
--Online (AUTOMIC Learning Portal) loads, etc., here is a summary of the most important links around Au-
tomic training and products:

AUTOMIC Learning Portal:


https://automic.netexam.com

AUTOMIC Downloads:
https://downloads.automic.com

AUTOMIC Support:

The 5 pillars of https://automationpassion.com

Automic University AUTOMIC web page:


• Experience: we train more than http://automic.com
3,500 professionals each year
• Pragmatism: our veteran trainers If you have any comments or suggestions for improvements of this
use methods they employ out in document or any questions about certain Automic classroom, on site
the field to back up their experience and/or eLearning training or certification offerings, do not hesitate to
with real-world examples contact us at:
• Innovation: understanding complex
training@automic.com
concepts is made easy through fun
tools
• Application: as well as theoretical
• material, our trainers share best
practices from their experience in
the field
• Personalization: training is molded
to students’ needs to help steer
them towards their goals

$
CONTACT THE TRAINING CENTER
sops.services.us@automic.com

With the aim of creating solutions perfectly tailored to clients’ needs, Automic has been sharing its insights, best practices and expertise through its training center, Automic
University, for over 30 years. Training and certification courses combine theory with real-world case studies.They cover:
• The full range of Automic’s software solutions: the Automation Engine, ONE Automation, Application Manager, Dollar Universe, Sysload, Streamcore, and many more
• All IT best practices and reference material: ITIL®, PRINCE2®, COBIT®, CMMI, DevOps, Lean IT and Cloud – using a variety of innovative teaching tools, such as the Automic
edition of the well-known board game Trivial Pursuit™ (there are six editions, each dedicated to a different information system).
Our training combines education with operational experience, as it is given by experienced consultants from Automic’s Professional Services department as well as from
consultancy firm Automic Consulting. www.automicuniversity.com
180

Das könnte Ihnen auch gefallen