Vous êtes sur la page 1sur 1024

Automation Engine

User Guide

Automic Software GmbH

iiCopyright

Copyright
Automic and the Automic logo are trademarks owned by Automic Software GmbH (Automic). All
such trademarks can be used by permission only and are subject to the written license terms. This
software/computer program is proprietary and confidential to Automic Software and is only available
for access and use under approved written license terms.
This software/computer program is further protected by copyright laws, international treaties and
other domestic and international laws and any unauthorized access or use gives rise to civil and
criminal penalties. Unauthorized copying or other reproduction of any form (in whole or in part),
disassembly, decompilation, reverse engineering, modification, and development of any derivative
works are all strictly prohibited, and any party or person engaging in such will be prosecuted by
Automic.
No liability is accepted for any changes, mistakes, printing or production errors. Reproduction in
whole or in part without permission is prohibited.
Copyright Automic Software GmbH. All rights reserved.

Automation Engine

iii

Contents
1 Getting Started Guide

1.1 Welcome!

1.2 Preliminary Checklist

1.3 First Logon to the UserInterface

Lesson 1
1.4 Exploring the User Interface
Lesson 2
1.5 Creating an Object
Lesson 3
1.6 Executing an Object

2
3
3
4
4
7

Lesson 4

Exercise

1.7 Statistics and Reports

Lesson 5

Exercise

10

1.8 FileTransfers

10

Lesson 6

10

Exercises

12

1.9 Automation via Schedules

12

Lesson 7

12

Exercise

15

1.10 Calendar Conditions

15

Lesson 8

15

Exercise

19

1.11 Using Workflow Objects

19

Lesson 9

19

Exercise

21

1.12 Information through Notification

21

Lesson 10

21

Exercise

26

1.13 Using Groups

27

Lesson 11

27
28

iv

Contents

1.14 Forecasts

28

Lesson 12

28

Exercise

30

1.15 Navigation in the UserInterface

31

Lesson 13

31

Exercise

34

1.16 Personal Settings

34

Lesson 14

34

Exercise

35

1.17 Last but not Least


2 UserInterface

35
36

2.1 Introduction

36

2.2 Login

36

Description

37

2.3 Using Desktop Modes

38

2.4 Buttons in the Toolbar of the UserInterface

39

Standard Commands

39

Commands for Handling Objects

41

Special Commands of the Activity Window

42

2.5 Keyboard Shortcuts

43

General

43

Menu bar

44

Desktop

44

Objects

44

2.6 Settings of the UserInterface

45

2.7 UC4 Explorer

55

2.7.1 UC4 Explorer

55

General Information

55

Folder

56

Objects

57

2.7.2 Context Menu of the UC4 Explorer

60

2.7.3 UC4 Recycle Bin

61

2.7.4 UC4 Transport Case

62

2.7.5 Version Management for Objects

64

Automation Engine

2.7.6 Favorites

67

2.7.7 Recent Objects

67

2.8 Search

68

2.8.1 Search

68

Objects

68

Date

69

Further Options

70

2.8.2 Searching for Object Usage

72

2.8.3 Searching and Replacing Texts

74

2.9 Activity Window


2.9.1 Activity Window
Activity Window Views
2.9.2 Activities Window Selection

76
76
78
79

Objects

79

Status

80

Host

81

Archive Keys

83

2.9.3 Context Menu of the Activity Window


2.10 Comments in Tasks
Script

84
87
89

2.11 Message Window

89

2.12 Detail Window

91

2.12.1 Detail Window

91

Details in the Editing and Monitor View of Objects

92

Details in the Activity Window

93

Details in the Statistical Overview

93

Details in the Forecast Window

93

2.12.2 Detail Window Contents


2.13 Forecasts

93
97

2.13.1 Forecast

97

Usage

97

Forecast Window

98

List View

99

Script Elements

100

vi

Contents

2.13.2 Auto Forecast

100

Preparation Work Required by the UC4 Administrator

101

Use

101

Restrictions

102

2.14 System Overview

103

2.14.1 System Overview

103

2.14.2 Usage

104

2.14.3 Clients

105

2.14.4 Automation Engine/Server

107

Context Menu

108

Properties

109

Usage

113

Workload - message analysis

114

Workload - message statistics

115

2.14.5 Agents

116

Context menu

117

Properties

119

2.14.6 AgentGroups

123

Context menu

123

Properties

124

Simulation view

125

2.14.7 Queues
Context menu
2.14.8 Agent Assignment

125
126
127

Description

128

Context menu

128

2.14.9 Users

128

2.14.10

128

User States

129

Context menu

129

2.14.11 Messages

130

2.14.12 Database

132

2.14.13 License

133

License abbreviation

134

Automation Engine

2.14.14 ILM

vii

136

Partition tab

137

History tab

138

2.14.15 Cache

138

2.14.16 Password Exit

140

2.14.17 Quarantine

140

Reaction to invalid messages

141

Releasing messages

142

Context menu

142

2.15 Quick Search


2.15.1 Quick Access

143
143

Client-wide quick search

143

Quick Access

144

2.15.2 Quick Search Function for Lists

145

General information

145

Wildcards

146

Pushbuttons of the Quick Search bar

146

2.15.3 Quick Search / Quick Access in Objects

147

Quick Search

147

Quick Access

149

2.15.4 Quick Search in Workflows

151

Pushbuttons of the Quick Search bar

151

Wildcards

152

Connect to

153

2.16 Importing and Exporting Objects


3 Objects
3.1 Introduction
3.1.1 UC4's Object Orientation

153
156
156
156

Opening Objects

156

3.1.2 Object Classes

157

Executable Objects

157

Active Objects

157

Passive Objects

158

System Objects

158

viii

Contents

3.1.3 Object Types


Other Object Types
3.1.4 Variables in UC4
3.2 Alphabetical Listing

159
161
161
163

3.2.1 Agent

163

Agent

163

Header tab

163

Description
Attributes Tab
Description
Agent Tab
Description
Authorizations tab

164
164
164
165
166
166

Description

167

Documentation Tabs

167

Structured Documentation

168

Agent Variables

170

3.2.2 AgentGroup

174

AgentGroup

174

Header tab

175

Description

175

AgentGroup Tab

175

Description

176

Authorizations tab

178

Description

179

Documentation Tabs

179

Structured Documentation

180

AgentGroup Monitor

182

AgentGroup Attributes

184

AgentGroups

184

Creation

185

Mode

185

View

186

Execution

186

Automation Engine

ix

3.2.3 Agent/Client Assignment

186

Agent/Client Assignment

186

Simulation
Header tab
Description
Filter Tab
Description
Authorizations tab

187
188
188
188
189
190

Description

190

Documentation Tabs

191

Structured Documentation

191

3.2.4 Calendar

193

Calendar

193

Header Tab

194

Description
Calendar Tab
Description
Types of Calendar Keywords

195
196
196
199

Static

199

Yearly

202

Monthly

204

Weekly

206

Group

207

Roll

209

Documentation Tabs
Structured Documentation

211
211

3.2.5 Client

213

Client

213

System Client 0000

214

Local Clients 0001 to 9999

214

Header tab
Description

214
215

Attributes Tab

215

Contents

216

Contents

Settings Tab

216

Documentation Tabs

217

Structured Documentation

218

3.2.6 Cockpit

219

Cockpit

219

Creating Cockpits

220

Procedure
Header tab
Description
Sync Tab

220
220
221
222

Description

223

Cockpit - Cockpit Tab

223

Creating and positioning display elements

224

Defining Properties

225

Display of Elements

225

Function of Elements

225

Data Source of the Elements

226

Variables & Prompts Tab

226

Runtime tab

229

Description

229

Comments

231

Process Tab

232

Description

232

Documentation Tabs

233

Structured Documentation

233

Cockpit - Monitor

235

Cockpit Attributes

236

3.2.7 CodeTable

238

CodeTable

238

Description
Header tab
Description
Code Tab
Description

238
239
240
240
240

Automation Engine

Documentation Tabs
Structured Documentation
CodeTable - Usage

xi

241
242
244

Diagram of Data Traffic

245

UC4 Automation Engine

245

Agent

246

Agent - Job Execution

246

Agent - FileTransfer

247

3.2.8 Connection

247

Connection

247

Header tab

247

Description
Attributes Tab
Description
Remote Function Call Tab

248
248
249
249

General tab

249

Secure Network Connection tab

251

Interfaces tab

252

Internet Tab
Description

255
255

DB Tab

256

Documentation Tabs

257

Structured Documentation

258

3.2.9 Dashboard

260

Dashboard

260

Header tab

260

Description

261

Documentation Tabs

261

Structured Documentation
3.2.10 Documentation

262
264

Documentation

264

Header tab

264

Description

265

Documentation Tabs

265

xii

Contents

Structured Documentation
3.2.11 Event

266
268

Event

268

Header tab

269

Description
Sync Tab

270
270

Description

271

Event - Calendar Tab

272

Description

272

Attributes Tab
Description
Event Tab

273
274
275

Description

276

File System Tab

277

Description

277

Comments

279

Console Tab

280

BS2000

281

Description

281

Comments

282

z/OS

282

Description

282

Comments

283

OS/400

283

Description

283

Comments

284

SAP

284

ABAP Event History

285

Description

285

Comments

285

Java Event History

286

Description

286

Comments

287

XI Communication Channels

287

Automation Engine

xiii

Description

287

Comments

288

Windows

288

Description

289

Comments

290

Database Tab

290

SQL query

291

Statistical value

293

Variable object

293

Runtime tab

293

Description

294

Comments

296

Variables & Prompts Tab

297

Rollback Tab

299

Process Tab

301

Description
! Process Tab

301
302

Description

302

Documentation Tabs

303

Structured Documentation
Event - Execution
Type-Specific Features
Event - Restart
Type-Specific Features
Event Attributes

303
305
305
306
306
306

Attributes for all Event Types

306

Attributes for the Event Type "Time Event"

310

Attributes for the Event Type "File System"

310

Attribute for the Event Type "Database"

313

Attributes for Event Type "Console"

316

3.2.12 FileTransfer

318

FileTransfer

318

Creating FileTransfers

318

Procedure

318

xiv

Contents

Header tab
Description
Sync Tab
Description

318
319
320
321

Attributes Tab

321

Contents

322

FileTransfer Tab

324

Description

325

Comments

328

Platform-Specific Features

328

Runtime tab

328

Description

329

Comments

331

Variables & Prompts Tab

332

Rollback Tab

334

Process Tab

338

Description
Output ScanTab
Description
Post-Process Tab

338
339
340
341

Description

341

Documentation Tabs

342

Structured Documentation

343

Partially Qualified FileTransfer

344

Old FileTransfer Protocol

344

New FileTransfer Protocol

345

FileTransfer - Execution

347

Object-Type specific Features

347

Transferring Files

348

AgentGroups

348

Compression

349

End Status

349

UNIX and MPE

349

VMS

350

Automation Engine

FileTransfer - Restarts
Object-Type specific Features
FileTransfer - Statistics/Report

xv

350
350
351

Structure

351

For example

352

FileTransfer Attributes

352

3.2.13 Filter

361

Filter

361

Header tab

362

Description
Filter Tab

362
362

Description

363

Documentation Tabs

365

Structured Documentation
3.2.14 Group

366
367

Group

367

Creating Groups

367

Procedure
Header tab
Description
Sync Tab

368
368
369
370

Description

371

Group - Attributes Tab

371

Description

372

Runtime tab

372

Description

373

Comments

375

Variables & Prompts Tab

376

Rollback Tab

378

Group - Process Tab

380

Description

380

Documentation Tabs

380

Structured Documentation
Group - Execution

381
383

xvi

Contents

Object-type-specific Features

383

Activation of an Application Order

384

Activation of Application during a Queue

384

Restart
Object-type-specific Features

385
385

Group - Monitor

385

Group Attributes

386

3.2.15 Include

389

Include

389

Header tab

389

Description
Process Tab

389
390

Description

390

Documentation Tabs

391

Structured Documentation
3.2.16 Job

391
393

Job

393

Creating Jobs - Basics

393

Procedure
Creating Jobs - Details

394
394

BS2000

394

GCOS8

395

JMX

395

MPE

395

NSK

395

Oracle Applications

395

z/OS

395

OS/400

396

PeopleSoft

396

SAP

396

Siebel

396

SQL

396

UNIX

397

VMS

397

Automation Engine

xvii

Windows

397

Header tab

397

Description

398

Output Tab

399

Sync Tab

400

Description
Attributes Tab

401
402

Description

402

Host Attributes Tabs

405

Host Attributes Tab

405

BS2000

405

GCOS8

407

JMX

408

MPE

411

NSK

412

Oracle Applications

413

OS/400

414

PeopleSoft

416

RA

417

SAP

419

Siebel

422

SQL

423

UNIX

425

VMS

427

Windows

428

z/OS

430

Runtime tab

434

Description

434

Comments

437

Step List for z/OS Jobs

437

Variables & Prompts Tab

439

Rollback Tab

441

Output ScanTab

445

Description

446

xviii

Contents

Form Tabs

447

Form tab (JMX)

447

Form Tab (PeopleSoft)

449

Form Tab (SAP)

452

Form tab (SQL)

455

Script Tabs

457

Pre Process Tab

457

Process Tab

459

Post-Process Tab

460

Child Post-Process tab(SAP)

461

Documentation Tabs
Structured Documentation
Job - Execution

462
463
465

Object-Type specific Features

465

Database

465

MPE

466

UNIX

466

Job - Include

466

Generated Jobs

468

Job - Statistics/Report

469

Object-type-specific Features
Job Report - PeopleSoft
PeopleSoft Process Log File
Job Attributes

469
470
470
471

Job Attributes

471

BS2000

478

GCOS8

480

JMX

481

MPE

483

NSK

485

Oracle Applications

487

z/OS

488

OS/400

492

PeopleSoft

494

Automation Engine

xix

SAP

495

Siebel

500

SQL

503

UNIX

505

VMS

506

Windows

508

3.2.17 Login

510

Login

510

Creating Login Objects

510

Procedure
Header tab
Description
Login Tab

511
511
511
512

Description

512

Comments

513

Login Information Format

513

Platform-specific Features

514

Documentation Tabs
Structured Documentation
3.2.18 Notification
Notification
Notification Monitor
Creating Notifications

514
515
517
517
518
518

Selecting a Template

518

Which Tabs to Use

519

Procedure

520

Header tab
Description
Sync Tab
Description
Attributes Tab
Description
Notification tab
Description

520
520
521
522
523
523
525
526

xx

Contents

Recipients tab
Description
Runtime tab

527
528
529

Description

529

Comments

531

Variables & Prompts Tab

532

Rollback Tab

534

ProcessTab

536

Description

536

Documentation Tabs

537

Structured Documentation
Notification - Execution
Object-Type-Specific Features
Notification - Monitor

537
539
539
541

Message

543

Request

544

Alert

545

Notification - Object Type ALARM

546

General information

546

Script

547

Notification Attributes
3.2.19 PromptSet

549
553

PromptSet

553

Header tab

553

Description
Designer Tab

554
554

Control Elements

555

Element Properties

559

Table Overview - Elements and Properties

572

Documentation Tabs
Structured Documentation
PromptSet - Activation

573
574
575

Prompt

576

Input Assistant

577

Automation Engine

xxi

Displayed default values

577

Input restrictions

578

Modifications at runtime

578

Restart behavior

578

Dynamic PromptSet Dialogs


Examples:
3.2.20 Queue

579
580
582

Queue

582

Header tab

582

Description
Attributes Tab

583
583

Description

584

Documentation Tabs

586

Structured Documentation
Consideration of Estimated Runtime for Calculation

587
589

Example 1

590

Example 2

591

Using Queue Objects

592

Queue Assignment

592

Start /Stop

593

Exceptions

594

Queue - Modifications

594

Edit

595

Modify

595

MODIFY_SYSTEM

595

Ignore Queue limit

595

Client Queue

596

3.2.21 RA Solution

596

RA Solution

596

Header tab

596

Description

597

Documentation Tabs

597

Structured Documentation
3.2.22 RemoteTaskManager

598
600

xxii

Contents

RemoteTaskManager

600

Header tab

601

Description
Sync Tab
Description
Attributes Tab
Description
PeopleSoft and SAP Tab

601
602
603
603
604
606

PeopleSoft Processes

606

All SAP Jobs

607

Intercepted SAP Jobs

608

Java Scheduler Jobs in SAP

609

Process Chains in SAP

610

Runtime tab

611

Description

612

Comments

614

Variables & Prompts Tab

614

Rollback Tab

617

Process Tab

618

Description
Output ScanTab
Description
Post-Process Tab
Description

619
619
620
621
622

Child Post-Process Tab

623

Documentation Tabs

623

Structured Documentation
RemoteTaskManager - Execution

624
626

Displaying and tracing non-UC4 operations

626

Controlling the queue

627

Stop/Go

627

Canceling

627

Ending

628

RemoteTaskManager Attributes

628

Automation Engine

3.2.23 Schedule

xxiii

632

Schedule

632

Creating Schedules

633

Procedure

633

Header tab
Description
Sync Tab
Description
Attributes Tab
Description
Schedule Tab

633
633
634
635
636
636
638

Schedule Tab

638

Properties of Objects

640

Properties of Objects

640

Start-Time Tab

641

Variables & Prompts Tab

643

Calendar Tab

644

Runtime tab

646

Result Tab

648

Runtime tab

650

Description

651

Comments

653

Variables & Prompts Tab

653

Process Tab

656

Description

656

Documentation Tabs

657

Structured Documentation
Schedule - Execution

657
659

Object-Type specific Features

659

Termination or Period Turnaround of a Schedule that includes active tasks

660

Schedule - Monitor

661

Schedule Monitor during Execution

663

Schedule Monitor after Execution

664

Schedule Attributes

665

xxiv

Contents

Modifications in Active Schedules

668

Schedule object

669

Schedule monitor

669

3.2.24 Script

670

Script

670

Header tab

670

Description
Sync Tab
Description
Attributes Tab
Description
Runtime tab

671
672
673
673
674
675

Description

676

Comments

678

Variables & Prompts Tab

678

Rollback Tab

681

Process Tab

682

Description

683

Documentation Tabs

683

Structured Documentation
Script - Execution
Object-Type specific Features
Script Attributes

684
686
686
687

3.2.25 Server

690

Header tab

690

Description
Attributes Tab

690
690

Description

691

Documentation Tabs

692

Structured Documentation
3.2.26 StyleSheet

692
694

StyleSheet

694

Header tab

695

Description

695

Automation Engine

xxv

StyleSheet Tab

695

Documentation Tabs

696

Structured Documentation
3.2.27 Sync

697
698

Sync

698

Header tab

699

Description
Attributes Tab
Description
Sync Tab

699
700
700
701

Description

701

Documentation Tabs

702

Structured Documentation

702

Sync - Monitor

704

Using Sync Objects

706

Synchronizing Workflows Using Sync Objects

711

3.2.28 TimeZone

715

TimeZone

715

Header tab

715

Description
Attributes Tab

716
716

Description

717

Documentation Tabs

719

Structured Documentation
3.2.29 User
User

720
722
722

Users in System Client 0000

723

Users in Local Clients 0001 to 9999

723

Header tab
Description
User Tab
Description
Authorizations tab
Description

723
723
724
724
726
727

xxvi

Contents

Privileges Tab

732

Description

733

UserGroups Tab

737

Description

737

Documentation Tabs

738

Structured Documentation
3.2.30 UserGroup
UserGroup
Description
Header tab
Description
UserGroup Tab
Description
Authorizations tab
Description
Privileges Tab

738
740
740
740
741
741
742
742
743
743
749

Description

750

Documentation Tabs

753

Structured Documentation
3.2.31 Variable

754
756

Variable

756

Creating Variables

757

Procedure

757

Header tab
Description
Attributes Tab

758
758
759

Description

759

Scope Examples

765

Variable Objects in System Client 0000

765

Variable Tab
General Information

767
767

Static

768

SQL

769

SQL SECURE

771

Automation Engine

xxvii

SQL - internal

775

SQL - internal SECURE

778

Multi

780

Filelist

782

Backend

783

Documentation Tabs
Structured Documentation
Using Variable Objects

788
788
790

Direct usage in objects

791

Resolving dynamic variables

791

Attributes for predefined variables

792

3.2.32 Workflow

797

Workflow

797

Creating Workflows

798

Procedure

798

Header tab
Description
Sync Tab
Description
Attributes Tab
Description
Workflow tab

798
799
800
801
801
802
804

Workflow tab

804

Properties of Objects

811

Object Properties

811

General Tab

811

Earliest tab

814

Preconditions Tab

816

Dependencies tab

825

Variables & Prompts Tab

828

Calendar Tab

834

Runtime tab

835

Postconditions tab

837

Solution Tab

847

xxviii

Contents

External Dependency Tab


Logic tab
IF Workflows

847
852
852

General Information

853

Defining IF Workflows

853

Processing IF Workflows

860

ForEach Workflows

860

General Information

861

Defining ForEach Workflows

861

Processing IF Workflows

864

Runtime tab

864

Description

865

Comments

867

Variables & Prompts Tab

868

Rollback Tab

870

Deployment Tab

872

Process Tab

873

Description

874

Documentation Tabs

874

Structured Documentation
External Workflow Dependencies

874
876

External Workflow Dependencies

876

Lead Time Satisfaction for External Dependencies

879

Re-using AgentGroup Calculation


Example

881
882

Special Workflow Types

883

Workflow - Execution

884

Object-type-specific Features
Workflow - Restart
Object-type-specific Features
Workflow Monitor

884
885
885
885

Display

885

Modifications

887

After the Execution

890

Automation Engine

xxix

Workflow Attributes

891

Modifications to Active Workflows

895

General

895

Procedure

895

Important notes

897

Script

897

Processing a Rollback

897

Backup

898

Rollback

898

Rollback of Workflows

900

Specific Rollback Commands

901

3.3 Working with Objects


3.3.1 Executing Activatable Objects
Execution with Options

901
901
901

Once

902

Recurring

904

Frequency tab

904

Time-Frame tab

906

Days tab

908

Range tab

909

Restart
Scheduling Recurring Tasks

910
912

Display

912

Changing recurring Settings

913

Procedure

913

Restarting Executable Objects

914

Display

914

Procedure

915

Script

916

Status Symbols of Tasks

916

Archive Keys

917

Object Properties

917

General

917

Authorizations

918

xxx

Contents

UC_CAUSE* ReadBuffer Variables


3.3.2 Reading and Modifying Attributes
Attributes
UC4.DBChange
Attribute Dialog
3.3.3 Reports

919
920
920
921
921
923

About Reports

923

Report Types

925

Registered Job Output

925

Report for Executable Objects

928

Special Reports for SAP Jobs

929

UC4 and XBP 2.0

929

XBP 3.0

929

Report for Servers and Agents

930

Client Reports

931

Extended Reports

932

About Extended Reports

932

Extended Report for Script

932

Extended Report for JCL

933

Extended Report for Object Access

934

3.3.4 Return Codes


System Return Codes of Executable Objects

935
935

System return codes and Assigned Task States in the Workflow / Schedule

935

System return codes and Assigned Task States During Execution

937

Manual Modification of Task States

941

User Return Codes of Executable Objects

942

Defining User Return Codes

942

Setting User Return Codes

943

Script

943

Windows

943

UNIX

943

BS2000

943

3.3.5 Statistics

944

About Statistics

944

Automation Engine

Statistics of Executable Objects


Statistics Overview

xxxi

945
945
945

Statistics of Child Objects and Parent Objects

946

Statistics for Servers and Agents

947

User and Client Statistics

948

Selective Statistics

949

General

950

Period

950

Objects

951

Status/RunID

952

Archive Keys

953

Host

954

Host

955

3.3.6 Pedefined Variables

956

General Information

956

Syntax
Using Predefined Variables

957
957

Script

957

Attributes

958

Variable Picker

959

List of Predefined Variables for System and Object Values

963

UC4 System

963

Object

964

Return codes of script functions

964

Attributes

968

Date and Time Formats


Glossary

977
981

.1 A

981

.2 B

982

.3 C

982

.4 D

982

.5 E

983

.6 F

983

xxxii

Contents

.7 G

984

.8 H

984

.9 I

984

.10 J

984

.11 K

985

.12 L

985

.13 M

985

.14 N

985

.15 O

986

.16 P

986

.17 Q

987

.18 R

987

.19 S

989

.20 T

989

.21 U

990

.22 V

992

.23 W

992

.24 X

992

Automation Engine

1 Getting Started Guide


1.1 Welcome!
The Automation Engine offers a wide range of functions! Are you eager to quench your thirst for
knowledge about the efficient use of all the provided functions? We have put great effort into the
development of this introductory chapter. It intends to quickly familiarize you with the basics of
UC4 and enables you to deal with the fine tunings and settings of the Automation Engine.
This chapter serves to introduce you to the Automation Engine through lessons in which the
functions of the UserInterface are explained step by step. Practice working with the Automation
Engine by engaging in the examples. From lesson 4 onwards ("Executing an Object"), additional
exercises are included at the end of each document. They can be used to apply the new contents
and learn even more about additional functionality aspects. The completion of the whole
introductory chapter prepares you very well for more complex functionalities.
The UC4 Documentation is at your disposal. Just click the F1 key and the documentation opens
at exactly the page that contains the description for the currently selected window.
Enjoy exploring the Automation Engine!

1.2 Preliminary Checklist


To be able to participate in the following examples and practices, your UC4 system must fulfill
some basic requirements.
Present this list to your UC4 administrator. It communicates the specifications that must be
provided.
A UC4 system with the following minimum installations:
l

At least 1 UC4 Automation Engine (consisting of 1 work process and 1 communication


process)
At least 2 agents (a Windows and a UNIX computer are used in the examples. You can use
any operating system that is supported by the Automation Engine).

The UC4 system requires:


l
l
l

At least 1 client (in addition to the system client 0000)


Login objects for the installed agents
User objects for logging on to the UC4 system

Your computer requires:


l
l
l

A UserInterface
Some files in order to test file transfers in UC4
Your personal login data for the UC4 system

Chapter1 Getting Started Guide

Have you met all the above requirements? Now you're ready to go!

1.3 First Logon to the UserInterface


Aim:
- Logging on to the UserInterface
- Changing the password
Lesson 1
Our very first step is to log on to the Automation Engine. This is done via the UserInterface - the
user interface for managing your UC4 system. Start the UserInterface as shown below:
l
l

Under Windows: Call Start -> Programs -> UC4 -> UC4.Dialog.
Under UNIX: Call the file ucdj.sh.

The following login mask opens:

Ask your UC4 administrator for the appropriate login data.


1. Select the UC4 system to which you want to connect.
2. Enter the client, your name, department and password.
3. The user interface of the UserInterface can be displayed in German, English and French.
Select your preferred language.
4. You can also define a color. It is shown in the form of a line below the title bar of windows. It
symbolizes the connection to a particular UC4 system and client.
5. Click the button OK.
If you log on using the password "pass", you will be requested to change it immediately.
Regardless, you can change your password at any time. Just click on System in the menu bar of
the UserInterface and select the command Change Password.

Automation Engine

1.4 Exploring the User Interface


Aim:
- Familiarize yourself with the UserInterface
Lesson 2
When your logon has been successful, the UserInterface is displayed. The top area shows the
menu and the toolbar. The remaining area can be used as a work space. As this is your first logon,
the three main windows are displayed.

UC4 Explorer - tasks managed by the Automation Engine are defined via objects and
stored here.

Activity Window - displays the current activities of your client.

Message Window - outputs information messages.

These windows can be moved and also changed in size. If you close a Window, it can be reopened
at any time using the corresponding button in the toolbar.
You can also open several UC4 Explorers at a time, the same holds true for the Activity Window. If
you click on the button , a window opens in which filters can be specified for the Activity Window.
By default, no filter is set which means that all activities are displayed. Use the tabs to specify

Chapter1 Getting Started Guide

filters for various areas. Then Click OK tab and the Activity Window opens. The status bar displays
your specified filter settings.
Window views can be refreshed at any time - just press the F5 key.

1.5 Creating an Object


Aim:
- Understanding the object orientation of the Automation Engine
- Creating folders
- Creating a Job
Lesson 3
Activities and processes managed with the Automation Engine are shown in the form of objects.
This brings about significant advantages:
l

Distributed operations
Complex processes can be handled in simple individual steps.
Re-usability
Partial tasks can be integrated in various processes.
Simple maintenance
Modifications can easily be assumed.
Clarity
Processes have a clear structure.
Expandability
New requirements can easily be integrated.

What types of objects are available? Refer to the document Object Classes which lists all object
types and briefly describes the tasks for which the particular objects can be used. In this lesson and
the following ones, various object types are used to familiarize you with the functioning of the
Automation Engine and present some suggestions of how you might structure your own processes.
Let's start creating an extra folder for our examples. Note that objects are created, edited and
administered in the UC4 Explorer.
1. Highlight the particular folder in the UC4 Explorer in which you want to insert a new folder.
Highlight the main node if your client does not yet contain any folders at all. The main node's
name consists of the UC4 system's name and the client number.
2. Click the button in the toolbar. A window listing all the available object types opens.
The content of your Templates window can look different from the one shown here, as the
UC4 administrator can influence the object types that should be displayed.

Automation Engine

3. Select the object type FOLD (Folder).

4. Assign an appropriate folder name.


To rename an object, subsequently highlight it in the UC4 Explorer and press the F2 key.
The next step serves to create a Job. This job is then used as the basis for our future examples. Job
objects can be used to execute commands on computers or in Enterprise Business Solutions (SAP,
PeopleSoft, Oracle Applications, Siebel). Commands, therefore, are widely used in this object type.
Note that there are individual Job objects available for each supported platform.
1. Open the folder created beforehand
2. Re-click the button in the toolbar.
3. Now select the object type JOBS.WIN (Windows Job).
4. As before in the Folder object, you can now assign a suitable name for the Job object.
5.
UC4 strongly recommends using naming conventions for your objects!
6. Then the object is opened automatically.
The following illustration displays the result in the UC4 Explorer:

Chapter1 Getting Started Guide

Now let's focus on the content of the Job object:


1. Open the Job object by double-clicking on it, if its not already opened.
2. Take a look at every individual table. Each object type consists of tabs in which lots of
properties can be specified. Some tabs are available in each object type whereas others are
only available in particular ones. No worry, the pre-specified default values are suitable in
most cases. They only need to be adapted for special cases.
Note that using the F1 key opens the UC4 Documentation at exactly the page at which
the tab and its settings are described.
3. Open the Notification tab
4. Select the computer from "Host" and the appropriate "Login object" required in order to log on
to this computer.
Contact your UC4 administrator if questions concerning Login objects arise.

The content of the Attributes tabis the same in all platforms, regardless if it belongs to an
z/OS Job, SAP Job, UNIX JOB etc.
5. Change to the Process tab.
6. The commands that should be processed can be stored here. Enter some Windows
commands. The follow illustration shows an example.

Automation Engine

7. Store modifications that you have made in objects by using the


8. Close the Job object.

button in the toolbar.

1.6 Executing an Object


Aim:
- Manually executing the Job
Lesson 4
The previous lesson explained how to create a Job object. This job should now be executed.
Executed objects are also referred to as tasks. Hence the processing of objects is described
whenever the UC4 Documentation refers to tasks.
1. Highlight the Job object in the UC4 Explorer.
2. Start processing it with the toolbar button.
3. The task is now displayed in the Activity Window. How long it remains there depends on the
commands that have been specified in its Process tab. Comprehensive scripts produce
longer job runtimes whereas simple commands have the effect that the job remains in the
Activity Window only for a few seconds.
When the job ends, the task is by default removed from the Activity Window. The
Attributes tab of the Job object, however, can be used to change this setting.

The Activity Window contains many columns which provide information about tasks such
as object name, start time and RunID. The RunID is a run number which is used in
executions.

Chapter1 Getting Started Guide


4. Right-click a task in the Activity Window and select the command Detail in order to obtain
further information about the execution.

5. If some peculiarities occur during the execution (such as the host is not active), an
appropriate text is output in the message window.

Exercise
Execute the Job object without having a Login object specified in the Notification tab Refer to the
text that is supplied in the message window. Correct this error by selecting the right Login object
and restarting the object. Now the message window displays that the job has ended normally.

1.7 Statistics and Reports


Aim:
- Calling the statistics of a Job
- Reading a job report

Automation Engine

Lesson 5
Meeting auditing requirements is highly important in the Automation Engine. Many functionalities
support these requirements by providing detailed information about what is going on in your UC4
system. This includes the statistics of objects which contain information about executions.
Now let's call the statistics of your Job object:
1. Highlight the Job object in the UC4 Explorer.
2. Open the statistics overview with the

button in the toolbar.

Each line stands for one object execution. The columns in the statistical overview are
essentially identical to those of the Activity Window.
3. Right-click on a statistical entry and select the command Detail. The Detail Window opens
and provides additional information about the execution.
4. The report can be called in the very same way. Depending on the object type and complexity
of the execution, it can comprise of several pages.

5. Close the Detail Window, the report and the statistics overview.

10

Chapter1 Getting Started Guide

Exercise
Read through the reports and Detail Windows of your Job object to get detailed information about
their executions.

1.8 FileTransfers
Aim:
- Creating a FileTransfer
- Creating a wildcard FileTransfer
Lesson 6
An integral part of processing is the transfer of files. The Automation Engine therefore provides an
extra object type for this activity. A statistics overview is available for FileTransfers (as for Job
objects) so that the individual executions can be traced.
We are now going to create a FileTransfer. Prepare several files that can be transferred to a different
computer.
1. Open the folder in the UC4 Explorer in which the Job object is stored.
It is of no importance where your objects are stored. Nevertheless, UC4 recommends
establishing a folder structure that makes your administrative work as easy as possible, as
objects that use each other do not necessarily have to be stored in the same folder.
2.
3.
4.
5.

Click the button in the toolbar.


Select the object type JOBF (FileTransfer).
Assign a suitable name.
Double-click the FileTransfer object to open it.

Let's now take a look at the content of the FileTransfer object. You already know many tabs from
the Job object. It applies for FileTransfers as well as all other object types that the predefined
default values are suitable. We are now going to define the file that should be transferred and the
location to which it should be sent.
1. Change to the FileTransfer tab.
2. Enter the file to be transferred and the host (computer) from which it should be transferred in
the upper half of the tab. First select the host and then the appropriate Login object which is
required in order to log on to the host.
3. Enter the path and the name of the file to be transferred. Ensure that the format is also
defined (binary or text file).
4. The lower half of the tab serves to specify the destination of the FileTransfer. Also select the
host and the appropriate Login object.
5. Enter the name and the path in which the file should be stored. You can also assign a
different name for the file.
6. Furthermore, you can define the reaction if the file already exists on the destination
computer. Select Overwrite in this case.

Automation Engine

11

7. The following illustration shows an example from the FileTransfer tab:

8. Store the modifications made in the objects with the


9. Close the FileTransfer object.

button in the toolbar.

The FileTransfer we created transfers one file. If you want to transfer several files with one
FileTransfer object, you can use wildcards. In doing so, files sharing the same start characters can
be transferred. Let's create such a FileTransfer:
1. Highlight the previously created FileTransfer object. We shorten the procedure and therefore
duplicate the existing FileTransfer.
2. Call the command Duplicate via the context menu (right mouse button).
3. Assign an appropriate name and double-click on the object to open it.
4. Activate the checkbox "Use wildcards" in the FileTransfer tab.
5. As we want the files to be transferred one after the other, the default setting "1" in "Max.
parallel-running transfers" is correct.
6. Enter the file names using "*" for the source and target hosts in the FileTransfer tab. The
illustration below serves as an example:

12

Chapter1 Getting Started Guide

7. Be careful to define the correct format, that is, "text" or "binary"!


8. Store your modifications using the button in the toolbar and close the FileTransfer object.
9. Start the execution using the button in the toolbar.

Exercises
Execute the two FileTransfer objects individually. The first file transfer is displayed in the Activity
Window as an individual task. As the second FileTransfer object transfers several files, each file is
displayed individually and you can view multiple tasks. Read the statistics and the reports of both
FileTransfer objects after the FileTransfer.

1.9 Automation via Schedules


Aim:
- Creating a Schedule
- Scheduling a FileTransfer
- Using the Schedule monitor
Lesson 7
So far, we have manually started our objects. As this is non-productive when a large number of
objects are involved, we are now going to explain the functioning of the object type Schedule in
close detail. Schedules start objects in a predetermined interval - every two days at 10.00 o'clock,
for example.
One of our FileTransfer objects should be executed every day at a particular time. First, we create a
Schedule object:

Automation Engine

13

1. Open the particular folder in the UC4 Explorer in which you stored all other sample objects.
2.
3.
4.
5.

Click the button in the toolbar.


Select the object type JSCH (Schedule).
Assign an appropriate name.
Double-click on the Schedule object to open it.

In each Schedule, an interval must be indicated in which the assigned objects should start. This
interval is also referred to as "period".
1. Change to the Attributes tab

2. Specify "1 Day(s)" in the period section as the FileTransfer should be executed once a day.
3. Open the Schedule tab.
Now we add a FileTransfer object to the Schedule object. Two different methods can be
applied:
Method 1: Use the Drag & Drop function and move the FileTransfer object from the UC4
Explorer to the Schedule tab.
Method 2: Call the command Add Task... using the right mouse button. Enter the name of the
FileTransfer object manually or click on the three dots which opens a new UC4 Explorer
window from where the object can be selected.
4. The properties window opens automatically as soon as the FileTransfer object has been
added to the Schedule.

14

Chapter1 Getting Started Guide

5. Enter the time 18.00 hours (24-hour system) in the Start time tab and then click OK.
6. Store your modifications with the

button which is found in the toolbar.

The Schedule tab displays this FileTransfer that has been planned for 6.00 p.m. (18:00 hours). You
can also plan several objects in one Schedule object. Each of these objects then has its own start
time. The execution interval, however, remains the same for all objects.

An object can be referred to as "Child" when it is activated by a superordinate task - a "Parent".


In our example, the FileTransfer object is the "Child" and the Schedule object is the "Parent".
Other examples for superordinate tasks are Workflows and Groups which will be explained in
later lessons.
The Schedule object is not yet active. Only active Schedules execute their objects:

Automation Engine

15

1. Highlight the Schedule object in the UC4 Explorer.


2. Start the execution with the button in the toolbar.
The Schedule object is now displayed in the Activity Window and remains active until it is
ended by you.
The current status of tasks within the Schedule can be queried through a monitor:
1. Highlight the Schedule object in the Activity Window.
2. Click the button in the toolbar.
3. The Schedule monitor opens. It is structured similarly to the Schedule tab. Additionally, it
shows the task status (such as ENDED_OK) and the next time of execution.
4. Close the monitor.
5. End the Schedule object by highlighting it and right-click the corresponding popup-menu
command in the Activity Window.

Exercise
The properties window of a planned task in the Schedule object can subsequently be opened with
the command Properties using the context menu (right mouse button) in the Schedule tab. Enter
your current time plus 2 minutes. Re-start the Schedule and watch its execution in the Schedule
monitor. Then end the Schedule.

1.10 Calendar Conditions


Aim:
- Creating a Calendar
- Creating a Calendar keyword
- Assigning this Calendar keyword to a FileTransfer
Lesson 8
It is very easy and helpful to schedule tasks through Schedule objects. Calendar objects can
additionally be included as business processes often dependent on particular days.
In this lesson, we adjust the execution of the existing FileTransfer. It should be started Mondays to
Fridays, but not on weekends.
1. Open the folder in your UC4 Explorer in which all existing sample objects are stored.
2.
3.
4.
5.

Click the button in the toolbar.


Select the object type CALE (Calendar).
Assign an appropriate name.
Double-click the Calendar object to open it.

The weeks are graphically displayed in the Calendar tab.

16

Chapter1 Getting Started Guide

Now the Calendar must be linked to the FileTransfer object. This is done with Calendar keywords.
1. Open the Calendar tab.
2. All Calendar keywords are listed on the right side. As this Calendar object has been newly
created, there is only the default keyword STATIC.

3.
4.
5.
6.

Different types of Calendar keywords are available, each having its own Form Assistant
for the quick and easy assignment of days.
Right-click with the mouse button somewhere in the list area and select the command New
Keyword -> Weekly.
A dialog window opens in which this keyword can be renamed to WEEKDAYS.
Remove the default keyword STATIC via the Del button or the command "Delete keyword"
in the context menu (right mouse button).
Now select the command Calendar Definition... (context menu) for the keyword
WEEKDAYS. A Form Assistant opens.

Automation Engine

17

7. Highlight Mo, Tu, We, Th, Fr and click OK.

8. Store the modifications using the


now highlighted in the Calendar.

button in the toolbar. All Mondays through to Fridays are

If several Calendar keywords are created, the days of the currently selected Calendar
keyword are highlighted.
9. The Calendar keyword WEEKDAYS now contains the dates of all weekdays.

10. Close the Calendar object.


The Calendar object is now ready for use. In the next step, we assign the Calendar keyword to the
FileTransfer in the Schedule.
1. Open the Schedule object.
2. Change to the Schedule tab and highlight the FileTransfer.

18

Chapter1 Getting Started Guide


3.
4.
5.
6.

Right-click the popup-menu command Properties.


Change to the Calendar tab and activate the checkbox of the same name.
Select "Execute if one condition matches".
Select your Calendar object and the keyword WEEKDAYS, then click OK.

7. The Schedule tab now contains the letter "C" in the Conditions column which indicates that
the Calendar condition has been set.

8. Store your modifications using the

button in the toolbar.

Automation Engine

19

9. Close the Schedule object.


In accordance with the definitions made, the FileTransfer object will run from Mondays to Fridays.
Note that this only applies when the FileTransfer was activated by the Schedule.

Exercise
Create a second Calendar keyword in the Calendar object which includes all Saturdays and
Sundays. Now select the WEEKEND keyword in the FileTransfer object instead of the
WEEKDAYS keyword. Hence, the FileTransfer object does not run on days between Monday and
Friday.
End the Schedule object and re-assign the WEEKDAYS keyword to the FileTransfer object.

1.11 Using Workflow Objects


Aim:
- Creating a Workflow object
- Using the Workflow monitor
Lesson 9
This lesson serves to introduce you to the object type Workflow. It comprises objects that run in
sequence, which is very useful for maintaining the UC4 Database.
Archiving and reorganization is required in order to maintain the database. These maintenance
processes must run in succession which is best organized by using Workflow objects. As a matter
of principle, UC4 strongly recommends handling your processes using Workflows and Schedules in
order make use of the full benefits of UC4's object orientation.
The job and the two existing file transfers will now be integrated in a Workflow.
1. Open the particular folder in the UC4 Explorer in which you stored all the created sample
objects so far.
2.
3.
4.
5.
6.

Click the button in the toolbar.


Select the object type JOBP (Workflow).
Assign an adequate name and double-click on the Workflow object to open it.
Change to the Workflow tab. By default, the start and end boxes are already available.
Insert the job and both file transfers. This can be done in two ways (as with Schedule
objects,):
Method 1 - Drag & drop one or several objects from the UC4 Explorer to the Workflow tab.
Method 2 - Call the command "Add Task" by using the right mouse button. You can either
enter the name of the object manually or click on the three dots to open a new UC4 Explorer
window from which the object can be selected.

The objects are displayed as boxes which can be moved and positioned as you like. The
lens symbols shown in the toolbar can be used to zoom into or out of the Workflow.
7. Order the objects starting with the two file transfers, followed by the job as shown in the
illustration below:

20

Chapter1 Getting Started Guide

Structuring the objects provides a clear overview. UC4 recommends using several
Workflows when there are a lot of objects or including other Workflow objects - called subWorkflows - in a Workflow.
8. The execution order for the objects is determined by lines. Right-click on an empty space in
the Workflow tab and select the command Line Tool. The mouse pointer is now displayed in
the form of a pencil symbol.
9. Connect the individual object boxes with lines (left-click with the mouse and draw it from box
to box). The illustration below shows the result thereof:

An object within a Workflow will only be activated when all its predecessors have ended.
Therefore, the job in our example will only start when the files of the two FileTransfers have
already been transferred.
10. Store your modifications using the

button in the toolbar and close the Workflow object.

The next step is to execute the Workflow:


1. Highlight the Workflow in the UC4 Explorer and start its execution with the button in the
toolbar.
2. The Workflow object is now displayed in the Activity Window. Due to the default settings,
the Workflow monitor also opens. Watch the Workflow execution. Tasks that are being
executed are displayed green; tasks that have already ended are shown in gray. Red signals

Automation Engine

21

that an error occurred (such as the file that should be transferred does not exist).

The default setting is that the Workflow will automatically be removed from the Activity
Window as soon is has ended. The Workflow monitor will also be closed. These settings can
be changed in the Attributes tab of the Workflow object.

Exercise
Delete the lines between the boxes (right-click with the mouse to highlight the particular line and
then click Remove dependency using the left mouse button to delete it). Arrange the three objects
one after the other. Then draw new connecting lines. When watching the execution of this
Workflow, you will notice that the Workflow starts with the first object, and then the second object is
processed and so on. Each object waits until its predecessor is finished.
Finally re-arrange the objects as shown in the above illustration.

1.12 Information through Notification


Aim:
- Creating a Notification
- Using the Notification monitor
- Assigning the Notification to a FileTransfer
- Restarting the FileTransfers in the Workflow
Lesson 10
Notifications are very important and are commonly used object types. They can be used to send
messages to individual users or even user groups of the UC4 system.
We will now create a Notification object and include it in the first FileTransfer in order to assure that
a message is sent if an error occurs.

22

Chapter1 Getting Started Guide


1. Open the folder in the UC4 Explorer in which you have stored the previous sample objects.
2.
3.
4.
5.
6.

Click the button in the toolbar.


Select the object type CALL (Notification).
Assign a suitable name and double-click on the Notification object to open it.
Change to the Notification tab
Select the priority "High" and the type "Alert".

7. Change to the Notification tab.


8. Enter a message text, keeping in mind whether this text should be used for multiple tasks or
only for specific ones. Depending on the use, the message should contain a general text or a
specific one.

Automation Engine

23

9. Change to the Recipients tab.


10. Select your user in the Recipients column.

11. Store your modifications using the

button in the toolbar and close the object.

For testing reasons, the Notification is now started manually.


1. Highlight the Notification in the UC4 Explorer and start it with the button in the toolbar.
2. The Notification monitor opens. Additionally, a Notification symbol in the right upper edge of
the UserInterface notifies you of the incoming message.

24

Chapter1 Getting Started Guide

3. Click Accept and then Done in order to successfully end the Notification.
The Notification object does not end if you close the Notification monitor instead of
responding to it as described above. The Notification symbol is still shown in the
UserInterface's upper right edge.Right-click this symbol and select the client. A dialog opens
in which you can reopen the Notification monitor.
The Notification sends a message if the first FileTransfer of the Workflow could not be executed
successfully.
1. Open the Workflow object by double-clicking it.
2. Switch to the Workflow tab. Properties can be specified for each object of the Workflow (as
in Schedule objects).
3. Right-click the box that is used for the first FileTransfer and select the command Properties.
4. Switch to the Postconditions tab.
5. Select Conditions and use the drag and drop function to move the STATUS entry to the left
window area. Now click <STATUS> within the STATUS block. In the displayed dialog,
select the status that is expected for a successful execution, which in this case is ENDED_
OK. Click OK to confirm this dialog.
6. Now add an Else condition to the STATUS block. Do so by calling the block's menu with the
symbol in the upper right edge and select the command "Add Else block".
7. In the Else section, you can define the expected reactions if the FileTransfer does not end
with the status ENDED_OK. Click Actions (right window section) and drag
EXECUTEOBJECTand BLOCK to the Else section.
8. EXECUTE OBJECT executes any executable object of your choice and BLOCK blocks the
task if the previously defined status condition does not apply (Else). For the parameter
<Object> of EXECUTE OBJECT, enter the object which should start (BSP_CALL01)and set

Automation Engine

25

the option "do not wait". In the BLOCK section, you can set any status text for the blocked
task.

9. Store your modifications in the Workflow object using the


this object.

button in the toolbar and close

Now the Notification can be tested in combination with the Workflow.


1. Enter a non-existing file name in the first FileTransfer object. This should cause an error in
your Workflow.
2. Highlight the Workflow in the UC4 Explorer and start its execution using the button in the
toolbar.
3. The Workflow monitor opens. As the file cannot be transferred due to the wrong file name,
the Workflow blocks. The FileTransfer box is displayed yellow.

26

Chapter1 Getting Started Guide


4. The Notification monitor also opens. Click Accept in order to indicate that you are going to
handle this problem. Thus, other recipients of this message know that somebody is already
in charge of this situation.
5. Right-click the FileTransfer box in the Workflow monitor and select the command Edit. The
FileTransfer object opens and the erroneous file name can be corrected. Now store and close
the FileTransfer.
6. The FileTransfer can now be re-activated. It is not necessary to restart the whole Workflow.
Just right-click the FileTransfer box and select the command Restart...
7. Click OK, the default settings are appropriate in this case.
8. The Workflow will now end successfully. Click Done.
You can also create the Notification CALL.ALARM using the button. It has been preconfigured and information about the name of the UC4 system, object type etc. is then
automatically included in messages.

Exercise
Select different priority levels and types in the Notification object. Start it manually and watch how
the different settings affect the Notification.

Automation Engine

27

1.13 Using Groups


Aim:
- Creating a Group
- Executing objects in a Group
Lesson 11
Usually, many tasks run in your UC4 system. Whether you want some to run parallel or not, using
the object type Group is very helpful. This object type is also useful for tasks that should be
collectively processed at a later point in time.
The two existing FileTransfers and the job should be integrated in a Group.
1. Open the particular folder in the UC4 Explorer in which you have stored the previous sample
objects.
2.
3.
4.
5.
6.
7.

Click the button in the toolbar.


Select the object type JOBG (Group).
Assign a suitable name.
Double-click the Group object in order to open it.
Change to the Notification tab
Our FileTransfers and the job should not run parallel but one after the other. Hence, the
default value "1" in the option "Max. parallel-running tasks" is suitable. The other pre-defined
settings for the execution are also correct for this example as the Group will be called
manually.

8. Store your modifications by using the

button in the toolbar and close the Group object.

The Group is assigned in the objects.


1. Open the two FileTransfer objects and the Job object and select the Group in the start-type
section of the Notification tab Store the modifications and close the objects.
2. Highlight the three objects and start their execution with the button in the toolbar.
3. The objects are now displayed in the Activity Window but have not yet started. They are in
the waiting condition "Registered" until the Group is activated.

28

Chapter1 Getting Started Guide

4. Highlight the Group object and start its execution with the button in the toolbar.
5. The Group is now displayed in the Activity Window and starts one object after the other (not
parallel). This procedure can also be watched in the Group monitor which is called via the
context menu (right mouse button) in the Activity Window. In the following illustration, the
first FileTransfer has already ended. The second one is being processed while the job waits
for its start.

1.14 Forecasts
Aim:
- Using the Auto-Forecast
- Using the regular forecast
Lesson 12
You already know how to create, schedule and execute objects. As your tasks are mainly organized
via Schedules, it is important to have the time and duration of task executions displayed centrally.

Automation Engine

29

The Auto-Forecast provides this functionality.


Supported by the Auto-Forecast, we will retrieve the next execution time of the FileTransfer that has
been included in the Schedule.
1. Highlight the Schedule object in the UC4 Explorer and start its execution with the
in the tool bar.

button

Note that the result of the Auto-Forecast only includes tasks of active Schedules and
objects of type Event.
2. Open the Auto-Forecast with the

button in the toolbar.

3. Click Recalculate if the calculation period for the forecast data is not up to date.
4. Limit the result by selecting "FileTransfer" from the list of object types and enter the name of
the FileTransfer object.
5. Now enter the period of time for which the executions should be displayed. It must lie within
the calculation period.
Your calculation period can deviate from the illustration shown above as it depends on the
settings made by your UC4 administrator.
6. Click Execute Query.
7. The lower part of the window lists the next FileTransfer executions. If the period includes a
weekend, the specified Calendar conditions are also considered (as can be seen in the
above illustration). The FileTransfer is not activated on weekends and therefore, the status
box in the column Logical start is displayed white.
8. Close the Auto-Forecast and end the Schedule object.
In addition to the Auto-Forecast, you can also query an individual forecast for a particular object. It
provides information about the average duration of this object's execution.
1. Right-click the Job object in the UC4 Explorer and select the command Forecast.
2. The calculation of the average runtime is based on several options that can be specified
here. In our case, the default settings are sufficient and you can click OK.

30

Chapter1 Getting Started Guide

3. The Forecast window opens in which all forecasts are located. The Runtime column informs
about their average execution times.

Auto-Forecast calculations also create individual forecasts (see above).


4. Close the forecast window.

Exercise
Include the Workflow in the Schedule object. Now start the Schedule. The Auto-Forecast now also
includes the Workflow and its objects.

Automation Engine

31

1.15 Navigation in the UserInterface


Aim:
- Working with the UC4 Explorer
- Searching objects
- Finding object uses
Lesson 13
You have already used many functions of the UserInterface in the previous lessons. This document
serves to explain additional useful functionalities.
General information:
From any location in the UserInterface the available commands can be called via the menu, push
buttons in the toolbar, context menu (right mouse button) and shortcuts. When we restarted the
Workflow in our example, we could directly open and edit the object via the Workflow monitor.
Another very functional detail: If the name of an object is written in a window (such as in a text field
or a table), you can directly open and edit it via the right mouse button.

The view of the UC4 Explorer can be changed according to your preferences:
1. Objects can be sorted by names, object types, etc. - just click on the particular column title.
2. If you like, you can rearrange the columns by dragging the column title to the designated
position.

32

Chapter1 Getting Started Guide

3. The view of object symbols can also be changed. Right-click an empty space in the folder
and select View. The options Details, List and Large icons are then available.
4. Opening several UC4 Explorers is also possible.
Keep the following in mind when working with the UC4 Explorer:
You have already created a folder at the beginning of this chapter. Note that due to the object
orientation of the Automation Engine, folders are also regarded as object types. They are
therefore created with the

button in the toolbar.

Object names within a client must be unique.


It is irrelevant in which folder the objects are stored. UC4 recommends creating a folder
structure that makes your administrative work as easy as possible. Objects that use each other
(such as Workflows) do not necessarily have to be stored in the same folder.
Links can also be created in the UC4 Explorer. You can access a particular object in several folders.
1. Highlight the object to which you want to create a link and call the command Link to... which
is available in Duplicate/Link/Move in the context menu.
2. Select the folder to which the object should be linked.
The Search function is another important functionality. It can be used to search objects within a
client, by using filter criteria.
1. Call the search function with the button in the toolbar.
The search contains three tabs that can be used to limit the search result.
2. Select the object types Job and Calendar.
3. Click Start.
4. The result is displayed in the lower half of the window.

Automation Engine

In some situations it can be helpful to know in which other objects a particular object is also used.
This special search for use is also available.
1. Highlight the first FileTransfer and call the command Search for Use... from the context
menu (right mouse button).
2. The search opens and the name, object type and type of search are already inserted.
In the settings of the Objects tab in Search for... you can define whether the search
function searches for objects or for object uses.
3. Click Start.
4. The result is displayed in the lower half of the window.

33

34

Chapter1 Getting Started Guide

Exercise
Create a new folder and try to link objects. Search for the sample objects and their uses.

1.16 Personal Settings


Aim:
- Individual use and configuration of the UserInterface
Lesson 14
The previous lessons trained you to use the various functionalities of the Automation Engine. Now,
we want to introduce you to the various individual settings that can be applied and make working
with the Automation Engine even more comfortable.
1. Multi-desktop mode
Using multi desktops is very convenient. So far, you have been using one working
environment of the UserInterface. This can be changed by adjusting the settings of the
UserInterface, which can be called using the menu item Options in the General tab.
See: Using Desktop Modes

Automation Engine

35

2. Arranging windows
Windows can be moved and changed in size as required. Use the menu Options to store
your individual settings. The command Settings opens several tabs. In the General tab,
magnetic windows can be activated.
See: Settings of the UserInterface - General
3. Opening monitors
In the settings of the UserInterface, you can also specify the monitors that should open
automatically when an object has been activated.
See: Settings of the UserInterface - Activity refresh
4. Safety queries
The Check Back tab is also available in the settings and contains a list of situations in which
a safety query is made. Example: If you do not want to have the query "Do you really want to
execute this/these object(s)?" displayed with each object activation, you can change this
setting in this tab.
See: Settings of the UserInterface - Check-back
5. Connections to several clients
The menu item Connections can be used to establish connections to several clients. A
special license is required for this function.

Exercise
Try the above configuration methods and find your preferred settings.

1.17 Last but not Least


Have you been working through the lessons intensively and also engaging in the exercises?
Congratulations! You are now well informed of the basics of the Automation Engine.
As the next step, you can now start to map your own processes in the UC4 system. Possible
window and object configurations are described in the UC4 Documentation. This online help is
available via the F1 key and always opens the page that contains information about the active
window's content.
A particular document UC4 would like to recommend in this context is Tips and Tricks on Using the
UC4 Documentation which provides very helpful information.
Would you like to continue enhancing your UC4 knowledge? Refer to our introductory chapter about
UC4 Script and the Sample Collection, both of which provide deep insights into the common use of
UC4 objects in combination with UC4 Script.
These very practical chapters serve to introduce you to the basic functioning of the Automation
Engine. For the more complex functions of the Automation Engine, UC4 recommends attending one
of the trainings offered by our experienced trainers. They will be pleased to explain details and
peculiarities in connection with your particular environment!

36

Chapter2 UserInterface

2 UserInterface
2.1 Introduction
The UserInterface serves as a connector between the UC4 system and its users. Its userfriendly interface facilitates the quick and easy handling of all processes.
This document provides general information about the way the UserInterface works. For more
detailed information, refer to the subsequent documents that describe the individual functions.
The UserInterface view includes the following three main windows:
l
l
l

UC4 Explorer - includes the existing objects


Activity Window - includes the tasks that are active including their states
Message Window - prints information, warnings and error messages that refer to the
processes

If you have the necessary authorization, you can also have the System Overview displayed. It
provides information about the UC4 system's current status and you can edit it by using various
functions.
You can save your personal UserInterface settings so that the order of the main windows is the
same when you log on the next time. All users can create their own particular settings. The
UserInterface offers numerous other settings that can also be adjusted according to the different
users' requirements.
The way how date and time are displayed depends on the regional settings that are specified for the
particular user.
You can also make screenshots of particular UserInterface windows. This function can be very
useful for various purposes. You can call it by using the Screenshot command which is available in
the UserInterface's Options menu. If you activate this function, the mouse pointer displays with a
symbol and you can create screenshots of particular UserInterface windows. Click on an area
within a window or on the title bar to screenshot the whole window. A red frame indicates the outline
of the newly created picture. If the window on which you click is not in the fore, the overlapping
window(s) are also including in the screenshot. They are stored in .PNG format. You can also
snapshot particular parts of the UserInterface's interface. Just activate the screenshot function by
keeping the Shift key pressed.
You can use the F1 key to call the UC4 Documentation from anywhere in the UserInterface. The
help opens at exactly the section that describes the particular window, tab or script element.
Use this opportunity in order to obtain information about the various UserInterface functions.
You can use the View in the menu bar to change the view of the windows. You can either select
the Standard Design (new as of version 9) or the Classic Design (same design as in version 8).

2.2 Login
The login dialog that is shown below pops up when you start the UserInterface. Enter your name
and department, and the client to which you want to establish a connection.
You can establish connections to several clients and UC4 systems from within the UserInterface.
Doing so requires a specific license. A colored line that displays underneath a window's title bar

Automation Engine
shows windows of the same client in the same color. You can select your preferred colors from a
drop-down list.
The UC4 administrator determines the encoding for the UC4 system in the UC4 Variable UC_
SYSTEM_SETTINGS, key XML_ENCODING. You can open connections to several UC4
systems in the UserInterface if they have the same encoding. You must start a second
UserInterface if you want to connect to a UC4 system with a different encoding.

Description
Field

Description

Connection

Drop-down list for the UC4 system connections that are defined in the
uc4config.xml configuration file.

Client

Client number.
Allowed values: 0 - 9999

Name

User name.

Department

User's department.

Password

User's password.

Language

Drop-down list for the language of the UserInterface.


Allowed values: "D", "E", "F"
"D" = German
"E" = English
"F" = French

37

38

Chapter2 UserInterface

Color

List in which you can select a color.


In the login dialog, you can assign a color to each client connection
within a UserInterface instance. Each color can be used once. It will
appear as a colored line underneath the title bar of the individual
windows.
The number of colors and the colors that are available depend on the
definitions that are stored in the configuration file uc4config.xml of the
UserInterface. Note that officially, the number of simultaneous
connections is limited to 8.

See also:
Client
User

2.3 Using Desktop Modes


The desktop - working space of the UserInterface - is the environment in which objects can be
created and their execution be monitored. Due to the various functions that are available, many
windows can be in use. Two different desktop modes are therefore available which serve to
provide a clear overview.
Select your preferred mode when working with UC4.
l
l

Single Desktop Mode


Multi Desktop Mode

Desktop modes are specified in the settings of the UserInterface - General tab.
Regardless of the selected mode can the windows be grouped according to your requirements via
the menu item "window". It is found in the title bar of the UserInterface. You can also specify a
magnetic area which provides for a seamless grouping of windows.
Single Desktop
If you work with one desktop, all windows are displayed on this desktop. If there are connections to
several clients, the windows belonging to the same client show the same color line underneath the
window's title bar.
Multi Desktop
An extra work space is created for each connection when the multi-desktop mode is used.
Additionally, you can create new desktops. The specific advantage is that the windows of different
connections can be displayed in one desktop - you can create a desktop for the Activity Windows of
your clients, for example.
A user-defined desktop can be created as shown below:
1. Click the button [+] which is available next to the Desktop tabs.
2. Enter a name and a color for the new desktop to be created
3. Activate the required client connection through the menu item "Connections" (New
Connection) in the menu bar of the UserInterface
4. Now open the windows of the particular client
5. Repeat steps 3 and 4 to access the windows of other clients

Automation Engine

39

The client currently used in the user-defined desktop is shown in the UserInterface's title line.
By default, the checkbox "Adopt active connection color" is activated when a user-defined desktop
is created. If you are logged on to client 1 with a red color, the same color is suggested for the userdefined desktop if it should contain windows of client 1. If you log on using the color blue, the userdefined desktop is automatically displayed in blue, too.
For each desktop, the status bar displays a tab in the connection's color or the color which has been
selected for the user-defined desktop. Click these tabs to switch between the different desktops.
You can also use the shortcuts to scroll through the available workspaces:
l
l

Forth "Ctrl" + "Shift key" + "<"


Back: "Ctrl" + "<"

For connections, the tab shows the name of the UC4 system and the client. You can specify an
individual name for user-defined desktops.

The context menu of a box contains the commands "Activate Desktop" and "Close Desktop". Userdefined desktops can be renamed and their colors be changed if required.
It is not possible to close the connection to the client to which you connected first via the
UserInterface.
The tabs for connection desktops are listed in alphabetical order. If a connection has windows in a
user-defined desktop which does not yet exist, this desktop is queued directly after the
corresponding connection desktop. If windows of a connection already exist in several user-defined
desktops, their tabs are queued alphabetically.
Objects can be dragged and dropped from one desktop to another. The target desktop is
displayed when an object - mouse button held down - is dragged to one of the desktop's tabs in
the status bar. In doing so, it can be stored in the Explorer of the destination desktop. In this
case, the object is not moved but copied.
Although each desktop can display different windows, the Message Window and the System
Overview remain the same. Both always show the same content.
User-defined desktops are stored and still available when you log on to the UserInterface the next
time. If defined, the main windows such as Explorer, Activity Window, Message Window and
System Overview are also displayed in the same way.
A global license is required in order to open several connections. Without this special license,
only one additional connection can be established to the system client 0000.

2.4 Buttons in the Toolbar of the UserInterface


The following overview describes the meanings and functions of all symbols that are used in the
UserInterface.
Standard Commands
Symbol

Definition

Description

Explorer

Opens a new UC4 Explorer.

40

Chapter2 UserInterface

Search

Enables the Search for a client's folders and


objects by using detailed criteria.

Activities

Opens a new Activity Window.


Objects that are displayed must be set in the
Dialog Box.

Messages

Opens and closes the Message Window.

System Overview

Calls the System Overview.

Forecast

Calls the Forecast Overview.

Auto Forecast

Calls the Auto Forecast.

Settings

Calls the Settings of the UserInterface.

Execute

Runs an executable object.


This command refers to one or more executable
objects that have been highlighted in the UC4
Explorer. It also starts an executable object that is
open for editing purposes.

Statistics

Calls the current statistical overview.


l

The statistics of an object are available if


an object or its monitor view is open or if
the object has been highlighted in the UC4
Explorer.
The statistics of UC4 servers, agents or
users can be displayed in the System
Overview.

Child objects statistics

Calls the statistical overview of child objects.


This command is available if the statistics are
open and if a selected object has child objects.

Report/Last report

Displays the report/last report depending on the


context. For example:
l

The report of an active object that is


highlighted in the Activity Window or
whose monitor is open displays.
The current UC4 server or agent log can be
called in the System Overview.
The last report displays immediately if an
object is open for editing purposes or
highlighted in the UC4 Explorer.
The report of a highlighted entry can
always be called in the statistical
overview.

Edit

Opens the object so that it can be edited.

Delete

Deletes folders or objects in the UC4 Explorer.


This command refers to highlighted folders and
objects. By default, a safety query displays.

Automation Engine

Print

41

Prints the content of the particular active window.


For example:
l

The content of an object that is highlighted


in the UC4 Explorer with all its settings and
specifications in the individual tabs
including Process and Documentation
tabs.
Statistics and reports.

To select a printer other than your default printer,


open the Print Preview by using the appropriate
popup-menu command. Then click the
and select the printer of your choice.

symbol

Print...

Opens a selection dialog for the printer or the page


view if it is called from the menu.

Print preview

Creates the print preview.


You can print one or all pages of this print preview.

New object ...

Creates a new object, thereby using predefined


templates.

New Folder

Creates a new folder (object type FOLD).

Duplicate

Creates an identical copy of a particular object


using a different name.

Details

Shows the object details in the Explorer window.

List

Displays the objects in the Explorer window in list


form.

Large icons

Displays objects in the form of large symbols in


the Explorer window.

Up

Changes to the superordinate folder of a UC4


Explorer.

Refresh

Refreshes the existing view of all open windows.

Commands for Handling Objects


Symbol

Definition

Description

Save

Saves an object.

Variables...

Opens the Variable Selection dialog in objects in which you can select
predefined variables.

Cut

Cuts the highlighted text out of the Process and Documentation tab.
The text is saved in the Windows clipboard and can be inserted in new
position.

Copy

Copies a text that is highlighted in the Process and Documentation


tabs.
This text is also saved in the clipboard for further use.

Paste

Imports a text from the Windows clipboard to the Process tab or a


Documentation tab.

42

Chapter2 UserInterface

Undo

Cancels the last modification in the Process tab and the


Documentation tabs.

Redo

Repeats a previously canceled modification that has been made in the


Process tab and the Documentation tabs.

Comment
Block

Adds a comment to the active script line.

Uncomment
Block

Removes an existing comment from the active script line.

Increase
Indent

Increases the indention in the Process tab.

Decrease
Indent

Decreases the indention in the Process tab.

Weeks
horizontally

Displays Calendar weeks horizontally.

Weeks
vertically

Displays Calendar weeks vertically.

Periodic
view

Activates the periodic view in a Calendar if periods have been defined.

Search...

Searches for text in:


l
l
l

The Process and Documentation tabs of objects.


Reports of servers/agents and objects.
Message Windows.

Line Tool

Editing mode of the workflow:


Switches the Line Tool on or off so that objects in a Workflow can be
linked.

Fit

Editing mode of the Workflow:


Adjusts the size/proportion of the edited Workflow to the window size
while it is activated.

Zoom in

Editing mode of the Workflow:


Enlarges the edited Workflow regardless of the window size.

Zoom out

Editing mode of the Workflow:


Reduces the edited Workflow regardless of the window size.

Zoom in
section

Editing mode of the Workflow:


Zooms in a section of the edited Workflow that can be framed by
clicking the mouse.

Special Commands of the Activity Window


Symbol

Definition

Description

Cancel

Cancels the execution of the selected task(s).

Quit

Ends the selected long-running task(s).


Can be used in Schedules, Events, Period
Containers and RemoteTaskManagers

Automation Engine

Deactivate

Deactivates finished task(s).


Can only be used for:
l

Individual tasks (they do not run within a


workflow) that have already ended
Workflows that do not include active
tasks

Detail

Opens the Detail Window.

Filter...

Here you can change the Activity Window


selection.

Hierarchical

Activates or deactivates the hierarchical


Activity Window view.

Comments

Here you can add comments to the selected


tasks.

Monitor

Opens the monitor of Workflows.

Rollback

Processes a Rollback of the selected task(s).


This button is only available in Workflow tasks
in which the Rollback settings are active.

Restart

Restarts the task(s).


Only available for tasks that have already
ended.

2.5 Keyboard Shortcuts


You can also navigate within the UC4 UserInterface by using shortcuts.
General
Shortcut

Description

F1

Opens the UC4 Documentation at the position where it


contains information about the active window.

F3

Displays the Quick Access field.

F5

Updates the content of the active window.

Shift key + UP or DOWN


ARROW

Highlights several lines in the list view.

CONTEXT MENU (button


between "ALT GR" and "CTRL")

Opens the context menu for the highlighted window.

CTRL + A

Highlights everything.

CTRL + C

Copies the highlighted text.

CTRL + F

Opens the search window for texts.

CTRL + P

Prints the content of the highlighted window.

CTRL + V

Inserts the copied text at the mouse-pointer position.

43

44

Chapter2 UserInterface

CTRL + X

Cuts the highlighted text.

CTRL + Y

Repeats a previously undone modification in the Process


and Documentation tabs.

CTRL+ Z

Undoes the last modification in the Process and


Documentation tabs.

ALT + blank key

Opens the menu of the UserInterface window.

Enter key

Confirms the window entry.

Menu bar
Shortcut

Description

ALT + letter

Opens the menu of the underlined specified letter.

ALT + letter +
letter

Opens the menu and executes the command of the menu whose letter is
underlined.

Desktop
Shortcut

Description

Caps Lock key + CTRL + TAB

Backward switch between windows.

CTRL + TAB

Forward switch between windows.

CTRL + F4

Closes a window.

CTRL + <

Switches to the left desktop.

CTRL + Caps Lock key + <

Switches to the right desktop.

Objects
Shortcut

Description

ALT+ M

Opens the monitor of the superordinate object.

F2

Opens a dialog box for renaming the highlighted object.

TAB

Switches to the next setting within a tab.

TAB +
LEFT
ARROW

Switches to the left tab in objects.

TAB +
RIGHT
ARROW

Switches to the right tab in objects.

CTRL +
E

Opens an object for editing.

CTRL +
F

Opens the quick search function in object lists (such as the Explorer) or workflows.

CTRL+
H

Opens the Statistics.

You can use it in the Explorer, the Activity Window, the System Overview, the
Statistics window, the Search window, and for the tasks of workflows and
schedules. Note that you cannot use this shortcut when the Line Tool is active.

Automation Engine

CTRL+I

Opens the Detail Window.

CTRL+
M

Opens the monitor.

CTRL +
N

Opens the window containing the templates for object creation.

CTRL+
R

Opens the report.

CTRL +
S

Stores an object.

CTRL+
T

Opens the Statistics of the superordinate task.

45

2.6 Settings of the UserInterface


Various basic settings are available and can be used to handle the UserInterface. These settings
are user-specific which means that users can define their own preferred settings that are loaded
whenever a user logs on to the UC4 system.
Select Settings in the Options menu in the UserInterface in order to specify your personal settings.

General
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

The mode in which the desktop of the UserInterface should be displayed can be defined in the
General tab. Note that the settings that have been specified in the first connection are applied if
several connections are open.

46

Chapter2 UserInterface

In the General tab, you can define the magnetic scope of the windows that are shown in the
UserInterface. By default, this function is deactivated. If you activate it, you can also specify the
magnetic area in pixels (default value 15, max. 25 pixel). If this value is not kept, the window is
aligned to the nearest screen edge or window. Depending on the setting that you have made, this
function becomes effective either when you drag or drop the window.
Each window contains its own toolbar. You can specify whether texts that refer to the pushbuttons
should be displayed, and how.

Activity refresh
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

The Activity Window is refreshed either automatically or manually. Use theActivity refresh tab in
the Settings window in order to decide upon the basic settings you prefer.

Automation Engine

47

Windows are automatically refreshed unless the system is busy. Specify the number of seconds
that the system must be idle in order to allow refreshing. You can determine the intervals for
refreshing in the box "Refresh interval". This interval is influenced by the duration of the previous
refreshing time as refreshing can take some time when there are many tasks in the Activity Window
- for example when a Workflow is being processed. As a result, the interval until the next window is
refreshed gets longer. This setting serves performance improving purposes.
For example: The past refresh lasted 4 seconds due to the numerous activities in the Activity
Window. Therefore, the next refresh will not be carried out before 12 seconds.
If you select the option Manual refreshing is only possible via the F5 key. Selecting the option
Automatic causes an immediate refresh when the F5 key is pressed.
You can also select the objects whose monitor should open automatically whenever they are
activated.
See also: Updating UserInterface Windows

Message Window
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

Messages are displayed depending on the user privileges that have been assigned and the settings
of the Message Window. The UC4 administrator determines if a user can also receive system
messages. In this window, you can define how messages that are assigned to you should be
displayed.

48

Chapter2 UserInterface

You can select whether all client messages should be displayed, or only your own messages plus
the ones of the Group. Additionally, administrator and security messages can also be displayed.
It is also possible to specify whether the Message Window should open automatically for incoming
information or error messages. Furthermore, two checkboxes are available that can be used to
specify the message type that should be displayed. Specify the number of messages that should be
read when the UserInterface starts and when you updating using the F5 key.
The setting "Show unread messages after logon" only refers to administrator and security
messages. More detailed information is provided in the document Message Window.
Messages that have been sent by using the script element SEND_MSGare not delivered if the
checkbox "Display error messages and warnings only" is active.

Font Settings
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

You can determine the size in which the caption should be displayed in the UserInterface. This
setting affects all connections to clients or other UC4 systems opened within this UserInterface.
The selected size is stored in the connection that has been used for the first login. The effect is
that if you start the UserInterface again at a later point in time using the same first connection,
the stored font size is used for displaying the captions.

Automation Engine

49

This tab can be used to change the font used in scripts, reports and activation logs. Type "Courier
New", size 14 is used by default. The UserInterface immediately assumes modifications, open
windows must be closed and re-opened.
The font size of the windows referred to above can also be modified by using the CTRL key in
combination with the scroll wheel. These modifications then only apply for the particular window
and are not stored if the window is closed.

Script Editor
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

The settings made in this tab apply to all Process tabs.

50

Chapter2 UserInterface

Show parameter info:


Script functions and statements usually require one or several fixed or optional parameters to be
specified. A parameter list can be displayed which is helpful to enter data.
Show help for parameter info:
The UC4 Documentation describes each script element on a separate page. The script editor can
directly display the required page, pressing the F1 key is not required.
Assume line's last prefix to continuation line:
The script editor distinguishes three types of scripting lines whose first characters differ from each
other:
l
l
l

Comment lines start with "!"


UC4 scripting lines start with ":"
All other lines are JCL lines

Activating this setting has the effect that a new line automatically starts with the first character used
in the previous line.
Suggest and keep indent:
For the purpose of keeping a clear structure, scripting lines in constructs such as :IF or
:WHILEshould be indented. The script editor can automatically indent such lines, pressing the tab
key is not required.
Close constructs automatically:

Automation Engine

51

Constructs such as :IFor :WHILEcan automatically be completed with the corresponding closing
statement (:ENDIF, :ENDWHILE).

Statistics
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

Statistical data is created whenever executable objects are activated. This data remains stored in
the UC4 Database until it is removed using the utilities UC4.DB Reorg and UC4.DB.
In this tab, you can select the maximum number of statistical data that should be shown in an
object's statistical overview.
The maximum value is 999. Use the selective statistics if you want to access several
executions of an object.

TimeZone/Calendar
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

The TimeZone that is specified here only serves display reasons (for example, for the Message
Wwindow). It does not affect the processing of tasks. Therefore, it does not make a difference who
has started the object (see also:Using TimeZones in UC4). If you select "Default" in the section
Time format, UC4 uses the computer's time format.

52

Chapter2 UserInterface

You can also specify your preferred standard Calendar View. You can change this view at any time
in an open Calendar using the UserInterface's menu.
It is also possible to define the week that should be displayed as the first week of the year. The
definition made here is displayed in Calendar objects but does not influence processing (for
example, WEEK_NR).
If you select the option Default, the specification that the UC4 administrator made in the UC4
Variable UC_CLIENT_SETTINGS with the key FIRST_WEEK_METHOD is used for the first
week of the year.

Check Back
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

Particular actions of the various objects are re-checked before they are executed.

Automation Engine

53

Specify the actions that should be re-checked. Note that actions that are highlighted with "*" are
activated after each program start, regardless of other selections that have previously been made.

Workflow
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

In order to facilitate the creation of a Workflow, you can set a default value for the line status. This
value is automatically assumed to the Dependencies tab of Workflow objects.

54

Chapter2 UserInterface

Here you can specify the status of the previous task, which is required for the execution of the
following object. Also determine the alternative action for the case that a job ends with a different
status than has been specified. Selections you make here are default settings that apply
automatically when a workflow is created. They can also be changed directly in the individual
objects.
The properties of workflow tasks are displayed in a tooltip text which is composed of the information
that is provided in the tab selected here. The two options Thumbnail and General do not refer to
tabs. Thumbnail has the effect that the box for the workflow task is shown in tooltip if a particular
zoom level has been reached. The tooltip contains a picture of the tooltip box if the workflow view
has been reduced to an extent that the box content could not easily be read anymore. "General" has
the effect that the tooltip displays an additional area that includes the most important information
such as object type, host name and the short forms of specified properties.
You can use the option Prompt for alias in order to determine whether the dialog Add task should
be displayed when you add Workflow tasks using the drag and drop function, and when. In this
dialog, you can assign an alias for the task and determine whether the task is an external
dependency.
l
l

Always - The dialog always displays if objects are dragged and dropped to a Workflow.
On duplicates only - The dialog only opens if the object is already available in the Workflow
as a task. Only the object name is checked, not the alias name.
Never (default) - The dialog does not open if the drag and drop function is used.

If you define an alias for a workflow task, this alias is displayed in the workflow monitor, the
Activity Window and the Statistics instead of the actual object name.

Automation Engine

55

ERP Forms
[General] [Activity refresh] [Message Window] [Font Settings] [Script editor] [Statistics] [Time
format/Calendar] [Check back] [Workflow] [ERP Forms]

Select the Login object that should be used by default in the Form tab of PeopleSoft jobs in order to
connect to the Enterprise Business Solution. You can use the option Work Offline in order to
deactivate the login screen. It can then be called manually by using a menu command.

2.7 UC4 Explorer


2.7.1 UC4 Explorer
General Information
[General Information] [Folder] [Objects]

The UC4 Explorer is the central window of the UserInterface. You can use it to edit, display,
administer and execute objects. Its structure and handling is basically identical to Windows
Explorer.

56

Chapter2 UserInterface

The UC4 Explorer window is divided into two parts. The left half shows the folders of a client. A
newly created client initially only includes the<No Folder> folder. It includes objects that have been
restored after they have been deleted, for example. You can specify the folders of a client that can
be used in the authorization system. By doing so, you can limit the access of users to folders and
subfolders.
The right half of the UC4 Explorer includes the objects of the folder that is currently open. The
objects can be displayed with large icons, as a list or with details. Use the popup-menu command
View in the UserInterface (right-click without highlighting an object) for this purpose. You can also
sort objects by name, object type, title, and creation or modification date. Do so by clicking on the
particular column title.
The status bar in the bottom window edge displays the number of objects in a particular folder and
the number of objects that are currently selected.
Within a UserInterface, you can use several UC4 Explorers and access objects that are sorted,
selected or displayed according to different criteria. Open a new UC4 Explorer by clicking the
corresponding toolbar button. You can also use the Explorer... command in the File menu. Use the
Window menu in the UserInterface in order to switch between UC4 Explorer windows.
Folder
[General Information] [Folder] [Objects]

In your own client, you can create any number of folders and structure them by using subfolders.
You can organize them as you like. Note that you can also assign different access rights to different
users. The only limitations is that the names of folders of the same hierarchy must be unique.
Folders of the same names must only be used as subfolders of different folders.
Action
New object ...
New folder

Description
You can create a folder by using the New object or New
folder command in the File menu of the UserInterfaces or
the popup-menu command New... (right click). You can
also use the toolbar buttons.
The characters A-Z, 0-9, $, @, _, . and # can be used for
names (max. 200 digits). You can also specify a folder
title.

Automation Engine

57

Delete

You can only delete a folder if it does not include


subfolders. Otherwise, you must delete the subfolders
first. Highlight the folder that should be deleted and use
the Delete command in the File menu of the UserInterface
or the context menu, or the button in the toolbar.
Objects that are stored in the folder are not deleted but
moved to <No Folder>. If there are links to one of these
objects, the oldest link is deleted and the object is copied
to this link.

Duplicate

Use duplicate in order to create a new folder. The objects


that it includes are not duplicated. The new folder includes
links to these objects instead (see below).

Objects
[General Information] [Folder] [Objects]

Objects are the exactly defined tasks that can be edited, displayed, administered and executed in
the UC4 Explorer. You can also access their statistics and reports.
Action
New object

Description
You can create an object by clicking the
button in the
toolbar, by using the corresponding command of the
New... menu in the UserInterface, or you can use the
New... command in the context menu (right click). Within
a client, the object name must be unique. The following
characters are allowed: A-Z, 0-9, $, @, _, . and # (not
more than 200 characters). You can also specify an object
title.
Note that the suggested default object name can also
include a counter. The UC4 administrator can specify
the corresponding settings in the UC4 Variable UC_
OBJECT_COUNTER.

58

Chapter2 UserInterface

Duplicate
Duplicate to...

Creates an identical copy of one or several objects in the


current folder. The name that is suggested is the original
object name plus the appendix .NEW.1, .NEW.2 etc.
depending on the number of highlighted objects. You can
use the Duplicate to command in order to select a target
folder for the duplicated objects.
Within a UC4 system, you can also use the drag &
drop function to copy objects from one client to
another. Keep the following information in mind:
l

Link to...

The object is not to be copied if the target client


already includes an object of the same name.
Users and UserGroups cannot be copied to other
clients.
Objects cannot be copied to <No Folder>, the
Recycle Bin, the Transport Case or the folder
Version Management.
Objects with authorizations that have been
assigned via the context menu by using the
Properties command cannot be copied to other
clients.

Stores a file link in the selected target folder. Press the


shift key before you move an object or a link, and a link is
also created in the target folder.
A small arrow in the icon identifies links. Specific menu
commands are available:
l

Open home folder: Opens an Explorer window that


displays the folder in which the object is stored.
Set home folder: The object and the link that is
used to call the command change places.

The home folder is the folder in which an object is


created or duplicated, or to which it is imported.
Links have always the same name as the object to
which they refer. If you rename the object, all links are
also renamed.
If you want to delete a link, you require write access to the
folder in which this link is stored.
Move to...

Moves the highlighted objects to the selected target


folder. You can also use the drag and drop function in
order to move objects between folders. If you want to
move a particular object, highlight it in the right UC4
Explorer section and drag it, by holding the mouse button
pressed, to the folder in the left UC4 Explorer section.

Automation Engine

Delete

59

Deletes an object from all folders. To delete an object,


highlight it and use the button or select Delete in the
File menu of the UserInterface or in the context menu. If
the object that should be deleted is used in other objects
such as a Workflow or Schedule, a query displays in order
to verify whether the object should really be deleted.
Deleted objects are moved to the UC4 Recycle Bin and
can be restored if necessary.

Rename

Opens a field in which you can change the object's name


and title. Do so by highlighting the object and press the F2
key or select Rename in the File menu of the
UserInterface or the context menu. A name field opens in
which you can edit the object's name. The following
characters are allowed: A-Z, 0-9, $, @, _, . and # (not
more than 200 characters). If the object that should be
renamed is used in other objects such as a Workflow or
Schedule, a security query displays in order to verify
whether the object should also be renamed in these
objects. A dialogue opens if you confirm this query (Yes).
Select all the applications from the list in which the names
should be replaced.
If you decide that objects that are used in other objects
should not be renamed, you can cancel the "Replace
use" dialog. In this case, only the object itself is
renamed.
If a Workflow uses the same task several times, all
these tasks are replaced.
Entries can only be replaced in Include objects and
Process tabs if the UC4 administrator has activated
the SEARCH_SCRIPT_FOR_USAGE key in the
UC4 Variable UC_CLIENT_SETTINGS. Otherwise, a
warning is displayed.
You cannot replace Users in User-Group objects. This
is a security measure that serves to prevent from a
regular User being assigned to a group that has
administrator rights. However, you can replace users
in other objects such as Notifications.

Print

Highlight the object that should be printed and use the


symbol in the toolbar. To select another printer than your
default printer, click the symbol. A print preview opens.
Click the
symbol again and select the printer of your
choice.

The availability of the individual UC4 Explorer functions that are described above depends on
authorizations.
Different users of a client can use completely different folder structures. This includes that
commands that are activated through the UserInterface's menu or the UC4 Explorer's context
menu depend on the objects that are currently highlighted.

60

Chapter2 UserInterface

See also:
Context menu of the UC4 Explorer

2.7.2 Context Menu of the UC4 Explorer


Various commands are available in the context menu depending on the object type and privileges
that have been assigned. Highlight one or more objects in the right half of the UC4 Explorer
window and right-click the mouse in order to open the context menu.

Command

Description

Activities Window

Opens a separate Activity Window for each highlighted object.

Delete

Moves highlighted objects to the UC4 Recycle Bin.

Delete Link

Deletes the highlighted links.

Duplicate
Duplicate to...

Duplicate creates an identical object in the same folder. The command


Duplicate To... creates a copy of the highlighted object(s) in a
selectable target folder.

Edit

The command Edit opens the selected objects.

Explorer

Opens the folder in a new Explorer window.

Export...

Exportsthe highlighted objects to an XML file.

Export to file...

Exports the Explorer window's content to an Excel file (explorer.csv).

Forecast...

Opens the option window for each highlighted object and a forecast
can be created.

Immediately

Processes the highlighted objects.

Import...

Imports objects to an XML file.

Last Report

Opens the last report of each highlights object.

Link to...

Creates a link of the highlighted object in the selected target folder. If


the object was only available in <No Folder>, it will no longer be
displayed as this folder only contains objects that are not available in
other folders.

Move to...

Moves the highlighted objects to the selected target folder.

New

Opens the template window and a new object may be created.

Once...

Opens the option window of each highlighted object for a single


execution.

Open

Opens the highlighted folder.

Open home folder

This command is only available for links. It opens an Explorer window


which displays the folder in which the object is stored.

Print
Print...
Print Preview

This command prints the highlighted object(s) including all its specified
settings. Use the command Print... or Print Preview to view the page
that will be printed beforehand.

Properties

Opens the properties window of the highlighted objects.

Automation Engine

61

Recurring...

Opens the option window of each highlighted object for recurring


execution.

Refresh

Updates the Explorer window.

Rename Object

Opens a text field for each highlighted object in which you may define a
new name or title.

Replace...

The Replace use dialog opens and lists all objects in which the
highlighted object is used.

Restart...

Opens the option window of each highlighted object for a restart.

Search...

Opens the search and sets the highlighted folder as search path.

Search for Use...

The Search dialog opens and you can search for objects by using the
highlighted object (such as a Workflow or Schedule).

Send To

If the UC4 administrator has defined calls for external programs or


internal objects in the UC4 Variable UC_SENDTO or UC_SENDTO_
ACT, the context menu of the UC4 Explorer additionally contains the
menu Send To. You can select the program or object to be called from
the submenu.
The codes of the previously highlighted objects are transferred to it for
further processing.

Set home folder

The object and the link from which this command is called swap places
with each other.

Statistics

Opens the statistical overview of each highlighted object.

Sync Monitor

Opens the Sync Monitor which displays the current status of the
highlighted Sync object and its usage through tasks.

Transport

Moves the highlighted objects to the Transport Case.

Up

The Explorer switches to the superordinate folder.

View:
Details
List
Large icons

You can use this command in order to have the objects that are shown
in the Explorer windows displayed in a different form. They can be
displayed with large icons, as a list or with details.

Note that the availability of the functions that are described above depends on authorizations.
This includes that within the very same client, different functions are available for different
users.

2.7.3 UC4 Recycle Bin


This document describes how to use the Recycle Bin in the UC4 Explorer. The Recycle Bin
includes objects that have already been deleted.
The following methods can be used to delete objects:
l
l
l

Highlight object(s) and press the


button in the tool bar.
Highlight object(s) and select Delete in the Edit menu of the UserInterface or popup menu.
Highlight object(s) and drag and drop them to the UC4 Recycle Bin.

62

Chapter2 UserInterface
Note that objects that have been specified for transport and are located in the UC4 Transport
Case cannot be deleted.

whether a query is made when an object should be deleted depends on the specifications that have
been made in the UserInterface. A query always displays if an object is used in other objects.
Deleted objects are stored in the UC4 Recycle Bin and obtain an extended name. A system-internal
number is appended to the object name. You can restore deleted objects by highlighting one or more
objects in the UC4 Recycle Bin and selecting Restore in the Edit menu of the UserInterface or
context menu. The deleted object is restored in "No Folder". You can also restore an object directly
to a specific folder. Drag and drop the object from the open Recycle Bin to the UC4 Explorer folder.
A requirement for restoring objects is that no other object of the same name can be created after the
deletion process.
The objects in the UC4 Recycle Bin can be displayed with large symbols, as a list, or with details.
Additionally, you can sort the objects by their name, object type, object title and date of deletion. Do
so using the command buttons in the tool bar, the View menu of the UserInterface or the context
menu (right-click without highlighting an object). Simply click the column title in order to sort them in
ascending or descending order.

The UC4 administrator can limit the number of objects that should be displayed in the Recycle
Bin by using the entry TRASHBIN_SHOW_MAX in the UC4 Variable UC_SYSTEM_
SETTINGS.
Deleted objects that have been archived using the utility UC4.DB Archive are not available in
the UC4 Recylce Bin.
Only privileged users have access to the UC4 Recycle Bin.
Users who do not have "Access to the Recycle Bin" cannot (or only partially) use the described
functions, menu commands etc.

2.7.4 UC4 Transport Case


Objects can be exchanged between various UC4 systems or individual clients in the same UC4
system. The exchange process is composed of 3 phases.
There are two ways of selecting objects for transport:
l

Highlight the object(s) to be transported and select Transport from the File menu or in the
context menu.
Highlight the object(s) to be transported and move them to the open UC4 Transport Case
using the Drag & Drop function.

Automation Engine

63

Actually, the objects are not moved to the UC4 Transport Case, but copied and displayed there.
They are now registered for transport. The objects in the UC4 Transport Case can be displayed with
large icons, in list form, or with details. They can be sorted by name, object type, object title and
modification date. Do so using the buttons of the tool bar, the commands from the View menu of the
UserInterface or the context menu (right mouse click without highlighting an object). Objects can
also be sorted in ascending or descending order by clicking on the column title of the detail view.

Transport registration can also be canceled. Highlight one or several objects in the UC4 Transport
Case and remove then using the command Delete from the File menu in the UserInterface or the
context menu.
Note that the Transport Case's content is not displayed if it contains more than 50000 objects.
Use the command Remove All to remove objects from it.
Statistics and the last report are available for objects in the UC4 Transport Case. These objects can
be printed or viewed. The corresponding functions are available via the buttons of the toolbar, the
commands from the UserInterface's File menu or the context menu.
The UC4 administrator can use the utility UC4.DB Unload to unload the Transport Case of one
or all clients. It creates a text file which contains the data of all objects.
In order to assume the objects to a different UC4 system start the loading program UC4.DB
Load and select the required text file. The client to which the data should be loaded can be
specified in an extra window. The objects are then stored in the destination client at the same
location and with the folder structure as in the original client. If the folder does not yet exist, it is
automatically created.
Keep the following performance-improving notes in mind when loading many objects to a client:
l

There should be no activities running in this client in order to make sure that the Automation
Engine is not obstructed by database locks caused by the utility UC4.DBLoad.
Turn off Version Management and Revisioning as otherwise, a version is generated for each
loaded object which affects performance negatively.

Users and UserGroups can also be transported with their passwords then being reset to "pass".
While the Transport Case is loading, the included Users verify if all their UserGroups are available in
the destination client or in the Transport Case and create a link to them. A warning is written to the
log file of the utility UC4.DB Load if one or more UserGroups do not exist. When UserGroups are
loaded, however, the existence of Users is not checked and no links are created either. UC4
recommends transporting UserGroup objects in the first step and loading the User afterwards in a
separate transport file.

64

Chapter2 UserInterface
Transport Cases can be loaded and unloaded in each client. Note that loading system objects
(e.g. UC4 Variables) to system client 0000 can also affect other clients! An additional
information message is therefore displayed before the loading process starts.
Note that Users and UserGroups specified as operators should first be loaded to the client and
the Notification objects in a second loading process in a separate file. If these objects are
transported together, it could happen that users are replaced in the Notifications because the
utility starts searching the User objects of operators in the client.
This is also important when transporting authorizations on object level. The UC4 administrator
can specify that these are also transported using the start parameters of the loading program
UC4.DB Load. By default, the transport is canceled if the specified Users are missing. This
default behavior can be changed with the corresponding start parameters.
TimeZone objects that have been transported with the Transport Case are not automatically
assumed. Therefore, all calculations for objects using them are based on UTC. This affects all
time conditions such as Calendar settings or start times. This situation can be avoided when
any TimeZone object of your choice is opened and stored. In doing so all other TimeZone objects
are also refreshed.
Note that Calendar keywords of other Calendars that refer to the transported Calendar object
must also be transported! Calendars are re-calculated after each transport and this occasionally
causes error messages in the log file when the Calendar was re-calculated at a point in time
when the referred-to Calendar keywords had not yet been read. Such messages can largely be
ignored because there is a subsequent calculation of Calendar keywords without any manual
interference being required.
Only privileged users have access to the UC4 Transport Case. Users who do not have "Access
to the Transport Case" cannot use these functions, menu commands, etc.

See also:
Import and Export of Objects

2.7.5 Version Management for Objects


Version Management can be used in order to keep track of changes that have been made in
objects. Using it has the effect that objects are duplicated each time they are stored. The copy is
then available in the Version Management folder. Additionally, the Documentation tab of each
object includes a list of all object versions.

Automation Engine

65

The UC4 administrator can activate Version Management for each client in the UC4 Variable
UC_CLIENT_SETTINGS using the entry "Y" in the validity key VERSION_MANAGEMENT.
The UC4 administrator can also specify that Version Management is automatically activated
when the UC4 administrator turns on the logging for the Revision Report. Further information is
provided in the Administration Guide, utility UC4.DB Revision Report.
The name of the object version is structured as follows:
Original name.Suffix.Date.Time
Date and time are based upon the client's TimeZone and refer to the object's last modification. The
suffix can freely be selected and must not exceed 8 characters. It is specified by the UC4
administrator with the validity key "VERSION_MANAGEMENT_SUFFIX" in the UC_CLIENT_
SETTINGS. If the complete name contains more than 200 characters, the original name is replaced
byOH_IDNR_nnnnnnnnn.
Object versions that are duplicated via Version Management can be opened in write-protected form,
restored or deleted. Statistics and reports can also be accessed.
Version Management is available for the following object types:
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l

Calendar
Connection
AgentGroup
Agent/Client Assignment
Cockpit
CodeTable
Documentation
Event
FileTransfer
Filter
Group
Include
Job
Login
Notification
Workflow
PromptSet
RemoteTaskManager
RA Solution
Schedule
Script
StyleSheet
Sync
User
UserGroup
Variable

Versions of Variable objects are only stored if a manual adjustment was made. No version is
stored if changes are made via script elements such as PUT_VAR.
As described above, the object versions are not only stored in the folder Version Management but
also in the object itself. A limited number of commands is available in the context menu (right mouse
click).

66

Chapter2 UserInterface

The following actions can be taken:


Command

Description

Restore

Replaces the object with the highlighted and stored object version.

Open

The object version is opened in write-protected mode and its attributes are
displayed.

Delete

Moves the object version to the Recycle Bin.

Properties

Opens the properties dialog of the stored object version.

Refresh

Refreshes the view.

The UC4 administrator can irrevocably delete object versions via a database reorganization.
Data that should be deleted can be marked with a deletion flag by using the utility UC4.DB
Reorg. The unloading program UC4.DB Unload removes this data.
Note that by restoring an object version, this version obtains the current object name (even if the
old object version was named differently).
For example:
An older version of the Workflow MAM.DAY should be restored. The old version was originally
named MM.DAY. As a result, the restored Workflow has the content of MM.DAY but its name is
MAM.DAY.
The UC4 administrator can limit the number of objects that should be displayed in the Version
Management using the entry VERSIONS_SHOW_MAX in the UC4 Variable UC_SYSTEM_
SETTINGS.

See also:
Documentation Tabs

Automation Engine

67

The folder "Version Management" is only visible if the user has the appropriate privilege. Users
without "Access to the Version Management" can only use these functions, menu commands,
etc. through the Documentation tabs of the particular objects.

2.7.6 Favorites
The Favorites folder is a specific folder in the UC4 Explorer that cannot be moved or deleted.
You can use it to assign any objects to the user who is logged on and to various UserGroups.
This folder only stores the links to particular objects.
Favorites can be used to list particular UC4 objects per user in the Service Catalog and Process
Assembly part of the ECC (Enterprise Control Center). They are administered exclusively via
the UserInterface.
The Favorites folder includes a sub-folder for the user who is currently logged on. It is composed of
this user's first and second name. The name of the User object is used if the user name is not
available.
A folder for each UserGroup object is also listed. It includes the user who is logged on.
The privilege "Manage favorites on user group level" is required to administer the favorites of all
the client's UserGroups.

There are two methods to add favorites:


l

Select one or several objects in the Explorer and drag and drop them into the required
Favorites sub-folder.
Highlight one or several objects in the Explorer and call the context menu commands "Link Link to". Then select Favorites and the required sub-folder.

Note that write access (W)to USRG objects is required for objects to which favorites should be
added. This applies regardless of the privilege "Manage favorites on user group level".

2.7.7 Recent Objects


The "Recent Objects" section lists the current client's objects that the user who has logged in
has last used and/or modified.
This area displays a maximum of 50 objects with the most current ones being listed on top.

68

Chapter2 UserInterface
Note that the Last Used information (Header tab) is only updated if a value above 0 has been
specified in the setting LAST_USE (UC_SYSTEM_SETTINGS).

The Header tab displays the date, time and the user of the last object usage and modification. It
also displays the number of times that the particular object has been used and modified.
The term "usage" includes the processing of executable objects (activation by a user or parent
object). It also includes accesses of tasks to non-executable objects such as AgentGroups,
Variables or Calendars.

2.8 Search
2.8.1 Search
The search function can be used to select objects and folders in the UC4 Explorer according to
various criteria. Note that objects are displayed as specified in the dialog window. Search results
can be limited by using all the available tabs.
You can use the wildcard characters * and ? for entering names. * stands for any number of
characters, ? for one specific character.
UC4 recommends that you do not use wildcard characters at the beginning of object names.
Otherwise, the search process takes considerably longer.
Results are supplied in an extensive context menu. The Explorer command is very useful
because it opens the UC4 Explorer exactly in the folder in which the object you searched for is
available.
Keep the following information in mind if you use Oracle as the UC4 Database:
An error will occur if the characters +, -, /, : and # are used in combination in the Search fields
Search for Objects (Objects tab), Search for text and Search for Calendars (Further Options
tab). The order or position in which the characters are used is irrelevant. You can solve this error
by removing one of the above characters.

Objects
[Objects] [Date] [Further Options]

Automation Engine

69

Use the From Path input field in this tab and select whether you want to search the whole client
(default) or only one particular folder.
You can search for all object types or only for particular ones. Searching for the object types agent
and server only leads to a result in client 0000.

The search function can also be used to have all object types listed that use a particular object.
Select the option Usage of objects from the "Search for" list. Activating the check box "Include
Script" has the effect that the specified object is also searched in scripts. An even easier way to
open this type of search is using the Search for Use command in the UC4 Explorer in the selected
object's context menu.
Note that you can only use the option "Include script" when the setting SEARCH_SCRIPT_
FOR_USAGE has been set in the UC4 Variable UC_CLIENT_SETTINGS.
Search results are listed in the Search dialog. Right-clicking the mouse opens context menu for the
objects. It is very similar to the context menu of the UC4 Explorer. Objects can be edited, exported,
etc.
Date
[Objects] [Date] [Further Options]

70

Chapter2 UserInterface

The Date tab can be used to restrict your search to objects and folders that have been created,
edited or used in a particular period of time. Activate the desired option and specify a period. By
default, "No Date Selection" is activated.
Note that the latest use will only be updated if the setting LAST_USE is defined in the UC4
Variable UC_SYSTEM_SETTINGS (greater than 0). Otherwise, a search using the option Used
will either supply outdated results or no results at all.

Further Options
[Objects] [Date] [Further Options]

When searching for objects, you can also specify a text that should be searched in scripts,
Documentation tabs, object titles and/or in the Archive Keys of objects. You can also search the
contents of the specific values of RA objects (Jobs, Connections) by using the option RA Values.
Uppercase letters and lowercase letters are (no case sensitivity).
You can also search for Variable objects including their keys and contents. Contents depend on the
data type that has been specified:
l
l
l

String
Number
Time(hh:mm:ss)

Automation Engine
l
l

71

Date (yyyy-mm-dd)
Timestamp (yyyy-mm-dd hh:mm:ss)

The date, time and timestamp format that is specified in parentheses applies.
You can even search for Calendar keywords in this tab. If you also specify a date, keywords that
are valid on this very day are searched. You can open this specific function more quickly by using
the popup-menu command Search for Use of a Calendar keyword that is specified in the Calendar
object.
The search text automatically starts and end with the wildcard character "*". Therefore,
searching for MM also supplies results such as MM.DAY or UC4.MM.CLOSING.
The text that should be searched can also contain the wildcard characters "*" and "?". You
cannot search for exactly these characters.

See also:
Search for Object Usage
Searching and Replacing Texts

72

Chapter2 UserInterface

2.8.2 Searching for Object Usage


The search-for-use function can be used to find objects. It can even be used to search for the
usage of particular objects. For example, if the indicated job is part of a workflow, the search
result shows this particular workflow.
Click the Objects tab and select "Usage of objects" in the "Search for" section in order to search for
object usages. Object name and type should also be specified.
This search function can be accessed even more easily by highlighting the object in the UC4
Explorer and selecting the command Search for Use in the context menu. The Search window
opens with the required information already being inserted. The search starts immediately with
all folders by default.

In script, the search-for-use function is deactivated by default and the checkbox "Include Script"
is grayed out. The UC4 administrator can activate this functionality in the UC4 Variable UC_
CLIENT_SETTINGS using the key SEARCH_SCRIPT_FOR_USAGE. Two methods are
available:
1. The searched string must be somewhere in the script as otherwise it cannot be displayed.
For example: The search for MM lists results in which it is included as a whole or partially.
l MM
l MM.CLOSING
l UC4.MM.DAY
2. The searched string is handled as a word which is enclosed in delimiters such as blanks, left
and right parentheses, equals (=), comma, single quotations, double quotations, end of lines
and script ends.
Underscores are not delimiters. Searching for MM in _MM_ does not return a result.

Automation Engine

73

For example: The search for MM lists results in which it is enclosed in the described
delimiters.
l (MMI)
l =MM=
l 'MMI'
l (MM,
l =MM at the end of a line
When searching for Calendar keywords in scripts, the result only includes lines that include the
keyword as well as the name of the Calendar object.
Note that the search function does not find Calendar and Calendar keyword usages if the
settings of recurring task are concerned.
The Search function does not search a Calendar keyword in the Calendar object in which it has
been created.
For example: The Calendar object ON_CALL_DUTY contains the Calendar keywords MONDAY_
TO_FRIDAY and WORKDAYS. The latter one is a group-type Calendar keyword which contains
the Calendar keyword MONDAY_TO_FRIDAY. The result of searching the usage of MONDAY_
TO_FRIDAY does not include the Calendar keyword WORKDAYS because it is stored in the very
same Calendar object.
The search function does not find agent usages if the filter specifications refer to AgentGroups.
The search for use function also includes fields that include an object but have been deactivated
using a particular option and are grayed out. For example, Runtime tab - Else - Execute.
Note that the object type is not considered if the wildcards "?" and "*" are included in your search
for object names.
The "Use" column in the search result describes where the object was found. It contains for
example:
l
l
l
l
l
l

the task number in Workflows and Schedules,


"Login" in Login objects,
"Start type" in Groups,
the script line which contains the particular object name,
the tab when the object is used in the properties of a Workflow or Schedule object,
etc.

A special feature has been included in the search for usage: If you open an object that is shown in
the search result, the searched object is highlighted with a red frame. This feature is supposed to
make it easier to find the particular object especially in Workflows which contain many tasks.

74

Chapter2 UserInterface

A blue frame is used when the searched object was entered in the properties of a task (such as in
the Result tab). This can affect Schedules, Workflows and elements of Cockpits.

The colored frame highlights checkboxes of Workflows, lines in Schedules, elements in


Cockpits, text fields in which the object was entered and object names used in script lines.
See also:
Search
Searching and Replacing Texts

2.8.3 Searching and Replacing Texts


You can search for character strings in windows in which you can output and edit texts (such as
the report display, activation report, Process and Documentation tabs).

Automation Engine

75

Open the dialog by using the Search... command in the context menu (right mouse button) or the
shortcut CTRL + F.

You can enter a string or select one from a previous search list. Note that you cannot use wildcard
characters in this dialog. If you have highlighted a character string in the window before calling the
dialog, this string will be searched.
You can also specify that the character string should be searched as a whole word. If this check box
is not activated, all words that include this character string are displayed. You can also define the
search direction and a case-sensitive search.
When the string is found, the window displays the line in which the found string is highlighted. Click
Find in order to continue your search. A dialog box displays the end of the search or an
unsuccessful search.
In windows in which texts can be edited, a string can also be replayed by another one. Such
windows are the Process tab and object- documentation tabs.
All possibilities are applicable for locating a character string in an editable text window. Use the
Replace command to have each found string displayed and replace them individually. If a found
string should not be changed, select "Find next". "Replace All" replaces all found character strings.
A dialog box displays the completion of a replacement procedure or an unsuccessful search for a
string.
Calling the Search-and-Replace dialog
Menu Edit of the UserInterface

Select the Search command to call the dialog.

Right mouse button in the selected window

Select the Search command in the context menu .

Keyboard

Use the shortcut CTRL+F.

See also:
Search
Search for Object Usage

76

Chapter2 UserInterface

2.9 Activity Window


2.9.1 Activity Window
The Activity Window informs you about a client's tasks which have either been activated
manually or by a super-ordinate task. It displays the current status of a task beginning with its
activation and start until the transfer of its report.

The Activity Window is one of the UserInterface's main components, along with the UC4 Explorer
and the Message Window.
You can use several Activity Windows and filters within a UserInterface. In doing so, you can group
tasks of the same name, status or host on which they run in one window.
Click the buttonor use theActivities... command in the View menu and a window opens in which
you can specify filters for the Activity Window. By default, no filter is set, and all activities are
displayed. You can use the tabs in order to specify filters for various areas. Then click OK and the
Activity Window opens. The status bar displays your specified filter settings.
The UC4 administrator can limit the number of activities that should be displayed in the Activity
Window using the UC4 Variable UC_SYSTEM_SETTINGS. If the specified value is exceeded,
a message appears in the Activity Window's status line. UC4 recommends setting filters in the
Activity Window selection in this case so that tasks are arranged in groups and currently nondisplayed tasks can be viewed as well.
The Activity Window is divided into two sections: The left section includes all Queue objects of the
current client plus the corresponding states. Exception: The system client shows the Queue objects
of all clients. The right section includes the tasks plus the corresponding information. Select a
particular Queue object to have only the tasks that refer to this Queue object listed (filter for Queue).
The right window section lists tasks line by line. All activities that are shown in the Activity Window
can be sorted by column titles. Simply click one of them in order to sort them in an ascending or
descending order. You can also change the column order. Just click a column and move it while you
keep the mouse-button pressed.
Column

Description

Name

The object name or the alias name (if available) of the activated task.

Type

The object type of the activated task.

RunID

The run number of the task.


Comments are available in tasks in which the RunID shows a small red
edge.

Parent

The run number of the parent task that activated this task.

Status

The condition symbol and status of the activated task.

Automation Engine

Platform

The symbol and name of the platform on which the task is being processed.

Queue

The Queue object for the task.

User

The user who has activated this task.

Start Time

The time when the task has been started.

Priority

The priority that has been used to execute the task.

Host Name

The name of the agent that executes the task.

User ID

The login data to the computer on which the task is processed.

Start Type

The start type of the activated task.

Process ID

The identification of the process on OS level during the execution.

CPU Time
(sec)

The consumed CPU time in seconds.

Archive 1
Archive 2

The object's first and second archive key .

Consumption

The object's resource consumption (can be specified in the Attributes tab).

Runtime

The time that has past since task has started.

End time

The point in time when the task has ended.

Modification
flag

In Workflows that have been modified during their runtime, this column includes
a pencil symbol and the name of the user who has made the last modifications.

Remote
Status

This shows the status of an SAP or RA job has in its applicatio. This column is
empty if no status is available.
For example: An SAP job. UC4 status:"Active", status in the SAP system:
"Released" (it appears in the "Remote Status" column).

77

The Activity Window's content is refreshed on a regular basis. The corresponding interval can be
determined in the settings of the UserInterface. Pressing the F5 key immediately refreshes the
content.
Various functions such as statistics of tasks are available via the context menu.
Use the shortcut CTRL + F to open the quick-search function in the Activity Window.
In the Activity Window, the context menu shows the additional item "Workflow" for tasks
running in a Workflow. This menu item contains all the commands that can also be called in the
Workflow Monitor. The following commands are available:
l
l
l
l
l
l

Go Immediately
Set Breakpoint
Delete Breakpoint
Skip Task
Unskip Task
Unblock Task

In the Activity Window, you can access several objects at the same time using multiple selection.
Use the shift key to highlight a specific range of objects. Keep the CTRLkey pressed in order to
select objects that are not directly positioned above or below each other. You can also right-click the
mouse in order to work within a highlighted range. Only menu commands that can be used with all
the highlighted objects are available.

78

Chapter2 UserInterface

Activity Window Views


The Activity Window can be displayed in two different views.
l
l

List view
Hierarchical view

The first view displays all tasks in list form as the following illustration shows:

The list view becomes unclear if many tasks are displayed. Therefore, the hierarchical view is used
in the Activity Window by default. This view groups tasks that have a common main task (parent).
Main tasks (parents) can be:
l
l
l
l
l
l

Workflows
Schedules
Groups
SAP jobs with their sub-jobs
Wildcard FileTransfers
Escalating Notifications

The hierarchical view does not only structure the information, it also reduces the Server's
workload.
The hierarchical view groups subordinate tasks and also several restart runs of the same task. The
last restarted run represents the main node. When you expand it, all the previous restart runs will be
listed.
Expanding a parent task in the hierarchical view will list its direct subordinate tasks. If this list
includes a sub-workflow, you must also expand it in order to see its child tasks. Note that collapsing
or expanding workflows does not automatically refresh the view. For this purpose, you can use the
Refresh command in the Activity Window.
You can switch views by clicking the

button.

In the hierarchical Activity Window, the selection criteria only affect first-level parents.
Ended tasks of Schedules that have not yet been deactivated after a period turnaround are
handled as first-level tasks and not as scheduled tasks in the Activity Window. The reason is
that the Schedule obtains a new RunID with each period turnaround and is no longer the parent
of these tasks.

See also:

Automation Engine

79

Activities Window Selection


Context menu of the Activity Window
Updating UserInterface Windows

2.9.2 Activities Window Selection


Objects that should be displayed in the Activity Window can be selected in the dialog window
"Activities window selection".
Activate the Activity Window and use the Options... command in the View menu of the
UserInterface. You can also open this dialog window by right-clicking the Activity Window without
highlighting an object. The dialog window opens automatically when a new Activity Window is
called. Selections that are made for an open Activity Window are displayed immediately.
Note that objects are displayed according to the search criteria that are specified in the dialog
window. You can limit the search results by using the available tabs.
You can exclude particular terms or filters using negative filters with the option NOT. Doing so is
possible in all tabs (except for "Status"). Note that negative filters are ignored and no exclusion
is made if the character * is used in the relevant text field.
Objects
[Objects] [Status] [Host] [User] [Archive Keys]

In the Objects tab, you can specify a title for each Activity Window. It is then displayed together
with "Activities". This helps you keep track of activities when you use numerous Activity Windows.
Here, you can select object types whose states are supposed to be displayed in the Activity
Window. Simply click the check box in front of the object types. Quick and easy selection is
possible by using the toolbar buttons "Select All" and "Unselect All".
You can also set a filter so that only objects are displayed whose names correspond to this filter.
With the default entry * being set, all objects are listed. Use the wildcard characters * and ? in order
to set a filter. * stands for any number of characters, ? for exactly one character. You can also select
the option NOT in order to have all tasks displayed that do not correspond to the specified filter.

80

Chapter2 UserInterface

Status
[Objects] [Status] [Host] [User] [Archive Keys]

You can select objects according to particular conditions in the Status tab. The four different states
are ANY_ABEND, ANY_OK, WAITING and ACTIVE. States that are displayed in gray indicate
that not all sub-categories were selected.
When you set filters, ensure that only active tasks are displayed. Note that you must deactivate
objects manually when their Attributes tabincludes the setting After error-free end of
program or Never deactivate automatically when finished. Otherwise, they will remain in the
Activity Window and can negatively affect performance and the Activity refresh cycle if many
tasks are affected.
You can also filter for the remote status of tasks. You can use this function for SAP, database and
RA jobs and for the SAP RemoteTaskManager.
In SAP jobs, the SAP RemoteTaskManager and database jobs, you must define the message
number of the remote status. The following values are possible:
SAP:
l
l
l
l
l
l
l
l

DB:

2004972 - Waiting for SAP Server


6500 - scheduled
6501 - released
6502 - ready
6503 - running
6504 - finished
6505 - canceled
6514 - hold

Automation Engine
l

81

2012025 - Waiting for Database

To filter for the remote status of RA jobs, you must specify it in the Filter for inserts field.

Host
[Objects] [Status] [Host] [User] [Archive Keys]

The Host tab can be used to define that the Activity Window only displays tasks that are executed
on particular hosts. You can either specify a particular host name or use a filter in order to select
several hosts. The wildcard characters "*" and "?" can be used. The default value "*" has the effect
that the tasks of all active hosts are displayed.
You can also select particular host types. In this case, the Activity Window only displays tasks that
have been started on particular platforms.
The setting "NOT" displays the activities that do not correspond to the determined host selection.
Note that you cannot filter for agent groups because the agent group will already be resolved and
the effective agent be entered in the task when processing takes place.

82

Chapter2 UserInterface

User
[Objects] [Status] [Host] [User] [Archive Keys]

You can use the User tab in order to select tasks that have been started by particular users or
departments. Two selection types are available.
Selection by filter: Sets filters that select several users or departments. You can use the wildcard
characters * and ?. By default, * serves to display the tasks of all users.
Selection by user: Selects a particular user from the list to have his/her tasks displayed. For
reasons of clarity, this selection type is not available in the system client 0000 because it provides
access to all clients and their users.
Select the option NOT in order to exclude a user name or filter.

Automation Engine

83

Archive Keys
[Objects] [Status] [Host] [User] [Archive Keys]

The Archive Keys tab can be used to limit the tasks that should be displayed in the Activity window
to those that have specific archive keys. You can either enter a particular archive key or set filters
for archive keys. Use the wildcard characters * and ? for filter selection. * refers to any number of
characters and? to exactly one character. The default entry * displays all tasks.
You can also specify that both archive keys (AND relation) or only one of them (OR relation) should
apply. The latter option can only be selected if there are two archive keys.
Activate the checkbox NOT in order to select only tasks that do not include particular archive
keywords.

84

Chapter2 UserInterface

See also:
Activity Window

2.9.3 Context Menu of the Activity Window


Right-clicking with the mouse opens the context menu. The available commands depend on the
currently highlighted objects and the corresponding rights and privileges. The following table lists
all the available commands in alphabetical order.

Command

Description

Cancel and Cancel


(recursive)

Cancels the task and its subordinate tasks (such as a workflow).


Cancel (recursive) also includes running tasks.
Workflows that have been canceled recursively obtain the status
ENDED_CANCEL. Schedules end with ENDED_OK.

Collapse All

Closes all open branches of the tree structure in the hierarchical Activity
Window.

Comments...

Opens a task's comment window.

Automation Engine

Deactivate

85

Removes tasks that have already finished from the Activity Window.
This command can only be used for:
l

Individual tasks (they do not run within a workflow) that have


already ended
Workflows that do not include active tasks.

The deactivation process of workflows always includes all subordinate


tasks.
Deactivate (forced)

Available for finished workflows that do not include any active tasks.
This command deactivates the workflow without considering
superordinate workflows and it ignores the defined options for automatic
deactivation.

Delete Entry

Deletes the task that is waiting for the start of its group.

Detail

Displays a task's Detail Window.

Edit

Opens the corresponding object for processing. Note that changes


apply for all executions and not only for the current one.

Enforce Pre-Condition
evaluation

Restarts the evaluation process of the Preconditions tab of workflow


tasks. The time interval (CONDITION_CHECK_INTERVAL - UC_
SYSTEM_SETTINGS) is reset.
This command is only available for workflow tasks that are in the status
"Waiting for Preconditions".

Explorer

Opens an Explorer window that displays the folder in which the object is
stored.

Export to File

Exports the current view of the Activity Window to a CSV file. By


default, the name of the exported file is activities.csv.

Filter

Calls a filter that can be used to define the view of the Activity Window.

Forecast

Creates a new Forecast for the task.

Go and Go recursive

Go starts the processing of workflows (sub-workflows are exempted),


schedules, events or Queue objects. Doing so has the effect that tasks
which were in a waiting condition now start.
Go (recursive) includes the tasks and sub-workflows.

Ignore / Consider
Agent Resource

Has the effect that the resources of this task are not checked or
checked again.
The task starts immediately if it is in the status "Waiting for
resource".

Ignore Pre-Condition

Preconditions of workflow tasks are no longer checked or deactivated.


This command is available for all workflow tasks that have not yet
started.

Ignore Queue limit

Starts a task immediately which is in a waiting condition because of


missingQueue slots ("Waiting for Queue slot").

Ignore SYNC

Specified Sync objects are ignored in this task.

86

Chapter2 UserInterface

Modify status
manually

Changes the task's current status.

Modify task
parameters

This command opens the task's PromptSet dialog in which you can
modify the prompt values subsequently.
When the option Request task parameters is activated in RA jobs
(RA tab), you can also modify the RA-specific values by using the
PromptSet dialog.
An error message will appear when no PromptSet objects are assigned
to the task or when the task is not an RA job in which the option
Request task parameters is set.
While the task is being modified, it changes to the status Waiting for
user input.
Modifying values after the task has been generated has no effect.

Modify UC4 Priority

Changes the UC4 priority. Further information is provided in the


document UC4 Priority.

Monitor and Monitor


Parent

Opens the monitor of the task (only applies for notifications, cockpits,
groups, workflows, schedules and syncs) or the monitor of the
superordinate task.

Open for
modifications

Opens the highlighted workflow in the monitor's editing mode.

Open Generated Job

Displays the result of a generated job.

Quit

Ends active Cockpit and Schedule objects.

Refresh

Refreshes the view.

Reload definition at
period turnaround

Possible changes in the Schedule object are assumed at the next


period turnaround.

Report

Calls the task's current report.


Event objects show the report of the Event (!Process) that has last
been executed.

Restart

You can restart tasks that have already been executed and specify
options.

Send To

If the UC4 administrator has defined calls for external programs or


internal objects in the UC4 Variables UC_SENDTO or UC_SENDTO_
ACT, the Activity Window's context menu includes the menu Send To.
You can select the program or object that should be called from the
submenu. The codes of the previously highlighted task are assigned to
them for further processing.

Statistics

Calls the statistics of the task.

Stop and Stop


recursive

Workflow tasks are stopped with the exception of sub-workflows which


remain active. Stop recursive includes tasks and sub-workflows.
The Stop command is also available for Queue objects. It causes the
object execution to come to a hold.

Automation Engine

Take Over Task

87

Tasks run under the User who has started them. They can be assumed
by any other User at any time and then be processed by this User. The
system verifies that the User who assumes a task has an execution
right for the corresponding object. If so, the task including all its child
tasks that are active or in a waiting condition are assumed. This
procedure does not affect tasks that have already ended. In this case,
the User is not changed.
The report of all involved tasks includes the information that the
User has been changed.
Note that only the top task's execution right is verified. Ensure that
you have all the required rights and contact your UC4 administrator
if you have any questions.
The privilege "Take Over Task" is required; otherwise this command
is not available.

Unselect All

Tasks are no longer highlighted.

Workflow Control

This menu contains commands which can also be called in the


workflow monitor:
l
l
l
l
l
l
l
l

Go Immediately
Set Breakpoint
Delete Breakpoint
Skip Task
Unskip Task
Unblock Task
Ignore Preconditions
Enforce Pre-Condition evaluation

See also:
Activity Window

2.10 Comments in Tasks


The UC4 system logs everything that happens in the form of messages, reports and statistical
records. Comments can also be stored in tasks. In doing so, you can comment on modifications
at runtime or peculiarities that occurred while the task was executed. Reactions to Notifications
can also be stored.
Comments refer to an individual object execution and are part of the statistical record.
Comments can be added and read in the following windows:
l
l
l
l
l

Activity Window
Statistics
Workflow monitor
Schedule monitor
Notification monitor

Call the comment window using the Comments... command in the popup window.

88

Chapter2 UserInterface

The upper window section shows the entries that have been made so far. They are listed in
chronological order with the latest one being on top. Each comment includes date, time and user
name. They are automatically stored and provide a well-structured history. Comments cannot be
changed later on.
A comment including line breaks can comprise of up to 1024 characters. Longer texts are
automatically truncated. The number of commenting entries is not limited.
Tasks including comments show a small red edge which is displayed together with the RunID. The
following illustration lists tasks in the Activity Window:

If Workflows, Schedules and Notifications include comments, then a red edge is shown in the
upper left edge of a monitor.
Comments added to restarts are stored in the object's original execution. Thus, restarted tasks do
not have red edges. Calling the comment window opens the original execution's history.

Automation Engine

89

Comments refer to an execution. Hence, comments in Schedule tasks are no longer displayed in
monitors after a period turnaround. The statistics, however, provide access to comments at any
time.
The search for statistical records can be limited to tasks which include comments.
These task comments can be read in system client 0000. Text cannot be added.
Note that the user right S (access to statistics) is required for viewing task comments. To write a
comment, you require the rights S and M (modification at runtime).
The archiving process for statistical records includes comments. The UC4 administrator can
view these texts using the UC4 Archive Browser.
Script
UC4 provides script elements which can be used to handle comments in an automated form:
Script element

Description

:ADD_COMMENT

Adds a comment to a task.

PREP_PROCESS_
COMMENTS

Prepares the processing of a data sequence (comments of a


task).

See also:
Activity Window
Statistics

2.11 Message Window


The Message Window displays information and error messages. The Message Window is a
main component of the UserInterface's user interface like the UC4 Explorer and the Activity
Window.
Open the Message Window by clicking the
button or select the Messages command in the View
menu. While the Message Window is displayed, the toolbar button remains pressed and the menu
command is checked. Click the command button again or select the appropriate menu command to
close the Message Window.
As opposed to the UC4 Explorer and Activity Window, there is only one Message Window. The
colored bars next to the message texts refer to connections to other clients. You can specify that a
closed Message Window opens automatically when a new message arrives. Error messages are
displayed in red because of their importance.

90

Chapter2 UserInterface
The font size can also be modified using the CTRL key in combination with the scroll wheel. It is
then kept even if the Message Window is closed. Modifications are lost if the UserInterface is
closed.

There are several types of messages


l
l
l
l

Personal messages - These belong to a particular user.


Client-wide messages - These are notifications such as agent starts or stops.
System-wide messages - These are administrator messages.
Security messages - These include accesses which underlie the conditions of the Authority
System.

All occurring messages are stored and can be viewed in the System Overview (category
messages).
In the Message Window, you can search for character strings. Open the search dialog with the
command button in the tool bar or use the shortcut CTRL + F.
Various options can be selected in the Settings of the UserInterface in order to reduce the number of
displayed messages. You can also select the maximum number of message entries that should be
displayed.
Unread messages
Administrator and security messages are usually not displayed unless an authorized User has
logged on to the UC4 system. Nevertheless, these unread messages can be collected and be
displayed in the Message Window at the next logon.
UC4 administrators can activate this function in the UC4 Variable UC_SYSTEM_SETTINGS
using the keys UNREAD_MESSAGES and UNREAD_MESSAGES_BUFFER.
This setting can also be used to specify the maximum number of unread messages hat should be
stored. The oldest message will be overwritten if this number is exceeded. An extra message
window opens immediately when you log on to the UserInterface and displays the available unread
messages. These messages are only displayed to Users who are authorized to obtain administrator
and security messages. The displayed messages are then considered as read.

The following list informs about all specifications that are required:
UC4 administrators:
l

The keys UNREAD_MESSAGES and UNREAD_MESSAGES_BUFFEREs must be set in


the UC4 Variable UC_SYSTEM_SETTINGS.
Additionally, users to whom unread messages should be sent must have the privileges
"View messages to administrators" and/or "View security messages".

Users:
l

Activate the option Show unread messages after logon in the settings of the
UserInterface.
The type of messages that is shown in the Message Window can be specified using
additional options in the UserInterface's settings (checkboxes "Administrator messages"
and "Security messages").

Automation Engine

91

Unread messages are lost if the UC4 system is restarted or the primary work process is
changed. As messages are saved anyway, they can be viewed in the System Overview
(category "messages").

2.12 Detail Window


2.12.1 Detail Window
The Detail Window provides extensive information about objects. This information can be called
in various areas of the UserInterface such as the monitor view of a Workflow and a Schedule, in
the Activity Window as well as in the statistics of executable objects and through Forecasts and
Auto Forecasts.

You can open the Detail Window's context menu by selecting an object and right-clicking it. Then
select the Details command.

92

Chapter2 UserInterface

The Detail Window provides substantial information and therefore, only the details that include
data are displayed. If there is no Last Message line, this particular line is not displayed. The
effect is that a clear structure can be kept. Note that this rule does not apply to the Sync Info tab.
The Object Variables area lists the names and values of all the task's PromptSet variables and
object variables.
Details in the Editing and Monitor View of Objects
The execution of a Workflow and Schedule can be viewed in the Monitor View. You can also open
the Detail Window here. Depending on the object type, it now contains various information grouped
in thematic blocks that can be expanded. The supplied information includes general specifications
such as the object's name, the run number (RunID) that has been assigned by the system, the
User, the current status etc. The other thematic blocks are object-type specific and include
information about the host or the time consumed, for example.

Automation Engine

93

Details in the Activity Window


Objects are displayed in the Activity Window while they are executed, unless different options have
been specified in the Activities window selection. Detailed information about all the Jobs that are
shown in the Activity Window can be viewed at any time. Just highlight an object and right-click it.
The popup-menu command Details opens the Activities Detail window. It contains the Task tab and
a second tab called Sync Info if a Sync object has been assigned to the particular object.
All data about the execution is displayed in the Task tab. Some data is always displayed, this is the
run number (RunID), the user who started the Job, start type, start time and status specifications.
Other displayed data depends on the respective object type. If a Sync object has been assigned to
the object, the particular information that refers to it is displayed in the Sync Info tab.
The Detail Window also shows the script line that is being processed. Note that modifications
that are made in the script after object start are not considered.
Details in the Statistical Overview
After a task has been executed, all relevant statistical and auditing data is stored in the UC4
system. Use the popup-menu command Details to call the statistical overview of data that refers to
the particular objects.
Data about the completion of an execution has been added to the available information in the details
of the Activity Window. General data includes the end time, the retention time (the time from a
task's start to its completion) as well as the times that have been supplied by the OS. Data such as
the size of a file or the number of records are type-specific.
Details in the Forecast Window
You can also open a Detail Window via Forecast window's list view. It contains general information
about the particular object, as well as the estimated data about its next start, end and status.
A Detail Window is also available for activities that are shown in the Auto-Forecast window.
Double-click one of them for more detailed information about the calculated forecast data.

See also:
Detail Window Contents

2.12.2 Detail Window Contents


The following table includes all entries that can be displayed in the various Detail Windows. The
entries are listed in alphabetical order so that they can easily be found.
In RA jobs, the Detail Window includes additional information depending on the particular
Solution (such as the Banner ID of a Banner Solution).
Entry

Description

Abend action

Sync action that should be processed if the task aborts.

Activator

RunID of the activator.

Activation

Activation date and time.

Archive 1

First archive keyword.

94

Chapter2 UserInterface

Archive 2

Second archive keyword.

Canceling

Identifies manually aborted tasks.

Changed by

Last object that has modified the Sync status.

Changed on

Date and time of the last modification.

Check count

Number of checks that have been made so far.

Code

Name of the CodeTable that is used.

Code (D)

Name of the CodeTable that is used by the destination agent.

Code (S)

Name of the CodeTable that is used by the source agent.

Compressed

Compression rate of the data that should be transferred.

Compression

Type of compression.

Consumption

Resources that the task consumes.

CPU time

Consumed CPU time in seconds.

Current State

Sync object's current status.

Destination
AgentGroup

Name of the AgentGroup object.

Earliest start

Earliest start date and time.

Else

Measures that should be taken if the task's runtime does not meet the
specifications.

End

Execution's end date and time.

End action

Sync action that should be executed when the task ends.

Ended with
error

Number of aborted tasks.

Escalation

Starting date and time for the Notification to escalate.

Event count

Number of Events that have already been triggered.

Event ID

First RunID of FileSystem and Console Events.

Express

Ignore agent resource.

External
Parent
Workflow

Name of the Workflow that contains the external dependency.

File name (D)

Path and name of the destination file(s).

File name (S)

Path and name of the source file.

File size

FileTransfer: File size indicated in bytes.


"-1" is displayed if the file size cannot be retrieved for any reason.

Files

Number of FileTransfer files that should be transferred in the format:


Transferred files / Total number of files
(Files that were not successfully transferred are included if the option "Abort at
first error" has been deactivated.)

Automation Engine

Filtering

Display of configuration for filtered processes in the Activity Window.

Host

Name of the destination agent.

Host (D)

Name of the destination agent.

Host (S)

Name of the source agent.

Job status

Status of the task.

Last check

Date and time of the last check.

Last
message

Latest occurring message including number and text.

Latest end

Latest end date and time.

Latest start

Latest start date and time.

Login

User ID that is used by the agent to log on.

Login (D)

User ID that is used by the destination agent to log on.

Login (S)

User ID that is used by the source agent to log on.

Max. parallel

Specification of the maximum number of tasks that can be processed at the


same time.

Max. parallel
running tasks

Maximum number of objects that can run in the group at the same time.

Maximum
runtime
(MRT)

Setting for MRT runtime monitoring.

Message

Message that informs about the task.

Message:

Notification's message text.

Minimum
runtime
(SRT)

Setting for SRT runtime monitoring.

Next check

Date and time for the next check.

Next start
time

Date and time for the task's next execution.

Number of
activated
tasks

Number of tasks that are started by the group.

Object name

Task's actual object name.


This name is different from the task name if an alias has been assigned
(possible for Workflow tasks and objects that are activated once and recurring).

Parent

RunID of the parent.

Period
(Days)

Duration of the period indicated in days.

Period
turnaround

Date and time for the next period turnaround.

95

96

Chapter2 UserInterface

Post proc.

Start date and time for Post Process execution.

Prio.

Priority of the task.

Priority

Priority of the Notification.

Process ID

Process identification on OS level during execution.

Processing

Scripting line that is being executed.

Program

Step on the OS that is being executed.

Records

Transferred file's number of records.

Reference
RunID

RunID of an execution that has already been executed and is used for the
restart.

Repeated

Number of repetitions if the expected status does not occur.

Rest. from

Name of the point from which the restart is processed.

Restart point

Name of the restart point that has last been passed.

Restarted

Number of restarted tasks.

Return code

Return code of the execution.

RunID

Run number of the execution.

Runtime

Duration of the execution.

Scheduled
check

Date and time in order to check whether the task should start.

Start

Start date and time.

Start action

Sync action that should be executed when the task starts.

Start Jobs

Indicates that the RemoteTaskManager starts scheduled Jobs.

Start type

Method that is used for the start.

Status

Task status.

Status text

Status description.

Status within
Parent

Status in the superordinate task.

Substatus

Additional information about a task's status. It is displayed if one of the "Else"


conditions that are specified in the Dependencies tab applies or if the
commands "Go immediately" or "Remove halt" have been used.
Allowed values:
"A" - Abort
"H" - Halt
"S" - Skip
"X" - Halt and abort signal
"G" - Go immediately
"R" - Remove halt

Successful

Number of successfully transferred files (FileTransfer).

System time

Consumed system time in seconds.

Automation Engine

Terminate
Queue
autom.

Indicates that the RemoteTaskManager ends automatically.

Time
Checkpoint

Date and time of the time checkpoint.

Timeout

Date and time of the first timeout that has occurred.

Title

Title text.

Total number
of errors

Total number of aborted tasks.

Total number
of tasks

Total number of tasks that are processed in the agent group.

Transferred

Part of the FileTransfer file that has already been transferred in the format:

97

Percentage (already transferred bytes / total number of bytes)


FileTransfers in the format "binary": The actual number of bytes is shown.
FileTransfers in the format "text": The displayed values exceed the actual
number of bytes. The file is transferred record-wise and the number of bytes for
each record length is added to the file size.
Under NSK, the agent cannot always correctly retrieve the actual file size.
Therefore, the displayed transfer status of FileTransfers is occasionally more
than 100%.
Type

Type Notification.

User

User object name of the person who has started the task.

User time

Consumed user time in seconds.

See also:
Detail Window

2.13 Forecasts
2.13.1 Forecast
Forecasts calculate the estimated runtime of executable objects. The calculated result is stored
in the form of forecast records.
Open the forecast windows by clicking the
View menu.

button or use the corresponding command in the

Usage
Highlight the object for which a forecast should be created. Execute the command forecast... which
is available in the context menu. The window shown below opens:

98

Chapter2 UserInterface

The object name is used as the forecast name. A run number is attached to the object name if a
forecast of this name already exists . The forecast name can also be changed. Note that it is not
possible to use an existing name for the new forecast.
Forecasts of type object and task are available. Type task is available if the forecast should be
created for an active task that is shown in the Activity Window.
l

Type object: The current day and time are pre-completed as starting points for the forecast.
You can change both of them and influence runtime calculation because Calendar conditions
are taken into account.
Type task: The RunID of an execution is required for the forecast. By default, the RunID of
the highlighted task is pre-completed. The execution date and start time are used. In
periodical tasks, the period for forecast calculation can be determined when a number of day
is specified.

A further specification is available if a Group or Groups are involved in the execution. You can select
how their runtimes should be included in the forecast calculation.
Click OK. The runtime is calculated and a forecast record is created. The forecast window opens
automatically.
Read more about forecast calculations in the chapter "Inside UC4".

Forecast Window
All existing forecasts are listed in this window. You can switch the table content's order by clicking
on a column's title bar.

Automation Engine

Column

Description

Name

Name of the created forecast.

User

User who has created the forecast.

Logical start

Specified starting date of the task.

Estimated end

Estimated end time of this task.

Status

Expected end status of this task.

Runtime

Average runtime of this task.

99

Context Menu
Command

Description

List View

The selected forecasts are displayed in the "List View" table format.

Rename

The name of the saved forecast can be changed.

Delete

The selected forecast is deleted.

Export to
file...

The forecast window's content can be exported to its own file with the extension
.csv.

Details
List
Large icons

Type of forecast display

List View
This view either shows selected forecasts in the form of a tree structure or in table form.

100

Chapter2 UserInterface

Context menu
Command

Description

Detail

The determined details for selected tasks are displayed in a special window.

Last Report

The last report for the selected task is displayed.

Statistics

The saved statistical data for a selected task is displayed.

Expand all

Opens all the tree structure's nodes

Collapse all

Closes all the tree structure's nodes

Expand

Opens selected nodes of the tree structure

Collapse

Closes selected nodes of the tree structure

Show/hide tree

The tree structure view is activated or deactivated.

Export to file...

Exports the list view's content to a CSV file

Script Elements
The script functions FORECAST_OBJECT and FORECAST_TASK are additionally available for
the creation of forecasts.

See also:
Knowledge Base - Forecast
FORECAST_OBJECT
FORECAST_TASK

2.13.2 Auto Forecast


The Auto Forecast can be used to see which objects are going to be executed next. At one
glance, you get the information which tasks will run next weekend or the following Monday
between 18:00 and 20:00, for example.
The Auto Forecast lists active Events and Schedules plus their included objects.
Open the Auto Forecast via the button or use the command Auto Forecast from the View menu.
The Auto Forecast can also be called via the script function AUTOFORECAST.

Automation Engine

101

Preparation Work Required by the UC4 Administrator


The following specifications must be made in order to enable the use of the Auto Forecast:
Define the keys AUTO_FORECAST_PREFIX and AUTO_FORECAST_DAYS in the UC4
Variable UC_CLIENT_SETTINGS. The Auto Forecast function stores its results in the form of
forecasts. The keyword AUTO_FORECAST_PREFIX serves to determine forecast names.
The number of days that is calculated to the forth is specified in AUTO_FORECAST_DAYS.
Use the selection criteria of the Auto Forecast to have particular tasks displayed that will run
within this period of time.If your forecast calculation has ended successfully, the key
CREATED is set in the UC4 Variable UC_AUTO_FORECAST. If the calculation is canceled,
the keyword is not set. Therefore, a message is displayed when the forecast calculation is
restarted and the key can be reset to the default value.

Use
Displaying tasks that will run in the future requires the prior calculation of forecasts. Click
Recalculate in the first step. The Auto Forecast uses the current date for the calculation of object
executions and creates forecast records for a particular number of days (see "Reparation work
required by the UC4 administrator").
Note that depending on the number of ongoing activities, AutoForecast data calculation can take
some time.
The Auto Forecast creates forecasts for all active Events and Schedules.
Selection criteria do not affect forecast calculations.
A calculations leads to the creation of Forecasts:

102

Chapter2 UserInterface

The period of time for which forecast records were displayed is shown next to the Recalculate
button. If required, start a new calculation.
The name is structured as shown below in order to ensure that Auto Forecasts can be distinguished
from other forecasts:
Prefix_object name_RunID:date
You can individually define the prefix (see "Preparatory work required by the UC4 administrator).
The prefix in the above illustration shows the name AUTO. Names end on the date on which the
task will be executed (format YYMMTT).
All other fields in the Auto Forecast window can be used to display particular tasks from within the
calculation period. You can select object type, object name or a particular date. The lower part of the
window displays tasks in accordance with the selections you made. The Detail Window can be
used via the popup window or to export the whole list to a CSV file.

Restrictions
The result of Auto Forecast calculations depends on the interval in which tasks are executed, on the
one hand. For Schedules - this is the period length; for Events - it is the time interval. On the other
hand, it also depends on the calculation period.
One Forecast per day is created for Events even if the Events run every 15 minutes.
Note that the following limitations apply for Auto-Forecast calculations:
l
l

l
l

With the exception of Events, only tasks planned within Schedules are considered.
Tasks that will be activated through other tasks (e.g. ACTIVATE_UC_OBJECT) are not
included.
It is not possible to identify dependencies of tasks on other tasks.
Modifications of attributes during runtime are not taken into account.

See also:
Forecast
Script element AUTOFORECAST

Access to the Auto Forecast is limited to privileged users. Users without the privilege "Access
to Auto Forecast" cannot use the described functions, menu commands etc.

Automation Engine

103

2.14 System Overview


2.14.1 System Overview
With the growing number of clients, users and other components of the UC4 system, such as
server processes or agents, a way of administering them centrally has become increasingly
important. The System Overview offers numerous ways and means of viewingand processing
your UC4 system's current status with many functions being provided.
The following information and more is available:
l
l
l
l
l
l

Display of workload
A list of all active and inactive server processes, agents and users
Access to their statistics and reports
Messages sent to users and administrators as well as security messages
Overview of the database in use
A list of licenses

Administrative access is also available for:


l
l
l
l
l

Closing Server processes


Terminating and deleting agents
Canceling user sessions
Setting trace options for server processes and agents during system operation
Changing values to the Server's input buffer

The information provided in the System Overview is always client-specific. It is possible to view
information about clients to which the UserInterface is connected.

The System Overview is split in two halves. The left half displays the different categories about
which information is available. The System Overview is handled like the UC4 Explorer. Select a
category using the mouse button. The right half displays the relevant information either in list form or
as an overview. The list form provides additional functions that can be used via the context menu.

104

Chapter2 UserInterface

Open the System Overview using the command of the same name which is available in the menu
System of the UC4 Explorer or with the

button on the tool bar.

The System Overview and particular functions are protected by UC4's Authorization System.
When using the multi-desktop mode, UC4 recommends opening the System Overview in a userdefined desktop as it always shows the same content in all desktops.

See also:
Usage
Clients
Servers
Agents
AgentGroups
Host Assignment
Users
Messages
Database
ILM
License
Cache
Exits
Quarantine

2.14.2 Usage
This category displays the workload of the UC4 Automation Engine processes in percent.
Values are available for individual clients as well as for the UC4 system as a whole.
Only clients in which executions take place and a workload actually exists are shown.
The privilege "View server usage of all clients" is required to view the workload of all clients
instead of only one's own.
The overview gives information about the workload occurring throughout a day. Reaction to an
increasing workload of the UC4 system is possible by adding Server processes. If the workload is
high due to the number of logged-on agents and UserInterfaces, the number of communication
processes should be increased. If the number of tasks in a UC4 system is increasing, the number of
work processes can be increased.

Automation Engine

105

The overview is split in two halves. The upper half contains a table with columns, each of which
stands for one hour. The headings show the respective time. Client data is displayed in lines - one
line per client (hourly values and average value). The last line shows the total workload of the UC4
system.
In the lower half, there is a diagram which shows the total workload in percent. The columns also
show the workload of one hour in percent. Directly below the diagram, the current date and time are
displayed. The time is additionally highlighted in red.
The values of particular Server processes are called up via the popup menu in the category Servers.

2.14.3 Clients
The category "Clients" of the System Overview of system client "0000" lists all clients of your
UC4 system. The System Overview of the particular clients, however, only shows one's own
client. Further functions are available via the context menu. You can open the statistics and
reports or the corresponding Client object for processing, for example. The commands for
starting or stopping a client are also found here.
Clients cannot be deleted or copied in the System Overview. The utilityUC4.DB Client Copy
serves this purpose.

106

Chapter2 UserInterface

Column

Description

Client

Number of the client

Title

Title specified in the Client object

TimeZone

Time zone valid in this client

Status

Displays whether the client is currently active or stopped

Number of
objects

Number of objects created in the client

Number of
activities

Number of tasks currently being executed

Number of
active users

Number of users who are currently logged on

MIB Monitor

Displays whether the client is subject to SNMP monitoring

MIB Info

MIB information of the client

Priority

Priority of the client the UC4 administrator specified in the UC4 Variable UC_
CLIENT_SETTINGS with the key "CLIENT_PRIORITY".

Task Priority

Priority of the client's tasks the UC4 administrator specified in the UC4 Variable
UC_CLIENT_SETTINGS with the key "TASK_PRIORITY".

See also:
Client
UC4 Priority

Automation Engine

107

2.14.4 Automation Engine/Server


This category lists all Server processes. Currently inactive processes are displayed with a white
symbol. You can open the statistics and the current report of a process via the context menu.
You can also end individual Server processes.

Column

Description

Name

Server process name including the patch level.


This name is a combination of the system name, #, process type and
the consecutive 3-digit process type number.

Type

Process type
C ... Communication Process
P ... Primary Work Process
W... Work Process
D ... Dialog Process
N ... NonStop Process

Version

Server process version including the patch level.

IP address

TCP/IP address of the server process.

Port No.

Server process port number.

Host

Name of the computer on which the server process is running.

B.01

Percentage of server process utilization during the last minute.

B.10

Percentage of server process utilization during the last 10 minutes.

B.60

Percentage of server process utilization during the last 60 minutes.

Process ID

Process identification number of the server process.

Time difference

Time difference between the computer on which the server process is


running and the UC4 system.

Server time

Date and time of the computer on which the server process is running.

108

Chapter2 UserInterface

Connections

This column shows the number of external connections. Internal


connections between communication processes and work processes
are shown in the ServiceManager.
Number of connections to the communication process (such as
UserInterfaces and agents).Connections to work processes are
exempted.
For work processes:
The value is always "0".

Role

Server role that the work process assumes.


Possible values:"O" and "R"
"O"- Output
"R" - Resource
Each role is only assigned once. Therefore, a work process does
not necessarily assume a role.
Communication processes cannot assume Server roles.

Net Area

Name of the Server processes' net area.


By default, this value complies with the name of the UC4 system. WPs
always run within the same net area.

Context Menu
Column

Description

Statistics or Report

Calls the Statistics or the last Report.

Edit

Opens the related Server-process object.

Start

Starts the selected Server process via a ServiceManager.


You can only use this option if a ServiceManager is available that
can be used to start the Server process. You must also enter
theServiceManager settings in the Server object either manually or
by using the command "Refresh Service Manager Scan".

Usage Chart

Shows the workload of the particular Server process

Change Logging

Causes the log file to be changed. In the properties, you can specify
that the log changes automatically.
Note that changing the log file of a particular work process implies
that the log file of all other work processes are also changed.

Server mode DWP /


Server mode WP

Changes the work-process mode from WP to DWP and vice versa (see
also WP_MIN_NUMBER)
WP ... Work Process
DWP ... Dialog Process
Attention: You cannot change a work process to a dialog process if
it performs a Server role (see Role column).

Automation Engine

109

Close

Closes the Server process immediately regardless of tasks that might


be running.

Workload

Opens the search (message analysis) or statistical overview (message


statistics of buffered Server messages). This menu item is only
available for work processes (WP, PWP or DWP).

Properties

Calls the "Properties" dialog (see below).

Refresh Service
Manager Scan

Refreshes the ServiceManager's connection settings for the selected


Server processes.
You must specify these settings if you start the Server processes via
the System Overview or the script element MODIFY_SYSTEM by
using a ServiceManager. You can use the Server object's Attributes
tab in order to show and manually edit these settings.
This scan is automatically made when the Server processes start for
the first time. It can happen that the service name that has been
entered in the Server object does no longer comply with the related
service name in the ServiceManager. In this case, UC4 recommends
running the"Refresh Service Manager Scan" command or entering the
relevant values manually.

Refresh

Refreshes the view.

Properties
The Properties command in the context menu opens a dialog in which you can specify various
settings. In the first tab, you can set and delete trace options. In doing so, you can log the behavior
of the UC4 Automation Engine even in exceptional cases. You do not have to shut down the Server
if you start tracing but your system's performance can decrease as a result thereof because traces
can create a log of data. UC4 recommends setting trace options only in close cooperation with UC4
Support.
In the trace options section, you can specify numerical values for the individual options. A short
description of the values is shown in the right window section.You can also specify more than one
trace option.

110

Chapter2 UserInterface

In the Properties tab, you can specify the general settings for the Server process and the values for
the Server input buffers. The window shows two parts. In the left part, you can specify a maximum
value. The right part shows the current usage (see also: Cache tab).

Automation Engine

Column
Server settings

CHANGE_
LOGGING_MB

Description
Values for Server settings are read from the UC4 Variable UC_
SYSTEM_SETTINGS. New values that are specified in this
UserInterface are only valid until the UC4 system is cold booted.
The UC4 administrator can make permanent modifications in the
UC4 Variable UC_SYSTEM_SETTINGS.
Size in MB at which the log file should be changed.
Allowed values: "1" - "32767"
You can also prompt the log file to be changed by using the script
element CHANGE_LOGGING.

CHANGE_
LOGGING_DAYS

Number of days after which the log file should be changed.


Allowed values: "1" - "32767"
You can also prompt the log file to be changed by using the script
element CHANGE_LOGGING.

111

112

Chapter2 UserInterface

RESERVED_API_
USERS

Number of user licenses that are reserved for accesses via the
CallAPI.
Allowed values: "0" - "32767"

MIN_EVENT_
INTERVAL

Minimum interval (in minutes) in which Events should be executed. An


Event can also include a value that lies below this minimum interval. In
this case, the system uses the interval that is specified in the Event.

LAST_USE

Time delay (in minutes) after which the usage counter of objects will be
refreshed (Header tab).

Server language

Primary language in which the login is made. This value is retrieved


from the Server's INI file.

SNMP in use

Displays whether SNMP is used. You can also specify this setting in
the Server's INI file.

Server cache
settings

Format: User-defined value / Current value

Script cache

Maximum size of the input buffer (Bytes) for Scripts.

Var cache

Maximum size of the input buffer (Bytes) for UC4 Variables.

MQMEM cache

Maximum size of the input buffer (Bytes) for themessage queues.

Object cache

Maximum size of the input buffer (Bytes) for objects.

User cache

Maximum size of the input buffer (Bytes) for users.

The third tab shows specific information about the Server process.

Automation Engine

113

Usage
You can also open a usage chart for the individual processes. The window that opens is structured
in the same way as the window that shows the workload of all processes.

114

Chapter2 UserInterface

Workload - message analysis


In this dialog, you can select specific Server messages by specifying criteria. Note that you can
only search for messages that are currently buffered. The number of messages that are buffered
depends on the setting MQA_BACK_COUNT in the UC4 Variable UC_SYSTEM_SETTINGS.
You cannot use wildcards for searching messages. UC4 recommends listing all messages before
you start a search (default setting) and then specifying the values for the fields that should be
searched. Each search field comes along with a corresponding column.

Automation Engine

115

Workload - message statistics


You can either open the message statistics for one specific work process (Statistics process
option) or for all process that comply with the type (WP, DWP or PWP) of the selected work
process (Statistics type option).
The statistics include the time that it took to send the message (time from sending to receiving it),
the Server load and the number of messages. The values are shown for all messages of a particular
type (Type column) of each selected work process and as a total sum of all listed types (--TOTAL--).

"Time Total" refers to the period of time that was required to process the messages. "Time
Minimum" shows the shortest time and "Time Maximum" the maximum time that was required to
send a message. The average sending time is shown in a separate column.
For example:
The following example shows the processing of 6 Server messages. The gray blocks symbolize the
time periods during which no messages were sent. The total time ranges from sending the first
message until the last selected message has been received.

See also:
Usage
Cache Usage

116

Chapter2 UserInterface

2.14.5 Agents
The category "Agents" lists all agents that are allowed for a particular client. Currently inactive
agents are displayed with a white symbol. All agents of the systemcan be viewed and agent
authorizations be changed in the System Overview of client 0000.

Column

Description

Name

Name of the agent.

Authenticated

Shows whether an agent has been authenticated.

Version

Agent version including patch level.

Platform

Platform on which the agent runs.

HW

Computer's hardware information (i.e. system type, number of


processors, processor type).

SW

Computer's operating system.

SW Version

Version of the operating system.

Last Check

Time of last check.

CP

Linked communication process.

Time Diff.

Time difference between agent and UC4 system.

IP Addr.

Agent's TCP/IP address.

Port No.

Agent's port number.

License Class

Agent's license class.

MIB

Agent's MIB information.

Service

Indicates if the agent is responsible for a specific service:


"MAIL" - E-mail connection
"SQL" (only for Database Agents) - Agent is responsible for dissolving
"SQL" type Variable objects.

Automation Engine

Compress

117

Compression type which is used for file transfers by default.


The UC4 administrator can define this type in the UC4 Variable
UC_HOSTCHAR_DEFAULT with the key "FT_COMPRESS".
If a different compression method should be used for a FileTransfer, it
can be changed in the FileTransfer object.

License category

Name of the license category assigned to the agent

Authorizations

Rights assigned to the agent.


"R" - Read
"W" - Write
"X" - Execute

Job res. max.

Resources the agent provides for Jobs.


Format: Currently used resources (maximum number of resources)
The UC4 administrator can specify the resource value using the key
WORKLOAD_MAX_JOB in the UC4 Variable UC_HOSTCHAR_*.

FT res. max.

Resources the agent provides for FileTransfers.


Format: Currently used resources (maximum number of resources)
The UC4 administrator can specify the resource value using the key
WORKLOAD_MAX_FT in the UC4 Variable UC_HOSTCHAR_*.

Keep alive

Time interval for periodical checks.


The UC4 administrator can specify the time interval with the key
KEEP_ALIVE in the UC4 Variable UC_HOSTCHAR_*.

Roles

Agent roles.
The UC4 administrator can determine role names in the agent
variable UC_EX_HOST_ROLE.

Last logoff

Agent's last logoff time from UC4 system.

Number of Clients

Number of user-defined clients in which the agent has particular


authorizations.

Linked

Indicated if the agents is linked to a ServiceManager which depends on


the settings made in the Agent object's Attributes tab.

Process ID

The agent's process identification number.

Net Area

The name of the agent's net area.


By default, the name of the Automation Engine system is used for this
value.

Context menu
Individual agent commands are available via the context menu. It is possible to access statistical
and report data, search for objects using the agent or disconnect the connection. All possible
commands are explained below:

118

Chapter2 UserInterface

Command

Description

Statistics or Report

Calls the statistics or the last report.

Activity Window

Opens the Activity Window with a filter to agent tasks.

Edit

Opens the corresponding Agent object.


This command is only available in system client 0000.

Start

Starts the agent via a ServiceManager.


This option can only be used if a ServiceManager is available for
starting the agent. Furthermore, it is required to enter the
ServiceManager settings in the Agent object either manually or with
the command "Refresh Service Manager Scan".

Disconnect Agent

Disconnects the connection on a temporary basis. The agent


reconnects to the UC4 Automation Engine as soon as the next signal
for agent checking is sent. Disconnecting an agent connection is
reasonable when a new communication process is started and the
agents rearrange themselves in order to have workload well-balanced.

Change Logging

Causes the log file to be changed. You can also use the script element
CHANGE_LOGGING for changing the log file.

Close

Closes the agent immediately regardless of tasks running .

Delete Agent

Deletes an inactive agent. It is moved to the Recycle Bin and can be


restored at a later time. Agent authorizations remain untouched.

Search for Use...

The Search dialog opens, in which you can search for objects using the
agent.

Replace...

The Replace Use dialog opens, listing objects that use the agent and
can therefore be replaced by another one.

Properties

Calls the Properties dialog (see below).

Export to File...

Exports the content of the agent list to a CSV file.

Refresh Service
Manager Scan

Refreshes the ServiceManager's connection settings for the selected


agents.
These settings are required for starting agents via the System
Overview or the script element MODIFY_SYSTEM using a
ServiceManager. The Agent object's Attributes tab can be used to
display and manually edit these settings.
It can happen that the service name which has been entered in the
Agent object does not comply with the corresponding service name in
the ServiceManager anymore. In this case, execute the command
"Refresh Service Manager Scan" or enter the relevant values manually.

Refresh

Refreshes the view

The following commands are only available in system client 0000. The UC4 administrator can
define the ones which should be displayed in the UC4 Variable UC_AS_SETTINGS.
Command

Description

Automation Engine

Export company key

Exports the company key to a file.

Authenticate Agent

Releases and agent for processing.

119

Subsequently, this agent can be used in your individual clients.


Withdraw
authentication

Locks an agent from processing.

Export authentication
package

Exports the authentication package to a file.

Renew transfer key

The transfer key must be renewed when the agent's keystore file has
been changed.

This agent is no longer available for processing in your clients.

Properties
The popup-menu command Properties opens a dialog in which you can specify various settings.
Trace options can be set or deleted in the first tab. In doing so, the agent's error behavior can be
logged. The agent does not have to be closed for a trace but system performance can decrease due
to the fact that a huge amount of data is created. UC4 recommends close cooperation with our UC4
Technical Support when setting trace options.
Enter the adequate number in the relevant trace option. It is also possible to specify more than one
trace option.

120

Chapter2 UserInterface

Agent settings can be specified in the lower part of the window. These are valid until the agent
connection is interrupted or ended.
The default value is specified by the UC4 administrator in the UC4 Variable UC_HOSTCHAR_
*.
Description

UC_
HOSTCHAR_
*

Max. resources Jobs:


Maximum number of resources the agent provides for Jobs (allowed values: "0"
- "100000"). The resource value is not checked if the checkbox is not activated.

WORKLOAD_
MAX_JOB

Max. resources FileTransfer:


Maximum number of resources the agent provides for FileTransfers (allowed
values: "0" - "100000"). The resource value is not checked if the checkbox is
not activated.

WORKLOAD_
MAX_FT

Automation Engine

121

Max Report blocks


Maximum number of report blocks to be stored in the UC4 Database (allowed
values: "1" - "10000").

MAX_
REPORT_
SIZE

Check interval
Time interval for the periodic UC4 Automation Engine check.

KEEP_ALIVE

The second tab includes information about agent variables.

Information

Description

HOST_HTYP_HW

Hardware information about the computer


(for example, system type, number of processors, or processor type).

HOST_HTYP_SW

Operating system of the computer.

HOST_HTYP_
SWVers

Version of the operating system or business solution.

HOST_CodeName

Name of the CodeTable object in use.

122

Chapter2 UserInterface

HOST_JCLVar

JCL variant (Job Control Language).

HOST_
HostAttrType

Type of the agent.

HOST_TcpIpAddr

DNS name or TCP/IP address of the agent.

HOST_TpcIpPort

Port of the agent.

HOST_Active

Shows whether the agent is active or inactive.


Allowed values: "0" and "1"
"0" - Agent is not active
"1" - Agent is active

HOST_JobCnt

Number of currently active agent jobs

HOST_MaxWaiting

Displays whether the value specified with WORKLOAD_MAX_JOB was


exceeded.
Allowed values: "0" and "1"
"0" - Value lies below WORKLOAD_MAX_JOB
"1" - Value was exceeded

HOST_Daylight

Retrieves if summertime applies.


When being started, the agent verifies whether summer or wintertime
applies.
Allowed values: "Y" and "N"
"Y" - Summertime
"N" - Wintertime

HOST_
LicenceClass

License class

HOST_Version

Agent version including hotfix level.

HOST_JobMd

Path of the job messenger.

HOST_PathBin

Path of the BIN directory.

HOST_
PathJobReport

Path of the directory in which the job report is stored.

HOST_PathTemp

Path of the Temp directory.

HOST_LoginMask

Mask for the login information.

HOST_
MibMonitoring

Shows whether the agent's availability is monitored.

HOST_LicCategory

License category.

See also:
Agent
>

Allowed values: "0" and "1"


"0" - The agent is not monitored
"1" - The agent is monitored

Automation Engine

123

2.14.6 AgentGroups
This area of the System Overview displays the AgentGroups of the own client and, if the relevant
authorization has been granted, of system client 0000.

Column

Description

Name

Name of the AgentGroup.

Client

Client in which the AgentGroup object is available.

Platform

Platform of the AgentGroup's agents.

Mode

AgentGroup mode.
"ALL" - All agents
"ANY" - Any randomly selected Agent
"FIRST" - First available Agent
"LOAD_DEPENDENT" - Depends on the workload
"NEXT" - Next listed Agent

Agents parallel

Maximum number of agents on which the task can be executed at the


same time.

Broadcast enforced

Check this setting if the task should be executed on all agents (mode
"All") including those that are not active at the time of activation.

Context menu
The context menu provides commands for individual or several AgentGroups.
Command

Description

Simulation

Lists all agents that belong to the AgentGroup in the simulation view.

Edit

Opens the corresponding AgentGroup object.

Search for use

The "Search" dialog opens which searches for objects that use the
AgentGroups.

Replace...

The "Replace use" dialog opens and lists all objects in which the
AgentGroup is used and can be replaced.

124

Chapter2 UserInterface

Disconnect Agent
connection

Temporarily disconnects the connection for all the AgentGroup's


agents. They reconnect to the UC4 Automation Engine as soon as the
next agent check signal is sent. Disconnection is useful when a new
communication process is started and the agents should rearrange.

Change logging

Triggers a log-file change for all the AgentGroup's agents. This is also
possible using the script element CHANGE_LOGGING.

Close

Immediately terminates the AgentGroup's agent regardless of running


tasks.

Properties

Calls the "Properties" dialog (see below).

Export to File...

Exports the content of the AgentGroup list to a CSV file.

Refresh

Refreshes the view.

Properties
The context menu command Properties opens a dialog in which you can define several settings. All
agents of the highlighted AgentGroups obtain these values when you click OK.
The properties window displays default values and not the actual agent settings.
The settings correspond to those that can be changed in the System Overview, section "Agents".

Automation Engine

125

Simulation view
The simulation and the button of the same name in the AgentGroup object list all agents that belong
to an AgentGroup. An arrow indicates the agent on which the next task will run.
The columns correspond to the ones displayed in the agents area of the System Overview.

See also:
AgentGroup

2.14.7 Queues
The System Overview item "Queues" lists all Queue objects including their states and settings.
The System Overview of client 0 displays the Queue objects of all clients.

Column

Description

Name

Name of the Queue object

Status

Status of the Queue object


"STOP" - The execution of Queue objects has been stopped.
"START" - The object can start in the Queue.
The Queue's max. slots have been set to value "0" and no tasks
can start.
You can change the status via the context menu of the System
Overview or the Activity Window.

Priority

Priority of Queue tasks.

Max.slots

Max. parallel-running Queue tasks. The displayed value always


complies with the object definition (Attributes tab).
Value "-1" signals that there is no Queue limit.

126

Chapter2 UserInterface

Used slots

Number of active tasks that occupy a position in the Queue object.


Note that this value can exceed the defined Queue limit (max.
slots) because of limit modifications or the execution of the
command "Ignore Queue".

Hold

Number of Queue tasks that have already reserved a slot but must not
start because of the stopped execution of a Queue, client or Workflow
(STOP).

Waiting

Number of Queue tasks that are in the status "Waiting for Queue slot"
(Queue status: STOP).

Consider ERT

The Queue object includes the setting "Consider Estimated Runtime


for Calculation".

Context menu
The following commands in this form are only available for Queue objects:
Command
Go
Stop

Modify

Description
Starts or stops the Queue's execution of tasks.
These modifications can also be made for several Queue
objects at a time. Doing so requires that only Queue objects
with the same status are selected.
Opens a dialog window that can be used to change a Queue
object's priority and max. slots. The current values are displayed in
the window.
Modifications that are made for these settings are only valid
until the next exception occurs or until a further manual
modification is made.

General commands:
Command

Description

Edit

Opens the relevant Queue object.

Activity Window

Opens the Activity Window with a filter. Therefore, only the tasks
of the selected Queue object are displayed.

Statistics and Reports

Opens the Statistics Overview or the last Report.

Search for usage

Opens the Search dialog which can be used to search for the
objects that have been assigned to the Queue object.

Replace

Opens a Replace Use dialog that lists the objects in which the
Queue object is used so that it can be replaced by another one.

Export to file

Exports the Queue's list content to a CSV file.

Refresh

Refreshes the view.

See also:

Automation Engine

127

Queue

2.14.8 Agent Assignment


This area is only available in the System Overview of client 0. It displays all Agent/Client
Assignment objects (HSTA). The upper half of the window lists all active objects, the lower half
all inactive ones.
Active objects do not run in the Activity Window, but are considered when an agent is assigned to a
client:
l
l

When the agent logs on to the UC4 system for the first time.
When you execute the "Execute host assignments" command in the HSTA object's
"Simulation" toolbar button.

You can move the HSTA objects to the active or inactive area in the System Overview either by
double-clicking them or by dragging and dropping them. You can click "Save" to assume your
changes or "Reset" in order to discharge all changes that have not been changed. When you switch
to another area of the System Overview, all the HSTA assignments that have not been saved will
also be reset without any additional query.
The HSTA object order affects the assignment of rights if the filters of several HSTA objects
overlap. The list is processed from top to bottom. If some filters overlap, the rights of the HSTA
object that is listed last is entered in the Agent object.
The UC4 Variable UC_AGENT_ASSIGMENT includes a list of all active HSTA objects. The
UC4 administrator can access this Variable.
If you want to delete an HSTA object, the system queries whether it should also be deleted in the
UC4 Variable UC_AGENT_ASSIGNMENT. HSTA objects that have already been deleted but are
still available in this Variable are displayed with an exclamation mark in the System Overview.

128

Chapter2 UserInterface

Description
Field/Element

Description

Name

Name of the HSTA object.

Title

Title that has been specified in the HSTA object, Header tab.

Context menu
Command

Description

For active HSTA


objects
Deactivate

Cancels the release of the HSTA object.


Inactive HSTA objects are not considered when an agent is assigned
to a client.

Move up
Move down

Moves the HSTA object in the list.

Edit

Opens the HSTA object.

Delete

Deletes the HSTA object.

Rename object

Opens a dialog in which you can specify a new name for the HSTA
object.

For inactive HSTA


objects
Activate

Releases an HSTA object.


Only active HSTA objects are considered when an agent is assigned
to a client.

Edit

Opens the HSTA object.

Delete

Deletes the HSTA object.

Rename object

Opens a dialog in which you can specify a new name for the HSTA
object.

2.14.9 Users
All a client's users are listed in the category User. All users of the UC4 system can be viewed in
system client 0000. Additional information is provided using the popup-menu command Details.
User sessions can also be canceled here. In doing so, the connection is immediately ended and
a message informs the user as soon as UserInterface work is continued.

2.14.10
Column

Description

Automation Engine

Name

Name of the user in the format Client/Name/Department

Last Name

User's last name

129

First Name User's first name


Version

UC4 system version including patch level

Language

Language selected at last user logon

Time zone

Time zone specified in User object

Session ID

Number of the user session

CP

Communication process to which the user is connected

Session
TimeZone

Time zone of the session

Last
session

Date and time of the last logon

E-Mail1

User's email address

E-Mail2

User's second email address

LDAP
connection

Indicates whether the User has specified the LDAP connection

Archive 1
Archive 2

Archive keywords which were entered in the User object

Remote
Identifier

This column shows when users have not directly logged on to the Automation
Engine system via the UserInterface but in another component.
Possible values:
"ECC" - Enterprise Control Center
"SVO" - Service Orchestrator
"PCO" - Policy Orchestrator
The version of the particular component is also displayed.

User States
Depending on specifications made in the User object, users can have several states. Current states
are displayed with a symbol in the column Name. A green symbol
indicates that the
corresponding user has logged on to the UC4 system and red
indicates that not. An additional
lock symbol
is displayed if a user has been blocked by the UC4 administrator for a repeated
wrong password specification. Logically, inactive users are no longer part of the UC4 system, this
situation is displayed with a canceled user symbol

The option is available to hide inactive users in the lower window edge.

Context menu
The context menu serves to open commands for one or several users.
Command

Description

130

Chapter2 UserInterface

Detail

Opens the Detail Window

Edit

Opens the corresponding User object

Statistics

Opens the statistical overview

Disconnect user

Disconnects the connection between User and UC4 system

Activate LDAP connection


Deactivate LDAP
connection

Activates or deactivates the LDAP connection for all specified


users

Delete

Deletes the User object


This command is only available for inactive users

Export to File

Exports the user list content to a CSV file

Refresh

Updates the view

See also:
User

2.14.11 Messages
This category can be used to recall messages that were displayed in the UserInterface's
Message Window during system operation. Numerous filter criteria are available. You can select
the settings that you required and confirm by clicking Start or pressing the return key in order to
start the search. The results are displayed in the lower window part.

Field/Control

Description

User

Name of the user who received the message.

Automation Engine

131

Admin

Select this check box if administrator messages should be included in your


search. Administrator messages are not assigned to a particular user (such as
system-wide messages).

Security

Select this check box if security messages should be included in the search.
They are created by the Authorization System's access control management.

Message type

The following message types are available:


Information
Warning
Error
Monitoring: successful
Monitoring: unsuccessful
The last two message types are only created if the UC4 administrator has
activated the access control in the UC4 variable UC_CLIENT_SETTINGS by
using the key "SECURITY_AUDIT_SUCCESS" or "SECURITY_AUDIT_
FAILURE".

Message
category

The following message categories are available:

Filter for
inserts

Search for strings within messages (such as UC4#WP001).

Date settings
(messages)
From - Until

Displays messages that occurred in the specified period of time.

Order
direction

Ascending or descending order of found messages.

Max number

Maximum number of messages that should be displayed.

Message, object access, host access, login and privilege.

Allowed values: "1" - "9999"


Date

Date and time at which the message occurrec.

Source

Message source. This could be the UC4 system or security monitoring.

Category

Message category.

Message type

Message type.

Message

Message text.

The easiest way to open a message is to double-click it. This is especially useful if the message
has been truncated and can only be read by scrolling through the System Overview. You can also
open a message by using the popup menu.

132

Chapter2 UserInterface

See also:
Message Window

2.14.12 Database
This category provides information about the database in use.

Field

Description

Database
DBMSName

Database

Version

Database version

DriverName

Name of the driver

DriverVersion

Version of the driver

DriverODBCVersion

Version of the ODBC driver

DBName

Name of the UC4 Database

ODBCConnString

Connection string to the UC4 Database

UC4

Automation Engine

InitialData Version

Version of initial data

Current MQ Records

Number of queued messages

MQPWP

Message queue of the primary work process

MQWP

Message queue of the work processes

MQDWP

Message queue of the dialog processes

MQMEM

Message queue for current activations

MQRWP

Message queue for outputs

MQOWP

Message queue for resource calculations

133

2.14.13 License
This category within the System Overview contains a list of all licenses that are used including
the corresponding information. The acquired licenses are supplied in a separate file and you can
load them to the database using the utility UC4.DB Load.
The license type is shown in the very first line of the overview. "T" stands for test system and "P"
for production system.

Column

Description

Platform

The license for the platform that is used.

Class

The license class that complies with the acquired license and hardware and
software.
Allowed values: "1" to "9", "S", "V"
"1" to "9" = The license class of the agent.
"S" = The agent that is used for administrative tasks on the Server computer.
"V" = The virtual license class for the agent.

Category

The category description of the license (such as Production).

Date

The date on which the license will expire.

134

Chapter2 UserInterface

Count

The total number of licenses for the platform.

Event

This is displayed if UC4.event has been licensed.

Processors

The number of allowed processors or users (depending on platform).

Restriction

A comment field for restrictions.

Used
(Host)

The number of licenses that are used.


Agents for Enterprise Business Solutions:
The number of running agents (total number of users who access them)
Other agents:
The number of used agents / number of used CPUs /Actual number of agents (
actual number of CPUs)
Server:
The number of used licenses (total number of actually running Server processes)
User:
The number of used licenses

License abbreviation
Column

Description

CN.DB.DB2

Database connection for DB2

CN.DB.ORA

Database connection for Oracle

CN.EBS.SAP.MON

UC4.Connect for SAP Monitoring

CN.MQ

UC4.Connect for WebSphere MQ

CN.OS.VSE

CallAPI for VSE

Company

The default line that is used for each license certificate.

DC

UserInterface

DC.WEB

WebInterface

EX.EBS.OA

OracleApplication agent

EX.EBS.PS

PeopleSoft agent

EX.EBS.SAP.BAS

SAP agent for Basis

EX.EBS.SAP.BCA

SAP agent for BCA

EX.EBS.SAP.BI

SAP agent for BI

EX.EBS.SAP.XI

SAP agent for XI

EX.EBS.SEBL.I

Siebel agent

EX.OS.BS2

BS2000 agent

EX.OS.GC8

GCOS8 agent

EX.OS.LNX.ZSE

z/Linux agent

EX.OS.MPE

MPE agent

Automation Engine

EX.OS.NSK

NSK agent

EX.OS.OS4

OS/400 agent

EX.OS.UNX

Unix agent

EX.OS.VMS

VMS agent

EX.OS.WIN

Windows agent

EX.OS.ZOS

z/OS agent

EX.SVC.CIT

Agent for Rapid Automation

EX.SVC.JMX.BOSS

JMX agent for JBoss

EX.SVC.JMX.NETWEAVER

JMX agent for SAP NetWeaver

EX.SVC.JMX.OC4J

JMX agent for Oracle Containers for J2EE

EX.SVC.JMX.TOMCAT

JMX agent for Tomcat

EX.SVC.JMX.WEBLOGIC

JMX agent for BEAWeblogic

EX.SVC.JMX.WEBSPHERE

JMX agent for IBMWebSphere

EX.SVC.SQL.ACCESS

Database Agent for MSAccess

EX.SVC.SQL.DB2

Database Agent for DB2

EX.SVC.SQL.MAXDB

Database Agent for MaxDB

EX.SVC.SQL.MSSQL

Database Agent for MSSQLServer

EX.SVC.SQL.MYSQL

Database Agent for MySQL

EX.SVC.SQL.ORACLE

Database Agent for Oracle

EX.SVC.SQL.SYBASE

Database Agent for Sybase

FW.OV.NNM

UC4.Connect for HP OpenView NNM

FW.OV.OVO

UC4 Smart Plug-In for HP OpenView Operations

FW.PTL.KM

UC4.Knowledge Module for BMC Patrol

FW.TME.PM

UC4.PlusModule for Tivoli

GL.DC

Global UserInterface license for opening client connections of


different UC4 systems

SRV.AIX

UC4 Automation Engine for AIX

SRV.HPX

UC4 Automation Engine for HP/UX

SRV.LNX.X86

UC4 Automation Engine for Linux

SRV.LNX.ZSE

UC4 Automation Engine for z/Linux

SRV.NS.AIX

UC4.Nonstop-Server for AIX

SRV.NS.HPX

UC4.Nonstop-Server for HP/UX

SRV.NS.LNX.X86

UC4.Nonstop-Server for Linux

SRV.NS.LNX.ZSE

UC4.Nonstop-Server for z/Linux

SRV.NS.SOL.SPC

UC4.Nonstop-Server for Solaris

135

136

Chapter2 UserInterface

SRV.NS.WIN

UC4.Nonstop-Server for Windows

SRV.SOL.SPC

UC4 Automation Engine for Solaris

SRV.WIN

UC4 Automation Engine for Windows

2.14.14 ILM
This area lists information about partitions and facilitates checks, switch-outs and deletions.
The System Overview only displays the area ILM if ILM has been installed and the User
privilege "ILM actions" has been granted.
The lower window part indicates whether ILM is active and shows the number of online partitions.
You can stop ILM, and in doing so you prevent future partition changes.

The Partition tab contains a list of existing partitions. You can delete staging tables
(MSSQLServer) or partitions which are no longer required (Oracle). The History tab displays a list
of removed partitions.
All partitions (the current one exempted) can be checked for statistical records of active tasks. The
result is a list of these active tasks which can be adjusted manually. On the Partition tab, call up
the context menu of the particular partition and select the option Check partition. This checklist
includes a further context menu which opens when your right-click a task.
The context menu provides an additional command for MS SQLServer which can be used to trigger
a switch-out for a partition without statistical records of active tasks. A switch-out is always made
for the oldest partition, regardless of the partition checked in the list.

Automation Engine

137

Partition tab
Column

Description

Partitionno.

Running number of the partition


Staging tables (MSSQLServer) always have the partition number "0".

Parent

Displays the schema name (MS SQLServer) or the corresponding


main table of the UC4 Database (Oracle).

Filegroup
/Tablespace

Name of the filegroup (MSSQLServer) or the tablespace (Oracle)

Start time

Time as of when data records have been stored in the partition.

Min RunID

Smallest RunID of the partition

Max RunID

Largest RunID of the partition

Rowcount

Number of staging-table data records (MSSQLServer)

Checked

Indicates whether the partition could successfully be checked.


A check, which is made either before a partition change or manually, is
regarded as successful if the partition does not contain statistical
records of active tasks.

The ILM checklist which includes the active tasks of a partition contains the following columns:
Column

Description

Client

Number of the client in which the task is active

Name

Task's object name

Type

Task's object type

RunID

Task's running number (RunID)


Tasks whose RunID shows a little red edge include a comment.

Status

Task's status symbol and status

Start time

Time at which the task was activated

End time

Time at which the task ended

User

User who activated the task

Parent

Running number (RunID) of the superordinate task that has


activated this task

The following options are available for all tasks in the ILM checklist's context menu:
Command

Description

Details

Shows the task's Detail Window

Report

Opens the current report for this task


Event objects display the report of the Event that was last
processed (!Process).

Statistics Activator

Displays the statistical overview of the activating object.

138

Chapter2 UserInterface

Command

Description

Child-task statistics

Displays the statistical overview of subordinated objects.

Comments

Opens a task's comment window.

Refresh

Refreshes the view.

Additional context menu options are only available for particular tasks:
l
l
l
l

Monitor (only for Notifications, Cockpits, Groups, Workflows and Schedules)


Change logging (only for Server processes)
Deactivate (only for ended tasks which have not been deactivated automatically)
Cancel (only for tasks in status "Waiting for Host" and for Notifications and Events in status
"Sleeping")
Disconnect (only for active user processes)

History tab
Column

Description

Partitionno.

Running number of the partition


Under MSSQL Server, staging tables always have the partition number
"0".

Parent

Displays the schema name (MS SQLServer) or the corresponding


main table of the UC4 Database (Oracle)

Filegroup
/Tablespace

Name of the filegroup (MSSQLServer) or the tablespace (Oracle)

Start time

Time as of when data records were stored in the partition

End time

Time up to when data records have been stored in the partition

Min RunID

Smallest RunID of the partition

Max RunID

Largest RunID of the partition

2.14.15 Cache
Information requested from the database is stored in the Server input buffer and can so quickly
be read whenever required. This procedure improves system performance as it is less timeconsuming than repeatedly calling the database. Keep this in mind when specifying the
maximum size of the Server input buffer in the Server tab. This value depends on the memory
that is available on your computer.

Automation Engine

Column

Description

Name

Area of the Server input buffer:


l
l
l
l
l
l
l

Clean Up Limit

139

SCRIPT - for Script


VARA - for UC4 Variable
MQMEM - for message queues
ODOC and XREQ - for UserInterfaces
USER - for User lists
OBJECT_IDNR - or object codes
OBJECT_NAME - for object names

Limit for the cache's memory release. To be specified in the Server properties.
Data is stored in the cache until its maximum size has been reached. Only in
this case, the Server deletes entries that are no longer required. The cache's
maximum size is ignored if it is not possible to remove data.

Current size

Currently used cache size

Cache items

Number of all cache entries

Active

The cache is active if this checkbox is checked

Calls

Number of input buffer calls

Hits

Number of entries found in the cache

Hit ratio

Hits of the primary work process in percent

Time

Total time consumed by the work processes for calling the cache

See also:
Server
Cache Usage

140

Chapter2 UserInterface

2.14.16 Password Exit


This area of the System Overview lists all the available information about a password exit.

Column

Description

Exit key

Type of exit
Allowed value: "XUC4PASS" for password exit

Exit name

Name of the exit


Allowed value: "PASSWORD" for password exit

Exit file

Path and file name of library

Exit parameter

Parameters assigned to the library

See also:
Password Exit

2.14.17 Quarantine
Internal messages control processing based on objects and their settings. Thus, checking their
contents is of high importance.
Invalid messages which cancel a Server process are intercepted and displayed in this area of the
System Overview. Your UC4 system is therefore protected since these messages do not affect the
Server processes.
Contact UC4 support; these messages are helpful for further analyses.
By default, the UC4 Automation Engine checks internal messages. On UNIX, this can have a
negative impact on performance. The UC4 administrator can deactivate this function with the
parameter exception= in the UC4 Server's INI file.

Automation Engine

Column

Description

Message number

Number of the message

Status symbol

Status of the message

141

"1" - May be released after prior contact with UC4 support


"2" - Has been logged for analysis reasons but cannot be released
"3" - Has successfully been processed and can be deleted
Occurrence time

Time when the message was quarantined

Reason for failure

Additional information about the failure reason

Replays

Number of release attempts

XML Stream

Message sections (if retrievable) for analysis

Reaction to invalid messages


The following steps are initiated if an invalid message has been detected:
1.
2.
3.
4.

The message is put into quarantine.


All database modifications made by this message are canceled.
Further message information is written to the UC4 Automation Engine's log file.
A trace file of the following name is created:
UC4Dump_name of the Server process_RunID_time stamp.txt

Example:
c:\uc4\server\temp\UC4Dump_UC2T#WP002_40373135_20060406144901543.txt
5. A dump is created if possible.
6. The ServiceManager restarts the aborted Server process.
7. If the UC4 administrator has defined the key EXECUTE_ON_EXCEPTION in the UC4
Variable UC_SYSTEM_SETTINGS, the specified object starts.
The UserInterface displays the symbol

to authorized users if there are quarantine messages.

142

Chapter2 UserInterface

This area of the System Overview and the symbol in the UserInterface are only displayed when
the User object or UserGroup has the privilege "Create diagnostic information" and a modification
right for Server processes. Obtain further information from your UC4 administrator.

Releasing messages
Only release messages upon prior contact with UC4 support.
Highlight the message and open the context menu command "Release". A dialog opens in which
trace options can be set. Select the Server process to be used for reprocessing the message.

Only the primary work process executes PWP messages.


Specified trace options are deactivated after the execution attempt. If the message could be
processed without failure, it remains in the list but can be deleted with a context menu command.

Context menu
The following actions are possible:

Automation Engine

Command

Description

Receipt

Flags the message as noted

143

The alarm status shown at the upper right edge of the UserInterface is no longer
shown when all invalid messages have been noted.
Delete

Removes a message from the list which could be reprocessed without failure

Release

Releases a task which can then be reprocessed

Show
message

Shows the message's internal technical information

2.15 Quick Search


2.15.1 Quick Access
The Quick Access function in the UserInterface enables a global, quick search for objects within
a client and direct access to them via the context menu. It even allows you to quickly access
objects that are deeply nested in a folder structure.

Client-wide quick search


You can call the Quick Access search field in the UserInterface either by clicking on the
magnifier button in the toolbar or via the F3 key.
The Quick Access search field is displayed directly below the toolbar in the UserInterface. A list of
matching objects and the number of results (hits) is displayed when a search key has been entered
and confirmed.
The UC4 Explorer's context menu is available for objects that are displayed in the result list of the
Quick Access search. This means that actions such as editing or executing particular objects can
be easily performed.

Note that this search does not include folders (FOLD).


The following table provides an overview of the Quick Access search field:

144

Chapter2 UserInterface

Action

Shortcut

Opening the Quick Access search


field

F3

Starting the search

ENTER
(Cursor positioned in the search field)

Collapsing the result list

ESC

Closing the search field

ESC
(result list collapsed)

Pushbu
tton

2 x ESC
(result list expanded)
Wildcards
A wildcard search is possible with the character '*'. If individual wildcard characters are used at the
beginning or end of the search text, the system searches for elements that start or end with the
search key. This schema is automatically used, hence it is not required to place a wildcard
character before and after the search text. You can also use the wildcard character '*' within the
search key; it stands for any number of characters.
Example: Wildcard search
Search text

Result

JOBS

Searches for all objects whose names include the term


"JOBS".

*JOBS*

Searches for all objects whose names include the term


"JOBS".

*JOBS

Searches for objects whose names end with the term "JOBS".

JOBS*

Searches for objects whose names start with the term "JOBS".

JOBS*TEST

Searches for all objects whose names include the terms


"JOBS" and "TEST" separated by any number of characters.

*JOBS*TEST*

Searches for all objects whose names include the terms


"JOBS" and "TEST" separated by any number of characters.

Quick Access
To execute actions via Quick Access, select one or more objects in the search list and open the
context menu. With multi-selection, the context menu only provides commands that can be
executed for all selected objects.
Objects of the Quick Search list can be dragged and dropped to the Activity Window, another
folder or a Workflow or Schedule object.

See also:
UC4 Explorer's Context Menu
Quick Search in Workflows

Automation Engine

145

Quick Search for Lists


Quick Search in Objects

2.15.2 Quick Search Function for Lists


The Quick Search function in the UserInterface facilitates a quick, easy and clear search for lists
with objects and activities.

General information
The Quick Search is available for the following areas:
l
l
l
l
l
l
l

UC4 Explorer (also available for the detail and symbol view)
Statistics
Activity Window
Forecast
Auto Forecast
Search (Results)
System Overview (for messages, the column Messages is used for the search)

The Quick Search bar can be opened using the shortcut "CTRL + F" in a selected window. The
search field opens exactly above the displayed objects. Use the ESC button to hide the Quick
Search.

A drop-down list opens if you enter a term in the search field. This list includes up to 10 matching
objects. The name and the corresponding symbol are always displayed. If a column other than
Name has been selected for the Quick Search, the suggestions also include this column. Within the
listed results, the specified search text is highlighted in yellow. At the same time, all found elements
in the object area are highlighted and the first matching objects are automatically displayed in the
window.
The arrow keys can be used to navigate within the Quick Search function. If a search result is
selected, the corresponding object is highlighted and the window's content is automatically moved
to this element. The buttons ESC or ENTER can be used to close the result list.
Note that upper and lower case letters can be used for the Quick Search. This is important
because it is also possible to search for object titles which can also include lower case letters.
Make sure to use upper case letters if you search for object names.

146

Chapter2 UserInterface

Wildcards
A wildcard search is possible with the character '*'. Other wildcard characters are not allowed. If
individual wildcard characters are used at the beginning or end of the text, the system searches for
elements that start or end with the search term. This schema is automatically used, hence it is not
required to place a wildcard character before and after the search term. You can also use the
wildcard character '*' within the search text in the form of a placeholder for any number of
characters.
Example: Quick Search with wildcard characters in the Explorer window
Search text

Result

JOBS

Searches for objects whose names include the term "JOBS".

*JOBS*

Searches for objects whose names include the term "JOBS".

*JOBS

Searches for objects whose names end with the term "JOBS".

JOBS*

Searches for objects whose names start with the term "JOBS".

JOBS*TEST

Searches for objects whose names include the terms "JOBS"


and "TEST" separated by any number of characters.

*JOBS*TEST*

Searches for objects whose names include the terms "JOBS"


and "TEST" separated by any number of characters.

Pushbuttons of the Quick Search bar


Symbol

Meaning

Description

Shows the previous term

Highlights the previous search


result in the list. The window
content is automatically moved
to this element. The highlighting
of all matching search results is
removed.

Show matching terms only

This function can be used to limit


the window content to the
elements matching the search.
This button can be activated and
deactivated.

Shows the next term

Highlights the next search result


in the list. Also, the element is
automatically displayed in the
window's list view. The
highlighting of all matching
search results is removed.

Automation Engine

Select search column

147

This command can be used to


select columns of the list (name,
title, type etc.) which should be
searched.
Clicking this button opens a
menu in which the column can be
selected. The object/task name
is always displayed in the dropdown list of the Quick Search
function.
The search column is displayed
with the symbol .

Close

Closes the Quick Search bar.


This function is also available via
the ESC key. If the result list is
open, the button ESC first hides
this list.

See also:
Quick Access
Quick Search in Workflows
Quick Search in Objects

2.15.3 Quick Search / Quick Access in Objects


Combo boxes in object tabs that can be used to select objects include a Quick Search function.
A context menu for a Quick Access to objects is available in all fields in which an object name
can be entered.

Quick Search
A Quick Search is only available for combo boxes in object tabs that can be used to specify objects
of a particular type. For example: Host, Login, Code, Group etc.
Fields without content in which a Quick Search is possible are identified by the text "<Type to
search>".

148

Chapter2 UserInterface

If you enter a search key in a combo box, the matching objects are displayed in a drop-down list. If
you do not enter a search text, a list that includes all object types opens when the combo box is
expanded. The search field is highlighted in yellow in the result list.
You can use either the mouse button or the arrow key (UP/DOWN) in combination with the ENTER
key to select a search result from the list.
Wildcards
The wildcard character '*' can be used. If individual wildcard characters are used at the beginning or
end of the search text, the system searches for elements that start or end with this search key. This
schema is automatically used, hence it is not required to place a wildcard character before and after
the search text. Within the search key, the wildcard character "*" stands for any number of
characters.
Example: Using wildcard characters in the combo box "Login" (Attributes tab) of a Job.
Search text

Result

LOGIN

Searches for all Login objects whose names include the term
"LOGIN".

*LOGIN*

Searches for all Login objects whose names include the term
"LOGIN".

*LOGIN

Searches for all Login objects whose names end with the term
"LOGIN".

LOGIN*

Searches for all Login objects whose names start with the term
"LOGIN".

LOGIN*TEST

Searches for all Login objects whose names include the terms
"LOGIN" and "TEST" separated by any number of characters.

*LOGIN*TEST*

Searches for all Login objects whose names include the terms
"LOGIN" and "TEST" separated by any number of characters.

Automation Engine

149

Quick Access
The context menu for a Quick Access is available for several fields that require an object to be
entered. These include combination fields, but also the field Execute in which an object has to
specified that should be processed if an error occurs.
All fields in which the context menu is not available have the symbol
menu by right-clicking the relevant field or via the symbol.

. You can open the context

Note that this context menu can only be displayed if the relevant field is not empty.
The context menu cannot be opened in selection tables (e.g.: Sync or Recipient tab).
Symbol

Command

Description

Edit

Opens the object specified in the field for editing.

Search for usage

Starts a search for usage of the object specified in


the field.

Add object

Opens a specific Explorer window which can be used


to create a new object. The Explorer window displays
only objects of the type that is allowed in the
respective field. More information is provided in the
description below.

Open home folder

Opens a new Explorer window which shows the


folder of the object that has been entered in the field.
The window content automatically shows the
highlighted object.

Context menus for fields in which you can specify executable objects also include the commands
"Execute", "Statistics" and "Last report".
Add object

150

Chapter2 UserInterface

The context menu command "Add object" opens a specific Explorer window from which objects can
be selected from a clear folder structure. Only object types are displayed that are allowed in the field
from which the call was made. This can be a particular object type (such as Login field) or several
ones (such as Runtime - Else - Execute: all executable objects). The Explorer opens in the folder in
which the object that has been specified in the field is stored.
Now, you can select an existing object. Do so by clicking an object in the Explorer or manually enter
it in the text field. Click "OK" to copy the selected object name over to the field.
You can also create a new object from this window. The following steps are required:
1. Enter the new object name in the text field.
2. Click the button New object.
3. The object cannot be created if an object of the same name already exists in the client. Use
an object name that has not yet been used.
4. The new object is immediately created if only a particular object type is allowed for the field
via which this window has been called (such as Login).
5. The Templates dialog opens if objects of different types can be selected for the field. In this
case, the Templates window only displays the object types that are allowed for the field
(such as all executable objects).

See also:
Quick Access
Quick Search for Lists
Quick Search in Workflows

Automation Engine

151

2.15.4 Quick Search in Workflows


The Quick Search function provides a clear overview and navigation in Workflows. This is very
useful in huge Workflows.
The Quick Search function of Workflows can be called in the Workflow tab or in the Monitor using
the shortcut CTRL F. The search bar is shown between the toolbar and the process flow in the
object window.
A list of matching Workflow tasks opens when a term is entered in the search field. This list
displays a maximum of 10 results and the search text is highlighted in the object name. All matching
Workflow tasks are additionally marked with a black border.
You can select a particular entry in the result list with the arrow buttons (UP/DOWN). The window
content then automatically switches to this task. This function is useful if the Workflow does not
display all tasks because the function "Fit size" has not been selected. Multi-selection is not
possible. Pressing the ENTER key or left-clicking will close the result list and highlight the selected
task in the Workflow.

Pushbuttons of the Quick Search bar


The following table describes the control elements of the Quick Search field:
Symbol

Meaning

Description

Finds the previous item

Highlights the previous search result


in the Workflow using a black border.
Additionally, the content of the
Workflow moves to this task if it is
not visible.

152

Chapter2 UserInterface

Finds the next item

Highlights the next search result in


the Workflow. Additionally, the task
is automatically displayed in the
Workflow.

Close

Closes the Quick Search bar. This


function is also available via the
ESC key. If the result list is open,
the shortcut ESC first hides this list.

Wildcards
A wildcard search is possible with the character '*'. Other wildcard characters are not allowed. If
individual wildcard characters are used at the beginning or end of the text, the system searches for
elements that start or end with the search term. This schema is automatically used, hence it is not
required to place a wildcard character before and after the search term. You can also use the
wildcard character '*' within the search text in the form of a placeholder for any number of
characters.
For example: Quick Search with wildcard characters in a Workflow
Search text

Result

JOBS

Tasks in the Workflow whose names include the term JOBS.

*JOBS*

Tasks in the Workflow whose names include the term JOBS.

*JOBS

Tasks in the Workflow whose names end with the term JOBS.

JOBS*

Tasks in the Workflow whose names start with the term JOBS.

JOBS*TEST

Workflow tasks whose names include the terms JOBS and


TEST separated by any number of characters.

*JOBS*TEST*

Workflow tasks whose names include the terms JOBS and


TEST separated by any number of characters.

Automation Engine

153

Connect to

The "Connect to" function of the Line Tool can be used to connect two tasks within a Workflow
quickly and easily. The "Connect to" command is available in the Line Tool's context menu. The
Quick Search bar opens when this command is used.
Enter a text in the search field and a list of matching tasks expands. Only search results that can be
connected to the task are displayed. By selecting the list entries with the arrow buttons
(UP/DOWN), the possible connection to the selected Workflow is displayed by a dotted line.

See also:
Workflow Monitor
Workflow tab
Quick Access
Quick Search for Lists
Quick Search in Objects

2.16 Importing and Exporting Objects


Objectscan be imported and exported between different UC4 systems or between the individual
clients of the same UC4 system. Object information is stored in an XML file and can be
exchanged between the different platforms.
As opposed to the Transport Case, you can freely select the UC4 system folder in which the
objects should be stored.

154

Chapter2 UserInterface

Note that XML imports require the target UC4 system to have at least the same ServicePack
version as the source system (XML file).
Do not use the import and export function for mass transports. Use the UC4 Transport Case for
this purpose.
Note that the size of the imported XML file must not exceed 2048 KB. Values below this limit
can be defined by the UC4 administrator in the UC4 Variable UC_SYSTEM_SETTINGS with
the key "MAX_IMPORT_SIZE".
The UC4 administrator can also limit the maximum number of objects that should be exported at
once. Use the key "MAX_EXPORT_COUNT" in the UC4 Variable UC_SYSTEM_SETTINGS
for this purpose.
Highlight one or several of the objects that should be exported in the UC4 Explorer. Then call the
Export command in the UserInterface's File menu or the context menu. A window opens in which
you can enter the name of the XML file. UC4_export.xml is suggested by default.

Importing objects works the other way round. Call the Import command in the UserInterface's File
menu or the context menu and select the XML file that should be imported. You can determine
whether already existing objects should be replaced. Objects of the same name are skipped if this
option is not active.If it is active, you can additionally specify that existing folder links should be
kept.
You can also define that a link or the previous order is created for each replaced object. If the option
Keep existing folder links is not activated, al links of the imported objects are removed.

Automation Engine

155

A message window that provides further details displays when the importing process has started.
Right-click the context menu in order to copy the displayed line(s) or to export the text to a CSV file.
Various tools are available that can be used to edit the generated XML files. Note for Notepad
users: Notepad creates additional header information at the beginning of the editing function if
exported objects include special characters (such as titles with German U umlauts) in order to
display them. Doing so changes the XML file's content and UC4 cannot guarantee that the
import will function properly.
You can import and export objects manually via the UserInterface or by using the script
elementsIMPORT and EXPORT.
Note that authorizations that are assigned in the object's properties are not exported.
The validity range of Calendars that are exported from UC4 versions that are older than 5.00A
and should be imported to systems that use version 5.00A or later ones is not automatically
converted. Open these Calendars manually and store them if you want to use them.
For security purposes, you cannot export passwords.
Additional note:
Calendar keywords of other Calendars that refer to the transported Calendar object must also be
imported. Calendars are recalculated after each import. Doing so occasionally causes error
messages in the log file when the Calendar was recalculated at a point in time when the
particular Calendar keywords had not yet been read. You can ignore these messages, no
manual interference is required.

See also:
XML Files of Objects
UC4 Transport Case

156

Chapter3 Objects

3 Objects
3.1 Introduction
3.1.1 UC4's Object Orientation
UC4 shows processes in the form of objects. Each object is responsible for a work step and
represents a certain task. This means that processes are composted of various objects on a
modular basis.
This concept has tremendous advantages:
l

Clarity
All processes are clearly structured.
Simple maintenance
You can easily modify them.
Extensibility
It is easy to integrate new requirements.
Distributed processes
You can split complex processes into simple steps.
Re-usability
Subtasks can be integrated into various processes.

Object names can consist of up to 200 of the following characters: A-Z, 0-9, $, @, _, . and #.
TimeZone object names are an exception; they must not exceed 8 characters.

Opening Objects
When you open an object in the UserInterface, you will first see its most significant tab.
In Jobs, this is the Process tab provided that it includes a content. Otherwise, the Attributes
tabopens first.
The Attributes tabalso opens for SAP Connection objects.

Automation Engine

157

See also:
Object Classes
Object Types

3.1.2 Object Classes


Objects can easily be handled through the UC4 Explorer. There are four object classes:
executable, active, passive and system objects.

Executable Objects
Executable objects are objects that can be processed manually or through control mechanisms of
superordinate objects. They experience the stages of activation, start and execution.
Symbol

Object

Description

Cockpit

Visualizes various values and conditions within the system


or from the systems that are monitored or controlled.

Event

Determines conditions and reaction to conditions that occur.

FileTransfer

Exchanges files of any kind between systems and system


platforms.

Group

Executes sporadic tasks.

Job

Determines the process steps to be executed in a target


system.

Notification

Notifies an operator of an interruption in a task, the


completion of which represents a necessary precondition for
the execution of further tasks.

RemoteTaskManager

Monitors and controls external jobs that were not started by


the system.

Schedule

Starts executable objects at regular intervals.

Script

Contains processing instructions that are not executed on a


target system and implemented exclusively with script
elements.

Workflow

Compiles single tasks for combined execution via defined


conditions anddependencies.

Active Objects
Active objects are objects whose contents can be modified manually or while processing an
executable object.
Symbol

Object

Description

Calendar

Defines calendar days which can be considered as starting


conditions when executing tasks.

158

Chapter3 Objects

Queue

Defines the maximum number of parallel running tasks and the


corresponding priority.

Sync

Synchronizes executable objects on the basis of defined


conditions and actions.

Variable

Stores values statically or retrieves them from a data source


dynamically.

Passive Objects
Passive objects are objects whose contents are defined by the user. They are static. Their contents
cannot be modified when processing an executable object but they are still used.
Symbol

Object

Description

CodeTable

Defines a complete set of characters.

Dashboard

This represents a dashboard which is used in the product


Enterprise Control Center.

Documentation

Administers documentation that does not refer to a single object.

Filter

Contains filter definitions for the contents of reports and external


files.

Include

Contains commonly used processing instructions from UC4 script


for shared use through objects.

PromptSet

Input mask that can be assigned to executable objects and which


reads user values during the activation process.

StyleSheet

Formats XML reports.

System Objects
System objects serve to administer your system.
Symbol

Object

Description

Agent

Enables the execution of jobs, file transfers, console and


file.system events, thereby facilitating the processing of various
operation steps in a target system.

AgentGroup

Combines agents and can be used to process tasks on one


particular or several hosts.

Agent/Client
Assignment

Assigns agent rights to individual or all clients.

Client

Defines a fully self-contained environment for the execution of


tasks within a system.

Connection

Contains connection parameters to an external target system.

Folder

Folders are objects.

Login

Saves login data for hosts.

Automation Engine

RASolution

Represents an RA solution.

Server

Represents a Server process

TimeZone

Records values for the calculation of local time.

User

Records a user's UC4 login settings, its assignments to user


groups, folders and access rights.

UserGroup

Groups users in order to assign them identical authorizations.

159

See also:
Object Types

3.1.3 Object Types


All objects belong to a particular object type, each one has its own particular short form which is
used in many places.

Symbol

Object type

Short
form

Description

Agent

HOST

Enables the execution of jobs, file transfers,


console and file-system events, thereby
facilitating the execution of various operation
steps in a target system.

AgentGroup

HOSTG

Combines agents and can be used to process


tasks on one particular or several hosts.

Agent/Client
Assignment

HSTA

Assigns agent rights to individual or all clients.

Calendar

CALE

Defines calendar days that can be considered as


starting conditions for the execution of tasks.

Client

CLNT

Defines a fully self-contained environment for the


execution of tasks within a UC4 system.

Cockpit

CPIT

Visualizes various values and conditions within


UC4 or from those systems being monitored or
controlled.

CodeTable

CODE

Defines the conversion of character sets between


two systems.

Connection

CONN

Contains connection parameters to an external


target system.

Dashboard

DASH

This represents a dashboard which is used in the


product Enterprise Control Center.

Documentation

DOCU

Administers documentation that does not refer to


a single object.

160

Chapter3 Objects

Event

EVNT

Determines conditions and reaction to conditions


that occur.

FileTransfer

JOBF

Exchanges files of any kind between systems and


system platforms.

Filter

FILTER

Contains filter definitions for the contents of


reports and external files.

Folder

FOLD

Folders are objects.

Group

JOBG

Executes sporadic tasks.

Include

JOBI

Contains commonly-used processing instructions


from UC4 script for shared usage via objects.

Job

JOBS

Determines the process steps to be executed in a


target system.
Subordinate tasks of SAP jobs are special forms.
They are also displayed in UC4 and called JOBD.

Login

LOGIN

Stores registration data for hosts.

Notification

CALL

Notifies an operator of an interruption in a task, the


completion of which represents a necessary
precondition for the execution of further tasks.

PromptSet

PRPT

Input mask that can be assigned to executable


objects and which reads user values during the
activation process.

Queue

QUEUE

Defines the maximum number of parallel running


tasks and the corresponding priority.

RA Solution

CITC

Represents an RA solution.

RemoteTaskManager

JOBQ

Monitors and controls external jobs that were not


started by UC4.

Schedule

JSCH

Starts executable objects at regular intervals.

Script

SCRI

Contains processing instructions that are not


executed on a target system and implemented
exclusively with script elements.

Server

SERV

Represents a server process.

StyleSheet

XSL

Formats XML reports.

Sync

SYNC

Synchronizes executable objects on the basis of


defined conditions and actions.

TimeZone

TZ

Records values for the calculation of local time.

User

USER

Records a user's UC4 logon settings, its user


group assignments, folder assignments, access
rights and privileges.

User Group

USRG

Combines users in order to assign them identical


authorizations.

Automation Engine

Variable

VARA

Stores values statically or retrieves them from a


data source dynamically.

Workflow

JOBP

Compiles single tasks for combined execution by


means of defined conditions anddependencies

Other Object Types


There is now a separate object for the following object types:
Short form

Description

API

CallAPI

C_HOSTG

Container of an agent group.

C_PERIOD

Container of a recurring task.

JOBD

Child tasks of SAP jobs.

REPORT

Report

See also:
Object Classes

3.1.4 Variables in UC4


The following table provides an overview of the types of variables available in UC4 and where
they can be used.
Object, PromptSet and script variables are only available in executable objects.
Variable objects
l

161

Static Variable
objects
(source:STATI
C)
Dynamic
Variable objects
(source: SQL,
SQLI, MULTI and
FILELIST)

Predefined variables

Description
Variable objects store values
(static) or retrieve them from a
particular data source
(dynamic).
The values are stored and
supplied in table form with a
particular data type, format and
value area.
Lines are identified by the Key
or Result column and the
columns are addressed via
numbers (1 to n).

Usage
l
l
l

UC4 Explorer
Script
Data source of Cockpit,
Database Event and
PromptSet objects

162

Chapter3 Objects

Predefined
variables for
system values
Predefined
variables for
object values

Predefined variables are


placeholders that refer to the
values of the system or the
object in which they are used.
Their names and values are
predefined and cannot be
changed.

Predefined variables can also


refer to the values of Variable
objects. Their syntax differs
from the syntax of predefined
variables for system or object
values and cannot be used in
scripts.

You can create object variables


by using either the script
element :PSET or the
Variables & Prompts tab.

l
l
l

Script
Attributes
"Variables & Prompts" tab
Properties of Workflow and
Schedule tasks

Syntax:
&$Variable name#
l

Predefined
variables for
Variable objects

Syntax:
{VARA object name [,
Key [, Column ] ] }

l
l

Attributes
"Variables & Prompts" tab
Properties of Workflow and
Schedule tasks

Object and PromptSet


variables
l
l

Object variables
PromptSet
variables

Syntax:
&Variable name#

l
l
l

PromptSet variables are derived


from PromptSet objects.

Script
Attributes
"Variables & Prompts" tab
Properties of Workflow and
Schedule tasks

Object and PromptSet variables


can be used in various object
locations. They can also be
inherited from child objects.
Script variables
Data types:
l
l
l
l

unsigned
signed
float
string

Syntax:
&Variable name#

Script variables are specifically


used for storing and using
values in Process tabs. They
can also be used in some
attributes.
You can use the script element
:DEFINE in order to declare
script variables with a particular
data type.
The script element :RESET can
be used to assign values of
script variables to a different
Process tab.

l
l

Script
Attributes

Automation Engine

163

3.2 Alphabetical Listing


3.2.1 Agent
Agent
The agent enables the execution of Jobs, FileTransfers, Console and File System events,
thereby allowing the processing of various operation steps in a target system.
Object class: System object
Object type (short name): HOST
Creating an Agent object manually is neither possible nor necessary as this is done automatically
and saved in the folder HOST (system client 0000) at the very first agent logon to the UC4 system.
The same is true if you want to rename the Agent object.
The name of an agent is defined in its INI file and cannot be comprised of more than 32 characters.
All agent names will be displayed in uppercase. Do not use special national language characters in
order to avoid problems in the respective target system. Note that an agent cannot be selected in
other objects if its name consists of more than the allowed maximum number of characters.

See also:
Handling Agents
Header tab
The Header tab is a general tab which is available in every UC4 object.
Object: Agent
Object class: System object
Object type (short name): HOST

164

Chapter3 Objects

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates user, date and time regarding the most recent use of the object. The
number of times the object has been used is displayed to the right.
Set this function in the UC4 variable UC_SYSTEM_SETTINGS.

Archive keys

Two keywords of your choice can be specified.

Attributes Tab
The Attributes tab is object-specific and is only available in Agent objects. You can specify the
license category that should be used in this tab.
Object: Agent
Object class: System object
Object type (short name): HOST

Description

Field/Control
Element

Description

Automation Engine

165

License Category

The License Category that should be used by the agent can be selected
here. Allowed values are Production and Test, depending on whether
the agent runs in a production or non-production environment.

Trustable IPAddresses

If your UC4 system runs with encryption, you can specify IP addresses
(separated by semicolons) from which the agent accepts nonencrypted connections.
Communication to UC4 components such as the job messenger, Event
Monitors (BS2000, z/OS) or the Output Collector (NSK) takes place
without encryption. By default, the agent accepts non-encrypted
messages from the local host (127.0.0.1) and its own IP address.
If Event Monitors on z/OS are used in LPARs on different computers,
you must specify the relevant IP addresses here.
Releasing individual IP addresses is only reasonable if the UC4
Automation Engine should always reject login attempts of former
agent versions (see "Compatibility").

Service Manager
Record

The settings that are defined here are required for the connection
between the agent and a ServiceManager. Agents can so start directly
via the UserInterface (System Overview) or by using the script element
MODIFY_SYSTEM.
All values will automatically be replaced if the search for a
corresponding ServiceManager service was successful. This search
can be opened by using the"Refresh ServiceManager Scan" command
in the System Overview's context menu. The default port number 8871
is used for the scan unless a different specification is provided in the
setting SMGR_PORT_RANGE of the UC4 Variable UC_SYSTEM_
SETTINGS.

Phrase

Name of the ServiceManager environment.

Name

Name of the service in the agent's ServiceManager .

Port

Port number of the ServiceManager.

Linked to
ServiceManager

Links the agent with the ServiceManager.


This specification is automatically set if the ServiceManager scan for
the agent was successful. With this option being deactivated, you can
no longer start the agent via the System Overview nor by using
MODIFY_SYSTEM.

Agent Tab
The Agent tab is object-specific, and in this form is only available in "Agent" objects. It is only
displayed in SAP agents and contains the parameters for connecting to the SAP system.
Object: Agent
Object class: System object
Object type (short name): HOST

166

Chapter3 Objects

Description

Select a Connection object for the areas to be controlled with UC4. To establish a connection, the
SAP agent uses the parameters specified for the particular areas.
Field/Element

Description

ABAPBasis

For the connection to the SAP system.

Java Basis

For the connection to the Java Scheduler.

Process Integration

For the connection to the SAPXI.

System Landscape
Directory

For the connection to the System Landscape Directory.

Note that modifications made in a Connection object only become effective after a restart of the
SAP Agent.
Connection objects can also be stored using the Agent Variables in the Agent object.

See also:
UC4 and SAP

Authorizations tab
The Authorizations tab is an object-specific tab which is only available in "Agent" objects. It
can be used to define authorizations in order to access hosts with the agent. Authorizations are
part of the UC4 Authorization System.
Object: Agent
Object class: System object
Object type (short name): HOST

Automation Engine

167

Description

All clients available in the UC4 system are listed in this tab. Each table line corresponds to one
client.
Authorizations can be defined manually or via anAgent/Client-Assignment object.
The UC4 administrator can define an object which automatically starts whenever an agent's
authorizations are modified. This is done in the UC4 Variable UC_HOSTCHAR_DEFAULT, key
EXECUTE_ON_ASSIGNMENT.
Field/Control
Element

Description

Client

Name of the client for which access rights are set. The client number and, if
available, the title (to be entered in the Head tab of the client) are displayed.

Read

Allowed to send data by a file transfer

Write

Allowed to receive data from a file transfer

Execute

Allowed to execute Jobs

See also:
Client
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all
object types in UC4.
Object: Agent
Object class: System object
Object type (short name): HOST

168

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own Documentation tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

169

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

170

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Agent Variables
Agent information and settings are mostly stored in agent variables. These variables are either
available as Variable objects in the system client 0000 or directly stored in the database. If they
are stored in the database, they are referred to as virtual agent variables. They can be read with
the script element GET_VAR, but they cannot be set with the statement :PUT_VAR.
The correct syntax is: GET_VAR (Agent variable,Agent name)
For example: :SET &jobreport# = GET_VAR('UC_EX_PATH_JOBREPORT','WIN01')
The UC4 administrator can specify all agent variables in the agent's INI file (section
[VARIABLES]). In doing so, values can be set in accordance with your environment.
For example:
[VARIABLES]
UC_HOST_CODE=UC_CODE
UC_HOST_JCL_VAR=NSK
UC_EX_PATH_BIN=$data01.uc4
UC_EX_PATH_JOBREPORT=$data01.
UC_EX_JOB_MD=$data01.uc4.ucxjns1r

Automation Engine

171

Agent Variables in the System Client 0000


Agent Variable

Description

UC_EX_ERP_
CONNECT

Contains connection specifications for the particular Enterprise


Business Solution.

UC_EX_HOSTCHAR

Contains particular settings for one or several agents.

Virtual Agent Variables


Virtual agent variables are usually defined in the [VARIABLES] section of the agent's INI file. The
values of some agent variables, are automatically retrieved by the agent. In this case, there is no
need to define them in the INI file (see the table below).
When the agent starts, all virtual variables will be passed on to the Automation Engine.
Note that you cannot define variables that are not listed below. Although you can create userdefined variables, they cannot be read.
Agent
Variable

Description

Definition
in INI file

UC_EX_
DAYLIGHT

This variable checks whether the current time is Daylight Savings


Time.

No

The agent retrieves this information from the system time and
passes it on to the Automation Engine.
Allowed values: "Y" and "N"
"Y" - Daylight Savings Time
"N" - Standard Time
The value of this variable is automatically set and cannot be
defined in the INI file.
UC_EX_
HOST_ROLE

The agent's role.


Any name that can be used as a filter in agent groups. Several
role names must be separated with a ";" character. This
parameter is limited to 256 characters.
Roles are converted to uppercase letters.
This definition does not affect the a gent itself.

Yes

172

Chapter3 Objects

UC_EX_IP_
ADDR

The IP address or the host name.

No

When the agent starts, it retrieves the IP address of the computer


on which it is running automatically. It passes this information on
to the Automation Engine where it is stored in this variable.
The Automation Engine uses the agent's IP address and port
number (variable UC_EX_IP_PORT) in the Header and Trailer
Includes and passes this information on to the job messenger.
The job messenger uses this data to connect to the agent.
The agent itself usually uses these values only for the
Sysplex configurations of a z/OS mainframe system (z/OS
agent).
If the agent runs in a cluster, you can enter this cluster's
virtual IP address here.

UC_EX_IP_
PORT

The port number of the agent.

UC_EX_JOB_
MD

The path and file name of the job messenger.

No

For further information, see also the description of UC_EX_IP_


ADDR.
Required

This variable must be defined. When the agent starts, it checks


this value and terminates when the path is not valid.
This value is used in the Header and Trailer objects which include
the messenger calls for the job start and job end.

UC_EX_
LICENCE_
CLASS

The license class according to the acquired UC4 license as well


as the hardware and software that is used.

Yes

UC_EX_MIB_
INFO

Additional information about the agent for the MIB (7.1.1.16).

No

UC_EX_MIB_
MONITORING

This variable indicates whether the agent's availability is


monitored.

No

When the license class is set to "S", the agent passes the value
"127.0.0.1" on when it starts instead of the host's actual IP
address.

Allowed values: "0" and "1"


"0" - The agent's availability is not monitored.
"1" - The agent's availability is monitored.

Automation Engine

UC_EX_
PATH_
BACKUP

The directory in which the backup files of theFile Rollback of jobs


and file transfers are stored.

173

Yes

Only affects Windows and UNIX agents.


Default value:
"..\BACKUP" (Windows) or "../backup" (UNIX)
If the directory does not yet exist, it will be created when the
agent starts.
Within the backup folder, the files are stored in the following
structure /<Client>/<Date>/<RunID>/
The backup directory for the filebased rollback is
automatically created when you start the agent. This directory
is available for jobs and file transfers. You can define the path
for the backup directory in the Agent Variable UC_EX_PATH_
BACKUP. Note that for using the filebased rollback, you need
the OS user under which the related jobs and file transfers are
started, and write access to the backup directory.

UC_EX_
PATH_BIN

The directory in which the agent is installed.

UC_EX_
PATH_
JOBREPORT

The directory in which the agent stores job reports.

Required

This variable must be defined. When the agent starts, it checks


this value and terminates when the path is not valid.
Required

This variable must be defined. When the agent starts, it checks


this value and terminates when the path is not valid.
The SAP agent stores the restart file also in this directory.

UC_EX_
PATH_TEMP

The directory in which the agent stores generated jobs on a


temporary basis.

Required

This variable must be defined. When the agent starts, it checks


this value and terminates when the path is not valid.
UC_EX_
PATH_TEMP_
IFS

The IFS directory in which the status store files of file transfers
should be stored.

UC_EX_SIM_
IDENT

The name of the $IDENT statement.

UC_EX_
VERSION

The version of the agent.

UC_HOST_
CODE

The name of the code table of the system client 0000.

Yes

Only relevant for OS/400 agents, and only when the value
"IFS" is set in the INI-file parameter store_type=
Yes

Only relevant for the GCOS agent.


No

The agent retrieves this value automatically.

Default value: "UC_CODE"


The character version that is defined here is used for transporting
jobs to the host and for the automatic file transfer of the job report.

Yes

174

Chapter3 Objects

UC_HOST_
CONN_ABAP

Connection object for the ABAP basis that should be used in the
Agent object.

Yes

UC_HOST_
CONN_JAVA

The Connection object for the Java basis that should beused in
the Agent object.

Yes

UC_HOST_
CONN_PI

The Connection object for the Process Integration that should be


used in the Agent object.

Yes

UC_HOST_
CONN_SLD

The Connection object for the Landscape Directory that should be


used in the Agent object

Yes

UC_HOST_
HW

The hardware information of the computer (such as the system


type, the number of processors or the processor type).

No

The agent retrieves this value automatically.


UC_HOST_
JCL_VAR

The reference to Includes that are used when the job is


generated.

Yes

These are generally the Includes HEADER.*, TRAILER.* and


RESTART.* of the system client 0000. User-defined Includes
can also be used.
UC_HOST_
SW

The operating system of the computer.

No

UC_HOST_
SW_VERS

The OS version.

UC_SIEBEL_
LOGPATH

The directory in which the Siebel log files are stored.

Yes

UC_SIEBEL_
SRVRMGR

The directory in which the Siebel Server Manager (srvrmgr.exe) is


stored.

Yes

The agent retrieves this value automatically.


No

The agent retrieves this value automatically.

See also:
Agent

3.2.2 AgentGroup
AgentGroup
An AgentGroup combines agents of the same platform. The agents to be included in an
AgentGroup are specified by entering the agent name or via filters. A task which runs in an
AgentGroup is processed on one or all of the AgentGroup's agents, depending on the specified
mode.
Object class: System object
Object type (short form): HOSTG
Host group selection, which includes selection of the agent for a task, is made before its script is
processed. :PUT_ATT can be used to define a different agent but not a different AgentGroup.
The script function PREP_PROCESS_AGENTGROUP can be used to read the agents of an
AgentGroup.

Automation Engine

175

Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object, as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates the user who last used the object including the date and time.
The number of times the object has been used is displayed to the right.

Archive keys

Two keywords of your choice can be specified here.

AgentGroup Tab
The AgentGroup tab is object type-specific, and in this form is only available in objects of type
"AgentGroup". It can be used to define agents and AgentGroup settings.
Object: AgentGroup
Object class: System object
Object type (short form): HOSTG

176

Chapter3 Objects

Description

Field/Control

Description

Platform

An AgentGroup integrates agents of a particular platform. Subsequent


modification of the selected platform is only possible if all agents and filters
shown in the right window area have been deleted.
Attention: Platform and OS are not the same. For example, an AgentGroup
with the platform "WINDOWS" can only contain Windows agents. This
does not include a SAP agent which runs on Windows. It can only be
selected in AgentGroups with the platform "SAP".
In Jobs, you can only select agents and AgentGroups of the corresponding
Job platform or Solution (RA).

Solution

Name of the RA Solution for RA agents


This field is required if "CIT" has been selected as the platform. No agent can
be added if this field is empty. Only agents of the selected Solution can be
assigned to the AgentGroup.

Table

The table serves to specify the agents belonging to a particular AgentGroup.


Click the button Add hosts to select particular agents. You can also specify
filters for the name or other attributes such as archive keys. Filters are set
directly in the individual table columns.
The agent order in the table is relevant for the modes "First" and "Next
listed". Lines can be rearranged using the arrows shown at the right window
edge. These entries are processed from top to bottom.
The wildcard character "*" is automatically inserted in the columns when a
particular agent is added.

Name

Name of the agent or filter for several agents.


Click the button Add hosts to select agents or enter the name or filter directly in
this text field. The wildcard characters "*" and "?" can be used. "?" stands for
exactly one character, "*" for any number of characters.

Automation Engine

Version

Filter for the version

HW

Filter for the hardware

SW

Filter for the software

SW Version

Filter for the software version

Archive 1
Archive 2

Filter for the archive keywords

Role

Filter for a role

177

This field offers all roles of this client's agents for selection.
The UC4 administrator can determine roles for each Agent. These are
stored in the Agent Variable UC_EX_HOST_ROLE.
Mode

The mode determines on which AgentGroup agent the task should be executed.

Any

On any randomly selected Agent

First

On the first available agent depending on the table order

Next listed

On the next active Agent. The order results from the table.

Load
dependent

On the agent which shows the lowest workload. This is done by checking
resource allocation:
1. Agents without resource limits are preferably used.
2. The agent with the least workload (resource-wise) is used if there are
resource limits for all agents.
3. In both cases, the following applies: If agents have the same resource limits,
the agent with the fewest active tasks is used.
One agent can be allocated to several clients.
A task's start time is used for agent selection. The task switches to the
status "Waiting for resource" if there are currently insufficient resources on
this Agent. It waits until processing is possible again. It does NOT change
the agent even if there would be sufficient resources on a different one.

All

On all agents

Parallel

Maximum number of tasks running parallel


Allowed values: 0 to 9999
Default value: 9999
Value "0" has the effect that the AgentGroup does not process tasks.

178

Chapter3 Objects

Force
Complete
Broadcast

This setting forces the task to be executed on all agents including those that
were not active at the time of activation.
There is a peculiarity if this setting is used together with a limitation of the
maximum number of tasks that can run parallel.
Example:
A job should run using the setting "a maximum of 3 parallel-running tasks" on all
AgentGroup agents. Only six of the ten agents are active. If the AgentGroup
intends to start a job on a computer whose agent is not active, this task
switches to status "Waiting for host". The AgentGroup adds it to the maximum
number of tasks that can run parallel because the task is already in a starting
stage.
Three tasks will switch to status "Waiting for host" because more than three
agents are inactive. Thus, AgentGroup processing is stopped even if there
would be active agents on which the job could run.

Add hosts

Opens a window which displays the agents of the selected JCL variant that
have not yet been assigned to the AgentGroup. Filter definitions are not
considered.

Simulation

Opens a window which lists the agents belonging to the AgentGroup according
to the specifications made in the table. An arrow points to the agent in which the
next task will run.

See also:
System Overview - AgentGroups
Authorizations tab
The Authorizations tab is object type-specific, and in this form is only available in "AgentGroup"
objects. It can be used to define authorizations for using AgentGroups in the individual clients.
AgentGroups are an integral part of UC4's authorization system.
Object: AgentGroup
Object class: System object
Object type (short form): HOSTG
This tab is only displayed in AgentGroup objects of system client 0000.

Automation Engine

Description

This tab lists all clients which are available in the UC4 system. Each table line corresponds to a
client. A client's access rights to an AgentGroup can be specified here.
Field/Control

Description

Client

Name of the client for which access rights are defined. The client number and
title (if existing) are displayed in the client's Header tab.

Read

The AgentGroup can be selected as sender in FileTransfers.

Write

The AgentGroup can be selected as receiver in FileTransfers.

Execute

The AgentGroup can be selected in Jobs.

See also:
Client
Documentation Tabs
The table shown below describes the XML file structure of a Variable object and explains the
individual elements.

179

180

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own Documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

181

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

182

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).


AgentGroup Monitor
The AgentGroup monitor displays tasks which are active or have been active depending on the
selected Agent. Its display corresponds to the Activity Window.
Object: AgentGroup
Object class: System object
Object type (short form): HOSTG
A context menu is available (right mouse click) which can be used to execute various commands
referring to individual tasks or the AgentGroup. For example, details, statistics or the report of
individual tasks can be viewed, tasks can be edited or generated jobs displayed.

Automation Engine

183

Task states can be exported and AgentGroup properties can be displayed if the context menu is
opened without an object being highlighted. The tab Attributes can be used to change the number of
parallel-running tasks. This requires the authorization "M" (Modify) for AgentGroups.

Calling the monitor


Right-click the
AgentGroup in the
Activity Window

Select the command Monitor in the context menu

Select the AgentGroup


in the Activity Window

Select the command Monitor in the menu File

184

Chapter3 Objects

See also:
AgentGroup
AgentGroup Attributes
The following overview lists the attributes of an AgentGroup object and describes their functions,
allowed values and ways of modification.

Tab

Attribute

Description

Value

Access
Via:

FILTER_
ARCHIVE_
KEY1

Filter table - Archive 1

User-defined,
limited to 60
characters.

Change
Program

FILTER_
ARCHIVE_
KEY2

Filter table - Archive 2

User-defined,
limited to 20
characters.

Change
Program

FILTER_
HOSTROLE

Filter table - Role

User-defined,
limited to 256
characters.

Change
Program

FILTER_NAME

Filter table - Name

User-defined,
limited to 32
characters.

Change
Program

See also:
AgentGroup
Attributes
UC4.DB Change
AgentGroups
In order to be able to execute tasks on a computer, you require an Agent. This agent initiates the
start of tasks, monitors them during their execution and sends current status information to the
UC4 Automation Engine. AgentGroups combine agents in order to avoid that several objects are
created when a task is processed on several hosts.
An AgentGroup can only include agents of the same platform (such as UNIX).
An agent can also be assigned to several AgentGroups.
Examples of applications:
l
l
l
l

Execution of a task on several hosts


Distribution of a file to several hosts
Monitoring of several hosts with Event or RemoteTaskManager objects
Monitoring of a task on the host with the lowest workload

All of a client's AgentGroups are listed in the System Overview. The context menu provides
several commands which can be used for all of the AgentGroup's agents.

Automation Engine

185

Creation

Assign agents to an AgentGroup by selecting particular ones or defining filters for names or other
attributes. Roles are useful for filtering attributes. The UC4 administrator can assign roles to each
agent via the variable UC_EX_HOST_ROLE. These roles can then be used in AgentGroup filters.
Examples of AgentGroup definitions:
l
l
l

The agents WIN01 and WIN02


All UNIX agents which have the role "DATABASE"
All SAP agents which have the archive key "Maintenance"

In AgentGroups, you can specify any agents and filter specifications of your choice.

AgentGroups of system client 0000 can also be used in other clients. This requires that the UC4
administrator sets the relevant rights for the AgentGroup. The client's AgentGroup is used if the
system client contains an AgentGroup of the same name.
Note that an AgentGroup of system client 0000 does not necessarily supply the same agent in
each client. Agents obtain client authorizations after installation which can differ from each
other.

Mode

An AgentGroup does not only combine agents; it also controls the execution of tasks via a specified
mode. On the one hand, AgentGroups execute tasks on all agents, and on the other hand, they
realize workload distribution because they start tasks on particular agents.
The following modes are available:
l
l
l
l
l
l

Randomly selected Agent


The first active agent in the table
The next agent listed in the table
The agent with the lowest workload
On all active agents
On all active and inactive agents

The simulation function displays the agents which belong to an AgentGroup and the agent on
which the next task will run.

186

Chapter3 Objects

View

The Activity Window displays tasks that run only on one agent due to a specified AgentGroup mode
with a one-line entry. The column Host indicates which agent has been selected. An AgentGroup
container that obtains an entry for each task execution is displayed if the task runs in mode "All".
This container contains the same name as the task and also shows an antenna symbol which is
included in the object-type symbol. The type is "C_HOSTG".

The AgentGroup container represents the superordinate task. Keep this in mind when you use
script elements that retrieve parent values (e.g.: SYS_ACT_PARENT_NAME). The
AgentGroup container and the task have the same name but each one has its own RunID.
The Detail Window of the AgentGroup's statistical record shows how tasks have ended. "0" signals
that all tasks have ended successfully, "1" that some tasks were canceled and "2" that no task has
ended successfully.
The Activity Window provides several commands for AgentGroups which can be called using the
context menu. One of the available commands opens a monitor which displays tasks executions
that took place because of the AgentGroup.

Execution

The task changes to the status "Waiting for Host" if no agent could be retrieved at the time of task
execution (such as all agents were inactive or the AgentGroup filters did not supply results). The
system regularly checks whether agents are available and active.
The UC4 administrator can specify this interval in the UC4 Variable UC_SYSTEM_SETTINGS
using the key AGENTGROUP_CHECK_INTERVAL.
Task start is initiated as soon as a host could be selected for the task. Workflows contain additional
options allowing you to specify that those tasks that use the same AgentGroup should run on the
same Agent. Without this option, there is the possibility that in particular modes or if agents become
inactive or active, different agents are selected because tasks are started at different times.
Use the script function GET_ATT to retrieve the agent on which the task will run.
If a task is restarted, it runs on the AgentGroup agent that has originally been selected.

3.2.3 Agent/Client Assignment


Agent/Client Assignment
You cannot use agents immediately after they have been installed in the UC4 system. For
security reasons, you must determine the clients in which the individual agents can be used and
the rights that they should have.

Automation Engine

187

Object class: System object


Object type (short name): HSTA
Rights can be assigned directly in the Agent object, Authorizations tab. This can be very timeconsuming if you use numerous agents; therefore, you can alternatively use an Agent/Client
Assignment object (HSTA). This object enters the relevant rights in the corresponding Agent
objects.
HSTA objects can only be created in system client 0000.
Use the Filter tab to define the agents for which the assignment should be used. The
Authorizations tab is decisive for the rights that should be assigned to the individual Agent objects.
The HSTA object is a passive object. It contains the filter settings, but the actual rights are only
assigned if:
l
l

a new agent that complies with the filter settings is authenticated.


the command "Execute host assignments" is called from the toolbar button Simulation.

Note that for performance reasons, rights are not assigned with each agent start but only when it
starts for the first time.
Note that newly created HSTA objects cannot be used immediately. They must be released in
the System Overview.
The UC4 administrator can use the key EXECUTE_ON_ASSIGNMENT in the UC4Variable
UC_HOSTCHAR_DEFAULT to define an object that should start if an Agents authorizations
have been changed.

Simulation

Click on "Simulation" in the HSTA object's toolbar. A window opens which displays the agents to
which the filter definition applies and the rights that they should have in the relevant clients.
A simulation does not trigger an agent assignment. It only displays the effects that the agent
assignment would have if the HSTA object were released.

188

Chapter3 Objects

Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates the user who last used the object including the date and time. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Archive keys

Two keywords of your choice can be specified here.

Filter Tab
The Filter tab determines the agents for which the client assignment should be used.

Automation Engine

189

Description

The filter line order is irrelevant.


The wildcard characters "*" and "?" can be used in some columns. "*" stands for any number of
characters, "?" for only one.
Field/Element

Description

Name

Name of the agent or filter for several agents

Host type

Type of Agent

Version

Agent version including hotfix level

HW

Computer hardware information


(e.g., system type, number of processors, processor type)

SW

Computer's OS

SW version

OS version

Role

Agent roles
The UC4 administrator determines the role names in
the Agent Variable UC_EX_HOST_ROLE.

IP address

Agent's TCP/IP address

License cat.

Name of the license category which has been assigned to


the Agent

Wildcard
characters
allowed

190

Chapter3 Objects

Field/Element

Description

Not

Activate this checkbox if you want to use the filter


settings of this line to exclude agents (instead of selecting
them).

Wildcard
characters
allowed

Example:
You want to assign all Windows agents except for
WIN01. First create a line in which you filter all Windows
agents. Then insert a second line in which you select the
agent WIN01 and activate the checkbox in the column
Not.

Authorizations tab
The Authorizations tab can be used to determine which type of rights the filtered agents should
have in the individual clients.

Description

All clients available in the UC4 system are listed in this tab. Each table line represents one client.
Field/Element

Description

Client

Name of the client for which access rights are determined. The client number
and, if available, its title (to be specified in the client's Header tab) are
displayed.

Automation Engine

Selection

191

Activate this checkbox if the client should be considered for agent assignment.
The agent only obtains the rights that have been ticked in the selection
checkbox.
Example:
The agent UNIX01 possesses all rights in clients 1, 2 and 3. You want to delete
the execution right for UNIX agents in client 3. Activate the selection checkbox
for this client and untick the column Execute. The right for client 3 in agent
UNIX01 will now be adjusted when a client assignment is triggered. All rights
for clients 1 and 2 remain unchanged in the Agent object.

Read

FileTransfer as sender is permitted.

Write

FilTransfer as receiver is permitted.

Execute

Jobs can be started.

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all
object types in UC4.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.

192

Chapter3 Objects

You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

193

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.4 Calendar
Calendar
Calendars are used to handle execution dates and times of objects. You can specify on which
days particular tasks should start.
These criteria are also referred to as Calendar conditions (e.g.: a Workflow which should only run on
Saturdays).
Object class: Active object
Object type (short name): CALE
A Calendar Assistant is available which can be used to summarize particular days in Calendar
keywords (e.g. the first workday of a month). There is no limit on the number of Calendar keywords
used in a Calendar.
Calendar keywords can be used in the following objects:
Object Type

Description

Notification

Messages can be sent to individual users or user groups depending on


Calendar keywords

194

Chapter3 Objects

Event

Calendar conditions can be used to determine the point in time for an


Event to be executed

Workflow and
Schedule

Calendar conditions can be specified in tasks

Calendar objects do not require specification of a validity period (e.g. 2005-2007) because
keywords are based on particular days or dates regardless of the year. Days are calculated with
the keys "NOW_MINUS" and "NOW_PLUS" which are specified by the UC4 administrator in
the UC4 UC_CLIENT_SETTINGS. By default, days are calculated 1 year back and 2 years
ahead.
Calendar keywords of type "Static" are an exception. They require a validity period to be
specified and must therefore be maintained.
Holiday Calendars are available in the system client 0000 which can be used in the objects of all
clients.
There is a peculiarity when duplicating Calendars. It is explained in the example shown below:
1. Calendar A has a Group and a Roll Calendar keyword both of which refer to one of the
Calendar's keywords.
2. Calendar A is duplicated, the copy is named B.
3. The Group and Roll Calendar keywords of Calendar B, however, do not refer to the Calendar
keyword in B but to the one in Calendar A
Please follow the recommendations given for transporting, importing and exporting Calendar
objects.

See also:
Useful Calendar Keywords
Transferring SAP Calendar Definitions
Header Tab
The Header tab is a general tab which is available in every UC4 object.

Automation Engine

195

Description

Field/Control

Description

Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates the user who last used this object, the day and time. Far right,
the number of object usage is displayed.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are added to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Extended Reports

Extended reports can be written for all executable objects. These log,
for instance, the complete script with all Includes, the generated JCL
from Jobs or accesses to UC4 objects.

Default (UC_
CLIENT_SETTINGS)

Those extended reports to be written are defined client-wide in the UC4


Variable "UC_CLIENT_SETTINGS". These pre-settings are used for
the object.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

196

Chapter3 Objects

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Calendar Tab
The Calendar tab is only available in the "Calendar" object. It is object type-specific and can be
used to specify Calendar days.
Object: Calendar
Object class: Active object
Object type (short name): CALE

Description

The tab shows a Calendar in which the weeks can be displayed in vertical or horizontal order. The
following buttons are available in the UserInterface's toolbar: (vertical order)
(horizontal
order). The default view for opening Calendar objects can be specified in the
UserInterface'ssettings. The corresponding dialog is called via the command Settings which is
available in the UserInterface's Options menu.
A list of all created Calendar keywords is shown on the right side of the Calendar tab. Colored
symbols display the different available types:
Symbol

Type
Static
Yearly
Monthly
Weekly

Automation Engine

197

Group
Roll
These various keyword types are available in order to facilitate the quick and easy creation of
Calendar keywords. A Calendar Assistant is provided for each type and can be used to assign days
to the particular keywords.
Best practice is to use keywords whose meanings are immediately apparent. UC4 recommends
assigning days according to the relevant keywords. The individual keywords can then be linked
to each other using the keyword type "Group".
UC4 strongly recommends creating several small Calendar objects with few keywords instead
of one huge Calendar object in order to keep well-performing Calendar calculations. Make sure
that Calendar keywords referring to each other are stored in one Calendar object as this
facilitates transport, import and export procedures.
Various commands are available in the popup menu. Note that the keyword type "Static" comprises
of some additional commands

These steps are required for creating a Calendar keyword:


1.
2.
3.
4.
5.

Click New keyword in the context menu and select the appropriate type.
A dialog opens in which you can enter a name.
Right-click the new keyword and call the command Calendar Definition...
The relevant assistant for the selected keyword type opens. Now specify the days that
should be included in this Calendar keyword.
Store the Calendar object. The assigned days are then added to the Calendar.

Non-stored Calendar keywords are displayed in Italics.


The days of the Calendar keyword that is highlighted are shown gray in the Calendar tab.
Additionally, the days that are assigned to a particular keyword are displayed pink. Those assigned
to more than one keyword are shown yellow.
The current day is marked with a red circle.

198

Chapter3 Objects

Highlighting
The command Highlight options... is also available via the context menu. Settings specified here
are shown with a red line in order to provide a clear overview. This function, however, can be
activated or deactivated according to your demands using the command Highlight in the context
menu.

The search function is very useful for finding objects that use a particular Calendar keyword. It is
also possible to replace a particular Calendar keyword that is used in objects. The corresponding
functions are called Search for Use... and Replace....
Periodic View
Static Calendar keywords can also be displayed in the "Calendar" tab in a different way which is
called "Periodic View". Call it via the View menu or the

button in the toolbar.

The periodic view is only available if the UC4 administrator has made a period definition in the
UC4 Variable UC_CALENDAR_PERIOD.
Use it to picture a fiscal year which is not identical to the normal calendar year (1/1 until 12/31) but
contains a particular number of periods, for example.
The periodic view displays days and weeks on the basis of the defined periods. Period names are
displayed as you defined them. The days of every second month are displayed gray in order to make
it easier to view the regular months within the defined periods. The week number is also provided
with the calendar weeks resulting from the user-defined year (left side of the period, orange) or from
a regular calendar year (right side of the period, gray) being distinguished.
Exactly one keyword has been assigned to the Calendar days shown in magenta red. Yellow days
have more than one assignment. Days assigned to a selected keyword (in show mode) are
displayed with a dark gray background.
Move the mouse pointer over the Calendar view and the particular period is highlighted in blue.

Automation Engine

199

See also:
Type - Static
Type - Yearly
Type - Monthly
Type - Weekly
Type - Group
Type - Roll
Types of Calendar Keywords

Static
Use this type when the Calendar keyword should include:
l

Days within a specified period of time

As opposed to other types, the static Calendar keywords require a validity period to be specified.
Call the corresponding command from the context menu immediately following Calendar keyword
creation and assign a period (e.g. 01.07.2006 - 31.08.2006).
Note: Changing a Calendar's validity period requires manual adjustment of the days specified in
it via Calendar keywords in accordance with the new validity period.
Use one of the other keyword types if days should be specified that are not restricted to a
particular period.
One of the commands in the context menu of a static Calendar keyword is Show mode. It is
useful if your Calendar should show the individual days of a Calendar keyword on the one hand
but you do not intend to assign days on the other hand.
Days can be assigned to a Calendar keyword in several ways.

200

Chapter3 Objects
l

Particular days
Click the context menu command Assign Days. Now the days that should be included in this
Calendar keyword can be highlighted with the mouse button. Clicking on a day that has
already been assigned removes this day from the Calendar keyword.
Reverse assignment is also possible using the command Assign keywords. Highlight an
individual day (mouse click) and assign it to an existing Calendar keyword (right-click with
the mouse). This is a useful method if you intend to assign particular days to several
Calendar keywords.

The Form assistant supports you in assigning recurring days to a Calendar keyword. Highlight a
Calendar keyword and open the Form assistant via the context menu.
"Range" refers to a period within the validity period of the whole Calendar. It can be changed when
the definition of days should not be applied to the whole Calendar. This function can also be used to
delete days within a specified period. All days of a Calendar keyword are deleted when the check
box "Delete all entries..." is checked.

The section "Definitions" suggests several ways of assigning days.


l

Particular days of a week


Highlight those days of a week that should be used throughout the whole Calendar.

Automation Engine

201

Example: Each Saturday and Sunday

Particular recurring days


An interval can be specified for Calendar keywords that should contain days that recur
regularly. The table shown below lists examples for which the year 2004 and an interval of 3
days serve as a basis.
Option

Description

Day

Every nth day throughout the specified validity period (e.g. 08/27, 08/30,
09/02...)

Month (from
date)

The first day of every nth month (e.g. 03/01, 06/01, 09/01...)

Day of the
Month

Every nth day throughout the months (e.g. June 3, July 3, August 3...)

Last day of
the Month

Every nth last day of each month (e.g. 10/29, 11/28, 12/29...)

Working
day
keyword

Any keyword of the Calendar can be used as a workday keyword (e.g.: the
keyword WD_WORK includes the days from Monday to Thursday and is
used for the examples listed below).

Working
Day

Every nth day throughout the validity period of the keyword (e.g. Tue 01/06,
Mo 01/12, Thu 01/15...)

Working
day of the
week

Every nth day of a week (e.g. Wed 04/06, Wed 04/13, Wed 04/20...)

Working
day before
weekend

Every nth day before the weekend starts (e.g. Tue 05/04, Tue 05/11, Tue
05/18...)

Working
day of the
month

Every nth day of a month (e.g. Wed 05/05, Thu 06/03, Tue 07/06...)

Last
working day
of the
month

The nth last day of a month (e.g. Mon 03/29, Tue 04/27, Wed 05/26...)

Calendar
Period

Day of
Period

Every nth day of the periods (e.g. Period 1: 04/03, Period 2: 10/18)

Last Day of
Period

Every nth last day of a period (e.g. Period 1: 03/28, Period 2: 12/12)

Other Calendar keywords


The definition of a Calendar keyword can also be extended or reduced for the days of other
Calendar keywords. Either select "+" or "- " and then specify the Calendar keyword.

202

Chapter3 Objects

See also:
Calendar tab
Type - Yearly
Type - Monthly
Type - Weekly
Type - Group
Type - Roll

Yearly
You can use this type if the Calendar keyword should include:
l

days or date periods that occur in annual intervals.

The keyword type "Yearly" requires an interval to be specified. By default, 1 is suggested, which
means that every year is considered. In the next step you can define from which year onwards the
definition should be applied.
Note that the year as of which a yearly Calendar keyword is valid must not lie in the future.
Otherwise, an error occurs if this keyword is accessed. A message informs that it does not lie
within the validity range.
Now select your preferred method for filling in the Calendar: "On defined Calendar days" or "In a
defined interval". With the first one, you can specify exactly which days should be included in the
keyword or click on that particular month if every day should be assigned. The second method can
be used to define a date period and use the option of including only every nth day in the keyword.

Example 1

The Calendar keyword contains the following days as of 2006:


01.01.2006
15.07.2006 - 17.07.2006
31.12.2006

Automation Engine
01.01.2007
15.07.2007 - 17.07.2007
31.12.2007
etc.

Example 2

The Calendar keyword contains the following days (every 2nd year) as of 2006:
01.03.2006
12.03.2006
23.03.2006
03.04.2006
14.04.2006
25.04.2006
06.05.2006
17.05.2006
28.05.2006
01.03.2008
12.03.2008
23.03.2008
03.04.2008
14.04.2008
25.04.2008
06.05.2008
17.05.2008
28.05.2008
etc.

See also:
Calendar tab
Type - Static
Type - Monthly
Type - Weekly

203

204

Chapter3 Objects

Type - Group
Type - Roll

Monthly
Use this type when the Calendar keyword should include:
l

Days or date periods occurring in monthly intervals

In keyword type "Monthly", you can first specify an interval. By default, 1 is used which means that
every month is considered. Now specify the months during which the definition should be valid.
Now select your preferred method for filling in the Calendar: "On defined Calendar days" or "In a
defined interval". With the first one, you can select which day of the month (1st, 2nd, etc) counted
from the beginning or end should be included in the Calendar (e.g. the 10th day of the month, the 3rd
last day of the month).
Note: If the 31st day counted from the beginning of a month is selected, months with fewer days
are not included in this Calendar keyword.
The second method can be used to define a date period and use the option of including only every
nth day in the keyword.
Note that the day calculation for the Calendar keyword is made separately for each year. The
effect is that there are gaps or smaller intervals at the turn of a year.
Example: all days of each fifth month
Based on the settings specified in the Calendar keyword, January, June and November are
highlighted. Without the turn of the year being considered, the next calculated month would be April.
But as the Calendar calculation starts each year from the beginning, the next calculated month is
January again.

Example 1

The Calendar keyword includes the following days (e.g. as of 2006):


27.01.2006
24.02.2006

Automation Engine
27.03.2006
26.04.2006
27.05.2006
26.06.2006
27.01.2007
24.02.2007
27.03.2007
26.04.2007
27.05.2007
26.06.2007
etc.

Example 2

The Calendar keyword includes the following days (e.g. as of 2006):


01.09.2006
13.09.2006
25.09.2006
01.10.2006
13.10.2006
25.10.2006
01.09.2007
13.09.2007
25.09.2007
01.10.2007
13.10.2007
25.10.2007
etc.

See also:
Calendar tab
Type - Static

205

206

Chapter3 Objects

Type - Yearly
Type - Weekly
Type - Group
Type - Roll

Weekly
Use this type when the Calendar keyword should include:
l

Days occurring in weekly intervals

In keyword type "Weekly", you can first specify an interval. By default, 1 is used which means that
every week is considered. Now specify the weeks during which the definition should be valid and
then select the particular days of the week that should be included in the Calendar keyword.
Note that the day calculation for the Calendar keyword is made separately for each year. The
effect is that there can be gaps at the turn of a year because a year includes 52 or 53 weeks.
Example: each second Saturday
Based on the settings specified in the Calendar keyword, December 6 and 20 are highlighted.
Without the turn of the year being considered, the next calculated Saturday would be January 3,
2009.
Due to the setting FIRST_WEEK_METHOD, the first week of 2009 starts on January 5. Therefore,
the next calculated Saturday is January 10 (gap!). Below is a summary showing the Calendar
keywords which are close to the turn of the year:
December 6, December 20, (January 3 is omitted), January 10 etc.

Example

The Calendar keyword includes the following days (e.g. as of 2006):


01.02.2006
08.02.2006
15.02.2006

Automation Engine

207

22.02.2006
01.03.2006
08.03.2006
01.02.2007
08.02.2007
15.02.2007
22.02.2007
01.03.2007
08.03.2007
etc.

See also:
Calendar tab
Type - Static
Type - Yearly
Type - Monthly
Type - Group
Type - Roll

Group
Use this type if the Calendar keyword should include:
l

Days that are composed of various Calendar keywords

Calendar keywords of type "Group" are a combination of several Calendar keywords that are
connected to each other. Three connection types are available:
1. Days which exist in at least one of the specified keywords are assigned to the Calendar
keyword.
2. The Calendar keyword only includes days which occur in all the specified keywords.
3. The Calendar keyword only includes days that do not occur in the indicated keywords.
It is not necessary to select a particular connection type. You can also use two or more types at the
same time for your definitions.
Note that these combinations are very strong tools. Nevertheless, UC4 recommends keeping
your keyword definitions in order to keep a clear overview.

208

Chapter3 Objects

Example 1

The Calendar keyword comprises all days included in WORKDAYS_SHIFT01 with the exception of
those that are part of SUNDAY.

Example 2

The Calendar keyword comprises all days of WORKDAYS_SHIFT01 which are also part of
WORKDAYS.

See also:
Calendar tab
Type - Static
Type - Yearly
Type - Monthly
Type - Weekly
Type - Roll

Automation Engine

209

Roll
This type of calendar keyword is helpful when you want to use days that are based on another
calendar keyword but you want to adjust these days if particular conditions apply.
Roll-type keywords are based on a source calendar and one of its keywords whose specified days
can be adjusted by using one of the various options that are provided. You can even consider
irregularities such as holidays (see the example below).
Double-clicking the roll-type keyword opens its definition window (alternately, you can also open the
context menu). In the Attributes tab, you can now select the source calendar and the keyword you
want to use.The following options are now available:
l

Attributes tab:
You can move the days that are specified in the source calendar forward or backward by
using field "Adjust by +/- n days". You can also define that you want to use the valid days of
an additional calendar keyword.
Example 1:
The days from Mondays to Fridays which are specified in a keyword should be moved
forward for one day. You need to specify "Adjust by + 1 day" and the resulting days will then
be Tuesdays to Saturdays.
Example 2:
A calendar keyword that includes Tuesdays should be moved backward for two days. You
use the keyword Monday to Wednesday for this purpose ("Adjust by -2 days). Note that the
resulting days will then be Wednesdays (not Sundays).

If Collisions tab:
This tab is helpful when days possibly overlap with other calendar keywords and when you
want to react to such an overlap.
1. Enter the Calendar object and the keyword that can cause an overlap.
2. In the Action and Offset columns, you can specify whether the day that overlaps with
the selected calendar keyword should be moved forward or backward for n days.
3. When you move this day forward or backward, you can also specify a particular
calendar keyword that should be used instead.

Each table line of the If Collisions tab stands for one keyword and the reaction to possible overlaps.
Note that the order of the lines is decisive for the processing of roll-type keywords. The system
starts by checking each specified day whether there will be an overlap with the keyword that is
specified in the first line. The same verification is made with the second line. When an overlap is
detected, the defined action will take place. The result will then be checked against the calendar
keyword of the next line etc. The example shown below describes this process in detail.
You can use the arrows on the right side to rearrange the order of the lines.
You can use one or both of the available tabs to define your roll-type calendar.
Note that there is a difference in moving calendar days in the Attributes tab forward (+) or
backward (-) for 0 days when you use the valid days of another calendar. The algebraic signs
(+/-) are handled differently in such a case. "+" means that the system searches the next valid
day in the future (forward direction) and "-" means that the next valid day is searched in the past
(backward direction).

210

Chapter3 Objects

Example
This example creates a calendar keyword that includes the last days of all months. The system
takes into account that the last day of a month should always be the last working day of the
particular month.

The days that are included in LAST_DAY_OF_MONTH form the basic keyword. Depending on the
particular month, this can be the 28th, 29th, 30th or 31st.

You can now use the If Collisions tab in order to define the day that should be moved to the past.
The first line indicates that when the last day of a month falls on a weekend, this day will be moved
to the past (backward direction to the previous workday which is a Friday). The keyword
WORKDAYS includes Mondays to Fridays. The second line indicates that when the last day of a
month falls on a holiday, this day will again be moved backward. This day can also be a Friday.

See also:
Calendar tab
Type - Static
Type - Yearly

Automation Engine

211

Type - Monthly
Type - Weekly
Type - Group
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 Variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
Defining links (such as to files, folders or to documents in the Intranet and Internet) is also possible
in structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

212

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably .

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

213

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

3.2.5 Client
Client
The "Client" object defines a self-contained environment within a UC4 system. In this
environment, you can control and monitor the tasks of the connected computers.
Object class: System object
Object type (short name): CLNT
A Client object is the first object that must be created before you can start working with UC4. Within
a UC4 system, a client is clearly identified by its four-digit client number. You can select any
number between 0001 and 9999. All other objects of a UC4 system object (Users, UserGroups,
TimeZones, Jobs, Workflows, etc.) are always directly assigned to a particular client.
Clients are defined in the system client 0000. You can create a new client environment by creating a
new Client object that must be renamed afterwards. Select a four-digit name for this new Client
object.
Note that the Client object is moved to the client environment after it has been renamed. You
can edit it subsequently in the System Overview. Select "Client" from the context menu and

214

Chapter3 Objects

edit the corresponding client using the command "Edit" (right-click the mouse). Alternately, you
can log on to the client with a user and edit the Client object that is stored in <No folder>.
When you log on to a UC4 systems system client 0000 for the first time, you can use the User
object "UC/UC" in combination with the password "UC". UC4 recommends changing this
password immediately after you have logged on for the first time.

System Client 0000

Client 0000 of a UC4 system is also referred to as the system client. You can use this client to
administer the system-internal objects and key settings. Some settings affect all existing clients
unless they have been excluded by using local settings and options. Only UC4 administrators can
change or extend system-client settings.
All other clients and selected users with administrative rights for local clients are created in the
system client.
Some of the system client's internal objects are overwritten when a UC4 update installation is made
and can disappear.

Local Clients 0001 to 9999

Client numbers that range from 0001 to 9999 are referred to as local clients. Some client settings
can also be changed locally (in the client itself). For this purpose, you required the relevant rights.
Client numbers cannot be changed within local clients.
Some of the objects that are supplied in system client 0000 can be overridden by objects that exist
in local clients of the same name. Therefore, you can define settings for each local client which
differ from the system client.

See also:
User
User Group
Header tab
The Header tab is a general tab which is available in every UC4 object.
Object: Client
Object class: System object
Object type (short name): CLNT

Automation Engine

215

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates user, date and time regarding the most recent use of the object. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Attributes Tab
The Attributes tab is object type-specific and in this form only available in the "Client" object.
This tab can be used to define a (client-wide) valid TimeZone and to activate SNMP monitoring.
Object: Client
Object class: System object
Object type (short name): CLNT

216

Chapter3 Objects

Contents

Field/Control Description
Element
TimeZone

Time zone default setting for the current client. This time zone applies for all
tasks and their corresponding date/time displays for which no time zone was
explicitly defined. If no time zone has been chosen, the UC4 Automation
Engine's UTC applies client-wide.

MIB - Info

Settings for MIB client group entries. These are displayed in the System
Overview and provided for the MIB. There is no UC4 control over these fields.

Monitoring

Activation of this check box initiates SNMP monitoring of this client. This
function allows the supervision of this client's productive status.

Additional Info Additional client information for the MIB (5.1.1.6).


Not currently in use.

See also:
Time
About SNMP
Settings Tab
The Settings tab shows the content of the UC4 Variable UC_CLIENT_SETTINGS. The
different client areas can so also be directly configured in the client object.
Object class: System object
Object type (short name): CLNT
A message is displayed if the UC4 Variable UC_CLIENT_SETTINGS is being edited by a user. In
this case, client settings cannot be changed from within this tab.

Automation Engine

217

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all object
types in UC4.
Object: Client
Object class: System object
Object type (short name): CLNT

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.

218

Chapter3 Objects

The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (such as to files, folders or to documents in the Intranet and Internet etc.)
in structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine

Automation Engine

219

the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.6 Cockpit
Cockpit
The Cockpit can be used to visualize various values and conditions. They can be retrieved from
UC4 and the system it monitors and controls. For example, you can use it to have the currently
used disk space displayed, or the number of UC4 users, or an agent's shutdown. The Cockpit
and its display elements can be defined as you need them.
Object class: Executable object
Object type (short name): CPIT
Only the numerical contents of Variable objects can be displayed.
The cockpit retrieves its values from Variable objects. It can convert the numerical contents of
these Variables and display them according to the definitions that have been made. The contents of
these Variables can be retrieved from processing operations and processes such as:
l

Event monitoring (for example, information about a file system, availability or non-availability
of files or agents, or the occurrence of console messages)

220

Chapter3 Objects
l
l

l
l

Analyses of data sequences (for example, a file is checked for a number of specific entries)
Access to SNMP values that are client-specifically generated by UC4 and stored in the UC4
Variable "UC_SNMP_VALUES" (number of active Users, active agents, blocked tasks and
active Notifications)
Values or conditions that are stored by active tasks (for example, Job, Workflow, CallAPI)
Values or conditions that are stored by UC4-external processes via the CallAPI.

When you activate the Cockpit, its monitor displays automatically if this has been specified in the
UserInterface settings. The monitor view is periodically updated when the activities are refreshed or
can be manually refreshed by clicking the F5 key.
Creating Cockpits
Cockpits display values and states that they retrieve from Variable objects graphically.

Procedure

1. Click in the toolbar. A window that lists all the available object types opens. Select type
Cockpit (CPIT).
2. Assign an appropriate name and open the Cockpit object. Click the Cockpit tab.
3. You can use the complete tab area in order to design your graphical view of data. Pies, bars,
traffic lights, lamps, boxes and frames are at your disposal.
4. Display elements can be grouped within frames. Create a frame and then press CTRL in
order to select an element that should be moved to the frame. The selected element is
displayed with a red frame and can be moved to the frame or out of it.
5. In each element, you must specify the Variable from which the value that should be
displayed derives and how it should be displayed. You can use the context menu command
"Properties" for this purpose.
6. The General tab can be used to change the displayed element's type if needed. Enter a label
for the element and how the value should be displayed (for example, value in percent). You
can also adjust the font type and the size.
7. In some elements, you can decide whether the element should be displayed in accordance
with specified threshold values (the specified threshold values are displayed in different color
ranges). The On/Off function displays the element red if its value is 0 and green if its value is
not equal to zero. Specify this setting as you need it.
8. In the Data source tab, you can now select the Variable object and the validity key that
includes the value that should be displayed. Click OK to save all the modifications that you
made in the properties.
9. The properties of all other display elements can be configured in the same way.
10. You can use the optional settings of the Runtime tab in order to monitor the execution of the
Cockpit object.
11. In the Process tab, you can store UC4 script elements.
12. Start the Cockpit object. The Cockpit monitor provides a graphical display of all current
values.
There are various other settings that can be specified in the Cockpit object. For details, refer to
the documentation about the individual tabs.
Header tab
The Header tab is a general tab which is available in every UC4 object.

Automation Engine

221

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

222

Chapter3 Objects

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects.

Default (UC_
CLIENT_SETTINGS)

If you select this option the reports the UC4 administrator defined in the
UC4 Variable UC_CLIENT_SETTINGS with the key "EXT_
REPORTS" are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions that should be taken in this tab if you want to make use of this
possibility.

The Sync objects are checked one after the other when the task starts. The UC4 Automation
Engine tries to use the Sync object of the first line by calling the start action. If this is not possible
because this is not allowed by the Sync object's current condition, the task waits, aborts or is
skipped. The type of reaction depends on the Else condition defined in the tab's last column. If
"wait" has been specified, the task waits until it can use the Sync object with the start action. Then
the UC4 Automation Engine checks the Sync object in the next line etc. The task starts as soon all
Sync objects could successfully be used. Depending on the task's end status, either an abend or
end action is processed.
Up to 500 Sync objects can be specified.
All Sync objects must not include a total of more than 5000 rules. Rules are defined actions that
are specified directly in the Sync object.

Automation Engine

223

Task ends are administered by work processes but only the primary work process releases busy
Syncs. Because of this task allocation, it can take several seconds until a Sync is released after
a task has ended. In this case, the report entry includes a time stamp that shows a time that is
later than the task has ended. Such delays occur when the primary's work load is high or if it is
processing lots of Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions that have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object that should be used to synchronize the task.

Start action

Defines the action that should be taken when the task starts. If this is
not possible because of the Sync's status, the Else condition becomes
effective.

Abend action

This action is processed if the task aborts.

End action

This action is processed if the task ends successfully.

Else

You can define here what should happen to the task if the start action
cannot be executed:
l

l
l

The task should wait until the start action can be


executed (WAIT).
The task aborts (ABEND).
The task is skipped (SKIP).

See also:
Sync
Cockpit - Cockpit Tab
The Cockpit tab is object-type specific and is only available in "Cockpit" objects. In this tab, you
can set the Cockpit's display elements and its properties.
Object class: Cockpit
Object class: Executable object
Object type (short name): CPIT

224

Chapter3 Objects

You can stores the size and the order of the display elements in the Cockpit tab and the size of the
object itself. In doing so, you can set up the display in your preferred way.

Creating and positioning display elements

In the "Cockpit" tab, you can use the display elements Box, Bar, Pie, Traffic Light and Lamp. Use
the popup-menu command "Display Element" to create a display element.

All display elements can be arranged as required and their size can be adjusted. By using the
mouse, you change the position or size by 10 pixel. You can be more precise by using the keyboard.
The arrow keys can be used to change the size by pressing the SHIFT key and the position by
pressing the CTRL key (by 1 pixel). Display elements can be grouped into frames. Press the CTRL
key and click on an element. This element is now shown with a red frame. Drag it into the frame.
Vice versa, you can also remove a display element from a frame.
Displayed elements cover each other if they overlap. The highlighted element is always in the
foreground. Keep this in mind when you move or change frames within a Cockpit.
Display elements and frames can be copied and pasted. You can do so with all objects between
different cockpits. Use the key combination CTRL+C and CTRL+V or the relevant popup-menu
command. You can also delete display elements and frames that are no longer required.

Automation Engine

225

Defining Properties

In the properties of a display element, you can define its precise function, display and data source.
Select the popup-menu command Properties in the highlighted display element.

Display of Elements

You can change the way that elements are displayed at any time. Simply select a different display
element from the dropdown list. In the text field Caption , replace the default value by your specific
term which serves as the label in the Cockpit. This field is limited to 30 characters. Select from the
dropdown list what should be displayed in the second line. This can be the monitored value (as a
number or in percent), the value and maximum value (numbers next to each other), an empty line or
a text. Font settings can be specified using "Font..." command.

Function of Elements

Display elements work in different ways:


l

l
l

The display elements can display the monitored value in the colors green, yellow or red at
runtime.
The display elements can also be used for a simple on/off display (green or red).
Any text of a UC4 Variable can be displayed with a box.

Threshold values (primarily for traffic light, pie and bar)


In order to display three colors, you must select the option Threshold values . Specify the
minimum and maximum value as well as the threshold values for the yellow indicator. At runtime,
the values are displayed in the colors that are defined here.

226

Chapter3 Objects

On/Off (primarily for box and lamp)


To use box or lamp for on/off display, you must select the option On/Off . At runtime, the values are
displayed in the colors that are defined here. If the value equals zero, the display is "Off" (red). If it
does not equal zero, the display is "On" (green).

Data Source of the Elements

In the Data source tab of the properties, you can define the Variable object that is used to retrieve
the monitored value or status. You can specify static or dynamic variables.
Use the dropdown list "Key" in order to determine the particular entry that should be used to retrieve
the value. If you do not specify an entry, the system automatically uses the first line.
In static variables, the value is always read from the "Value 1" column, and in dynamic variables
always from the first basic column (the first column that is shown after the Result column).
Variables & Prompts Tab
The Variables & Prompts tab is object type-specific and is available in every executable object
in UC4.
Object: FileTransfer
Object class: Executable object
Object type (short name): JOBF
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Automation Engine

227

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Only defined variables

The object only obtains the object variables of the superordinate


task that have been defined in its "Variables & Prompts" tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the "Variables & Prompts"
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.

228

Chapter3 Objects

Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the particular PromptSet element is not a text field, click its
labeling.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
You can change default values either by directly modifying the elements or by clicking on the blue
text to the left of the element. After clicking on the blue text, a gray text field is shown instead of the
particular PromptSet element and you can enter a new value. You can also enter predefined
variables. If you click again, the element is shown as at the beginning and previous entries are
deleted.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs if the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.

Automation Engine

229

Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications that are made in the PromptSet object's default values
do not affect the Variables & Prompts tab. The values of the PromptSet object are only
available when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Runtime tab
The Runtime tab is object-class specific and is available in every executable object in UC4. It
can be used to specify parameters for a task's runtime behavior.

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluation of estimated runtime (runtime evaluation)
Monitoring of maximum runtime (runtime monitoring)
Monitoring of minimum runtime (runtime monitoring)
Reaction if the runtime is longer or shorter than defined (runtime monitoring)

Description

Field/Control
Definition for ENDED_
OK

Description

230

Chapter3 Objects

Return code <=

Maximum return code for the normal end of a task.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.
You can also set this value using the script statement :EXIT.

Else execute

If the relevant task does not end with a return code that lies within
the ENDED_OK zone, you can define an alternative object that
should be processed.

End status for Forecast

Selection list for the end status that this task should return when
you make a Forecast calculation.

Estimated runtime (ERT)


Current ERT =

Display of this task's next estimated runtime (ERT).


You can specify an estimated runtime here. This value then applies
until an ERT calculation has been made after the task's next run.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that
the UC4 administrator has specified in the UC4 Variable UC_
CLIENT_SETTINGS using the key "ERT_METHOD" will be used
for the estimated runtime.

Fixed value

Enter a fixed value as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the actual runtime.
Possible selection: average, linear regression, maximal value

from the last ... runs

Number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

Value in percent for an upward ERT correction.

Differences > ... % are


ignored

You can ignore possible huge deviations for the estimated runtime.

but do use ... runs at least

Number of past runs that should be considered regardless of


deviations. Allowed value: 0 to 25.

Show chart

Button for updating the estimated runtime according to the current


settings. A diagram is displayed in a separate window which
represents the last 25 ERT/RRT runs. An already open window will
be updated.

Reset values

Button for deleting the real and estimated runtimes.


After a security query, all stored runtimes will be cleared.

Upper limit (in percent) until which the real runtime should be used
to calculate the estimated runtime.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Automation Engine

Fixed value

231

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action (ELSE condition) must be
specified which reacts when maximum runtime is exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's
activation is used as the maximum runtime. An action (ELSE
condition) must be specified which reacts when maximum runtime
is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

Define a number of days and a particular time until which the task
must be finished. The starting point for the date calculation is the
task's real date. An action (ELSE condition) must be specified
which reacts when maximum runtime has been exceeded.

Minimum runtime (SRT)


None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The minimum runtime is used as a fixed value in the format
"hours:minutes:seconds". An action (ELSE condition) must be
specified which reacts if the runtime falls below the minimum
runtime.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is
used as the minimum runtime. An action (ELSE condition) must be
specified which reacts when runtime falls below the minimum
runtime.

- ... %

A correction value in percent can be specified for ERT for the


minimum runtime. The determined value is subtracted from the
estimated runtime.

Else
Cancel / Quit

With this checkbox being activated, the task will be canceled or


ended if the runtime has been exceeded. Only available when the
maximum runtime is monitored.

Execute

Selecting this checkbox determines a task's execution. You can


directly select an executable object. This task will be activated if
the runtime is above or below the expected value. Only available
when runtime is monitored.

Comments

232

Chapter3 Objects

A different definition of runtime monitoring can be used for tasks that run in a Workflow or are
activated using a "Schedule" object. You can define this in the properties of the affected objects
(Runtime tab). In doing so, you can implement specific requirements for runtime monitoring which
refer to the special context of Workflows or Schedules. The task settings that are defined in the
Workflow or Schedule override the settings that were made in the task itself.
By default, the settings for runtime monitoring as defined in the task also apply to the Workflow or
Schedule.

See also:
Runtime Evaluation
Runtime Monitoring
Process Tab
The Process tab is an object-type-specific tab in which processing instructions are stored in
UC4's scripting language.
Object class: Cockpit
Object class: Executable object
Object type (short name): CPIT

Description

The script is processed at Cockpit activation.


A Cockpit's script cannot contain JCL lines.

See also:

Automation Engine

233

Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

234

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

235

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Cockpit - Monitor
A Cockpit's monitor view is available while the object is being executed. You can specify in the
settings of the UserInterface whether it should open automatically when the object is activated.
A separate window displays for each active Cockpit.

236

Chapter3 Objects

The display elements represent the values and conditions that have been defined in the Cockpit
tab. These values and conditions are periodically refreshed and the display is updated when the
activities are refreshed or can be manually refreshed by clicking the F5 key.
The statistical overview, the last report and the properties of the display elements (write protected)
can be called by using the context menu commands . You can also quit the Cockpit
If you change the size of the monitor window, the size and position of the display elements are also
adjusted.However, these new sizes are not permanently stored
Calling the Monitor
Automatically

The Cockpit monitor automatically displays while the Cockpit is being


executed.
Select Options -> Settings -> Activity Refresh and check Cockpit in
the UserInterface.

Right-click the Cockpit Select Monitor in the context menu.


in the Activity Window
Cockpit selection in
the Activity Window

Select File -> Monitor in the UserInterface.

See also:
Cockpit
Cockpit Attributes
The following overview lists the attributes of a Cockpit object and describes their functions,
allowed values and ways of modification.

Automation Engine

Tab

237

Attribute

Labeling

Value

Access
Via:

ARCHIVE_
KEY1

Archive key 1

User-defined,
limited to 60 characters.

GET_ATT
:PUT_ATT,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
limited to 20 characters.

GET_ATT
:PUT_ATT,
predefined
variable

DATE_
CREATED

Created on

The time stamp in the format "YYYYMM-DD HH:MM:SS"


If not available: "0000-00-00 00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

The time stamp in the format "YYYYMM-DD HH:MM:SS"


If not available: "0000-00-00 00:00:00"

GET_ATT

DCMODUS

Mode
UserInterface

"Y" - UserInterface is active


"N" - No UserInterface is active

GET_ATT

LAST_
DATE

Last used on

The time stamp in the format "YYYYMM-DD HH:MM:SS"


If not available: "0000-00-00 00:00:00"

GET_ATT,
predefined
variable

LAST_
USER

Last used by

The name of the User object,


limited to 200 characters.

GET_ATT,
predefined
variable

MAX_
RETCODE

ENDED_OK until
return code

User-defined,
limited to 11 characters.

GET_ATT
:PUT_ATT

MODIFY_
COUNT

Modified

The number of object modifications.

GET_ATT

OBJECT_
NAME

Object name

User-defined,
limited to 200 characters.

Change
Program

OBJECT_
TITLE

Title

User-defined,
limited to 255 characters.

GET_ATT,
:PUT_ATT,
predefined
variable

USAGE_
COUNT

Last used

The number of object usages.

GET_ATT,
predefined
variable

USER_
CREATED

Created by

The name of the User object,


limited to 200 characters.

GET_ATT,
predefined
variable

USER_
MODIFIED

Changed by

The name of the User object,


limited to 200 characters.

GET_ATT,
predefined
variable

See also:

238

Chapter3 Objects

Cockpit
Attributes
:PUT_ATT Statement
GET_ATT Function
UC4.DB Change

3.2.7 CodeTable
CodeTable
CodeTables define a complete character set.
Object class: Passive object
Object type (short name): CODE

Description

Some operating systems and applications supported by UC4 use special sets of characters. During
an exchange of data between UC4 and the operating systems and applications, these character
sets must be converted when necessary. This conversion is based on the character sets defined in
the "CodeTable" object. CodeTables are used for data transmission between the UC4 Automation
Engine and the agents, during file transfer from agent to agent, and during the preparation of data
sequences (UC4 Script).
The UC4 Automation Engine works with the UC_CODE CodeTable. If necessary, the characters in
this CodeTable are converted into characters which correspond to the target system's character
set. Likewise, characters must be converted from the target system's character set into UC_CODE
code table characters.
The UC_CODE code table and the agent code tables for operating systems and applications are
supplied in client 0000. Of course, the CodeTables contain default character sets for all supported
target systems and should be able to be implemented without difficulty.
CodeTable

Target System

Character Set

ASCII_850

MS DOS

With German umlauts

BS2000_DEUTSCH

BS2000

With German umlauts

BS2000_EDF041

BS2000

In accordance with EDF041

BS2000_
INTERNATIONAL

BS2000

Alphanumeric with special characters

CODE

Template for new code tables to be created

EBCDIC_00037

USA

EBCDIC_00237

OS/400

Germany and Austria

EBCDIC_00500

International

EBCDIC_01141

Germany and Austria, with symbol

IBM_3270_DEUTSCH

With German umlauts

IBM_3270_
INTERNATIONAL

z/OS

International

Automation Engine

UC_CODE

MPE
NSK
Oracle
Applications
PeopleSoft
SAP
UNIX
VMS
Windows

239

Basic character set used by UC4

Creation of new CodeTables


In some cases, it can become necessary to use a code table which differs from the supplied code
tables. If so, a separate CodeTable must be created in such a way that a client 0000 code table
having the most similar character set is duplicated and adapted. Should a CodeTable be valid only
for a particular client, it can also be duplicated directly into a local client and changed by an
authorized user. The newly created code table can now be selected in the "FileTransfer" object and
used.
CodeTables in local clients cannot use the same object names as those used by the
CodeTables from the system client. CodeTables with which the agents work by default must
always be saved in client 0000. For reasons of security and clarity, it is recommended that
CodeTables be saved exclusively in client 0000. This is the simplest way to ensure that only
authorized users can make changes to these CodeTables.

See also:
CodeTables - Usage
Header tab
The Header tab is a general tab which is available in every UC4 object.

240

Chapter3 Objects

Description

Field/Control

Description

Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Code Tab
The Code tab is object type-specific and is only available in "CodeTable" objects. It contains the
table for the conversion of character sets.
Object: CodeTable
Object class: Passive object
Object type (short name): CODE

Description

CodeTable definitions can be specified in the Code tab. Codes are assigned in a table through
editing the fields. Codes can be displayed in ASCII or hexadecimal format. Use the context menu to
change the display which also provides access to the properties of the particular highlighted field.

Automation Engine

241

Activate the option Text characters if this character should be considered for the conversion. The
particular fields are then shown in color in the Code tab. When processing Jobs and FileTransfers,
these characters are then converted in accordance with the CodeTable - i.e. the character is first
searched in CodeTable1 and then compared to the one in CodeTable2. The alternative character is
used if the requested character is not found.
Only one character can be defined as alternative character.
The attributes 3 to 8 are always displayed gray because they are currently not in use.
The most common CodeTables are supplied with UC4 in order to assure smooth FileTransfers. In
some special cases, it might become necessary to customize CodeTables. You can also create
your own CodeTables which convert exactly to your requirements.

See also:
CodeTable - Usage
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

242

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

243

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

244

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

CodeTable - Usage
The following document informs about the character sets UC4 uses system internally.

Automation Engine

245

Diagram of Data Traffic

UC4 Automation Engine

UC4 basically uses UC_CODE for the data traffic between the UC4 Automation Engines and
agents and between the agents themselves.
UC4 Automation
Engine

CodeTable

Windows

UC_CODE

UNIX

UC_CODE

Data is saved in the database in accordance with the settings made in the database interface. Be
careful when installing the database and configuring the database interface that the correct
character set and the correct code conversion are set.

246

Chapter3 Objects

Agent

The CodeTable name used an agent by default can be defined in its INI file. CodeTable names are
assigned with the parameter UC_HOST_CODE= in the section [VARIABLES].
When the agent logs on to the UC4 Automation Engine, the UC4 Automation Engine stores the
CodeTable names for this particular agent in its internal host table. The UC4 Automation Engine
reads the CodeTable from client 0000 and transfers it to the agent. The agent then uses this
CodeTable for all Jobs and FileTransfers which do not require different CodeTables.
CodeTables used by agents by default must always be stored in client 0000. Modifications
made in these CodeTables are take effect after a re-logon to the UC4 Automation Engine.
Default CodeTables of Agents
Agent

CodeTable

BS2000

BS2000_DEUTSCH

Database

UC_CODE

GCOS8

UC_CODE

JMX

UC_CODE

MPE

UC_CODE

NSK

UC_CODE

Oracle
Applications

UC_CODE

z/OS

IBM_3270_INTERNATIONAL

OS/400

EBCDIC_00273

PeopleSoft

UC_CODE

SAP

UC_CODE

Siebel

UC_CODE

UNIX

UC_CODE

VMS

UC_CODE

Windows

UC_CODE

Agent - Job Execution

If a particular CodeTable was not specified for a job, the default CodeTable of the agent used for
executing this particular job applies. The UC4 Automation Engine sends the job data (JCL) using
UC_CODE to the agent. The agent converts the JCL (if required) according to the target system's
character set. In doing so, the agent uses the default CodeTable sent to it by the UC4 Automation
Engine during the login procedure. The job is saved in the defined working directory. After job
execution, the agent reads the report from this file. The report is converted in accordance with the
character set of UC_CODE and sent to the UC4 Automation Engine.
If a job does not use the default CodeTable - but instead, for example, an ASCII character set for
DOS outputs in Windows - this CodeTable is first sent to the agent. In doing so, the UC4
Automation Engine starts searching this CodeTable in the local client. If this CodeTable is not found

Automation Engine

247

there, the CodeTable of client 0000 is used. This CodeTable, however, is only valid temporarily and
is exclusively used for this particular job's JCL and report.

Agent - FileTransfer

If particular CodeTables were not specified for FileTransfers, the default CodeTables of the involved
agents apply. The agent converts the source file to UC_CODE (if required) and sends it to the
partner agent. It is then converted from UC_CODE to the character set of the particular agent's
default CodeTable and written to the target file.
For FileTransfers, a CodeTable can explicitly be specified for sending and/or receiving agent(s).
This is essential when the contents of the file to be transferred do not comply with the default
CodeTables of the involved agents. The UC4 Automation Engine sends the required CodeTable to
the agent so that it can correctly convert the file's contents. Explicitly specified CodeTables are
only valid on a temporary basis and for the current FileTransfer. Subsequent FileTransfers and Jobs
are not affected.
It is also possible to create and use individual CodeTables for particular requirements. If these
are stored in the local client, they must not have the same object names as the CodeTables in
the system client.
Refer to the System Overview to see which CodeTables are used by the individual agents by
default.

3.2.8 Connection
Connection
Connection objects contain the connection parameters for RA Solutions, RA jobs and SAP
agents.
Object class: System object
Object type (short name): CONN
The Connection objects of RA Solutionsdiffer from the standard Connection objects that UC4
supplies. More detailed information about tabs is provided in the description of the relevant RA
Solution.
Header tab
The Header tab is a general tab which is available in every UC4 object.
Object: Connection
Object class: System object
Object type (short name): CONN

248

Chapter3 Objects

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object, the day and time.

Modified

Indicates the user who last modified this object, the day and time. The number
of modifications made is displayed on the far right.

Last used

Indicates the user who last used this object, the day and time. The number of
times the object has been used is displayed on the far right. You define this
function in the UC4 variable UC_SYSTEM_SETTINGS.

Archive keys

Two key words of your choice can be specified here.

Attributes Tab
The Attributes tab is object type-specific and is only available in objects of type "Connection"
(R3). It determines the connection type.
Object: Connection
Object class: System object
Object type (short name): CONN

Automation Engine

249

Description

Depending on the selected type, the object displays a tab in which the corresponding connection
parameters can be specified.

Remote Function Call Tab


The Remote Function Call tab is object type-specific and is only available in objects of type
"Connection". It is automatically displayed if the connection type "Remote Function Call" has
been selected in the Attributes tab.
Object: Connection
Object class: System object
Object type (short name): CONN

General tab
[General tab] [Secure Network Connection tab] [Interfaces tab]

250

Chapter3 Objects

Field/Element

Description

Connection Type

You can select whether the connection should be established to a


specific application server or via a balanced or group selection.

max. concurrent
connections

The agent dynamically administers the connections to the SAP


system. If one connection is busy, another one opens automatically.
This parameter determines the maximum number of simultaneous RFC
connections that the SAP can open per login combination (SAP client,
SAP user, SAP login language).
UC4 recommends specifying an unlimited setting (default value, no
value specified). Instead, match the Agent's resource setting (to be
configured in the UC4 Variable UC_HOSTCHAR- WORKLOAD_
MAX_JOB or the System Overview) with the number of SAP batch
processes. The advantage is that Jobs do not become active on the
Agent's side if the resource limit has been reached.
Note that to use an unlimited number of RFC connections you need to
configure this in SAP (see SAP note 314530).
Default value:unlimited

Connection
parameters for
"Specific
Application Server"
Application Server

The name of the application server.

System Number

The number of the SAP system (such as 00).

System Name

The system ID of the SAP system (such as T40).

SAP Router String

The name of the SAP router.

Automation Engine

Field/Element

Description

Connection
parameters for
"Balanced/Group
Selection"
System Name

The system ID of the SAP system (such as T40).

Message Server

The name of the message server.

SAPRouter String

The name of the SAP router.

Group

The name of the login group.

Login data
Client

The number of the SAP client.

User

The name of the SAP user.

Password

The password of the SAP user.

Language

SAP-specific short name for the login language.

Alternative Login

The Login object from which the login data (client, user, password) is
retrieved.

Secure Network Connection tab


[General tab] [Secure Network Connection tab] [Interfaces tab]

251

252

Chapter3 Objects

Field/Element

Description

Enable Secure
Network Connection
(SNC)

This activates or deactivates SNC mode.

Path to library which


provides SNC service

The name of the local SNC library.

Level of Security

The SNC service quality.

SNC Partner name

The name of the SNC partner system.

My name (overrides
default)

The own SNC name (optional).

Interfaces tab
[General tab ] [Secure Network Connection tab] [Interfaces tab]

Field/Element

Description

BC-XBP
Use UC4Interface

Activate this option if the SAP agent should use the default interface
plus the UC4 Interface.

Combine Job steps

This option can be used to combine the script elements R3_


ACTIVATE_REPORT, R3_ACTIVATE_EXT_PROGRAM and R3_
ACTIVATE_EXT_COMMAND in SAP in one Job if they are used in
immediate succession.

Automation Engine

Field/Element

Description

Interface version

The interface version of the XBP interface.

253

The setting "default" means that the SAP agent queries the SAP
system about the interface version in use.
For further information about the XBP interface refer to the SAP
documentation:
SAP Interface Repository: http://ifr.sap.com.
SAP Help Portal: http://help.sap.com.
Audit level

XMI log monitoring level

Block size in KBfor


Spool lists

The SAP spool is transferred block by block. UC4 recommends using


the default value because it will also be applied if this field does not
include a value or if value 0 has been specified.

BW-SCH
Allow parallel
execution of same
chain

With this option activated, the system allows a process chain to run
multiple times parallel.
The parallel execution of a process chain can result in a Dialog
service process in the BW Application Server being constantly
occupied.

Extended
InfoPackage
monitoring

Status monitoring type of the InfoPackage.

No extended
monitoring

No modification, present status monitoring continues .

Monitor until
MAXRUNTIME

It the technical status "Red" occurs, status monitoring continues until


the point in time specified in the parameter MAXRUNTIME= of the
script element BW_ACTIVATE_INFOPACKAGE or until the status
changes.

Repeat status check


... x

It the technical status "Red" occurs, status monitoring continues n


times. If the status changes, monitoring continues. If the status does
not change, the Job ends or aborts depending on the specification
made in the parameter ERROR=.

Repeat Data Request


checks

This parameter can be used to define how often BAPI_ISREQUEST_


GETSTATUS should be called if it returns an error message.
Default value:"0"
This is a workaround for a SAP error. More details are available in
the SAP note 672353.

254

Chapter3 Objects

Field/Element

Description

ipak change method

This option causes various technical calls of BAPI_IPAK_CHANGE.


"0" - No modification, present procedure continues.
"1" - BAPI_IPAK_CHANGE is called without using the parameter
SELECTIONS.
"2" - BAPI_IPAK_CHANGE is called with the parameter
SELECTIONS being empty.
"3" - BAPI_IPAK_CHANGE is no longer called. UC4 expects that the
start type "Immediately" has been specified in the Job object.
"4" - BAPI_IPAK_CHANGE is called using the following parameters:
INFOPACKAGE: The technical name of the InfoPackage (mandatory).
SCHEDULING_PARAMS: Previously read with BAPI_IPAK_
GETDETAILS, STARTTYP=I
INFO_CUBES: Only if BAPI_IPAK_GETDETAILS also supplies Info
Cubes.
RETURN: The export parameters, return information.

BC-XAL
Interface version

The version of the XAL interface.


The setting "default" means that the SAP agent queries the SAP
system about the interface version in use.

Enable system log on


failure

Activate this option if the report SLOG should be generated and


displayed in the report tab "SAP system log". It contains current SAP
system log messages if a SAP job has been canceled.

Monitor Set

The name of the monitor set.


For example: "SAP CCMS Monitor Templates"

Monitor

The name of the monitor.


For example: "Syslog"

MTSName

The short name of the monitor.


For example: "Background"

SMSE

The SMSE (Solution Manager Scheduling Enabler) interface.

Enable

This starts the RFC Server for the SMSEinterface and activates the
relevant settings.

UC4 User

The login data for the UC4 system


Note that you must specify the client, user name, department and the
password. Make sure that the user exists in the specified client.

RFC Server

The settings for the connection to the SAP system and for registering
the RFC Server.

Gateway host

The host name of the SAP gateway.

Gateway service

The service of the SAP gateway.

Program ID

The program ID.

RFC Destination

The name of the RFC destination.

Automation Engine

255

Internet Tab
The Internet tab is object type-specific and is only available in objects of type "Connection". It is
automatically displayed if the connection type "Internet" has been selected in the Attributes tab.

Object: Connection
Object class: System object
Object type (short name): CONN

Description

Field/Element

Description

Connection
Parameters
URL

URL to Java Scheduler


http://Server
name:Port/scheduler~runtime~gate~web/JXBPWebService
URLto Process Integration
http://Server name:Port
URL to System Landscape Directory
http://Server name:Port/sld/ds

The port is generally 50000.

256

Chapter3 Objects

Login Data
User

Name of the user

Password

Password of the user

Alternative Login

Login object from which the login data (user, password) is retrieved.

DB Tab
The DB tab is object type-specific and is only available in "Connection" objects of type
"Database".
Object: Connection
Object class: System object
Object type (short name): CONN

Connection objects of type "Database" are required for SQL variables that read their values from the
specified database when they are accessed. You can specify the Connection object which should
be used in the Variable tab.
Field/Element
Connection
parameters

Description

Automation Engine

Field/Element

Description

Database type

Type of database to which a connection should be established.

257

Example: Oracle
Possible database types:
l
l
l
l
l
l
l
l

Microsoft SQL Server


Oracle
IBM DB2
Sybase
MySQL
Informix
Oracle OCI (RAC)
SAP HANA

Server

Name of the computer on which the database is available.

Port

Port number for computer access.


If you specify the value "0", the Database Agent itself attempts to find a
suitable port.

Database

Name of the database that should be used.

Login Data
User

Name of the database user.

Password

Password of the database user.

Alternative Login

Login object whose login data (user, password) is used.

Test connection

An attempt is made to establish a connection to the database with the


specified parameters. Doing so requires a particular Database Agent
(for Variables) and a Login object to be selected via a separate dialog. A
Message Window displays the result of this test connection.

Additional
parameters
Parameters

Name of the parameter that should additionally be used to access the


database.
Example: MARSCONNECTION

Value

Value for the additional parameter.


Example for the parameter MARSCONNECTION: TRUE

The Connection String and Connection Properties tabs can be used to define how the additional
parameter should be passed on.
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all UC4
objects.
Object: Connection
Object class: System object
Object type (short name): CONN

258

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

259

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries it should include.

260

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

3.2.9 Dashboard
Dashboard
This object represents a dashboard that is used by the product Enterprise Control Center (ECC).
Dashboards are not used within the Automation Engine.
Object class: Passive object
Object type (short form): DASH
Header tab
The Header tab is a general tab which is available in every UC4 object.

Automation Engine

261

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates the user who last used the object including the date and time.
The number of times the object has been used is displayed to the right.

Archive keys

Two keywords of your choice can be specified.

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

262

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation tabs.
By default, RA Solutions contain the Documentation tab Signature which contains the RA
Solution's signature data.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

263

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

264

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

3.2.10 Documentation
Documentation
This object serves to administer the documentation of any desired client. Use it for describing
complex interrelations such as the coaction of several objects.
Object class: Passive object
Object type (short name): DOCU
Individual Documentation tabs can be defined in the UC4 variable UC_OBJECT_DOCU for this
particular object type or for all object types "*".
The Version Management tab displays the saved versions of the UC4 object if this function was
activated in the UC4 Variable UC_CLIENT_SETTINGS.
Header tab
The Header tab is a general tab which is availablein every UC4 object.

Automation Engine

265

Description

Field/Control

Description

Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

266

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

267

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

268

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

3.2.11 Event
Event
This object type serves to trigger Events on the basis of pre-defined conditions.
Object class: Executable object
Object type (short name): EVNT
The "! Process" tab is the core of each Event object. The processing statements specified here are
processed as soon as the defined condition applies.
The condition specified in the ! Process tab is the Event that is triggered.
The conditions that can be defined depend on the Event type. The following Event types are
available:
Event
type

Default
template

Description

Time

EVNT.TIME

The Event is triggered in the defined intervals.

Automation Engine

269

File
System

EVNT.FILE

It is checked in the defined intervals whether the condition of the


File System tab applies. If so, the Event is triggered.

Database

EVNT.DB

It is checked in the defined intervals whether the condition of the


Database tab applies. If so, the Event is triggered.

Console

EVNT.CONS

The Event is immediately triggered when all the conditions defined


in the Console tab apply.

Activated Event objects are mostly in the status "Sleeping". In Time Events, the status changes to
"Active" in the defined intervals and then the Event is triggered. The same is true for File System
Events and Database Events with the only exception being that the settings of the File System tab
are checked before the Event is triggered. Only if the specified settings apply (for example, the
defined number of files is exceeded), the Event is triggered. Console Events only react when the
settings specified in the Console tabs apply. They constantly monitor the Console messages - not
in intervals as the two other Event types. Console Events are always in the status "Sleeping".

See also:
! Process tab
File System tab
Database tab
Console tab"
Header tab
The Header tab is a general tab which is available in every UC4 object.

270

Chapter3 Objects

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects.

Default (UC_
CLIENT_SETTINGS)

If you select this option the reports the UC4 administrator defined in the
UC4 Variable UC_CLIENT_SETTINGS with the key "EXT_
REPORTS" are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions that should be taken in this tab if you want to make use of this
possibility.

Automation Engine

271

The Sync objects are checked one after the other when the task starts. The UC4 Automation
Engine tries to use the Sync object of the first line by calling the start action. If this is not possible
because this is not allowed by the Sync object's current condition, the task waits, aborts or is
skipped. The type of reaction depends on the Else condition defined in the tab's last column. If
"wait" has been specified, the task waits until it can use the Sync object with the start action. Then
the UC4 Automation Engine checks the Sync object in the next line etc. The task starts as soon all
Sync objects could successfully be used. Depending on the task's end status, either an abend or
end action is processed.
Up to 500 Sync objects can be specified.
All Sync objects must not include a total of more than 5000 rules. Rules are defined actions that
are directly entered in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Because of this task allocation, it can take several seconds until a Sync is released after
a task has ended. In this case, the report entry includes a time stamp that shows a time that is
later than the task has ended. Such delays occur when the primary's work load is high or if it is
processing lots of Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions that have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object that should be used to synchronize the task.

272

Chapter3 Objects

Start action

Defines the action that should be taken when the task starts. If this is
not possible because of the Sync's status, the Else condition becomes
effective.

Abend action

This action is processed if the task aborts.

End action

This action is processed if the task ends successfully.

Else

You can define here what should happen to the task if the start action
cannot be executed:
l

l
l

The task should wait until the start action can be executed
(WAIT).
The task aborts (ABEND).
The task is skipped (SKIP).

See also:
Sync
Event - Calendar Tab
The Calendar tab is object type-specific and in this form only available in "Event" objects. In this
tab you can define Calendar, Calendar keyword and period (time) entries. An Event will only be
triggered if at least one of the entries applies or if there is no entry at all.

Description

Field/Control

Description

Calendar

Here you can select a Calendar.

Automation Engine

Keyword

273

A list appears that includes all the calendar keywords of the selected
calendar. Select the calendar keyword that should be applied for
running the Event object.
Note that when you select a Calendar, that you must also select a
Calendar keyword.

From

The beginning of the time period in which the Calendar and calendar
key should be considered.

To

The end of the time period in which the Calendar and calendar key
should be considered.
To use a time period, you must define a beginning and an end.

The calendar and time conditions are always checked before the Event is checked. The current date
and time are used as a reference and the Event's active TimeZone is also considered. This includes
that activating an Event and specifying a logical time does not make sense.
The Event is checked and triggered if at least one entry applies or if there is no entry.
Note that time specifications are checked for full minutes, i.e. the ending time 23:59 hours lasts
until 23:59:59. Hence, the Event can also be triggered in the last 59 seconds.
Calendar, calendar keyword and time period can be used in as follows:
l
l
l

Definition of Calendar and calendar keyword.


Definition of Calendar and calendar keyword including time period.
Definition of time period without Calendar and calendar keyword.

Attributes Tab
The Attributes tab is object type-specific and only available in "Event" objects.
It can be used to define start parameters.
Object: Event
Object class: Executable object
Object type (short name): EVNT

274

Chapter3 Objects

Description

Field/Control

Description

Attributes
Group

If the Event object should be started by a Group, this Group can be


selected here. If there is no entry, the Event object is activated
immediately.
Note that the entry specified in here is not considered if the Event
object is started through a Workflow, a Schedule or as a recurring task.

Queue

Selection of a Queue object in which the FileTransfer should be


processed. The FileTransfer automatically starts in the Client Queue
(object name: CLIENT_QUEUE) if nothing has been specified in this
field.

Int. Account

Specification of an internal account


Contents do not affect the UC4 system's internal processing. You can
access the attribute "Int. Account" with script elements and integrate it
in your processes.

Parallel running Tasks

Automation Engine

Max ...

275

Setting that defines the maximum number of parallel executions for this
Event object.
Allowed values: 0 to 99999
Default: 0 (no limit on tasks running parallel)
Examples:
Max. "1" - At any time, not more than one Event execution must be
available.
Max. "2" - At any time, not more then two active Event executions must
be available.
etc.

Else: Wait Abort

Instruction that defines how this Event object should be handled if the
execution exceeds the specified maximum number of tasks that can
run at the same time.
Wait = The Event object waits until execution is possible.
Abort = The Event object is interrupted.

UC4 Priority ... (0-255)

Priority that should be used to executed this job in UC4


Allowed values: 0 to 255
Default: 0
The priority the UC4 administrator specified in the UC4 Variable
UC_CLIENT_SETTINGS (key "TASK_PRIORITY") is used if you
select value "0".

TimeZone

TimeZone to be used

Generate at runtime

With this option being activated, the script is not executed at object
activation but only when it starts. These can be two different points in
time (for example, when the object is executed by a Workflow).

Event Tab
The Event tab is object type-specific and only available in "Event" objects. It can be used to
define Event monitoring.
Object: Event
Object class: Executable object
Object type (short name): EVNT
This tab is not displayed in Event objects of type "FileSystem". In this case, the settings can be
specified in the "FileSystem" tab.

276

Chapter3 Objects

The tab's content depends on the Event type. Time and Console Events do not require particular
settings while FileSystem Events do.
l

Time Events do not contain the execution option Until the first hit as they are used for
periodic monitoring.
Console Events generally only include the execution options "Repeated" and "Until the first
hit" as these permanently monitor the Console. All control elements of the Timer Control
section are therefore disabled.

Description

Field/Control

Description

Event
Check
Repeated

The Event object is activated periodically.

Single

The Event object is activated only once.

Until the first hit

The File System Event is activated until the specified condition applies.

Timer Control
Check in intervals of

Specify an interval (in minutes), in which the Event object should


become active.

Check time

Specify a time at which the event should become active every day.

First Check

Configuration for "Execution in intervals of"

When time has


expired

The Event object will become active for the first time after the
expiration of a specified time interval.

Automation Engine

277

Immediately

The Event object will become active for the first time upon its
activation, regardless of the specified time interval.

Start after check


time

Configuration for "Time of Execution"

Do not check

If the Event object starts after the specified time, it becomes active as
of the next day.

Check

If the Event object starts after the specified time it becomes


immediately active.

Some of the settings specified in this tab can be read at runtime. Script elements are used to
access the attributes of this object.
File System Tab
The File System tab is object-type specific and is only available in event-type objects. You can
use it to define the conditions of the various event types. This document describes the File
System tab of the file-system event type.
Object: Event
Object class: Executable object
Object type (short name): EVNT
Note that there are agents that do not support all options.

Description

Field/Element
File System

Description

278

Chapter3 Objects

Host

Select the name of the target system - the agent in the target system whose file system should to be monitored. You can also specify an
agent group.

Path

Specify a drive, a path or a signature to which the monitoring should


refer.
Depending on the respective target system, you can name files, drives,
volumes, paths, Generation Data Groups etc.
The wildcard characters "*" or "?" can be used. "*" stands for any
number of characters, "?" for exactly one.
The characters *and ? are always used as wildcard characters. Note
that you cannot use them to define specific files that include these
characters in their names.
Note that wildcard characters must not be used in paths.

Include subdirectories

Select this box to include files of sub-directories. This function is only


available for VMS, UNIX and Windows agents.
Note that activating this option affects the performance of your UC4
system negatively.

Event
Check

Condition that should be checked in the file system.


Allowed values:
PATH_SPACE_UNUSED - available memory or disk space (BS2000)
PATH_FILE_COUNT - number of files
PATH_SPACE_USED - used memory or disk space
FILESYSTEM_SPACE_FREE - free space of volumes (z/OS) or of a
drive (Windows)
FILE_SIZE - size of a file (the agent converts the file size and the
specified value into bytes so that both values can be compared).
Operator for the assignment of values
Specify a value to which the selected check and operator should refer.
The unit for measuring the value (such as bytes, KB, MB) can be
selected from a list. If the target system works with a different unit, it
will be converted accordingly.
Select "Host specific" if the measuring unit that is specified in the
target system (such as PAM pages in BS2000) should be used.
The list is disabled if selecting a particular unit is not useful (with
PATH_FILE_COUNT, for example).

and

Condition that should be checked in the file system.


Allowed values:
FILE_CHANGED - file's last modification time
FILE_STABLE - file-size modification

Automation Engine

within

279

Period that should be used for checking the last modification time or
file-size modification.
For example:within the past 6 hours

Consider All Files

If wildcard characters are used or sub-directories are included in the


search, a file can be found several times. You can select whether the
specified conditions must apply to all found files.
For performance reasons, you can specify a maximum number of
files that should be found. The UC4 administrator can determine the
upper limit in the UC4 Variable UC_HOSTCHAR_DEFAULT using
the key MAX_FILE_COUNT.

Check
Timer control

The possible settings in these two areas comply with the settings that
are specified in the Event tab.
The period in which a file system can be checked depends on the
settings that are made in the event area. For this reason, you can
specify the relevant options here and not in a separate tab.
The option Automatically is only displayed when an z/OS agent is
selected. The Event object now checks if the indicated file is being
closed and triggers an event.

Comments

The system checks in a pre-determined interval whether the condition that is specified in the File
System tab applies and if so, it triggers the event (such as !Process). You can define a condition in
the event area as shown below:
l
l
l

Only select a check in the first combo box (such as:PATH_FILE_COUNT > 50).
Only select a check in the second combo box (such as:FILE_STABLE within the past hour).
Select a check in both combo boxes. Both conditions must apply to have the event triggered
(such as: FILE_SIZE > 100 MB and FILE_CHANGED within the past half hour).

Note that you cannot use a combination of all conditions.


In !Process, you can use the function GET_EVENT_INFO in order to read the file name or size.
The script element GET_FILESYSTEM also supplies information about the file system.
FILE_CHANGED
The agent checks whether a particular file has been changed in the past n hours:minutes:seconds.
The file system event is processed until the first hit has been found. The first check is made as soon
as the Event object has been activated.
Selecting FILE_CHANGED has the effect that the frequency that the agent uses to check the
conditions cannot be specified in the Event object. In this case, the UC4 administrator
determines the interval in the UC4 Variable UC_HOSTCHAR_DEFAULT using the key
EVENT_CHECKINTERVAL.
For example:
FILE_CHANGED within the past three hours.
!Process is triggered if the outcome of the check is that the file has been changed within the past
three hours.

280

Chapter3 Objects

Under Windows, the creation date of a file changes when it is copied. The modification date
remains unchanged. Therefore, the Windows agent retrieves both data and uses the most recent
date for its check.
FILE_STABLE
The agent checks whether the file size has remained the same during the last n
hours:minutes:seconds. The first check is made as soon as the Event object has been activated.
You can use this option in order to react to the end of a file transfer, for example.
Selecting FILE_STABLE has the effect that the frequency that the agent uses to check the
conditions cannot be specified in the Event object. In this case, the UC4 administrator
determines the interval in the UC4 Variable UC_HOSTCHAR_DEFAULT using the key
EVENT_CHECKINTERVAL.
For example:
FILE_STABLE within the past hour.
!Process will only be triggered if the outcome of the check is that the file size has remained the
same within the past hour.
z/OS:Information on Volumes
You can use the Path entry field in order to name volumes using "VOL=Volume".
For example: "VOL=ALG*1" supplies information about all volumes that commence with ALG and
end with 1. Any characters can be used in between. In our example, they are limited to 4 characters
as the name of a volume consists of eight characters.
The closing of files can be monitored on z/OS.
The following applies for other operation systems such as UNIX, VMS and MPE:
PATH_SPACE_USED - Sum of file sizes in the specified path.

See also:
GET_EVENT_INFO
GET_FILESYSTEM
GDG support
Console Tab
The Console tab is object-type specific and it is only available in "Event" objects. It can be used
to define the conditions of particular Event types.
Object: Event
Object class: Executable object
Object type (short name): EVNT
Event type "Console" currently supports the monitoring of:
l
l
l
l
l
l

Console output in BS2000.


Console output in z/OS (Multiple Console Support - MCS).
Message queue in OS/400.
Events in SAP.
Status changes of XI communication channels.
Windows Event Viewer.

Automation Engine

281

The Event monitors the target system according to the specifications made in this tab. The script
statements and functions that are specified in the !Process tab are executed if conditions such as
the Event ID or message filter apply.
Occurring Events of type "Console" are always in the status "Sleeping."
Message filter specifications must always start with a wildcard character.

BS2000
[BS2000] [z/OS] [OS/400] [SAP] [Windows]

Description

Field/Control

Description

Event type Console


Host

Select the agent whose console output should be monitored. You can
also specify an AgentGroup.

Table
Message filter

Specify the console-output filter that should be searched.


You can use the wildcard characters "*" and "?". "*" stands for any
number of characters, "?" for one specific character.

282

Chapter3 Objects

Comments

In BS2000, you can monitor the console output. To do so, you must install the utility for the Console
UCXEB2xU. It should run parallel to the BS2000 agent.

z/OS
[BS2000] [z/OS] [OS/400] [SAP] [Windows]

Description

Field/Control

Description

Event type Console


Host

Select the agent whose console output should be monitored. You can
also specify an AgentGroup.

System name

Specify a filter for the user-defined system name that can be used to
distinguish various OS instances.
Maximum 8 digits.

OS-Name

Set a filter for the OS name as defined by IBM. Currently, it is always


"MVS."
Maximum 8 figures.

Table

Automation Engine

Job name

283

Select a filter for a job name (maximum 32 characters).


You can use the wildcard characters "*" and "?". "*" stands for any
number of characters, "?" for one specific character.

Message filter

Specify a filter for the console output (for example, *VOL01D*).


You can use the wildcard characters "*" and "?". "*" stands for any
number of characters, "?" for one specific character.

Comments

In z/OS, you can monitor the console output (Multiple Console Support - MCS). To do so, you must
install the Event Monitor UCXEMxx and start it with a corresponding entry in the z/OS agent's INI
file.

OS/400
[BS2000] [z/OS] [OS/400] [SAP] [Windows]

Description

Field/Control

Description

Event type Console


Host

Select the agent whose message queue should be monitored. You can
also specify an AgentGroup.

284

Chapter3 Objects

Message type

Specifies the message type.


Allowed values:
"01" - Completion
"02" - Diagnostic
"04" - Informational
"05" - Inquiry
"06" - Sender's copy
"08" - Request
"10" - Request with prompting
"14" - Notify (handled exception)
"15" - Escape (handled exception)
"16" - Notify (unhandled exception)
"17" - Escape (unhandled exception)
"21" - Reply, not validity checked
"22" - Reply, validity checked
"23" - Reply, message default used
"24" - Reply, system default used
"25" - Reply, from system reply list

Severity

Define the severity of the message.


Allowed values: "0" to "99"

Table
Message ID

Specify a filter for the message ID.


You can use the wildcard characters "*" and "?". "*" stands for any
number of characters, "?" for one specific character.

Message filter

Specify a filter for the message text.


You can use the wildcard characters "*" and "?". "*" stands for any
number of characters, "?" for one specific character.

Comments

In OS/400, you can monitor message queues. Use the OS/400 agent's INI file to define the
particular message queue that should be monitored.

SAP
[BS2000] [z/OS] [OS/400] [SAP] [Windows]

The SAP Console Event distinguishes several data sources.

Automation Engine

285

ABAP Event History

Description

Field/Control

Description

Event type Console


Host

Select an agent that is connected to the SAP system and whose


Events should be monitored. You can also specify an AgentGroup.

Data source

The ABAP Event history serves as the data source.

Table
Event ID

Filter for the name of the SAP ABAP Event.


You can use the wildcard characters "?" and "*". "?" for one specific
character, "*" stands for any number of characters.

Event Parameter

Filter for the parameter of the SAP ABAP Event.


You can use the wildcard characters "?" and "*". "?" for one specific
character, "*" stands for or any number of characters.

Event Server

Filter for the batch-server name of the SAP ABAP Event.


You can use the wildcard characters "?" and "*". "?" for one specific
character, "*" stands for or any number of characters.

Comments

XBP 3.0 is required in order to monitor SAP Events via the Event type "Console."
The XBP interface version that is used must be specified in the SAP agent's Connection object.

286

Chapter3 Objects

The agent periodically polls the SAP system for occurred SAP Events and reports them to the
active Console Events. The UC4 administrator can define the required interval in the UC4
Variable UC_HOSTCHAR_DEFAULT, key JOB_CHECKINTERVAL.
Note that as of version 8.00A, the SAP agent always uses the XBP interface. This includes that the
SAP criteria profiles must be adjusted in order to ensure that the selected triggered events are
logged in the Event History. Otherwise, the Console Event cannot react.
Use the transaction SM64 in order to create a criteria profile for the Event history.
The script function GET_EVENT_INFO supplies additional information about the SAP event.

Java Event History

Description

Field/Control

Description

Event-type Console
Host

Select an agent that is connected to the SAP system and whose


Events should be monitored. You can also specify an AgentGroup.

Data source

The Java Event History serves as the data source.

Table
Event Type

Selection of a filter for the type of SAP Java Scheduler Event.


The drop-down menu's content is retrieved from the UC4 Variable UC_
SAP_XJBP_EVENTTYPES which is available in the system client 0.
The Variable object is supplied with all possible Event types and should
not be changed by users.

Automation Engine

Event Parameter

287

Filter for the parameters of the SAP Java Scheduler Event.


You can use the wildcard characters "*" and "?". "?" stands for exactly
one, "*" for any number of characters.

Event Additional
Parameter

Filter for additional parameters of the SAP Java Scheduler Event.


You can use the wildcard characters "*" and "?". "?" stands for exactly
one, "*" for any number of characters.

Comments

The agent periodically polls the SAP system for occurred SAP Events and informs the active
Console Events. The UC4 administrator can define the interval in the UC4 Variable UC_
HOSTCHAR_DEFAULT, key JOB_CHECKINTERVAL.
The script function GET_EVENT_INFO supplies additional information about the SAP Event.

XI Communication Channels

Description

Field/Control

Description

Event type Console


Host

Select an agent which is connected to the XI system whose


communication channels should be monitored. You can also specify an
AgentGroup.

288

Chapter3 Objects

Login

Name of a Login object which contains the XI object.


Use different Login objects for SAP and XI systems if both are installed
on the same host. Otherwise, the Login entry would not be unique.
The Login object overrules the User specified in the Connection object.

Data source

XI communication channels serve as data source.

Table
Channel

Filter for the communication channel.


You can use the wildcard character "*".

Partner

Filter for the partner.


You can use the wildcard character "*".

Service

Filter for the service.


You can use the wildcard character "*".

State

Filter for the status.


Possible values: "ERROR", "OK", "INACTIVE", "UNKNOWN" and
"UNREGISTERED"

Activation state

Filter for the activation status.


Possible values: "STARTED" and "STOPPED"

Comments

The filter list describes the nominal status of one or several communication channels. An Event is
triggered for each communication channel that
l
l

Does not meet the nominal status when the Event object starts
Switches to a different status (regardless if nominal status or different).

No Event is triggered if the communication channel meets the nominal condition when the Event
object starts.
The script function GET_EVENT_INFO supplies additional information about the XI communication
channel.

Windows
[BS2000] [z/OS] [OS/400] [SAP] [Windows]

Automation Engine

289

Description

Field/Control

Description

Event type Console


Host

Select the agent whose Event Viewer should be monitored by


Windows. You can also specify an AgentGroup.

Type

Select the log that should be monitored from the list (system, security,
application, directory service, DNS server or File Replication Service).

Source

Determine the Windows Event's source.

Category

Enter the Windows Event's category.


The category is defined by the source that has logged the Event. It
combines Events of the same categorical value. Category names must
be numbers.
No particular category is filtered if value "0" has been specified.

Table
Event-ID

Enter the Event ID of the Windows Event.


No particular event ID is filtered if value "0" has been specified.

Type

Select the Windows Event's type from the list.

User

Specify a User to whom the Windows Event should be assigned.

Message filter

Specify a filter for the description of the Windows Event.


You can use the wildcard characters "*" and "?". "*" stands for any
number of characters, "?" for one specific character.

290

Chapter3 Objects

Comments

In Windows, you can monitor the Windows Event Viewer. The first step that is required in order to
react to particular messages is to analyze the Event Viewer. The required entries are provided in the
Event details. You can open them by double-clicking a line in the Windows Event Viewer.
In Microsoft Windows, message texts consist of static and variable parts. The Event only supplies
the variable message parts. If you use a message filter, the Event only reacts if variable message
parts are searched. Refer to the document that describes the script function GET_WIN_EVENT in
order to obtain more detailed information about querying a variable message text.
See also:
GET_CONSOLE
GET_WIN_EVENT
Database Tab
The Database tab is object type-specific and is only available in Event-type objects. It is
displayed in Database Events and includes the definition of two values that should be compared
to each other.
Object: Event
Object class: Executable object
Object type (short name): EVNT

The above tab shows three sections. Enter the first value in the section "Value 1" and the second
one in "Value 2". In the "Operator" section, select the operator that should be used in order to
compare the values as shown below:
Value1 Operator Value2
Operators:

Automation Engine
l
l
l
l
l
l
l

291

> (greater than)


< (less than)
= (equal to)
<> (not equal to)
>= (greater than or equal to)
<= (less than or equal to)
pattern ("Value 1" includes the values that are specified in "Value")

The following sources are available for values:


l
l
l

SQLquery
Statistical value
Variable object

The sources can be combined as you need them. For example, you can compare a value of an SQL
query with a Variable object, or a statistical value with an SQL query, or two values of different or
the same Variable object(s).
Time stamps of SQL queries and Variable objects are converted to the format "YYYY-MM-DD
HH:MM:SS".
Note that fractional digits are truncated. Read the values in !Process by using the script function
GET_EVENT_INFOand multiply them with 10n in order to move the commas. Subsequently,
the values in !Process are ready to be compared.
Examples:
123.44 * 100 (corresponds to 102) =12344
123.5555 * 10000 (corresponds to 104) = 12355555

SQL query

The value is retrieved from an SQL query.


SQL queries can only be processed by a Database Agent.
Field/Element

Description

SQL

SQL query.
Max. 4096 characters

Host

Name of the Database Agent that processes the SQL query.


AgentGroups cannot be selected in Database Events.

Login

Name of the Login object that is used to log on to the database.

292

Chapter3 Objects

Server

Name of the computer on which the database is available.


Format: Server name:Port
For example: PC01:2281
The default ports are:
l
l
l
l

MSSQLServer:1433
Oracle: 1521
DB2:50000
MySQL: 3306

Do not complete this field if the query should be made in an Oracle


database in RAC.
Database

Name of the database.

Only Microsoft
Access:file name

Path and file name of the MS Access database.

Click the button that shows three dots next to the text field SQL . An easy-to-handle editor opens in
which you can enter the SQL query. Fill in the text fields Server, database etc., and the right editor
section shows the corresponding database structure.
You can use object variables within an SQL query.
The Database Event does not abort if the SQL query is incorrect.
Note that some databases distinguish uppercase and lowercase characters.
Result:A value
If the SQL query returns a particular value, this value will be used.
Result: No value
!Process is not processed.
Result:NULL
The Database Event converts NULL to the string "NULL".
Result:Several values or data records
If the SQL query returns more than one value, the first value of the first data record is used.
Example of an SQL result:
Last name

First name

Location

Smith

John

Seattle

Green

Peter

New York

The Database Event uses the value "Smith".


Reading the results using GET_EVENT_INFO
The script element GET_EVENT_INFOcan be used to access the values of the SQL query in
!Process.
Note that the Database Event only reads the first 10 columns. Column contents that exceed 255
characters are truncated.

Automation Engine

293

Statistical value

The value is directly specified.


Field/Element

Description

Statistical value

Any value.
Max. 40 characters

Variable object

The value is retrieved from a Variable object.


Field/Element

Description

Variable object

Name of a static or dynamic Variable object

Key column (in static


Variable objects)
First value column (in
dynamic Variable
objects)

Value of the Key column or the first value column in order to determine
the Variable object's entry that should be used.
The value is retrieved from the Value 1 column (in static variables) or
the first value column (in dynamic variables).

The Database Event is not activated if the key does not exist in the specified Variable object.
If the key does not include a value, the reaction depends on the setting that has been defined in the
Variable object's Attributes tab. The system either logs an error message or uses the initial values.
The Database Event does not abort.

See also:
GET_EVENT_INFO
Runtime tab
The Runtime tab is an object-specific tab that is available in every executable object in UC4. It
can be used to specify parameters for a task's runtime behavior.

294

Chapter3 Objects

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluating the estimated runtime (Runtime Evaluation)
Monitoring the maximum runtime (Runtime Monitoring)
Monitoring the minimum runtime (Runtime Monitoring)
Reaction to runtimes that have been exceeded or not reached (Runtime Monitoring).

Description

Field/Control

Description

Definition for
ENDED_OK
Return Code <=

The maximum return code for a task's normal end.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.

Else execute

You can execute an object if the task does not end with a return code
that lies within the ENDED_OK area.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

End status for


Forecast
Estimated runtime
(ERT)

A selection list for the end status that this task should return when you
make a forecast calculation.

Automation Engine

Current ERT =

295

Displays the task's next estimated runtime (ERT).


You can enter the estimated runtime here. This value applies until the
ERT calculation is made after the task's next execution.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" is used to calculate the
estimated runtime.

Fixed value

A fixed value is entered as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the real runtime.
Possible selection: Average, linear regression, maximal value

from the last ... runs

The number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

The value in percent for an upward ERT correction.

Differences > ... % are You can ignore possible huge differences to of actual runtimes.
ignored
Upper limit (in percent) for actual runtimes that should be included in
estimated runtime calculation.
but do use ... runs at
least

The number of past runs that should be considered regardless of


differences. Allowed value: 0 to 25.

Show Chart

A button that can be clicked in order to update the estimated runtime


according to the current settings. A diagram displays in a separate
window; it shows the last 25 ERT/RRT runs. Windows that are already
open are updated.

Reset Values

A button that can be used to delete the real and estimated runtimes.
A security query displays, confirm it and all saved runtimes are cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's activation is
used as the maximum runtime. You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

296

Chapter3 Objects

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

A number of days and time of day are set for when the task must be
finished. The starting point for the calculation of the date is the real date
of the task. You must specify an action (ELSE condition) that applies if
the maximum runtime has been exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as its maximum runtime. You must specify an action (ELSE condition)
that applies if the maximum runtime has been exceeded.

- ... %

When you select the ERT, you can also specify a correction value in
percent for the maximum runtime. The value you determine is added to
the estimated runtime.

Else
Cancel / Quit

If you activate this check box is activated, the task is canceled or quit if
the runtime has been exceeded. Only available if the maximum runtime
is monitored.

Execute

If you activate this check box, you determine that the task is executed.
You can directly select the executable object. If the runtime is
exceeded or not reached, the specified task is executed. Only available
if the runtime is monitored.

Comments

A different type of runtime monitoring can be used for tasks that have been activated in a Workflow
or using the object "Schedule." You can define it in the properties of the relevant object (Runtime
tab). The setting that are defined within the context of a Workflow or Schedule overrule the settings
that have been defined in the task itself.
You can also assume these setting for runtime monitoring in the Workflow or Schedule. This is the
default setting.

See also:
Runtime Evaluation
Runtime Monitoring

Automation Engine

297

Variables & Prompts Tab


The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: Event
Object class: Executable object
Object type (short name): EVNT
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

298

Chapter3 Objects

Only defined variables

The object only obtains the object variables of the superordinate


task that have been defined in its "Variables & Prompts" tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the "Variables & Prompts"
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.
Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the particular PromptSet element is not a text field, click its
labeling.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually

Automation Engine

299

enter the predefined variables, or select them in a dialog that you call using the
button in the
toolbar.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs when the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available
when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a Workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a Workflow because you can only
start a rollback process within a Workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but processed using
the Automation Engine.
Backup actions are will always be processed before the object runs and Rollback actions can only
be started via Workflows. For more information, see the related documentation.

300

Chapter3 Objects

Field/Element

Description

Enable Rollback

Use this to activate or deactivate the rollback settings..


When this option is deactivated, all the fields of this tab are
disabled.

Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.ed in the Backup object depend on the
relevant task's processes and actions. Note that you must
define them manually. For example, if you use the current
object to update your database, it is useful to backup the
database using the Backup object.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

Automation Engine

Rollback

301

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

Process Tab
The Process tab is a object-type-specific tab in which processing commands are stored in the
script language of UC4. The processing commands are processed at the time the Event is
activated.
Object: Event
Object class: Executable object
Object type (short name): EVNT

Description

The script is either processed at Event activation or start. This point in time depends on the setting
"Generate at runtime" which can be defined in the Attributes tab.

302

Chapter3 Objects

Processing commands which should be executed only at the occurrence of an Event must be
entered in the"! Process" tab.
An Event's script cannot contain JCL lines.

See also:
Script Editor
About UC4 Scripts
SampleCollection
! Process Tab
The ! Process tab is an object type-specific tab in which processing commands are stored in the
script language of UC4.The commands in this script are processed/executed when the event
occurs.
Object: Event
Object class: Executable object
Object type (short name): EVNT

Description

The "! Process" is processed every time the Event occurs.


An Event's "! Process" cannot contain JCL lines.

See also:
Script Editor
About UC4 Scripts
SampleCollection

Automation Engine

303

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all UC4
objects.
All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Imported objects also have their own Documentation tabs.

The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

304

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element

Add node after

Inserts a new element after the highlighted element

Add node before

Inserts a new element before the highlighted element

Add node child

Creates a new element one level below the highlighted element

Duplicate node

Duplicates the highlighted element and its attributes and contents

Delete node

Deletes the highlighted element irrevocably

You can create one or more attributes for each individual element. Basically, there are two different
types: Text and Enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries it should include.

Automation Engine

305

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if upper or lower case letters are used.

Structured documentation can be read with specific script elements (XML_*).

Event - Execution

Type-Specific Features

When you run an event, the system distinguishes event recognition and event handling.
Event recognition
After activation and start, the Event is in the condition SLEEPING. The system now permanently
monitors whether an Event occurs as previously specified. Event recognition distinguishes real
events and polling events.
l

Real Events:
A signal is generated if a real Event occurs. The responsible technical unit recognizes this
signal and creates a UC4 Event.
Real Events are messages on a BS2000 Console, SNMP Traps, UC4 internal signals
(Agent start, blocking status of a Workflow) or user signals via an interface, for example.

Polling Events:
No signal is generated if a polling Event occurs. Instead, the system periodically checks if an
Event of this type has occurred.
Polling Events are the presence or absence of particular files, the workload of the file

306

Chapter3 Objects
system, command results (analyzes of values and status information of the OS) or SNMP
values, for example.

Events can have values which means that a particular value is monitored. The Event is triggered as
soon as this value exceeds a defined limit. Events without values have no values to be monitored.
The occurrence of a defined condition represents the Event.
Event handling
Event handling is the processing of the !Process tab.
The post script of an Event is not processed at its activation time. It is processed when the defined
condition occurs. Active Event objects consider modifications made in !Process. As there is no
UserInterface available at that time, the same limitations apply as for Events that have been
generated at runtime.
Stop execution
A running Event object can be stopped and restarted at any time.
Handling
Right-click the object
Select Stop / Go in the context menu.
in the Activity Window.
End status
A normally ended Event ends on status ENDED_OK, a canceled object ends on status ENDED_
CANCEL.
A FileSystem Event which ends because of its runtime settings without the conditions having
occurred, it obtains the status ENDED_TIMEOUT.
Event - Restart

Type-Specific Features

Currently, the script is not processed when the Event is restarted.


Event Attributes
The following overview lists the attributes of an Event object and describes their functions,
allowed values and ways of modification.
The attributes of an event can only be written in the Process tab (when the event is activated).
The attempt to read or write an attribute that does not belong to the particular event type has the
effect that script processing will abort.

Attributes for all Event Types

Tab

Attribute

Description

Value

Access
Via:

Automation Engine

307

ARCHIVE_
KEY1

Archive key 1

User-defined,
limited to 60
characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
limited to 20
characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

DATE_
CREATED

Created on

The time stamp in


the format "YYYYMM-DD
HH:MM:SS"
If not available:
"0000-00-00
00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

The time stamp in


the format "YYYYMM-DD
HH:MM:SS"
If not available:
"0000-00-00
00:00:00"

GET_ATT

DCMODUS

Mode UserInterface

"Y" - UserInterface
active
"N" - no
UserInterface active

GET_ATT

EVENT_
REPEAT

Event - Execution

"R" - Repeatedly
"S" - Single run
"F" - Until the first hit
is found.

GET_
ATT,
:PUT_
ATT

308

Chapter3 Objects

EVENT_TYPE,
EVENT_TYP

Event type

"CN" - Console
Event,
"DS" - Database
Event with time,
"DT" - Database
Event with interval
"FA" - File System
Event with
automatic
monitoring,
"FS" - File System
Event with time,
"FT" - File System
Event with interval
"TS" - Time Event
with time,
"TT" - Time Event
with interval

GET_
ATT,
predefined
variable

GEN_AT_
RUNTIME

Generate at runtime

"Y" - Yes, "N" - No

GET_ATT

GROUP

Group

The name of a
group,
limited to 200
characters.
" " - for immediate
start

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

INT_
ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
limited to 16
characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

LAST_DATE

Last used on

The time stamp in


the format "YYYYMM-DD
HH:MM:SS"
If not available:
"0000-00-00
00:00:00"

GET_
ATT,
predefined
variable

LAST_USER

Last used by

The name of the


User object,
limited to 200
characters.

GET_
ATT,
predefined
variable

Automation Engine

309

MAX_
PARALLEL_
ELSE

Parallel running Tasks Else

"WAIT" - The event


waits until
processing is
possible.
"ABEND" - Event
processing is
interupted.

GET_
ATT,
:PUT_
ATT

MAX_
PARALLEL_
TASKS

Parallel running Tasks Max.

User-defined,
any value between
"0" and "99999".

GET_
ATT,
:PUT_
ATT,
predefined
variable

MAX_
RETCODE

ENDED_OK until
returncode

User-defined,
limited to 11
characters.

GET_
ATT,
:PUT_
ATT

MODIFY_
COUNT

Modified

The number of
object
modifications.

GET_ATT

OBJECT_
NAME

Object name

User-defined,
maximum 200
characters

Change
Program

OBJECT_
TITLE

Title

User-defined,
limited to 255
characters.

GET_
ATT,
:PUT_
ATT,
predefined
variable

PSCRIPT

The string in the Process tab of the event


should be changed.

Change
Program

QUEUE

Queue

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

SCRIPT

Modification of the !Process tab of events.

Change
Program

SYNC_
OBJECT

Assigned Sync object

Change
Program

The name of a
queue,
limited to 200
characters.

The name of a Sync,


limited to 200
characters.

310

Chapter3 Objects

TIMEZONE

TimeZone

User-defined
limited to 8
characters.

GET_
ATT,
:PUT_
ATT,
predefined
variable

UC4_
PRIORITY

UC4 Priority

User-defined,
any value between
"0" and "255".

GET_
ATT,
:PUT_
ATT,
predefined
variable

USAGE_
COUNT

Last used

The number of
object usages.

GET_
ATT,
predefined
variable

USER_
CREATED

Created by

The name of the


User object,
limited to 200
characters.

GET_
ATT,
predefined
variable

USER_
MODIFIED

Changed by

The name of the


User object,
limited to 200
characters.

GET_
ATT,
predefined
variable

Attributes for the Event Type "Time Event"

Tab

Attribute

Description

Value

Access
Via:

EVENT_
FIRST_
EXEC

First run

"N" - After the time has


expired
"S" - Immediately

GET_
ATT,
:PUT_
ATT

EVENT_
START_
AFTER_
SCH

Start after scheduled time

"N" - Do not run


"Y" - Run

GET_
ATT,
:PUT_
ATT

EVENT_
TIME

Timer control

MMMM - Minutes in
interval
HHMM - Start time

GET_
ATT,
:PUT_
ATT

Attributes for the Event Type "File System"

Note that hosts can only be changed within a platform (such as WIN01 to WIN02). Script
processing will abort if an attempt is made to change a BS2000 host to a UNIX host.

Automation Engine

Tab

311

Attribute

Description

Value

Access
Via:

EVENT_
COMP_
TYPE

Event - Comparing symbol

">" - Greater than


"<" - Less than
"=" - Equal to
"<>" Not equal to
">=" Equal to or
greater than
"<=" Equal to or
less than

GET_
ATT,
:PUT_
ATT

EVENT_
COMP_UNIT

Event - Unit

"HOST_
SPECIFIC" Complies with the
settings in the
target system,
"BYTE" - Byte,
"KB" - Kilobyte,
"MB"- Megabyte,
"GB" - Gigabyte,
"TB" - Terabyte

GET_
ATT,
:PUT_
ATT

EVENT_
COMP_
VALUE

Event - Comparative value

User-defined,
any value between
"0" and
"99999999".

GET_
ATT,
:PUT_
ATT

EVENT_
FILE_PATH

Path

User-defined,
limited to 255
characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable

EVENT_
FIRST_
EXEC

First run

"N" - After time is


expired,
"S" - Immediately

GET_
ATT,
:PUT_
ATT

EVENT_
START_
AFTER_SCH

Start after scheduled time

"N" - Do not run,


"Y" - Run

GET_
ATT,
:PUT_
ATT

312

Chapter3 Objects

EVENT_
CHECK_
METHOD1

Event - Type of monitoring

"FILE_SIZE" - file
size
"PATH_FILE_
COUNT" - Number
of files
"PATH_SPACE_
ALLOCATED" Allocated hard
drive space
"PATH_SPACE_
USED" - Used
hard drive space,
"PATH_SPACE_
UNUSED" Available hard
drive space

GET_
ATT,
:PUT_
ATT

EVENT_
CHECK_
METHOD2

Event - and

"FILE_
CHANGED" - Last
modification time
of a size
"FILE_STABLE" File-size
modification

GET_
ATT,
:PUT_
ATT

Setting one of
these two
values has the
effect that the
following
attributes are
automatically
filled with the
suitable values:
EVENT_REPEAT
= "F"
EVENT_FIRST_
EXEC = "S"
EVENT_TYPE =
"FT"
EVENT_
CHECK_
WITHIN

Event- within

HHHHMMSS period

GET_
ATT,
:PUT_
ATT

EVENT_
CONSIDER_
ALL

Event- Consider All Files

"Y" - Yes,
"N" - No

GET_
ATT,
:PUT_
ATT

EVENT_
INCLUDE_
SUB_DIR

Event- Include subdirectories

"Y" - Yes,
"N" - No

GET_
ATT,
:PUT_
ATT

Automation Engine

313

EVENT_
TIME

Timer control

MMMM - Minutes
at interval
HHMM - Start time

GET_
ATT,
:PUT_
ATT

HOST

Host

The name of an
agent,
limited to 32
characters.

GET_
ATT,
:PUT_
ATT,
Change
Program

Attribute for the Event Type "Database"

T Attrib
a ute
b

Description

Value

Access
Via:

OPE
RATO
R

Operator

">" - Greater than


"<" - Less than
"=" - Equal to
"<>" Not equal to
">=" Greater than or equal to
"<=" Less than or equal to
"CONTAINS" - Contains

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
MSA
CCE
SS_
FILE

Value 1 - only
Microsoft Access: file
name

The path and file name of the MS Access


database,
limited to 255 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
SOU
RCE

Value 1 - source

"SQL" - SQLquery
"STATIC"- Statistical value"VARA"Variable object

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
SQL_
AGE
NT

Value 1 - host

The name of a Database Agent,


limited to 32 characters.

GET_ATT,
:PUT_ATT

314

Chapter3 Objects

OPE
RAN
D1_
SQL_
DATA
BAS
E_
NAM
E

Value 1 - database

The database name,


limited to 30 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
SQL_
LOGI
N

Value 1 - Login

The name of a Login object, limited to 200


characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
SQL_
SERV
ER_
NAM
E

Value 1 - Server

The name of the database computer,


limited to 30 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
SQL_
QUE
RY

Value 1 - SQL

SQL statement,
limited to 255 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
STAT
IC_
VALU
E

Value 1 - statistical
value

Statistical value,
limited to 40 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D1_
VAR
A_
KEY
WOR
D

Value 1 - validity key

The name of a key, limited to 200


characters.

GET_ATT,
:PUT_ATT

Automation Engine

315

OPE
RAN
D1_
VAR
A_
NAM
E

Value 1 - Variable
object

The name of a Variable object, limited to 200


characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
MSA
CCE
SS_
FILE

Value 2 - only
Microsoft Access: file
name

The path and file name of the MS Access


database,
limited to 255 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
SOU
RCE

Value 2 - source

"SQL" - SQLquery
"STATIC"- Statistical value
"VARA"- Variable object

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
SQL_
AGE
NT

Value 2 - host

The name of a Database Agent, limited to 32


characters

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
SQL_
DATA
BAS
E_
NAM
E

Value 2 - database

Database name, limited to 30 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
SQL_
LOGI
N

Value 2 - Login

The name of a Login object, limited to 200


characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
SQL_
QUE
RY

Value 2 - SQL

SQL statement,
limited to 255 characters.

GET_ATT,
:PUT_ATT

316

Chapter3 Objects

OPE
RAN
D2_
SQL_
SERV
ER_
NAM
E

Value 2 - Server

The name of the database computer,


limited to 30 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
STAT
IC_
VALU
E

Value 2 - statistical
value

Statistical value,
limited to 40 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
VAR
A_
KEY
WOR
D

Value 2 - validity key

The name of a key,


limited to 200 characters.

GET_ATT,
:PUT_ATT

OPE
RAN
D2_
VAR
A_
NAM
E

Value 2 - Variable
object

The name of a Variable object, limited to 200


characters.

GET_ATT,
:PUT_ATT

Attributes for Event Type "Console"

Tab

Attribute

Description

Value

Access
Via:

EVENT_
CATEGORY

Category
(only Windows)

User-defined,
any value
between "0" and
"99".

GET_
ATT,
:PUT_
ATT

When reading the


attribute, the
system returns a
16-figure value
with leading
zeros.

Automation Engine

317

EVENT_
SOURCE

Source
(only Windows)

User-defined,
limited to 32
characters.

GET_
ATT,
:PUT_
ATT,
via script
variable

EVENT_
SUB_TYPE

Type
(only Windows)

Monitoring the
event viewer of
Windows

GET_
ATT,
:PUT_
ATT

"SYSTEM" System log


"SECURITY" Security log
"APPLICATION"
-Application log
"DIRECTORY_
SERVICE" Directory service
log
"DNS_SERVER"
- DNS Server log
"FILE_
REPLICATION_
SERVER" - File
replication service
log
HOST

Host

The name of an
agent,
limited to 32
characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

MSG_
SEVERITY

Severity
(only OS/400)

User-defined,
any value
between "0" and
"99".

GET_
ATT,
:PUT_
ATT

MSG_TYPE

Message type
(only OS/400)

User-defined,
any value
between "1" and
"25".

GET_
ATT,
:PUT_
ATT

See also:
Event
Attributes
GET_ATT function
:PUT_ATT statement
UC4.DB Change

318

Chapter3 Objects

3.2.12 FileTransfer
FileTransfer
A FileTransfer enables you to exchange files in various ways betweensystems and system
platforms.
Object class: Executable object
Object type (short name): JOBF
Creating FileTransfers
FileTransfers transfer one or several files.

Procedure

1. Click the button in the toolbar and a window listing all the available object types opens.
Select type FileTransfer (JOBF).
2. Assign an appropriate name and open the FileTransfer object. Then click the FileTransfer
tab.
3. In the upper area, all information required about the computer on which the file to be
transferred is stored can be indicated. The use of wildcards facilitates that several files can
be sent with one FileTransfer object.
4. The lower area can be used to specify all information about the computer to which the file(s)
should be sent.
5. Use the optional settings of the Runtime tab if the execution of the FileTransfer requires
monitoring.
6. UC4 script elements can be stored in the Process tab.
7. The time of script generation can be specified with the option Generate at runtime
(Attributes tab). If this option is activated, the script will not be executed at object activation
but rather when it is started. These can be two different points in time (e.g. when the object is
executed by a Workflow).
8. FileTransfers are executable objects.

Various other settings are possible in the FileTransfer object. Details are found in the
documentation about the individual tabs.
Header tab
The Header tab is a general tab that is available in every UC4 object.

Automation Engine

319

Description

Field/Control

Description

Header
Title

You can define object titles here. This title should include a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who has last modified this object including the date
and time. The number of times the object has been modified is
displayed to the right.

Last used

Indicates user, date and time regarding the most recent object usage.
The number of times that the object has been used is displayed to the
right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

320

Chapter3 Objects

Archive keys

Two keywords of your choice can be specified in all executable objects


and in Sync objects. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects.

Default (UC_
CLIENT_SETTINGS)

If you select this option, the reports that the UC4 administrator has
defined in the UC4 Variable UC_CLIENT_SETTINGS using the EXT_
REPORTS key are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions that should be taken in this tab if you want to make use of this
possibility.

The Sync objects are checked one after the other when the task starts. The UC4 Automation
Engine tries to use the Sync object of the first line by calling the start action. If this is not possible
because this is not allowed by the Sync object's current condition, the task waits, aborts or is
skipped. The type of reaction depends on the Else condition defined in the tab's last column. If
"wait" has been specified, the task waits until it can use the Sync object with the start action. Then

Automation Engine

321

the UC4 Automation Engine checks the Sync object in the next line etc. The task starts as soon all
Sync objects could successfully be used. Depending on the task's end status, either an abend or
end action is processed.
Up to 500 Sync objects can be specified.
All Sync objects must not include a total of more than 5000 rules. Rules are defined actions that
are directly entered in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Due to this task allocation, it can take several seconds until a Sync is released after a
task has ended. In this case, the report entry includes a time stamp that shows a later time than
the task has ended. Such delays occur when the primary's work load is high or if it is processing
lots of Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions that have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object that should be used to synchronize the task.

Start action

Defines the action that should be taken when the task starts. If this is
not possible because of the Sync's status, the Else condition becomes
effective.

Abend action

This action is processed if the task aborts.

End action

This action is processed if the task ends successfully.

Else

You can define here what should happen to the task if the start action
cannot be executed:
l

l
l

The task should wait until the start action can be executed
(WAIT).
The task aborts (ABEND).
The task is skipped (SKIP).

See also:
Sync
Attributes Tab
The Attributes tab is object type-specific and is only available in "FileTransfer" objects. All
settings that are necessary to execute a FileTransfer are defined in this tab.
Object: FileTransfer
Object class: Executable object
Object type (short name): JOBF

322

Chapter3 Objects

Contents

Field/Control

Description

Attributes
Group

If the FileTransfer should be started by a Group, you can select this


Group here. If there is no entry, the FileTransfer is activated
immediately.
Note that the entry that is specified here is not considered if the
FileTransfer starts through a Workflow, a Schedule or as a recurring
task.

Queue

Selection of a Queue object in which the FileTransfer should be


processed. The FileTransfer automatically starts in the Client Queue
(object name: CLIENT_QUEUE) if nothing has been specified in this
field.

Int. Account

Specification of an internal account.


Contents do not affect the UC4 system's internal processing. You can
access the attribute "Int. Account" with script elements and integrate it
in your processes.

Consumption ...
(Resources)

Resources that are consumed during the execution.


Allowed values: "0" to "99999"
Default value: 0
The resource value that the UC4 administrator has defined with the
key "WORKLOAD_DEFAULT_FT" in the UC4 Variable UC_
SYSTEM_SETTINGS is used if value "0" is selected.

Automation Engine

323

UC4 Priority ... (0-255) Priority that should be used to execute this FileTransfer in UC4.
Allowed values: 0 to 255
Default value: 0
The priority that the UC4 administrator has specified in the UC4
Variable UC_CLIENT_SETTINGS with the key "TASK_PRIORITY" is
used if you select value "0".
TimeZone

TimeZone that should be used.

Attribute Dialog

If this check box is selected, a dialog will be displayed at activation in


which you can modify the attributes for the current execution of the
FileTransfer.

Generate at runtime

Select this check box if the object should not be generated at activation
time but at runtime.

Tasks running
parallel
Max ...

Setting that defines the maximum number of parallel executions for this
FileTransfer.
Allowed values: 0 to 99999
Default value: 0 (no limit on tasks running parallel)
Examples:
Max. "1" - At any time, not more than one FileTransfer execution must
be available.
Max. "2" - At any time, not more then two active FileTransfer
executions must be available.
etc.

Else: Wait Abort

Instruction that defines how this FileTransfer should be handled if the


execution exceeds the specified maximum number of tasks that can
run at the same time.
Wait = The FileTransfer waits until execution is possible.
Abend = The FileTransfer is interrupted.

Deactivate autom.
when finished

The Workflow's settings for automatic deactivation apply for


FileTransfers that are processed as part of this Workflow. These
settings overrule the settings of subordinate tasks.
If the Activity Window includes many tasks that are not
automatically or manually deactivated when they are finished, this
can negatively affect performance and the Activity refresh cycle.

No

The FileTransfer is not automatically deactivated and remains visible in


the Activity Window after it has been executed.

If the first program run


has error-free ended

The FileTransfer is automatically deactivated after its successful


execution. Interrupted FileTransfers remain visible in the Activity
Window and must be deactivated manually.
You can additionally specify a particular status for the error-free
execution and a time delay for de-activation. Do so by using the fields
Error-free status and/or Time delay ... Minutes.

324

Chapter3 Objects

After an error-free
restart

The FileTransfer is automatically deactivated after a successful restart.


Previously interrupted FileTransfers are also deactivated.
You can additionally specify a particular status for the error-free
execution and a time delay for de-activation. Do so by using the fields
Error-free status and/or Time delay ... Minutes.

Error-free status

Status that confirms a successful FileTransfer execution. If no status


is selected, the system-return codes 1900 - 1999 (ANY_OK) represent
error-free execution.

Always

The FileTransfer is always automatically deactivated after it has been


executed.
Additionally, you can specify a time delay for a deactivation in the
"Time delay" field.

Time delay ... Minutes

The FileTransfer is automatically deactivated after a specified number


of minutes. You can manually deactivate it before this time is over. The
time difference only affects FileTransfers whose execution also
resulted in an automatic deactivation.

Some of the settings that are specified in this tab can be read and modified at runtime. Attributes of
this object are accessed by using script elements. If the checkbox "Attribute Dialog" is active, the
user can influence the attributes. The script accessed the attributes subsequently.
FileTransfer Tab
The FileTransfer tab is object-type specific and in this form is only available in FileTransfer
objects. It is used to define parameters for file transfers and settings for the handling of files.
Object: FileTransfer
Object class: Executable object
Object type (short name): JOBF

Automation Engine

325

Description

Field/Control

Description

From

The source of the file transfer.

Host

Here you select the name of the agent where the file that should be
transferred is available. You can also specify an AgentGroup.
AgentGroups can either be used as the source OR as the target.
You cannot use both.

Code

Name of the CodeTable that is valid for the host.


In addition to the CodeTable objects, this combo box provides options
that can be used to transfer Unicode files. You can select the relevant
Unicode format:
l
l
l

<UTF 8>
<UCS 2BE>
<UCS 2LE>

Setting one of the above values has the effect that the code is not
converted and the selection field Code for the FileTransfer target is
grayed out.
Login

The name of a Login object.

Compression

The files are transferred in compressed form.

File

Specify the name of the source file, thereby using the directory, folder
or ID.
Partially-qualified FileTransfers: Use a filter that is composed of
wildcard characters and fixed parts of the file name instead of
specifying a complete file.
VMS
Note that the VMS agent does not resolve logical names. Directly
specify the directory and file name as otherwise, the file cannot be
found.

z/OS
The specification of z/OS files depends on the file system that you use
(USS or Host). For example:
USS file system (absolute path): /dir1/dir2/datei
USS file system (relative path): ./dir1/dir2/datei
Host file system: FLQN.DATASET.NAME
File Attributes

Additional entries for file attributes.


Note that there are platform-specific features.

326

Chapter3 Objects

Keep original file


attributes

Check this box to assume the source file(s) file attributes to the target
file(s).
Requirements:
l
l

The source and target platform must comply with each other.
The new FileTransfer protocol must be used (source and target
agent are of UC4 version 9.00A or later).

Otherwise, this option is ignored.


In BS2000, OS/400 and z/OS, you cannot overwrite the original
attributes with additional specifications in the FileTransfer object
(target). Any attempt to do so results in an error message and the
FileTransfer fails.
UC4 recommends activating this setting because the target file can
become corrupt if the attributes are not sent or modified when you
transfer text files between two OS/400 computers..
Use wildcards

FileTransfer with wildcard characters.


With this check box being activated, FileTransfers can be executed
with wildcards.

Include sub directories

A FileTransfer with wildcard characters


Check this box in order to include files in subdirectories of a
FileTransfer with wildcard characters. This is only available if both
platforms support this function and the option Use wildcards is
selected.
UC4 administrators can use the parameter WorkDirMatch= in the
INI files of UNIX agents in order to specify whether sub-directories
should be included in the search for files.

Transfer complete
subfolder structure

This is for partially qualified FileTransfers.


By default, empty folders are not considered when subdirectories are
transferred. Activate this option to include empty directories in
transfers.
Note that you can only use this setting when the option Include subdirectories is active.

Max. parallel running


transfers

FileTransfer with wildcard characters.


Set the number of files that should be transferred at the same time as a
FileTransfer that includes wildcard characters. The higher the number,
the higher the load on the participating computers. Only available if
"Use wildcards" is selected.
This setting is only relevant for the old FileTransfer protocol. It is
applied if at least one of the agents uses UC4 version 8.00A or
below. This setting is not evaluated if both agents are of version
9.00A or later.

Automation Engine

Abort at first error

327

For partially qualified FileTransfers.


Activate this check box if the FileTransfer should end after the first error
that occurs. Files that have not been transferred are ignored. With this
setting NOT being activated, the FileTransfer continues with the next
file.
FileTransfers cancelled due to this option receive the status ENDED_
NOT_OK.
This option is only relevant if the new FileTransfer protocol is used
(source and target agent are of version 9.00A or later). The old
protocol continues the FileTransfer even if the transfer of a
particular file fails.

Erase source file

Activate this check box in order to have the file deleted after the
transfer.
Note that particular rights are required under UNIX if this file should
be deleted.
A FileTransfer also ends with the status ENDED_OK if all files
have successfully been transferred but the source file could not be
deleted for some reason.

Format
Text

Activate this option button if the file is a text file.

Binary

Activate this option button if the file is a binary file.


Selecting a binary format can save you time when you transfer text
files. In this case, the text file is not changed (formatting such as
line breaks).

To

The target of the FileTransfer.

Host

Select the name of the host that should receive the file from the list box.
You can also define an AgentGroup.
AgentGroups can either be used as the source or as the target. You
cannot use a combination of both.

Code

The target of the FileTransfer.


Activate the code table from the list box that is valid for the target host.

Login

The source of the FileTransfer, name of a Login object.

File

Enter the location (directory, folder or ID) and the name of the target file.
You can also rename the file.
The following variable can be inserted in the target file name: &<FT_
SRC_HOST>. The FileTransfer replaces this variable with the
name of the file's original host.
For example: C:\temp\&<FT_SRC_HOST>_test*.txt
Partially-qualified FileTransfers: Use a filter that is composed of
wildcard characters and fixed parts of the file name instead of
specifying a complete file.

328

Chapter3 Objects

File Attributes

Additional entries for file attributes.


Note that there are platform- specific features.

File exists
Cancel

This is an option that cancels the FileTransfer if the file already exists in
the target system.

Overwrite

This is an option that overwrite the existing file in the target system.

Append

The transferred file is appended to an existing file in the target system.


Note that there are platform-specific features.

Comments

You can read and modify all settings that are specified in this tab at runtime. for this purpose, you
use script elements that access the object's attributes. A user can activate the checkbox "Attribute
dialog" in the Attributes tab in order to manipulate the attributes. In the script, the attributes are
accessed at a later point in time.

Platform-Specific Features

You can also specify file attributes for the file names of FileTransfer targets.
l
l
l
l
l
l
l
l

Agent for BS2000 - FileTransfer Support


Agent for GCOS 8 - FileTransfer Support
Agent for z/OS - FileTransfer Support
Agent - Interaction between UC4 and NSK - Execution of FileTransfers
Agent for OS/400 - FileTransfer Support
Agent for UNIX - FileTransfer Support
Agent for VMS - FileTransfer Support
Agent for Windows - FileTransfer Support

Runtime tab
The Runtime tab is an object class-specific tab which is available in every executable object in
UC4. It can be used to specify parameters for a task's runtime behavior.

Automation Engine

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluating the estimated runtime (Runtime Evaluation)
Monitoring the maximum runtime (Runtime Monitoring)
Monitoring the minimum runtime (Runtime Monitoring)
Reaction to runtimes that have been exceeded or not reached (Runtime Monitoring)

Description

Field/Control

Description

Definition for
ENDED_OK
Return code <=

Maximum return code for a task's normal end.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.
To set the return code, you can also use the script element
:MODIFY_STATE.

Else execute

You can execute an object if the task does not end with a return code
that lies within the ENDED_OK area.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

End status for


forecast

Selection list for the end status that this task should return when you
make a Forecast calculation.

329

330

Chapter3 Objects

Estimated runtime
(ERT)
Current ERT =

Displays the task's next estimated runtime (ERT).


You can enter the estimated runtime here. This value applies until the
ERT calculation is made after the task's next execution.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" is used to calculate the
estimated runtime.

Fixed value

A fixed value is entered as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the real runtime.
Possible selection: Average, linear regression, maximal value

from the last ... runs

Number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

Value in percent for an upward ERT correction.

Differences > ... % are You can ignore possible huge differences to of actual runtimes.
ignored
Upper limit (in percent) for actual runtimes that should be included in
estimated runtime calculation.
but do use ... runs at
least

Number of past runs that should be considered regardless of


differences. Allowed value: 0 to 25.

Show Chart

Button that can be clicked in order to update the estimated runtime


according to the current settings. A diagram displays in a separate
window; it shows the last 25 ERT/RRT runs. Windows that are already
open are updated.

Reset Values

Button that can be used to delete the real and estimated runtimes.
A security query displays, confirm it and all saved runtimes are cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action as an ELSE condition must be
specified which reacts when maximum runtime is exceeded..

ERT

The maximum runtime is supervised


The valid estimated runtime (ERT) at the time of the task's activation is
used as the maximum runtime. An action as an ELSE condition must
be specified which reacts when maximum runtime is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Automation Engine

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

331

A number of days and time of day are set for when the task must be
finished. The starting point for the calculation of the date is the real date
of the task. An action as an ELSE condition must be specified which
reacts when maximum runtime is exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as its maximum runtime. You must specify an action (ELSE condition)
that applies if the maximum runtime has been exceeded.

- ... %

When you select the ERT, you can also specify a correction value in
percent for the maximum runtime. The value you determine is added to
the estimated runtime.

Else
Cancel / Quit

If you activate this check box is activated, the task is canceled or quit if
the runtime has been exceeded. Only available if the maximum runtime
is monitored.

Execute

If you activate this check box, you determine that the task is executed.
You can directly select the executable object. If the runtime is
exceeded or not reached, the specified task is executed. Only available
if the runtime is monitored.

Comments

A different type of runtime monitoring can be used for tasks that have been activated in a Workflow
or using the object "Schedule." You can define it in the properties of the relevant object (Runtime
tab). The setting that are defined within the context of a Workflow or Schedule overrule the settings
that have been defined in the task itself.
You can also assume these setting for runtime monitoring in the Workflow or Schedule. This is the
default setting.

See also:
Runtime Evaluation
Runtime Supervision

332

Chapter3 Objects

Variables & Prompts Tab


The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: FileTransfer
Object class: Executable object
Object type (short name): JOBF
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Automation Engine

Only defined variables

333

The object only obtains the object variables of the superordinate


task that have been defined in its "Variables & Prompts" tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the "Variables & Prompts"
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.
Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the particular PromptSet element is not a text field, click its
labeling.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that

334

Chapter3 Objects

has the name of the related PromptSet variable. In this specific text field, you can either manually
enter the predefined variables, or select them in a dialog that you call using the
button.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs if the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications that are made in the PromptSet object's default values
do not affect the Variables & Prompts tab. The values of the PromptSet object are only
available when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a workflow because you can only
start a rollback process within a workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but are processed by
using the Automation Engine.
Backup actions will always be processed before the object is processed, and rollback actions can
only be started via workflows. For more information, see the related documentation.

Automation Engine

Field/Element

Description

Enable Rollback

Use this to activate or deactivate the rollback settings.

335

When this option is deactivated, all the fields of this tab are
disabled.
Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

336

Chapter3 Objects

Rollback

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

File Rollback

A file-based rollback is only available for Job and


FileTransfer objects that run on Windows or UNIX. In other
objects, the corresponding fields are disabled.
For a file-based rollback of Jobs, the system uses the
job's Agent, and for a file-base rollback of
FileTransfers, it uses the destination Agent.

Automation Engine

Backup

337

Specify the path or file(s) that should be stored.


If you do not specify file names, the directory's complete
content will be backed up. To include subfolders, you must
select the option Include sub-directories .
You can use the wildcard characters * and ? in the file
name. * is a placeholder for any number of characters (0 n) and ? represents exactly one character. This allows you
to select files with a certain name and ending.
Examples for Windows:
C:\temp\test.txt
C:\temp\*.txt
C:\temp\ oder C:\temp\*
C:\temp\test??.*
The specified directory or files are automatically copied to
the following directory each time before the object runs:
<Backup folder>/<Client>/<Date>/<RunID>/
You define the backup folder in the INI files of the
agents (in the [VARIABLES] section) with the Agent
Variable UC_EX_PATH_BACKUP. By default, the
system uses "..\BACKUP" (Windows) or "../backup"
(Unix) as its backup folder (on the operating system of
the files and folders that should be backed up.
For example:
To be backed up:C:\uc4\source\*.txt
Backup folder:C:\uc4\backup
UNIX: The files are not directly stored in the directory
above but in a TAR archive that uses the RunID as its
name.
Before you run the object, make sure that there is
enough local disk space for the file backup and that the
OS user has all the required rights.
The backup folder's contents are deleted in regular
intervals. You can define how long the files should be
stored and when they should be checked with the
settings BACKUP_RETENTION_CHECK and
BACKUP_RETENTION_LIFETIME. These are
available in the UC4 Variable UC_HOSTCHAR*.
If the task starts in Rollback mode, the files are copied
from the backup folder to the directory that should be
backed up.

338

Chapter3 Objects

Delete before restore

This field affects rollbacks.


If this option is active, the content of the original directory
that was used to create a backup will be deleted before the
backup folder is restored (see the description above of the
Backup field). This ensures that the destination directory
is empty before the files are copied from the backup folder
and avoids potential errors.
Subfolders will only be deleted if the option Include subdirectories is active.

Include subdirectories

Subdirectories and their contents will be included in


backup, deletion and restore processes.

Process Tab
The Process tab is a type-specific tab in which processing instructions are stored in UC4's
scripting language.
Object: FileTransfer
Object class: Executable object
Object type (short name): JOBF

Description

The script is either processed at FileTransfer activation or start. This point in time depends on the
setting "Generate at runtime" which can be defined in the Attributes tab.
A FileTransfer's script cannot contain JCL lines.

Automation Engine

339

See also:
Script Editor
About UC4 Scripts
SampleCollection
Output ScanTab
The Output Scan tab determines the filters that are used to search the report of a task and/or
external file plus the reaction to the provided result.
Output Scan tab actions will be processed before the PostProcess tab actions.
Note that the actions will always be processed regardless of the task's end status.
Login info is required for the Output Scan even if the Windows or UNIX agent's password check
is deactivated (UC_HOSTCHAR - ANONYMOUS_FT/JOB). Either the Login object that is set
in this tab in the section "Override host for FileScan" (if available) or the one that is specified in
the Attributes tab is used.

For example:
The above task refers to two Filter objects. FILTER.OUTPUT searches for the word ERROR in an
external file and FILTER.REPORT searches for a term that should be found in any case in the
report. The report is searched first because the list is processed from bottom to top.
The following table shows the possible results:
The report does not The external file
include the expected includes the word
term
"ERROR"

Return code

Alarm object

340

Chapter3 Objects

The report does not The external file


include the expected includes the word
term
"ERROR"

Return code

Alarm object

ALARM.CALL

ALARM.CALL

Description

The Action area includes a table with filter definitions.


In this table, you can select one or several Filter objects whose conditions should be checked. You
also define here whether a certain conditions must apply or not and the return code that the affected
task should obtain. Optionally, you can also specify an object that should be processed.
Note that the entries will always be processed from bottom to top.
The first entry that applies is decisive for the task's return code. Successive conditions that apply
do not affect the return code. The optional object is executed in each line in which the condition
applies.
Note that filter definitions are checked at runtime. For example, a task obtains the status
FAULT_POST_PROCESSING if the Filter object you indicate searches a report that does not
exist in the task.
Field/Element

Description

Action
Output filter

The Filter object that includes the criteria that should be applied for
searching reports and/or external files.

True/False

You can select whether the criteria that are specified in the Filter object
must apply.
"true" - yes
"false" - no

Set return code

The return code for the task.

Status Text

Any text that is used for the task's remote status when the filter
definition applies.
The remote status of task appears in the corresponding column in
the Activity Window.

Execute

The object that should be processed in reaction to the result that is


supplied by the Filter object (optional).

Pass down to dynamic


children

This option is available in SAP jobs and RemoteTaskManager objects.


It determines whether Filter objects should also apply to child tasks.
"Yes" - The search takes place in the task and its children.
"No" - The search takes place only in the task.
"Only children" - The search takes place only in the child task.

Automation Engine

341

Field/Element

Description

Override host for


Filescan (optional)

By default, this task's agent and Login object are used to access an
external file that has been defined in the Filter object. You can change
one or both entries.
In FileTransfers, the destination agent is used by default.

Host

The name of an OS or a Java agent.

Login

The name of a Login object.

Post-Process Tab
The Post Process tab is an object type-specific tab that is only available in the objects
"FileTransfer", "Job" and "RemoteTaskManager". Processing commands can be stored here in
UC4's script language.

Description

The script commands stored in this tab are processed when the FileTransfer ended or was
canceled.
An ended FileTransfer can still be controlled with post-process commands. For example, the
FileTransfer's return code and status text (the text supplied by the Job messenger in the Trailer) can
subsequently be modified. The script statement :MODIFY_STATE (which was developed for
exclusive use in the Post Process tab) defines the final ending of the FileTransfer.
Reports, for example, can be analyzed with PREP_PROCESS_REPORT. If an error is found, the
status ENDED_NOT_OK could be defined for a FileTransfer although it has already ended normally
from the "technical" point of view and vice versa. Return code "0" is assigned to canceled

342

Chapter3 Objects

FileTransfers because the fact that the FileTransfer has been canceled is irrelevant for further
processing.
With the script statement :RSET, script variables can be transferred between Process and Post
Process tabs. This script statement returns the value that has been assigned to the script variable
in the Process tab.
A FileTransfer's post script cannot contain JCL lines.
Additionally, the following script elements must not be used:
l
l
l

:PUT_ATT - Setting attributes for RemoteTaskManager generation is irrelevant.


:EXIT - Canceling script processing withreturn code > "0" is not allowed.
:STOP - Interrupting script processing is not allowed.

See also:
Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Automation Engine

343

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

344

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Partially Qualified FileTransfer


As opposed to fully qualified FileTransfers, partially qualified FileTransfers can also transfer
several files by using wildcard characters. This document describes how you can define source
and target file filters depending on the particular versions of the source and target agents.
A FileTransfer is partially qualified if one or several wildcard characters are used in order to specify
the source and target file. The option Use wildcards must also be activated.
The FileTransfer protocol is decisive for the way that wildcard characters are used:

Old FileTransfer Protocol

The old FileTransfer protocol is used if the source and/or target agent are of a UC4 version below
9.00A.
Source
To define the source file, you can use the wildcard characters * and/or ?. At least one wildcard
character must be used.
"*" stands for any number of characters (including no character), "?" for exactly one. Fixed file name

Automation Engine

345

parts and wildcard characters form a filter which is used to retrieve the files that should be
transferred.
Wildcard characters are always read from left to right. If the fixed part occurs several times in
between wildcards in the source file, the filter applies as of the position at which the fixed part first
occurs.
For example:
Source: *a*a*.txt
Name of a source file that complies with the filter: abrahamastreet.txt
In z/OS, the wildcard characters "*" and "?" must only be used once and not as the first
character.
Target:
In the target file, the wildcard character "*" must be used exactly once. It represents the source file's
complete variable part starting with its first wildcard character (? or *) and ending with its last
wildcard character (? or *).
For example:
Source: ?C_SERVER_*_01.TXT
File that complies with the filter: UC_SERVER_LOGG_01.TXT
Target: TEST_*_A.TXT
Name of the target file: TEST_UC_SERVER_LOGG_A.TXT
Source: *_SERVER_*_0?.TXT
File that complies with the filter: UC_SERVER_LOGG_01.TXT
Target: TEST_*_A.TXT
Name of the target file: TEST_UC_SERVER_LOGG_01_A.TXT

New FileTransfer Protocol

The source and target agent must be of UC4 version 9.00A or later.
Source
See old FileTransfer protocol.
Target:
To define the target file, you can use the * character as often as you like. It represents the source
file's complete variable part starting with its first wildcard character (? or *) and ending with its last
wildcard character (? or *).
Nine placeholders are additionally available that can be used to specify the target file. They refer to
a particular wildcard character (?,*) in the source file name. These placeholders are composed of the
& character and the numbers 1-9: &1, &2, &3,... &9.
The number specifies the wildcard location in the source that is addressed:
For example: Placeholder &3 is replaced by the source file name's characters that are retrieved by
the third wildcard character in the source file specification.
Starting the FileTransfer results in an error if the source file's filter includes fewer wildcards than are
addressed in the target specification. Each placeholder can be used in the target file as often as
required.
The wildcard character "?" must not be used in target file names.

346

Chapter3 Objects

UC4 recommends using at least as many wildcards in the source and the target as are required
in order to clearly identify the file name. Otherwise, the FileTransfer tries to create several target
files of the same name in the same location. In this case, the action that is defined in the
FileTransfer setting "File exists" is executed (cancel, overwrite, append).

Example 1
The following complex example describes wildcard combinations that can be used in FileTransfers.
Source specification:a?b*c?*?d*

Source files that comply with the filter, and their variable parts:
File name

&1

&2

&3

&4

&5

&6

a1b234c05670d.txt

234

567

.txt

1b234c05670d.txt

a2b345c17891d.txt

345

789

.txt

2b345c17891d.txt

a3b456c20903d.txt

456

090

.txt

3b456c20903d.txt

Target specification:

The following target file names are created:


File name
1

234a1b234c05670d.txtb1c2341b234c05670d.txt0d.txt

345a2b345c17891d.txtb2c3452b345c17891d.txt1d.txt

456a3b456c20903d.txtb3c4563b456c20903d.txt2d.txt

Example 2

Automation Engine

347

The following example reverts the date of the source file name in the target file name.
Source specification:
*????_*.*
Source files that comply with the filter:
File name

&1

&2

&3

&4

&5

&6

&7

20110307_report.txt

2011

report

txt

20110220_overview.doc

2011

overview

doc

20110111_script.txt

2011

script

txt

Target specification:
&6_&4&5&2&3&1.&7
The following target file names are created:
File name
1

report_07032011.txt

overview_20022011.doc

script_11012011.txt

See also:
FileTransfer - Procedure
FileTransfer tab

FileTransfer - Execution

Object-Type specific Features

Exchanging data between different system platforms requires the character sets to be
converted. This is automatically done using CodeTable objects. The transfer can be structured,
thereby enabling the exchange of files with packed and binary fields in heterogeneous system
environments. All network transfers are encoded by default.
For each FileTransfer, a separate connection is established between the agents. agents for the
operating systems OS/400, Windows, Unix, z/OS,and NSK handle FileTransfers through extra
threads. As soon as a FileTransfer has ended, the corresponding connection is automatically
closed. If there are still open and unused connections, they are closed after the period of time that is
defined in the key FT_CONNECTION_TIMEOUT (UC4 Variable: UC_HOSTCHAR_DEFAULT).
The old FileTransfer protocol is used if one or both of the affected agents use UC4 version 8.00A or
earlier. In this case, only one connection is established between the agents for all FileTransfers.
The system checks if a connection has already been established between the two agents before a
FileTransfer starts. If so, this connection is used and no attempt is made to establish a separate
connection. After the FileTransfer has ended, the system ensures that a connection that is still used
is not closed.

348

Chapter3 Objects

No error message is supplied if empty files are transferred (Windows and UNIX).
Note that problems can occur in FileTransfers when the Windows agent starts from a UNC path
because you mapped files (StatusStore) cannot be used (the agent can crash, for example).
UC4 recommends starting the agent either from a local directory or specifying an absolute local
directory in the agent variable UC_EX_PATH_TEMP in the agent's INI file.
FileTransfer optimization: You can specify parameters for the size of the TCP/IP buffer in some
agents. The UC4 administrator can do so in the relevant INI file's [TCP/IP] section.

Transferring Files

Each file transfer is started by establishing a connection between the source and destination
Execution. The file can be transferred as soon as a connection can be established. There are two
methods of transferring files:
1. With a temporary file:
The file that should be transferred obtains a specific name in the destination system. This
name is composed of the letter "T" and a 7-digit alphabetic string (such as TAAFLEFM). The
string is based on the FileTransfer's RunID which ensures that the file name is unique. Also
refer to the documentation about script functions RUNNR2ALPHA and ALPHA2RUNNR.
In the new FT protocol, a separator and a file ID are appended in addition to the string. Doing
so makes a distinction possible because all files are handled via the FileTransfer task's
RunID.
The file obtains the name specified in the FileTransfer object after a successful transfer.
The temporary file is created in the FileTransfer's destination directory.
2. Without a temporary file:
The file that should be transferred obtains the name that is specified in the FileTransfer
object in the the beginning.
The method that should be used depends on the specifications that the the UC4 administrator
has made in the destination agent's INI-file parameter ft_temp_file=.
A temporary file is not created if an existing file is extended or overwritten. Contents are directly
inserted in the relevant files.
The huge advantage of temporary files lies in the simplified handling of further processing because
the files only obtain their specified names after they have successfully been transferred.
If an error occurs, the temporary file is deleted in the destination system. Files that could not
completely be transferred are not removed on UNIX and Windows computers. Therefore, the agent
does not have to newly start the file transfer if the FileTransfer is restarted.

AgentGroups

An AgentGroup can either be used as the source or as the target. This results in two possible ways
of usage:
1. File transfers from a single host to many target hosts.
2. File transfers from many hosts to a single target host.

Automation Engine

349

Pay particular attention to the latter one as the files must not have the same name. Otherwise, the
FileTransfer overwrites the files or it cannot transfer the file if it is being deployed by parallel
processes at that point in time. Insert the following variable in the target file name: &<FT_SRC_
HOST>. The FileTransfer replaces this variable with the name of the file's original host.
For example:
C:\temp\&<FT_SRC_HOST>_test*.txt
Note that AgentGroups cannot be selected in FileTransfers as a source and a target at the same
time!

Compression

Files can also be transferred in compressed form. You can activate this option in the FileTransfer
tab.
If you select the compression type "Default value" in the FileTransfer, the system uses the value
that the UC4 administrator has defined in the UC4 Variable UC_HOSTCHAR_DEFAULT, setting
FT_COMPRESS. The files are transferred in compressed mode if the two agents have different
settings.
Example:
WIN01 = No compression
UNIX01 = Active compression
The files are transferred in compressed form.
The agent uses the LZP+Huffman procedure for the compression.
When using compression, make sure that effort (time required for compression) and benefit (gain of
time because of reduced transfer time) are balanced against each other. An important component
for your decision is the available bandwidth of your network connection. You cannot increase
performance with fast networks (100 Mbit)because the compression process is more timeconsuming than the gain achieved by reducing the network time. With an available bandwidth of
10MBit or less, compression will definitely result in a performance increase.

End Status

Transferring a particular file:


A FileTransfer obtains the status ENDED_NOT_OK if the relevant file is not available.
Use case: AFileTransfer is to transfer a particular file which should then further be processed.
Transferring files using wildcard characters:
A FileTransfer obtains the status ENDED_EMPTY if no file is available which complies with the
filter specifications. It obtains the status ENDED_OK if at least one matching file is found.
Use case:A FileTransfer is to transfer several files whose naming convention follows a particular
pattern . The focus is on file names and not on the number of files.

UNIX and MPE

The UC4 administrator can use the parameter login_check=yes to specify in the INI files of the
UNIX and MPE agents that the Login object's password is checked. For reasons of security

350

Chapter3 Objects

UC4 recommends using this setting. Login_check=no only checks the user name.

VMS

In VMS, each text file requires a delimiter to be appended. The UC4 administrator can define in
the INI-file parameter FileEndDelimiter= whether the VMS agent should append one.

See also
FileTransfer Procedure
FileTransfer - Restarts

Object-Type specific Features

Restarts process FileTransfer scripts only partially but the corresponding task completely.
Windows and UNIX agents are exempted. They set restart points in regular intervals. A
repeated FileTransfer continues at the last restart point. The interval depends on the settings
that the UC4 administrator has defined in the parameter "JOB_CHECKINTERVAL" of the UC4
Variable UC_HOSTCHAR_DEFAULT.
Restart possibilities depend on the particular agent's version (FileTransfer protocol old/new):
Old FileTransfer protocol: Partially qualified can be repeated as a whole if the parent FileTransfer
object is used for a restart. It is also possible to repeat individual child FileTransfers.
New FileTransfer protocol: All files are processed via an activity. If the FileTransfer fails, it can be
continued starting with the last restart position.
Do so by selecting the option From last restart position . Restart points are created in a defined
interval while the files are being transferred. Use the key FT_RESTARTINFO_INTERVAL in the
UC_HOSTCHAR_DEFAULT to determine the required time interval. If the FileTransfer aborts, the
transfer can continue from the file position where the last restart point has been created. Restart
information is stored locally on the agent computer in the form of StatusStore files. A consistency
check is made to ensure that incomplete files have not been changed before the restart was
initiated. All restart information is deleted after the FileTransfer has successfully been completed.
More information is provided in the document that describes the FileTransfer Procedure.
In restarts, it is still possible to transfer all data from the beginning.
Restart options are only available for FileTransfers of the new protocol if the restart has been
called using the statistics and if the object has not been changed.

Automation Engine

351

When all information is transferred again in a restart, the existing files on the target system will
be overwritten even if the option "File exists - abort" is defined in the FileTransfer object. When
you select the option "File exists - append", the information is appended to the target file even if
the information has already been appended in the original run.
Background information: The option "Transfer all new" in the restart dialog has the effect that the
system ignores the StatusStore file of a previous FileTransfer execution and rebuilds the number
of hits. The target file is overwritten because in a restart, the agent cannot recognize whether a
file that already exists on the target file has actually been transferred by the previous original run
or not.
FileTransfer - Statistics/Report
The reports of FileTransfers list details about the file transfer in a particular structure.

Structure

This is how the report of FileTransfers is structured (new FT protocol):


1) Message that informs that the FileTransfer has started including the information about the file
filter that has been used.
U0011124 File search started with filter 'C:\temp\test*.txt' ...
2) List of the files that comply with the file filter. A message is output per file. It includes the absolute
path and the file name.
U0011125 'C:\temp\test.txt'
U0011125 'C:\temp\test2.txt'
3) Information that the file search is complete and the number of files that have been transferred.
U0011126 File search completed, '2' files selected.

352

Chapter3 Objects

4) Transfer status. A message that includes the following information is output for each file that has
been transferred:
l
l
l
l

Transfer was successful / not successful


Number of transferred bytes and records
Path and name of source and target file
Transfer duration in the format HH:MM:SS

U0011133 OK '1394' Bytes, '26' Records for file 'C:\temp\test.txt'->'D:\temp\test\test.txt'


transferred. Duration '00:00:00'.
U0011134 ERROR '0' bytes, incorrect transfer of '0' records for file 'C:\temp\test2.txt'>'D:\temp\test\test2.txt'. Duration '00:00:00'.
5) Information whether the FileTransfer (RunID) has ended successfully or with errors.
U0011408 FileTransfer '76836123' completed.
or
U0011409FileTransfer '76836123' ended abnormally.

For example

Report of a partially qualified (wildcard) FileTransfer that has ended abnormally:


2011-11-21 16:17:10 - U0011124 File search started with filter 'D:\Temp\webhelp_src\*' ...
2011-11-21 16:17:10 - U0011125 'D:\Temp\webhelp_src\uc4.htm' 2011-11-21 16:17:10 - U0011125
'D:\Temp\webhelp_src\uc4.js' 2011-11-21 16:17:10 - U0011125 'D:\Temp\webhelp_
src\uc4.mcwebhelp' 2011-11-21 16:17:10 - U0011125 'D:\Temp\webhelp_src\uc4.xml' 2011-11-21
16:17:10 - U0011125 'D:\Temp\webhelp_src\uc4_CSH.htm' 2011-11-21 16:17:10 - U0011125
'D:\Temp\webhelp_src\uc4_Left.htm' 2011-11-21 16:17:10 - U0011126 File search completed, '6'
files selected. 2011-11-21 16:17:10 - U0011133 OK '1394' Bytes, '26' Records for file
'D:\Temp\webhelp_src\uc4.htm'->'D:\Temp\webhelp_dst\uc4.htm' transferred. Duration '00:00:00'.
2011-11-21 16:17:10 - U0011133 OK '14634' Bytes, '541' Records for file 'D:\Temp\webhelp_
src\uc4.js'->'D:\Temp\webhelp_dst\uc4.js' transferred. Duration '00:00:00'. 2011-11-21 16:17:10 U0011133 OK '336' Bytes, '2' Records for file 'D:\Temp\webhelp_src\uc4.mcwebhelp'>'D:\Temp\webhelp_dst\uc4.mcwebhelp' transferred. Duration '00:00:00'. 2011-11-21 16:17:10 U0011134 FEHLER '0' Bytes, '0' Records for file 'D:\Temp\webhelp_src\uc4.xml'>'D:\Temp\webhelp_dst\uc4.xml' fehlerhaft transferred. Duration '00:00:00' . 2011-11-21 16:17:10 U0063018 FT(76836900): Datei 'D:\Temp\webhelp_dst\uc4.xml' kann nicht geffnet werden, error
code = '5 - Access is denied.'. 2011-11-21 16:17:10 - U0011133 OK '4474' Bytes, '171' Records for
file 'D:\Temp\webhelp_src\uc4_CSH.htm'->'D:\Temp\webhelp_dst\uc4_CSH.htm' transferred.
Duration '00:00:00'. 2011-11-21 16:17:10 - U0011133 OK '1394' Bytes, '26' Records for file
'D:\Temp\webhelp_src\uc4_Left.htm'->'D:\Temp\webhelp_dst\uc4_Left.htm'transferred. Duration
'00:00:00'. 2011-11-21 16:17:10 - U0011409 FileTransfer '76836900' ended abnormally.
The report of the old FileTransfer protocol is not structured coherently. Therefore it is not
described separately.
The reports of FileTransfers can be unloaded to text files by using the utility UC4.DB Archive. More
information about this functionality is provided in the Administrator Manual -> Utilities.
FileTransfer Attributes
The following overview includes the attributes of a FileTransfer object and describes their
functions, allowed values and ways of modification.

Tab

Attribute

Description

Value

Accesses

Automation Engine

353

ARCHIVE_
KEY1

Archive key 1

User-defined,
maximum 60 characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
maximum 20 characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

ATTR_DLG

Attribute Dialog

"Y" - Attribute Dialog


displayed
"N" - Attribute Dialog not
displayed

GET_ATT

AUTO_DEACT

Deactivate automatically
when finished

"NEVER" - never deactivate


automatically
"ENDED_ERROR_FREE"
- deactivate automatically in
case of error-free execution
"RESTART_ERROR_
FREE" - deactivate
automatically in case of
error-free Restart
"ALWAYS" - always
deactivate automatically

GET_
ATT,
:PUT_
ATT
(Process)

AUTO_DEACT_
DELAY

Deactivate automatically
when finished - AlwaysTime delay

User-defined,
Value between "0" and "99"

GET_
ATT,
:PUT_
ATT
(Process)

AUTO_DEACT_
ERROR_FREE

Deactivate automatically
when finished - After an
error-free restart - Errorfree

Task status
maximum 20 characters

GET_
ATT,
:PUT_
ATT
(Process)

DATE_
CREATED

Created on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-00-00
00:00:00"

GET_ATT

354

Chapter3 Objects

DATE_
MODIFIED

Modified on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-00-00
00:00:00"

GET_ATT

DCMODUS

Mode UserInterface

"Y" - UserInterface active


"N" - No UserInterface
active

GET_ATT

FSC_HOST

Override host for


FileScan (optionally) Host

Name of an agent,
maximum 32 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

FSC_LOGIN

Override host for


FileScan (optionally) Login

Name of a Login object,


maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

FT_COMPRESS

Compress

"NO" - no compression
"NORMAL" - normal
compression
"DEFAULT" - default
settings

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program

FT_DST_
ACCOUNT

Login info
(only BS2000 and MPE)

Account information from


the Login info of Login object
as target of the FileTransfer

GET_
ATT,
predefined
variable

FT_DST_
CLIENT

Login info
(only SAP)

Client from the Login info of


Login object as target of the
FileTransfer

GET_
ATT,
predefined
variable

Automation Engine

355

FT_DST_CODE

To - Code

Name of a CodeTable,
maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

FT_DST_
DOMAIN

Login info
(only Windows)

Domain from the Login info


of Login object as target of
the FileTransfer

GET_
ATT,
predefined
variable

FT_DST_FILE

To - File

User-defined,
maximum 512 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
via script
variable,
predefined
variable

FT_DST_FILE_
ATTRIBUTES

To - File attributes

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT
(Process),
via script
variable,
predefined
variable

FT_DST_
GROUPNAME

Login info
(only NSK and MPE)

Logon group from the Login


info of Login object as target
of the FileTransfer

GET_
ATT,
predefined
variable

FT_DST_HOST

To - Host

Name of an agent,
maximum 32 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

356

Chapter3 Objects

FT_DST_LOGIN

To - Login

Name of a Login object,


maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

FT_DST_
LOGIN_INFO

Login info

All the Login info of Login


object as target of the
FileTransfer

GET_
ATT,
predefined
variable

FT_DST_
USERID

Login info

User ID from the Login info


of Login object as target of
the FileTransfer

GET_
ATT,
predefined
variable

FT_ERASE_
SRC_FILE

From - Erase source file

"Y" - Yes (GET_ATT


supplies "J"),
"N" - No

GET_
ATT,
:PUT_
ATT
(Process)

FT_EXISTING_
DST_FILE

To - File exists

"A" - abort FileTransfer,


"O" - overwrite file,
"E" - append to file

GET_
ATT,
:PUT_
ATT
(Process)

FT_FILE_TYPE

From - Format

"T" - text file


"B" - binary file

GET_
ATT,
:PUT_
ATT
(Process)

FT_INCLUDE_
SUB_DIR

From - Include sub


directories

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT
(Process)

FT_SRC_
ACCOUNT

Login info
(only BS2000 and MPE)

Account from the Login info


of Login object as source of
the FileTransfer

GET_
ATT,
predefined
variable

FT_SRC_
CLIENT

Login info
(only SAP)

Client from the Login info of


Login object as source of
the FileTransfer

GET_
ATT,
predefined
variable

Automation Engine

357

FT_SRC_CODE

From - Code

Name of a CodeTable,
maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

FT_SRC_
DOMAIN

Login info
(only Windows)

Domain from the Login info


of Login object as source of
the FileTransfer

GET_
ATT,
predefined
variable

FT_SRC_FILE

From - File

User-defined,
maximum 512 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
via script
variable,
predefined
variable

FT_SRC_FILE_
ATTRIBUTES

From - File attributes

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT
(Process),
via script
variable,
predefined
variable

FT_SRC_
GROUPNAME

Login info
(only NSK and MPE)

Logon group from the Login


info of Login object as
source of the FileTransfer

GET_
ATT,
predefined
variable

FT_SRC_HOST

From - Host

Name of an agent,
maximum 32 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

358

Chapter3 Objects

FT_SRC_LOGIN

From - Login

Name of a Login object,


maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

FT_SRC_
LOGIN_INFO

Login info

Entire Login info of Login


object as source of the
FileTransfer

GET_
ATT,
predefined
variable

FT_SRC_
USERID

Login info

User ID from the Login info


of Login object as source of
the FileTransfer

GET_
ATT,
predefined
variable

FT_
TRANSFER_
FOLDERS

From - Include subdirectories - Transfer


complete folder structure

"Y" - Yes,
"N" - No

GET_
ATT,
:PUT_
ATT
(Process)

FT_
WILDCARDS

From - Use Wildcards

"Y" - Yes,
"N" - No

GET_
ATT,
:PUT_
ATT
(Process)

GEN_AT_
RUNTIME

Generate at runtime

"Y" - Generation at runtime


"N" - Generation at
activation time

GET_ATT

GROUP

Group

Name of a Group,
maximum 200 characters
" " - for immediate start

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

Automation Engine

359

INT_ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
maximum 16 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
via script
variable,
predefined
variable

LAST_DATE

Last used on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-00-00
00:00:00"

GET_
ATT,
predefined
variable

LAST_USER

Last used by

Name of the User object,


maximum 200 characters

GET_
ATT,
predefined
variable

MAX_
PARALLEL_
ELSE

Parallel running Tasks Else

"WAIT" - FileTransfer waits


until processing is possible
"ABEND" - FileTransfer
interrupted

GET_
ATT,
:PUT_
ATT
(Process)

MAX_
PARALLEL_
TASKS

Parallel running Tasks Max.

User-defined,
Value between "0" and
"99999"

GET_
ATT,
:PUT_
ATT
(Process),
predefined
variable

MAX_
PARALLEL_
TRANSFERS

From - Max. parallel


running transfers

User-defined,
Value between "0" and
"999"

GET_
ATT,
:PUT_
ATT
(Process),
predefined
variable

MAX_
RETCODE

ENDED_OK until
returncode

User-defined,
maximum 11 characters

GET_
ATT,
:PUT_
ATT
(Process)

MODIFY_
COUNT

Modified

Number of object
modifications

GET_ATT

OBJECT_NAME

Object name

User-defined,
maximum 200 characters

Change
Program

360

Chapter3 Objects

OBJECT_TITLE

Title

user-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT
(Process),
predefined
variable

PPF_EXECUTE

Action - Execute

Name of an executable
object,
maximum 200 characters

Change
Program

PPF_FILTER

Action - Output filter

Name of a Filter object,


maximum 200 characters

Change
Program

PPF_
INHERITANCE

Inherit to dynamic child


tasks

"Y" - Yes
"N" - No
"C" - Children only

Change
Program

QUEUE

Queue

Name of a Queue,
maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process)
Change
Program,
predefined
variable

RESOURCE_
CONSUMPTION

Consumption
(Resources)

User-defined,
Value between "0" and
"99999"

GET_
ATT,
:PUT_
ATT
(Process)
Change
Program,
predefined
variable

SCRIPT

String in the script of the FileTransfer which should be


changed

Change
Program

SYNC_OBJECT

Assigned Sync object

Name of a Sync,
maximum 200 characters

Change
Program

TIMEZONE

TimeZone

User-defined
maximum 8 characters

GET_
ATT,
:PUT_
ATT
(Process),
predefined
variable

Automation Engine

361

UC4_PRIORITY

UC4 Priority

User-defined,
Value between "0" and
"255"

GET_
ATT,
:PUT_
ATT
(Process),
predefined
variable

USAGE_
COUNT

Last used

Number of object usages

GET_
ATT,
predefined
variable

USER_
CREATED

Created by

Name of the User object,


maximum 200 characters

GET_
ATT,
predefined
variable

USER_
MODIFIED

Changed by

Name of the User object,


maximum 200 characters

GET_
ATT,
predefined
variable

See also:
FileTransfer
Attributes
:PUT_ATT
GET_ATT function
UC4.DB Change

3.2.13 Filter
Filter
A Filter object can be used to define the criteria to be applied for searching reports of tasks and/or
files.
Object class: Passive object
Object type (short name): FILTER
It is available in the following object types:
l
l
l

FileTransfer
Job
RemoteTaskManager

Each of these object types includes an Output Scan tab in which you can create one or more Filter
objects and define the reaction to the filtering result.
Filter objects created in system client 0000 can be used in user-defined clients.
The UC4 administrator determines the memory size to be used for reading reports. The UC4
Variable UC_SYSTEM_SETTINGS provides the keys DEFAULT_REPORT_SCAN_
MEMORY and MAX_REPORT_SCAN_MEMORY which can be used for this purpose.

362

Chapter3 Objects

Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates the user who last used the object including the date and time. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Archive keys

Two keywords of your choice can be specified here.

Filter Tab
The Filter tab contains the criteria that should be applied in searching the reports of tasks or
files.

Automation Engine

363

Description

All filter definitions can contain the wildcard characters "*" and "?". "*" stands for any characters,
"?" for exactly one character. There is no need to use the * character at the beginning and the
end because the search takes place within the specified term.
For each Filter object, you can specify several different reports or files and you can also check
several terms in each file/report. To insert Filter definitions, you click in a field (such as Report contains) and then you click the "+" button that appears to its right. A new line will automatically be
inserted below the selected entry. To delete lines, you click "-".

Further important notes:


l

The task ends on status FAULT_POST_PROCESSING if the report does not exist or the file
cannot be accessed.

364

Chapter3 Objects
l
l

l
l

A line break is inserted if individual report lines exceed the report's block size.
The search function ignores line breaks. For example, searching for "ERROR*file" means
that the filter definition is met when "ERROR" and "file" are found in one line or in different
lines.
A text search is used for regular reports but also for XML reports.
The CodeTable of the agent that is used in the task is applied.

Field/Element

Description

Operation of the
filter definitions
AND operation

All filter definitions must apply.

OR operation

At least one filter definition must apply.

Filter definitions
Report

Report type
The report must be stored in the UC4 Database. Use the filter
definition "File" if you store reports in the file system.
The selected operation setting is also valid if wildcard characters are
used for the report type.
For example:
The string "ERROR" is to be found in reports of type "S*".
All SAP reports are searched. The filter definition is met if "ERROR" is
found in at least one SAP report (because of the OR operation).
contains
does not
contain

Any string.
The notation of the string is irrelevant because this field is caseinsensitive.
You can determine whether trailing spaces of the string should be
truncated or not in the UC4 Variable UC_SYSTEM_SETTINGS,
setting GET_PROCESS_LINE_RTRIM. By default, these spaces
are automatically removed.

File

File or filter for several files.


The selected operation setting is also valid if wildcard characters are
used in the file name.
For example:
The string "ERROR" is to be found in C:\Temp\*.txt.
The files a.txt and b.txt are available in the directory C:\Temp. An AND
operation has been selected; therefore, the filter definitions are only met if
"ERROR" exists in both files.
contains
does not
contain

Any string
Note that the search for files is case sensitive.

Automation Engine

Field/Element
Registered Job
Output

365

Description
File or filter for several files.
This filter category can be used to check the content of external Job
output files. Filter objects that include definitions of this kind can only be
used in combination with Jobs.
The condition does not apply if the specified file cannot be found.

contains
does not
contain

Any string

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all object
types in UC4.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

366

Chapter3 Objects

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element

Add node after

Inserts a new element after the highlighted element

Add node before

Inserts a new element before the highlighted element

Add node child

Creates a new element one level below the highlighted element

Duplicate node

Duplicates the highlighted element and its attributes and contents

Delete node

Deletes the highlighted element irrevocably

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

367

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.14 Group
Group
Groups can be used for the occasional execution of tasks. The particular tasks which should run
in a group obtain the start type "Group". Groups can be activated manually or directly in a
Workflow or Schedule.
Object class: Executable object
Object type (short name): JOBG
Another possible way of using a group is a queue. In this case the group is automatically activated if
the corresponding group's first task is started.
Note that the group is not taken into consideration if a task is activated by a Workflow,
Schedule or as a recurring task.
Creating Groups
Groups are used to manage the parallel execution of tasks as well as serving as queues. Objects
processed via a group show the name of the corresponding group in the Attributes tab(start
type).

368

Chapter3 Objects

Procedure

1. Click the button in the toolbar and a window listing all the available object types opens.
Select the type "Group" (JOBG).
2. Assigns a suitable name and open the Group object. Click the Notification tab
3. First determine the maximum number of tasks that can run parallel. A queue processing one
task after the other is created if more than one task is started which uses this group.
4. The next step serves to determine the activation type of the group. These two options are
available:
l By Call: The group can either be activated manually, via Workflow or Schedule. This
includes those tasks that were started in a group and are displayed in the Activity
Window with the status "Registered". Those tasks are processed as soon as the
group is started with one of the above mentioned options.
l Automatically (queue): When a task with the group being specified as start type is
started, the group is automatically also activated.
5. Use the optional setting of the Runtime tab if the execution of the group should be
monitored.
6. Script elements can be stored in the Process tab.
7. The option Generate at runtime - which is available in the Attributes tab- can be used to
influence the Group's generation time. With this option activated, the script is not processed
at object activation but only when it is started. These two points in time are not necessarily
the same (when the object is executed within the frame of a Workflow, for example).
8. Groups are executable objects.
There are various other settings that can be specified for Group objects. You can find details in
the documentation about the individual tabs.
Header tab
The Header tab is a general tab which is available in every UC4 object.
Object: Group
Object class: Executable object
Object type (short name): JOBG

Automation Engine

369

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time. If the
object was loaded from a Transport Case the system is shown as user.

Modified

Indicates the user who last modified this object including the date and time.
The number of times the object has been modified is displayed to the right.

Last used

Indicates user, date and time regarding the most recent use of the object.
The number of times the object has been used is displayed to the right.
Information is only displayed if the updating function was activated in the
variable UC_SYSTEM_SETTINGS (LAST_USE).

Active

With this option being deactivated, the object will automatically be set to
inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT (return
code: 1925).
This setting is available in the Header tab of all executable objects and is set
by default.

Archive keys

Statistical data can be selected using these archive keys. Archive keys are
displayed in the Statistical Overview and can be printed.

Extended Reports Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or accesses to
UC4 objects.

370

Chapter3 Objects

Use Default (UC_ If you select this option the reports the UC4 administrator defined in the UC4
CLIENT_
Variable UC_CLIENT_SETTINGS with the key "EXT_REPORTS" are
SETTINGS)
generated.
All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

See also:
Object Classes
Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions that should be taken in this tab if you want to make use of this
possibility.

The Sync objects are checked one after the other when the task starts. The UC4 Automation
Engine tries to use the Sync object of the first line by calling the start action. If this is not possible
because this is not allowed by the Sync object's current condition, the task waits, aborts or is
skipped. The type of reaction depends on the Else condition defined in the tab's last column. If
"wait" has been specified, the task waits until it can use the Sync object with the start action. Then
the UC4 Automation Engine checks the Sync object in the next line etc. The task starts as soon all
Sync objects could successfully be used. Depending on the task's end status, either an abend or
end action is processed.
Up to 500 Sync objects can be specified.

Automation Engine

371

All Sync objects must not include a total of more than 5000 rules. Rules are defined actions that
are directly entered in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Because of this task allocation, it can take several seconds until a Sync is released after
a task has ended. In this case, the report entry shows a time stamp which is later than the task
has ended. Such delays occur when the primary's work load is high or if it is processing lots of
Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions that have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object that should be used to synchronize the task.

Start action

Defines the action that should be taken when the task starts. If this is
not possible due to the Sync's status, the Else condition becomes
effective.

Abend action

This action is processed if the task aborts.

End action

This action is processed if the task ends successfully.

Else

You can define here what should happen to the task if the start action
cannot be executed:
l

l
l

The task should wait until the start action can be executed
(WAIT).
The task aborts (ABEND).
The task is skipped (SKIP).

See also:
Sync
Group - Attributes Tab
The Attributes tab is a type-specific tab which is found only in the Group object. It is used to
define the handling of tasks and defining the start specifications of the group.
Object: Group
Object class: Executable object
Object type (short name): JOBG

372

Chapter3 Objects

Description

Field/Control

Description

Attributes
Max. parallel-running
tasks

Specify the maximum number of executable objects which are allowed


to run simultaneously in a Group. 1 to 999 tasks are allowed.

Queue

Selection of a Queue objectin which the Group should be processed.


The Group automatically starts in the Client Queue(object name:
CLIENT_QUEUE) if nothing has been specified in this field.

Children Queue

Queue object which is used for the Group's tasks. The Queue of the
subordinate tasks is replaced by the value specified here if the Group is
being processed. The settings made in the individual tasks are used if
no value has been specified for "Children Queue".

Time zone

Time zone that should be used

Generate at runtime

Select this check box if it should not be generated at the time of


activation but instead at runtime.

The specified settings in this tab can be read and modified at runtime. Attributes of this object will
thereby be accessed with script statements and functions.
Runtime tab
The Runtime tab is an object class-specific tab which is available in every executable object in
UC4. It can be used to specify parameters for a task's runtime behavior.

Automation Engine

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluating the estimated runtime (Runtime Evaluation)
Monitoring the maximum runtime (Runtime Monitoring)
Monitoring the minimum runtime (Runtime Monitoring)
Reaction to runtimes that have been exceeded or not reached (Runtime Monitoring)

Description

Field/Control

Description

Definition for
ENDED_OK
Return code <=

Maximum return code for a task's normal end.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.

Else execute

You can execute an object if the task does not end with a return code
that lies within the ENDED_OK area.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

End status for


forecast
Estimated runtime
(ERT)

Selection list for the end status that this task should return when you
make a Forecast calculation.

373

374

Chapter3 Objects

Current ERT =

Displays the task's next estimated runtime (ERT).


You can enter the estimated runtime here. This value applies until the
ERT calculation is made after the task's next execution.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" is used to calculate the
estimated runtime.

Fixed value

A fixed value is entered as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the real runtime.
Possible selection: Average, linear regression, maximal value

from the last ... runs

Number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

Value in percent for an upward ERT correction.

Differences > ... % are You can ignore possible huge differences to of actual runtimes.
ignored
Upper limit (in percent) for actual runtimes that should be included in
estimated runtime calculation.
but do use ... runs at
least

Number of past runs that should be considered regardless of


differences. Allowed value: 0 to 25.

Show Chart

Button that can be clicked in order to update the estimated runtime


according to the current settings. A diagram displays in a separate
window; it shows the last 25 ERT/RRT runs. Windows that are already
open are updated.

Reset Values

Button that can be used to delete the real and estimated runtimes.
A security query displays, confirm it and all saved runtimes are cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action as an ELSE condition must be
specified which reacts when maximum runtime is exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's activation is
used as the maximum runtime. An action as an ELSE condition must
be specified which reacts when maximum runtime is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Automation Engine

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

375

A number of days and time of day are set for when the task must be
finished. The starting point for the calculation of the date is the real date
of the task. An action as an ELSE condition must be specified which
reacts when maximum runtime is exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as its maximum runtime. You must specify an action (ELSE condition)
that applies if the maximum runtime has been exceeded.

- ... %

When you select the ERT, you can also specify a correction value in
percent for the maximum runtime. The value you determine is added to
the estimated runtime.

Else
Cancel / Quit

If you activate this check box is activated, the task is canceled or quit if
the runtime has been exceeded. Only available if the maximum runtime
is monitored.

Execute

If you activate this check box, you determine that the task is executed.
You can directly select the executable object. If the runtime is
exceeded or not reached, the specified task is executed. Only available
if the runtime is monitored.

Comments

A different type of runtime monitoring can be used for tasks that have been activated in a Workflow
or using the object "Schedule." You can define it in the properties of the relevant object (Runtime
tab). The setting that are defined within the context of a Workflow or Schedule overrule the settings
that have been defined in the task itself.
You can also assume these setting for runtime monitoring in the Workflow or Schedule. This is the
default setting.

See also:
Runtime Evaluation
Runtime Monitoring

376

Chapter3 Objects

Variables & Prompts Tab


The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: Group
Object class: Executable object
Object type (short name): JOBG
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Automation Engine

Only defined variables

377

The object only obtains the object variables of the superordinate


task that have been defined in its Variables & Prompts tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the Variables & Prompts
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.
Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the PromptSet area is not a text field, click the labeling of the
PromptSet element.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually

378

Chapter3 Objects

enter the predefined variables, or select them in a dialog that you call using the
button.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs when the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available
when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a workflow because you can only
start a rollback process within a workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but are processed by
using the Automation Engine.
Backup actions will always be processed before the object is processed, and rollback actions can
only be started via workflows. For more information, see the related documentation.

Automation Engine

Field/Element

Description

Enable Rollback

Use this to activate or deactivate the rollback settings.

379

When this option is deactivated, all the fields of this tab are
disabled.
Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

Rollback

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

380

Chapter3 Objects

Group - Process Tab


The Process tab is a type-specific tab in which processing instructions are stored in UC4's
scripting language.
Object: Group
Object class: Executable object
Object type (short name): JOBG

Description

The script is either processed at Group activation or start. This point in time depends on the setting
"Generate at runtime" which can be defined in the Attributes tab.
A Group's script cannot contain JCL lines.

See also:
Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined, client-specific tabs which can be assigned to all object
types in UC4.
Object: Group
Object class: Executable object
Object type (short name): JOBG

Automation Engine

381

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

382

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

383

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Group - Execution
Object: Group
Object class: Executable object
type (short name): JOBG

Object-type-specific Features

The activation of a group can be carried out manually or as an object in a Workflow or in a


Schedule. Groups can be put in certain positions in a Workflow. When the Workflow reaches the
position that a group has been placed in the group is automatically activated.
The Jobs that are in a "noted" condition in the activities at this time are processed . This also applies
to Jobs which are set after the activation of a Workflow (even up to the time of processing the
groups). Only after the last job of the group is completed is the group itself completed. A group ends
abnormally when a job in the group ends abnormally.
A special type of group, the queue, allows you to take care of sporadic Jobs according to the defined
attributes of the handling of the set tasks (Jobs).
In a queue, the attribute "Generate at runtime" is ignored (if it has been activated) because queues
are always activated at runtime.

384

Chapter3 Objects

Activation of an Application Order


l
l
l
l

Each job containing the group in the start type is recognized as "Registered" after activation.
The state of the selected group is then checked.
If the group is inactive the job remains recognized as "Registered".
If the group is already active the number of simultaneously-running Jobs in the group is
checked.
If the maximum number of Jobs in the group is reached the job remains recognized as
"Registered".
If the maximum number of Jobs in the group is not yet reached the following job is selected
according to priority and FIFO and started in the group.

Activation of Application during a Queue


l
l
l
l

l
l

Jobs for queues are also recognized as "Registered" after activation.


The state of the queue is then checked.
If the queue is inactive the job stays "Registered" and the queue is activated.
If the queue is active (even if it has only been activated by the job itself), the number of
simultaneously-running Jobs in the queue is checked.
If the maximum number of Jobs in the queue is reached, the job remains "Registered".
If the maximum number of Jobs in the queue is not yet reached the following job is selected
according to priority and FIFO and started in the queue.

Stop Execution
An already-activated group or queue can be halted and restarted at any time. If a group or queue is
halted there are no more noted Jobs for the group. The stop condition is not valid for already active
Jobs. They are processed as normal. There is a STOP function which includes all sub-Jobs. Here,
all Jobs of the EVNT and JOBP type are also halted.
Handling
Click the right mouse
button on the task in
the Activity Window

Select the command Stop or GO in the context menu.

Selection of the group


in the Activity Window

Select the command Stop, or GO in the menu File.

Cancel
There are two different ways of canceling a Group. The corresponding commands are available in
the Activity Window's context menu or in the File menu.
l

Cancel:
The Group switches to the status "Canceling" and waits until the active tasks end. The
Group ends when the corresponding tasks have finished. Scheduled tasks do not start and
remain in the Activity Window.
Cancel (recursive):
The Group including all its active tasks are canceled immediately. Tasks with the status
"Registered" remain in the Activity Window showing this waiting condition.

Automation Engine

385

Restart
Object: Group
Object class: Executable object
Object type (short name): JOBG

Object-type-specific Features

You can use a restart to process the Group's script partially. The task itself is always completely
re-executed.
Group - Monitor
During execution the Group monitor is available in which running tasks are displayed. The
graphical representation of the tasks corresponds to the Activity Window.
Object: Group
Object class: Executable object
Object type (short name): JOBG
Via the context menu (right mouse button) various commands can be executed which refer to
individual tasks or the Group. For an individual task you can look at, for example, Details, Statistics
or the Report. You can edit tasks, show a generated Job, or delete a task's entry in the Group.

Right-clicking the context menu without highlighting an object facilitates the export of task states
and display of group attributes. In the Attributes tab, the number of parallel running tasks is
changeable. However, the user must have the authorization "M" (Modify) for Groups.

386

Chapter3 Objects

Calling the Monitor


Right mouse button on
Group in the Activity
Window

Select Monitor in the context menu.

Group selection in the


Activity Window

Select Monitor in the File menu.

See also:
Group
Group Attributes
The following overview lists the attributes that are available for Group objects and describes their
functions, allowed values and ways of modification.

Tab

Attribute

Description

Value

Access
Via:

ARCHIVE_
KEY1

Archive key 1

User-defined,
limited to 60 characters,

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

Automation Engine

387

ARCHIVE_
KEY2

Archive key 2

User-defined,
limited to 20 characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
via sript
variable,
predefined
variable

CHILD_
QUEUE

Children Queue

The name of the Queue object for the


group's tasks,
limited to 200 characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

DATE_
CREATED

Created on

The time stamp in the format "YYYY-MMDD HH:MM:SS"


If not available: "0000-00-00 00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

The time stamp in the format "YYYY-MMDD HH:MM:SS"


If not available: "0000-00-00 00:00:00"

GET_ATT

DCMODUS

Mode
UserInterface

"Y" - UserInterface active


"N" - No UserInterface active

GET_ATT

GEN_AT_
RUNTIME

Generate at
runtime

"Y" - Generation at runtime


"N" - Generation at activation time

GET_ATT

GR_MAX_
PAR_JOBS

Max. parallelrunning tasks

User-defined,
any value between "0" and "999".

GET_
ATT,
:PUT_
ATT

When reading the attribute, the system


returns a 16-digit value with leading zeros.
LAST_
DATE

Last used on

The time stamp in the format "YYYY-MMDD HH:MM:SS"


If not available: "0000-00-00 00:00:00"

GET_
ATT,
predefined
variable

LAST_
USER

Last used by

The name of the User object,


limited to 200 characters.

GET_
ATT,
predefined
variable

MAX_
RETCODE

ENDED_OK
until return
code

User-defined,
limited to 11 characters.

GET_
ATT,
:PUT_
ATT

MODIFY_
COUNT

Modified

The number of object modifications.

GET_ATT

388

Chapter3 Objects

OBJECT_
NAME

Object name

User-defined,
limited to 200 characters.

Change
Program

OBJECT_
TITLE

Title

User-defined,
limited to 255 characters.

GET_
ATT,
:PUT_
ATT,
predefined
variable

QUEUE

Queue

The name of a queue,


limited to 200 characters.

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

SCRIPT

The string in the Process tab of the group should be changed.

Change
Program

SYNC_
OBJECT

Assigned Sync
object

The name of a Sync object,


limited to 200 characters.

Change
Program

TIMEZONE

TimeZone

User-defined
limited to 8 characters.

GET_
ATT,
:PUT_
ATT,
predefined
variable

USAGE_
COUNT

Last used

The number of object usages.

GET_
ATT,
predefined
variable

USER_
CREATED

Created by

The name of the User object,


limited to 200 characters.

GET_
ATT,
predefined
variable

USER_
MODIFIED

Changed by

The name of the User object,


limited to 200 characters.

GET_
ATT,
predefined
variable

See also:
Group
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

Automation Engine

389

3.2.15 Include
Include
Includes can be used to store often-used and identical script parts which will be recalled for
various tasks.
Object class: Passive object
Object type (short name): JOBI
Often-used and repeating Script Parts are best stored in the Include object. This way, the syntax
corresponds exactly to the script of the object in which the Include object is used. Script variables
can be passed if they have already been defined and supplied in the actual object.
In the object, the Include object is included via :INC statement and inserted at activation time in the
script of the calling object.

See also:
Using Script Components
Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control

Description

390

Chapter3 Objects

Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Process Tab
The Process tab is an object type-specific tab which contains processing instructions in UC4's
scripting language.
Object class: Include
Object class: Passive object
Object type (short name): JOBI

Description

The script is processed in objects which integrate it using the script statement :INCLUDE.
The script of an Include object can contain JCL lines if it is used in Job objects.

See also:

Automation Engine

391

Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

392

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

393

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

3.2.16 Job
Job
A job is used to define processing steps in a target system. It can be used independently, in a
Group, or within a Workflow.
Object class: Executable object
Object type (short name): JOBS
The Job objects of RA Solutionsdiffer from the standard Job objects that UC4 supplies. More
detailed information about tabs is provided in the description of the relevant RA Solution.

Creating Jobs - Basics


Job-type objects are probably the most used object types. They can be used for executing
commands on computers or in Enterprise Business Solutions (SAP, PeopleSoft, Oracle
Applications, and Siebel). Individual Job-object templates are available for each of these
platforms because they all differ from each other. Therefore, the first step when you create a job
is to decide upon the operating system or business solution on which it will actually run.

394

Chapter3 Objects

Procedure

1. Click the button in the toolbar. A window opens and lists all the available object types
including the objects for the individual platforms. Select one of them.
2. Assign an appropriate name for the Job object and open it. Click the Notification tab
3. Agents are actually executing the Job. Select the particular agent in the Host tab which runs
on your computer or is connected to the business solution on which the commands should be
processed.
4. The agent requires login information for the execution of the Job. This information is stored in
Login objects. Select the required one in "Login".
5. The various Job objects have their individual Host tabs, each depending on the platform. The
settings that are available for job reports are what they have in common. Select where the job
report should be stored. The particulars applying to the individual operating systems or
Enterprise Business Solutions are described in the document Creating Jobs - Details.
6. The settings in the Runtime tab can be used for monitoring the job while it is being executed.
7. The following tabs are available in Job objects and can be used for storing the processing
statements:
l Pre-Process: Contains the statements which prepare the job for its execution. This
tab is mainly used for setting attributes with :PUT_ATT (such as specifying the
required Agent).
l Process: This tab is the core of the Job object in which the JCL statements can be
written.
l Post-Process: Contains the statements that should be executed when the job has
already ended. For example, the report can be read (PREP_PROCESS_REPORT) or
the Job's return code (MODIFY_STATE) be modified.
l Child Post-Process: This special Process tab is only available in SAP Jobs. The
statements it contains apply to all the Job's children.
8. The order of the Process tabs listed above represents the order in which they are processed.
A detailed overview is found in the document Stages of Workflow execution. You can also
control the generation time of the Pre-Process and Process tabs with the option Generate
at runtime which is available in the Notification tab Activation of this option causes the two
tabs not to be generated at object activation but rather when it is started. job activation and
generation can take place at different points in time - when the object is executed in a
Workflow, for example.
More settings can be specified in Job objects. Detailed descriptions are available in the
documents of the particular tabs.

See also:
Creating Jobs - Details
Creating Jobs - Details
Depending on the particular platform that is used, Host tabs offer various ways of specifying
settings. More detailed information about how individual settings affect jobs and special features
that are available in the different job types are listed below.

BS2000
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

All options of this Host tab are optional and can be used as required.

Automation Engine

395

GCOS8
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

All options of this Host tab are optional and can be used as required.

JMX
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

The connection to the MBean Server can be selected in this Host tab. The following options are
available:
l
l
l

An MBean Server is searched for on the same computer.


The MBean Server is locally available in a SAP J2EE Server.
The connection is established to the MBean Server of the specified URL.

UC4 offers various functions for accessing the individual MBeans. Use the graphical user interface
of the Form tab to create scripts. These processing statements are then automatically stored in the
Process tab.

MPE
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

Indicate a job name in the Host tab. All other parameters can optionally be used.

NSK
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

Select one of the following types when creating an NSK Job: Job for Guardian, NetBatch or OSS.
The options provided in the Host tab are the same for all types and can be used as required.

Oracle Applications
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

Completing the fields Key and App. Short Name is mandatory. UC4 provides several functions for
the processing of statements which are stored in the Process tab.

z/OS
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

396

Chapter3 Objects

In z/OS Jobs you can select where the JCL should be stored:
l
l
l

JCL is written to the Pre-Process or Process tab.


JCL is stored in an z/OS file.
JCL and job card are stored on z/OS. With this setting being specified, the runtime options of
the Host tab are not considered during job execution.

OS/400
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

The type of processing statements can be specified in OS/400 Jobs. CMD (OS/400 commands),
ILE CL script and REXX script are available. The specifications made in the Host tab are always
optional, regardless of the type that has been selected. Additionally you can define whether the
Job's whole spool content or only the spool content of QPJOBLOG should be written to the report.

PeopleSoft
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

UC4 provides several functions which can be used for executing processing statements in
PeopleSoft. Use the graphical user interface of the Form tab to create a script. All processing
statements are automatically stored in the Process tab.

SAP
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

The processing statements in SAP Jobs are composed of UC4 functions that can be created using
the Form tab. Numerous optional specifications are available. Note that some specifications can
affect functions. An overview is available in the KnowledgeBase which informs about possible
effects.

Siebel
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

In Siebel Jobs, it is mandatory to indicate a Server in the Host tab. The function SI_START_TASK
can be used to set Siebel commands.

SQL
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

Specify database-connection information in the Host tab and change the settings if necessary.
Subsequently, you can enter SQL statements in the Form tab or directly in the Process tab.

Automation Engine

397

UNIX
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

Two job types are available for UNIX: Shell Script and command. With Shell Script being used,
UC4 transfers the JCL of the Process tab to the target system and then executes it. Type
command, however, ignores the content of the Process tab. The statements made in the Host tab
are processed instead.
Select the particular UNIX Shell in which the job is supposed to run. The Shell selection list of the
Host tab can be extended. The UC4 administrator can do so using the UC4 Variable UC_SHELL_
UNIX which is available in system client 0000.

VMS
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

All options of this Host tab are optional and can be used as required.

Windows
[BS2000] [GCOS8] [JMX] [MPE] [NSK] [Oracle Application] [z/OS] [OS/400] [PeopleSoft] [SAP] [Siebel]
[SQL] [UNIX] [VMS] [Windows]

The following types of Windows jobs are distinguished:


l
l
l

Processing statements are executed in the form of batch files.


A particular given program is started.
Processing statements are transferred to an interpreter as a file.

You can also use Job objects if required. A further particularity of Windows Jobs is that job reports
can also be created via script.

See also:
Creating Jobs - Basics
Header tab
The Header tab is a general tab which is available in every UC4 object.

398

Chapter3 Objects

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Automation Engine

399

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL from Jobs or
accesses to UC4 objects.

Default (UC_
CLIENT_SETTINGS)

If you select this option the reports the UC4 administrator defined in the
UC4 Variable UC_CLIENT_SETTINGS with the key "EXT_
REPORTS" are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Output Tab
The Output tab is object-specific and is only available in "Job" objects that use the host types
Windows, UNIX, SAP, RA, JMX or SQL. In this tab, you can enter files that are generated by the
Job. After the Job has been executed, you can directly access these files via the UserInterface.

Files that are specified in this tab are registered as external Job outputs. After the Job has been
executed, these files are listed in the Directory tab of the report dialog in which they can be directly
accessed. UC4 recommends only specifying files that are expected through execution of the Job
(such as a text file that the JCL generates in the Process tab).
The files are retrieved directly by the responsible agent and must therefore be accessible to it. An
error occurs if the agent cannot find a file or if the file cannot be accessed.
Standard Job outputs (report, JCL etc.) are automatically registered as outputs.
You can also register output files by using the script element :REGISTER_OUTPUTFILE. This
is only supported for Windows and UNIX Jobs.
Field/Element

Description

400

Chapter3 Objects

Fully qualified file name

Path and name of the file that


should be registered.
Note that you must specify the
path in full. Wildcard
characters are not allowed.
The file extension is irrelevant.

Requires User's Login

When the agent accesses the


output file via the
UserInterface, it logs on to the
computer and transfers the
file. If you check this option,
the Login object that has been
assigned to the particular UC4
user (User tab - default login)
is used. Otherwise, the login
information of the Job's Login
object is used.
With this option activated, a
default login that can be used
to log on to the agent must be
selected in the User object.
Otherwise, an error occurs
when you open the output file.

See also:
Registered Job Output
Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions to be included in this tab if you want to make use of this possibility.

Automation Engine

401

The Sync objects are checked one after the other when the task starts. The UC4 Automation
Engine tries to use the Sync object of the first line by calling the start action. If this is not possible
because this is not allowed by the Sync object's current condition, the task waits, aborts or is
skipped. The type of reaction depends on the Else condition defined in the tab's last column. If
"wait" has been specified, the task waits until it can use the Sync object with the start action. Then
the UC4 Automation Engine checks the Sync object in the next line etc. The task starts as soon all
Sync objects could successfully be used. Depending on the task's end status, either an abend or
end action is processed.
Up to 500 Sync objects can be specified.
All Sync objects must not include a total of more than 5000 rules. Rules are defined actions
which are directly entered in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Due to this task allocation, it can take several seconds until a Sync is released after a
task has ended. In this case, the report entry shows a time stamp which is later than the task
has ended. Such delays occur when the primary's work load is high or if it is processing lots of
Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions which have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object to be used for synchronizing the task.

Start action

Defines the action to be taken at task start. If this is not possible due to
the Sync's status, the Else condition becomes effective.

402

Chapter3 Objects

Abend action

This action will be processed if the task aborts.

End action

This action will be processed if the task ends successfully.

Else

Define what should happen to the task if the start action cannot be
executed:
l
l
l

Task should wait until the start action can be executed (WAIT)
Task aborts (ABEND)
Task is skipped (SKIP)

See also:
Sync
Attributes Tab
The Attributes tab is object type-specific and is only available in Job objects. The target system
and all settings that are required in order to execute a job are defined here.
Object: Job
Object class: Executable object
Object type (short name): JOBS

Description

Field/Control

Description

Attributes
Host

You can define the name of the target system (Agent) on which the job
should run here. You can also specify an AgentGroup.

Automation Engine

Code

403

Name of the CodeTable that this job should use.


If no CodeTable has been selected, the default CodeTable of the
agent that uses this job is used.
See: CodeTable - Usage

Group

If the job should be started by a Group, you can select this Group here.
If there is no entry, the job is activated immediately.
Note that the entry specified here is not considered if the job was
started through a Workflow, a Schedule or as a recurring task.

Queue

Selection of a Queue objectin which the job should be processed. The


job automatically starts in the Client Queue(object name: CLIENT_
QUEUE) if nothing has been specified in this field.

Login

Selection of a Login object.


The Login object contains the data that is used by Jobs in order to log
on to operating systems or applications.
The User profile that is specified in the Login object must be
activated on the OS/400 platform if you specify the value "1" as
otherwise, you cannot start Jobs.

Int. Account

Specification of an internal account.


Contents do not affect the UC4 system's internal processing. You can
access the attribute "Int. Account" with script elements and integrate it
in your processes.

Consumption ...
(Resources)

Resources consumed during execution.


Allowed values: 0 to 99999
Default value: 0
Selecting value 0 has the effect that the resource value that the
UC4 administrator has specified in the UC4 Variable UC_
SYSTEM_SETTINGS with the key WORKLOAD_DEFAULT_JOB
is used.

UC4 Priority ... (0-255)

Priority that should be used to execute this job in UC4.


Allowed values: 0 to 255
Default: 0
Selecting value 0 has the effect that the priority that the UC4
administrator has specified in the UC4 Variable UC_CLIENT_
SETTINGS with the key TASK_PRIORITY is used.

TimeZone

TimeZone that should be used.

Attribute Dialog

If this check box is selected, a dialog is displayed at activation.


Attributes for the current execution of the job can be modified here.

Generate at runtime

Select this checkbox if the job should not be generated at activation


time but at its runtime.

Tasks running
parallel

404

Chapter3 Objects

Max ...

Setting that defines the maximum number of parallel executions for


this Job.
Allowed values: 0 to 99999
Default: 0 (no limit on tasks running parallel)
Examples:
Max. 1 - At any time, not more than one job execution must be
available
Max. 2 - At any time, not more then two active job executions must be
available.
.etc.

Else: Wait Abort

Instruction that defines how this job should be handled if the execution
exceeds the specified maximum number of tasks that can run at the
same time.
Wait = The job waits until execution is possible.
Abort = The job is interrupted.

Deactivate autom.
when finished

The workflow's settings for automatic deactivation apply for file


transfers that are processed as part of this workflow. These
settings overrule the settings of subordinate tasks.
When the Activity Window contains many tasks that are not
deactivated automatically or manually when they are finished, this
can negatively affect performance and the Activity refresh cycle.
Note that Jobs that use the option Generate at runtime which end
on the status "FAULT_OTHER - Start impossible" are not
automatically removed from the Activity Window. The settings that
are defined for an automatic deactivation process are ignored in this
case.

No

The job is not automatically deactivated and remains visible in the


Activity Window after it has been executed.

After the first program


run has error-free
ended

The job is automatically deactivated after successful execution.


Interrupted Jobs remain visible in the Activity Window and must be
deactivated manually.
You can also set a status for the error-free execution and a time delay
for de-activation. Do so by specifying the fields Error-free status
and/or Time delay ... Minutes .

After an error-free
restart

The job is automatically deactivated when a restart has been


successfully executed. Previously interrupted Jobs are also
deactivated.
You can also set a status for the error-free execution and a time delay
for de-activation. Do so by specifying the fields Error-free status
and/or Time delay ... Minutes .

Error-free status

Status that confirms a successful job execution. If no status is


selected, the system-return codes 1900 - 1999 (ANY_OK) represent
error-free execution.

Automation Engine

Always

405

The job is always automatically deactivated after it has been executed.


Additionally you can specify a time delay for deactivation in the TimeDelay field.

Time delay ... Minutes

The job is automatically deactivated after a specified number of


minutes. You can also manually deactivate it before this time is over.
The time difference only affects jobs whose execution also results in
automatic deactivation.

Host Attributes Tabs

Host Attributes Tab


The Host Attribute tabs are object type-specific tabs which are only available in the "Job"
object. They serve to define the platform-specific parameters of a Job's execution.
Object: Job
Object class: Executable object
Object type (short name): JOBS
Tab design depends directly on target system type:
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l

BS2000
GCOS8
JMX
MPE
NSK
Oracle Applications
z/OS
OS/400
PeopleSoft
SAP
Siebel
SQL
UNIX
VMS
Windows

Some of the specified settings in these tabs can be read at runtime and modified. The Attributes of
this object are then accessed with script elements. If the check box "Attribute Dialog" in the
Attributes tab is selected, attributes can be influenced by the user first. Subsequently, access is
granted to the attributes in the script.

BS2000
The following document explains the platform-specific settings for a BS2000 job.

406

Chapter3 Objects

Description
Field/Control

Description

SYSOUT
Database

The SYSOUT protocol is handled by UC4. After the job has been
processed, the UC4 Automation Engine takes the SYSOUT protocol
that has been stored on the agent computer and stores it to the UC4
Database.

File

The SYSOUT protocol is handled by UC4. After the job has been
processed, the SYSOUT protocol is available in the target system as a
file.

On error only

If the job is interrupted, the SYSOUT protocol is saved in the UC4


Database and/or in the target system as a file. This field is only
available if "Database" and/or "File" has been selected.

SYSLST
Database

The SYSLST protocol is handled in UC4. After the job has bee
processed, the SYSLST protocol is transferred to the UC4 Database
using a FileTransfer.

File

The SYSLST protocol is handled by UC4. After the job has been
executed, the SYSLST protocol is available in the target system as a
file.

On error only

If the job is interrupted, the SYSLST protocol is saved in the UC4


Database and/or in the target system as a file. This field is only
available if "Database" and/or "File" has been selected.

Runtime options

Automation Engine

407

Priority

Specification of the Job's priority.

max. CPU time

Maximum CPU time (in seconds) that is available for the Job. If the
value that is specified here is exceeded, the OS cancels the job and it
obtains the UC4 status ENDED_VANISHED.

Express

Activate this check box if the job should start immediately, regardless
of the batch limit.

Job class

Specification of the Job's class.

Order name

The order name (PNAME) is specified here.

Enter parameter

You can enter any number of enter parameters here, separate them
using commas. The allowed parameters depend on the BS2000 version
that is used. A detailed description is available in the "BS2000/OSD
Commands" manual under the "/ENTER-JOB" command. For
example: TIME=NTL, RERUN-AFTER-CRASH=YES
Parameters that have already been defined cannot be used again (max.
CPU time, priority, express, job class, order name).

GCOS8
The document shown below explains the platform-specific settings for a GCOS8 job.

Description
Field/Control
Job report

Description

408

Chapter3 Objects

Database

The job report is managed by UC4. When the job has been processed,
the UC4 Automation Engine takes the process protocol which has been
stored on the agent computer and stores it to the UC4 Database.

File

The job report is managed by UC4. After job execution, the process
protocol is available as a file in the target system.

On error only

In case of job interruption, the job report is saved in the UC4 Database
and/or a file in the target system. This function is only available when
"Database" and/or "File" have been selected.

Start parameter
Urgency

Specification of the priority with which the job should be executed. A


value between "0" and "63" can be entered.

SNUMB

Sequence number of the Job


If no particular number has been specified, it is created automatically.
The agent's INI file contains the parameter SNUMB_SUFFIX which
the UC4 administrator can use to define the appended character.

IDENT

Name for the $IDENT statement.

Include Job

Path and name of a file containing a Job. This job is executed just
before the Trailer is processed and must therefore not contain a $
ENDJOB statement!

JMX
The following document explains the platform-specific settings for a JMX job.

Automation Engine

409

Description
Field/Control

Description

Job report
Database

The job report is managed in UC4. When the job has been processed, the UC4
Automation Engine takes the process protocol which has been stored on the
agent computer and stores it to the UC4 Database.

File

The job report is managed in UC4. After the execution of a Job, the process
protocol is available in the target system as a file.

On error only

The job report is stored in the UC4 Database and/or a file in the target system
only if the job has been canceled. This function is only available when
"Database" and/or "File" have been selected.

Optional
reports
Agent log

Activating this checkbox has the effect that a report including the Agent's
messages about the job execution is added to the task.

MBean
Server
Local Java
VM

The MBean Server is on the same computer as the JMX Agent.

Use any
existing
MBean Server

The MBean Server is automatically retrieved.

Create new
instance if not
found

Setting for instance creation

Specify
MBean Server

A given MBean Server is used.

Agent ID

An AgentID can be indicated if a particular agent should be used.

JNDI

The connection is established to a local MBean Server which is located in a


SAP J2EE Server.

Name of the
object

Name of the object to be called

Remote Java
VM

MBean Server can explicitly be indicated

Initial Context
Factory
(optional)

It depends on the vendor of the MBean Server whether this connection


parameter should be indicated.

Server URL

URL to the computer on which the MBean Server is found

Important notes for creating jobs


Oracle WebLogic:

410

Chapter3 Objects
l
l
l

Select "Remote Java VM" in the Job object's JMX tab.


Enter the term "weblogic" in the field Initial Context Factory .
Specify the Weblogic server for the server URL in the format shown below:
t3://name of the Weblogic server:port of the Weblogic server

IBM WebSphere:
Using the RMI connector:
l
l
l

"Remote Java VM" must be selected in the Job object's JMX tab.
Enter the term "websphere" in the field Initial Context Factory.
Specify the Server URL in the following format:
Host name of the WebSphere:port of BOOTSTRAP_ADDRESS

Using the SOAP connector (Websphere with activated administrative security):

The agent now uses the SOAP connector. Select "Remote Java VM" in the Job object's
JMX tab.
Enter "websphere" in the field Initial Context Factory .

Note that when the INI-file section [WEBSPHERE] does not include any settings
(which is an option as of Websphere version 7), you must enter the value "webspere soap" in
the Initial Context Factory field.
Specify the Server URL in the following format:

Host name of the WebSphere:SOAP port


l

Retrieve the port number as follows: Log on to the administrator console. Click on
Servers -> "Application server", then on your Server. Select "Transfers" -> "Ports". Use the
port number shown here in the URL. The SOAP port's default value is 8880.
Three passwords separated by commas must be specified in the Job's Login object.
l The 1st password is the user password.
l The 2nd password is the keystore password.
l The 3rd password is the truststore password.

The Soap Connector must be activated. Its port is in most cases 8880.
JBoss:
l
l
l

Select the option Local Java VM in the Job object's JMX tab.
Activate the sub-menu "Use existing MB Server".
It is not necessary to select the option "Generate new instance...".

Oracle Containers for J2EE:


l
l
l

"Remote Java VM" must be selected in the Job object's JMX tab.
Enter the term "oc4j" in the field Initial Context Factory.
Specify the Server URL in the following format:
service:jmx:rmi://Host name of the Oracle J2EE server:port/oc4j

SAP Netweaver:
l

Select "JNDI" in the JMX tab of the Job object. Enter the object name "jmx".

The JMX agent runs outside of an application server:


l
l

Select the option Local Java VM in the Job object's JMX tab.
Activate the sub-items "Use existing MBean Server" and "Create new instance...".

Automation Engine

411

MPE
The document shown below explains the platform-specific settings for a MPE job.

Description
Field/Control

Description

Job report
Database

The job report is managed by UC4. When the job has been processed,
the UC4 Automation Engine takes the process protocol which has been
stored on the agent computer and stores it to the UC4 Database.

File

The job report is managed by UC4. After the job execution, the process
protocol is available as a file in the target system.

On error only

In case of job interruption, the job report is saved in the UC4 Database
and/or a file in the target system. This is only available when
"Database" and/or "File" have been selected.

Runtime options

The host attributes defined here are assigned to the command "JOB"
as a parameter. They form the job card of the MPE Job.

Job name

Specification of a name under which the job should be executed.


A maximum of 8 alphanumeric characters are allowed. The first must
be a letter.

412

Chapter3 Objects

Queue

Selection list for the queue in which the job should run which
determines the execution's priority. "BS" stands for the highest, "ES"
for lowest priority. The default value is "DS".
The UC4 administrator administers the queue in the UC4 Variable
UC_MPE_QUEUE. A maximum of 8 characters is allowed for userdefined queues.

Input priority

Specification of the input priority (INPRI). This value is used for the
logon of the Job.
A value between "1" and "13" can be use for Input Priority. The default
value is "8".
Jobs must be prioritized so that they are above the current job fence set
by the system operator. If a value is specified which is less than or
equal to this, access is denied.

HIPRI

Check box for activating HIPRI.


HIPRI can be used to overwrite the job fence or the limit for Jobs set to
be executed. The authorizations System Manager (SM) or System
Operator (OM) are required.

Other

Additional parameters for the "JOB" command.


A maximum of 256 characters are possible. The parameters must be
specified according to the syntax..

NSK
The document shown below explains the platform-specific settings for a NSK job.

Automation Engine

413

Description
Field/Control

Description

Job report
Database

UC4 administers job reports. When the job has been processed, the
UC4 Automation Engine takes the process protocol which has been
stored on the agent computer and stores it to the UC4 Database.

File

UC4 administers job reports. After job execution, the process protocol
is available in the target system as a file.

On error only

If an error occurs, job reports are stored in the UC4 Database and/or in
the form of a file in the target system. "On error only" is only available if
"Database" and/or "File" have been selected.

Job type

3 types of NSK jobs are available:


l
l
l

Guardian - TACL commands


OSS - UNIX commands (osh Shell)
NetBatch - NBEXEC scripts

Start parameter
Priority

Specification of the Job's priority. Values between 1 and 199 are


possible.

CPU

Number of the CPU on which the job should run. Values between -1 and
15 can be selected. With value -1 being used, the system selects a
CPU.

Virtual Terminal

HP NonStop Server name comprising of a maximum of 26


alphanumeric characters and the separators \ $. # and -. Inputs and
outputs can be made on this device. Therefore, it is not possible to
specify a disk file because this might cause error messages. Physical
or virtual terminals or the corresponding processes (e.g. subtype 30
processes) can be used instead.
Use the keyword "none" to suppress the values defined in the INI file.

Note
Job reports are stored on the HP NonStop Server as odd unstructured files. These files only contain
texts and line breaks. They can be transferred to a PC using a binary (!) file transfer for evaluation
and then be read and edited with any text program. Use the HP tool CTOEDIT (operating system standard package) to convert this text file as only then it can be processed on the HP NonStop
Server.

See also:
Automated handling of prompts

Oracle Applications
The document shown below explains the platform-specific settings for an Oracle Applications
job.

414

Chapter3 Objects

Description
Field/Control

Description

Job report
Database

The job report is managed under UC4. After the Job's execution,
information on concurrent request in Oracle Applications is written to
the UC4 Database.

File

The job report is managed by UC4. After job execution it is available in


the target system as a file.

On error only

In case of job interruption, the job report is saved in the UC4 Database
and/or a file in the target system. This is only available when
"Database" and/or "File" have been selected.

Responsibility
Key

Profile option for the Oracle user: Key denoting responsibility.

Application Short
Name

Profile option for the Oracle user: Short name of the application.

OS/400
The document shown below explains the platform-specific settings of an OS/400 job.

Automation Engine

415

Description
Field/Control

Description

Job report
Database

UC4 administers the job report. When the job has been processed, the
UC4 Automation Engine takes the job report which has been stored on
the agent computer and stores it in the UC4 Database.

File

UC4 administers the job report. When the job has been processed, the
job report is available as a member in the target system.

On error only

The job report is only stored in the UC4 Database and/or as a file in the
target system if the job has been canceled. Only available when
"Database" and/or "File" have been selected.

Spool
QPJOBLOG

Only the spool contents of QPJOBLOG are stored in the UC4 Database
and/or are available as a member in the target system.

*ALL

The Job's complete spool contents are stored in the UC4 Database
and/or are available as a member in the target system.

Type
CMD

The job consists of OS/400 commands. If an error occurs in one of


these commands, the job ends abnormally. The severity code is set as
the Job's return code.

ILE CL

The job consists of an ILE CL script and is compiled by the agent before
it is processed. The compiled CL program processed subsequently.
The Job's return code can be set using the CL command "CHGVAR
VAR(&RETCODE) VALUE('0')".

416

Chapter3 Objects

REXX

The job consists of a REXX script and is passed on to the interpreter.


The Job's return code can be set using the REXX statement "retcode =
6".

Runtime options
Job name

Indicates the name which the system assigns to the job for processing.
If this attribute does not include a value, the agent creates a name in the
form "J" + RunID (minimum: 7 digits, maximum: 10 digits) + 2-figure
client number (e.g.: J0421121504).

Priority

Indicates the priority to be used for processing this Job.


The priority is a value between 1 (highest priority) to 99 (lowest priority).
This value represents the Job's importance when compared to other
Jobs in their struggle for system resources. If a value has been
specified and a successful SBMJOB has been made, the agent
executes a CHGJOB with this priority.

Job description

Indicates the name of this Job's description in the form Library/Job


description (Library can be omitted). Default value: *USRPRF

Job queue

Indicates the name of the job queue in which the job is queued in the
form Library/Job queue (Library can be omitted). Default value: *JOBD

Rooting data

Indicates the rooting data used to initiate the Job's first rooting step.
This rooting data determines the root entry which marks the program
the job executes. Default value: *JOBD

PeopleSoft
The document shown below explains the platform-specific settings for a PeopleSoft job.

Automation Engine

417

Description
Field/Control

Description

Job report
Database

The job report is managed by UC4. After job execution the information
on the PeopleSoft process (start and end times, status, session ID,
return code etc.) is stored in the UC4 Database.
The PeopleSoft process log can also be retrieved from the PeopleSoft
Process Scheduler Batch Server and added to the UC4 report.

File

The job report is managed by UC4. After the job execution it is available
in the target system as a file.

On error only

In case of job interruption, the job report is saved in the UC4 Database
and/or a file in the target system. This is only available when
"Database" and/or "File" have been selected.

Runtime options
Delete process
request after
execution

If this check box is activated, the process requirement will be deleted


after execution in PeopleSoft.

RA
The RA tab content is the same in all RA (Rapid Automation) Jobs.

418

Chapter3 Objects

Description
Field/Control

Description

Report
Database

The job report is administered in UC4. When the Job has been
processed, the UC4 Automation Engine takes the process
protocol that is stored on the agent computer and stores it to
the UC4 Database.

File

The job report is administered in UC4. The process log is


available as a file in the target system after the job run.

On error only

When the job is canceled, the corresponding report is stored in


the UC4 Database and/or a file in the target system. This field
is only available when you have selected "Database" and/or
"File".

Optional reports
Agent log
Runtime options

When this checkbox is active, a report that contains the


Agent's messages about the job run will be added to the task.

Automation Engine

Request task parameters

419

With this option being set, a dialog opens during the Job's
activation process in which you can change the specific RA
attributes / parameters (you find them in the specific RA tab).
Any modification will only affect the specific run and the object
definition itself remains unchanged.
Specifically, a PromptSet dialog opens before the Job is being
generated which is similar to other PromptSet dialogs. If one
or several PromptSet objects are assigned to the Job
("Variables & Prompts" tab), they will be displayed in a
common dialog together with the RA parameters during the
Job's runtime.
Note that the settings PROMPT_REPSONSETIME and
PROMPT_TIMEOUT(UC4 Variable UC_CLIENT_
SETTINGS) also affect the RA parameter dialog.
To have the RA parameter dialog also displayed for
Workflow tasks, you must specify the settings "Task
Prompts" in the properties (General tab) accordingly.

See also:
Rapid Automation

SAP
This document explains the platform-specific settings of an SAP job.
The SAPtab's content depends on the selected SAP job type (such as ABAP and JAVA).

420

Chapter3 Objects

Description
Field/Control

Description

Report
Database

The job report is maintained by UC4.


job reports consist of:
l
l
l

the actual job report (LIST0SO)


the specification of the created spool file
the cover page with the selected parameters (if required)

File

The job report is maintained by UC4. When the job has been executed,
the corresponding log is available in the target system as a file.

On error only

If the job is canceled, the corresponding report is stored in the UC4


database and/or a file in the target system. This field is only available if
"Database" and/or "File" have been selected.

Optional reports

Reportsretrieved from the SAP system:


l
l
l
l
l

Agent log
Application logs
Spool directory
Step lists
Statistics

These reports are available for the SAP job but not for its children.
Start parameter
Language

Language used in SAP.


The particular as language code is automatically passed on to SAP in
uppercase letters. Keep this in mind when you set the language using
script (attribute: SAP_LANG, script element :PUT_ATT).

Job name

Job name in SAP.


Max. 32 characters
The following format is used if no job name has been specified:
UC_JOB_RUN#

Job class

List for specifying the priority that should be used for handling jobs in
SAP.

Automation Engine

Target system

421

No specification or target system in SAP.


Up to SAP Basis Release 4.0:
This is the name of the host on which the job should be executed. An
SAP instance with work processes for batch processing must run on
this host.
SAP Basis Release 4.5 and later:
This is the name of an SAP Server in the form "<host name>_<system
ID>_<system no>". For example: "host31_T40_00". This SAP Server
must contain work processes for batch processing.
SAP recommends not using these parameters because they
invalidate "Workload Balance" for batch processes.

Delete job after


completion in CCMS.

Click this box if the job should be deleted in SAP after its execution.

but not on error

The job is not deleted if an error occurs in SAP.

Start mode

In the UC4 Interface, the option "as soon as possible" is used. If you
use the XBP interface you can select from two settings.

Deletion takes place in the CCMS (Computing Center Management


System) which is a special application area for administrators.

The UC4 administrator can define the interface that should be used
in the SAP agent's INI file.
As soon as possible

The system attempts to start the job as soon as possible.


If there is no SAP background task available, the job is scheduled in the
SAP system.

Immediately

The system attempts to start the job immediately.


The job aborts if there is no SAP background task (Type BTC)
available.

Spool list recipient


Recipient

Receiver

Address Type

Type of address

Report send status

Returns the transmission status. The sender is informed whether the


addressee has received the message.
If the option Default is selected, it depends on the value that is
specified in the SAP system whether a receipt is sent.

Report status by mail

Returns the transmission status by email.


If the option Default is selected, it depends on the value that is
specified in the SAP system whether a receipt is sent.

Copy

The recipient obtains a copy for information.

Blind Copy

The recipient obtains a blind copy that cannot be read by any other
person.

Express

Express sending. A dialog window opens in which you can switch to


the inbox.

No forwarding

The recipient is not allowed to forward the document to other users.

422

Chapter3 Objects

No printing

Printing the document is not allowed.

The following SAP support packages are required for using the options No printing, Report
send status and Report status by mail:
l
l
l
l

for 4.6C: SAPKB46C52


for 6.20: SAPKB62059
for 6.40: SAPKB64017
for 7.00: SAPKB70008

See also:
Consideration of Job Attributes

Siebel
The document shown below explains the platform-specific settings for a Siebel job.

Description
Field/Control

Description

Job report
Database

The job report is managed by UC4. When the job has been processed,
the UC4 Automation Engine takes the process protocol which has been
stored on the agent computer and stores it to the UC4 Database.

File

The job report is managed by UC4. After job execution, the process
protocol is available as a file in the target system.

Automation Engine

423

On error only

In case of job interruption, the job report is saved in the UC4 Database
and/or a file in the target system. This function is only available when
"Database" and/or "File" have been selected.

Start parameter

Always indicate the parameters "Gateway Server" and "Enterprise


Server".

Gateway Server

Network address of the Siebel Gateway computer

Enterprise Server

Name of the Enterprise Server

Siebel Servers

Name of the Siebel Server

Language

Login language

Compression
Encryption

Setting whether data should be transferred compressed and/or


encrypted.

See also:
Starting and Monitoring Tasks in Siebel

SQL
The document shown below explains the platform-specific settings for an SQL hob.

Description
Field/Control

Description

424

Chapter3 Objects

Job Report
Database

The job report is maintained in UC4. When the Job has been
processed, the UC4 Automation Engine takes the process protocol
which has been stored on the agent computer and stores it to the UC4
Database.

File

The job report is maintained in UC4. The process log is available in the
form of a file in the target system after job execution.

Only in the case of


error

The job report is only stored in the UC4 Database and/or in the form of a
file in the target system if the job is canceled. This checkbox is only
available when "Database" and/or "File" have/has been checked.

Optional reports
Agent log

Activating this checkbox has the effect that a report including the
Agent's messages about the job execution is added to the task.

Connection
Connection object

The DB Connection object that is used for the connection to the


database.
When you specify a Connection object, this object's connection data is
used and the definition that have been made in the Job object (in the
text fields "Server" and "Database") will be ignored.
When a Login object is defined in the job's Attributes tab, this object's
loin information will be used. When no Login object is defined, the login
information will be retrieved from the Connection object.
The job will abort when there is neither a Login object nor a Connection
object definition.
The job will also fail when the database types of the agent and the
Connection object do not match.

Server

Name of the computer on which the database has been installed


Format: Server name:Port
Example: PC01:2281
The standard ports are:
l
l
l
l

MSSQLServer:1433
Oracle: 1521
DB2:50000
MySQL: 3306

It is not required to fill in this field if the Job should be processed in


an Oracle database in RAC.
Informix requires the port to be specified.
Database

Name of the database


Informix requires the name of the Informix Server and the database
name to be separated by a slash.
Example: ol_ids_1110_1/ang

File name

Path and file name of the MS Access database

Automation Engine

425

Settings
Show headlines in
tables

Setting for the display of table headlines

Show NULL as empty


string

This option displays a field with the content NULL in the form of an
empty string "".

Remove line breaks

This setting removes all line breaks used in a column.

Column separator

Character used to separate columns in the results of SELECT


statements.

Substitute character

If the character specified as column separator is used within a


database field, the substitute character specified here is used.

Max. number of lines


in tables

If the result of an SQL statement contains more lines than specified


here, these are truncated.
This limitation applies to each SQL statement.
The number of lines is not limited if value "0" is specified.

Max. number of
characters in a table
column

The content of a database field is truncated if it comprises of more


characters than specified here.
Database fields whose contents were specified as numbers or time
stamps are not truncated.
Note that there are limitations to the script function PREP_
PROCESS_REPORT when the report is read column by column.

UNIX
The document shown below explains the platform-specific settings for a UNIX job.

426

Chapter3 Objects

Description
Field/Control

Description

Job report
Database

The job report is maintained in UC4. When the job has been processed,
the UC4 Automation Engine takes the process log which is available on
the agent computer and stores it to the UC4 Database.

File

The job report is maintained in UC4. When the job has been processed,
the UNIX process log is available in the target system in the form of a
file.

On error only

When the job has been canceled, its report is saved in the UC4
Database and/or on the target system in the form of a file. Only
available if "Database" and/or "File" have been selected.

Type
Shell Script

A job is generated, transferred to the target system and executed as a


shell script. The JCL for the UNIX job is stored in the Process tab.

Command

The command or command sequence, stored in the Command field, is


passed on to the UNIX command line. The shell which has been
defined in this tab is the one which will be called. The standard shell will
be used if no shell has been defined.
No job is generated and transferred to the target system. JCL
contained in the Process tab will be ignored. The rest will be
processed.

Start parameter

Automation Engine

Shell

427

Unix Shell, under which the job should run.


UC4 uses the standard shell from the password file if no shell has been
selected.
The UC4 administrator maintains the shells in the UC4 Variable
UC_SHELL_UNIX.

Shell options

Specification of shell options. The syntax of the parameters used for


calling the shell depends on the particular Unix Shell.

Command

Individual shell command or sequence of shell commands. Is passed


on to the shell and executed by it. Several commands are separated by
semicolons.

VMS
The document shown below explains the platform-specific settings for a VMS job.

Description
Field/Control

Description

Job report
Database

The job report is managed by UC4. When the job has been processed,
the UC4 Automation Engine takes the process protocol which has been
stored on the agent computer and stores it to the UC4 Database.

File

The job report is managed by UC4. After the job execution, the process
protocol is available as a file in the target system.

428

Chapter3 Objects

On error only

In case of job interruption, the job report is saved in the UC4 Database
and/or a file in the target system. This is only available when
"Database" and/or "File" have been selected.

Start parameter
Priority

Specification of the priority for the Job. A value between "0" and "255"
can be entered.
Priority is currently not analyzed by VMS.

Job name

Specification of the name under which a job should be executed.


Maximum 39 characters allowed.

Queue name

Specification of the queue in which the job should be activated.


Maximum 31 characters allowed.

Windows
The document shown below explains the platform-specific settings of a Windows job.

Description
Field/Control

Description

Job report
Database

The job report is handled by UC4. After a job has been processed, the
UC4 Automation Engine takes the process protocol which has been
stored on the agent computer and stores it to the UC4 Database. Doing
so is only possible if a protocol can be created. It is not possible if a
command has been used.

Automation Engine

429

File

The job report is handled by UC4. After the job execution, the process
protocol is available as a file in the target system. This only works if a
protocol can be created. It is not possible if a command has been used.

On error only

In case of job interruption, the job report is saved in the UC4 Database
and/or a file in the target system. This is only available when
"Database" and/or "File" have been selected.

Is generated by script

Select this check box in order to create an own job report instead of
STDOUT/STERR.

Type
BAT

The script statements and DATA lines that are stored in the script are
executed as MS-DOS batch file.

COM

The program that is stored in the entry field Command is executed.


The complete path and command line can be specified if needed.
The UC4 script elements that are stored in the Job object's Process
tabs are executed. The agent skips all occurring OS commands.

Interpreter

The processing that is stored in the script is transferred to an Interpreter


as a file.
The following parameters must be specified by the UC4
administrator in the agent's INI file: ECPEXE=Interpreter and
ECPEXT=File Extension.

View
Standard

The display is set to normal view.

Minimized

The display is minimized.

Maximized

The display is maximized. The display is enlarged to full screen.

Job object

More information about the job and its sub-jobs is available when the
Window Job object is used. Yet another advantage are the improved
restart options. Note that the UC4 job does not end before all sub-Jobs
are ended. The job reports show whether a particular job used a
Windows Job object.

Default

Whether or not the Windows Job object is used depends on the


configuration settings that are made in the agent's INI file.

Yes

The UC4 job uses the Windows Job object.

No

The UC4 job does not use the Windows Job object.

Start parameter
Working directory

Working directory in which the job should run.

Command

Program that should be executed. The complete path can be specified


if needed. This entry field opens only when type "COM" is selected.

Logon as batch user

The job is executed in batch mode and is not visible to a logged-on


user.

430

Chapter3 Objects

Show job on the


desktop

The job is executed and can be seen by a user who is logged on. The
job can be displayed in Windows while it is being processed in an MS
DOS window.
Note that this function is only available if the Windows agent has
been started manually and not by using a ServiceManager. The job
is displayed at the same desktop as the agent.

z/OS
The following document explains the platform-specific settings for a z/OS job.

Description
All z/OS host attributes are stored in upper-case letters.
UC4 provides various settings for the efficient use of message classes.
Field/Control

Description

SYSOUT

Depending on your particular settings, the SYSOUT protocol consists


of the JES statistics and the job output.

Database

The SYSOUT protocol is managed by UC4. When the job has been
processed, the UC4 Automation Engine takes the SYSOUT protocol
which has been stored on the agent computer and stores it to the UC4
Database.

File

The SYSOUT protocol is managed by UC4. After job execution, the


SYSOUT protocol is available in the target system as a file.

Automation Engine

On error only

431

Only when the job aborts, the SYSOUT protocol will bestored in the
UC4 Database and/or as a file in the target system (only available
when "Database" and/or "File" has been selected).

Type
UC4

The job's JCL is stored in the "Pre-Process" and/or "Process" tab.

z/OS JCL

The job's JCL is available on z/OS.


When you select this option the input field File Name becomes active.
Select the dataset which contains the JCL here.
The job card is generated from the host attributes defined here. The
Pre-Process JCL is added before the first step. The script must be
empty.
Note that the agent ignores the first file line because it expects the
job card there.

JCL incl. z/OS job


card

The complete JCL including the job card is used from the dataset which
has been specified in the input field File Name .
No runtime options are available as the definitions made in the job card
apply.
When generating a job the JCL from the Pre-Process tab is added
before the first step. The script must be empty.

Report Selection

More details are provided in the documentation message classes.

With non-JES output

Complexity of job log


Allowed values: "Default value", "Yes" and "No"
"Default value" - The job-log complexity depends on the configuration
made in the agent's INI file (parameter completeJobout=).
"Yes" - The JES statistics and job output are stored in the job log.
"No" - Only the JES statistics (JESMSGLG, JESJCL and
JESYSMSG) are included.

Obtain the following


message
class/classes

Message classes which should be read and routed


Specify one or several message classes. Examples: "A", "ABC", "X1".
Any order is possible.
The following values are also allowed: "*DEFAULT" and "*ALL",
"*DEFAULT" - The message classes which should be read depend on
the configuration made in the agent's INI file (parameter
getMsgClass=). If this setting is used "*DEFAULT" must also be
specified in the field "Route to message class/classes".
"*ALL" - All classes are read

Report handling on
Host

More details are provided in the documentation about message


classes.

432

Chapter3 Objects

Purge

This deletes the job log in the JES spool.


Allowed values: "Default value", "Yes" and "No"
"Default value" - whether the job log is deleted depends on the
configuration made in the agent's INI file (parameter jobPurge=).
"Yes" - The job log is deleted after it has been read by the agent.
"No" - The job log remains in the JES spool.

Release

The job-log release for printing.


Allowed values: "Default value", "Yes" and "No"
"Default value" - whether the job log is deleted depends on the
configuration made in the agent's INI file (parameter relMsgClass=).
"Yes" - The job log is released when it has been read by the agent.
"No" - The job log is not released for printing.

Route message
class/classes to

Message classes that should be routed.


After it has been transferred to UC4, the job log can be routed to the
specified message classes (e.g. for an Output Management System).
Enter either one or the number of message classes specified in the
field "Obtain the following message class/classes". The order is
significant.
For example:
The following message classes are read: "ABC"
and routed: "DEF"
Class "A" is routed to class "D", "B" to "E" and "C" to "F".
For example:
The following message classes are read: "ABC"
and routed: "D"
Class "A", "B" and "C" are routed to class "D".
The following values can be used instead of message classes:
"*DEFAULT" and "*NO"
"*DEFAULT" - The message classes which should be routed depend
on the configuration made in the agent's INI file (parameter
routeMsgClass=). This setting must be specified if "*DEFAULT" has
also been specified in the field "Read the following message
class/classes".
"*NO" - No routing is made

Runtime options
Job name

The name of the job in the system.

Program name

The programmer's name - it identifies the job owner or its group


(optional). The name is recorded in the job's job card.
A maximum 20 characters is allowed.

Job class

The specification of the job class in which the job should run (optional).

Automation Engine

433

Account

Accounting information about the Job. A maximum of 40 characters is


allowed.

Priority

The specification of the Job's priority (optional). A value between "0"


and "15" can be specified.

MSGCLASS

The assignment of the job log's message class (optional).

MSGLEVEL

The trace option for the job log (optional). Possibly a numerical value for
command and message separated by a comma.
Allowed formats: "Command,Message", ",Message" or "Command"
Allowed values for outputting commands:
"0" - Outputs exclusively commands
"1" - All job commands, JES2 or JES3 control commands, procedure
commands and all IEF653I messages
"2" - All job commands (JCL) and the JES2 or JES3 control commands
Allowed values for outputting messages:
"0" - Only JCL messages. In the case of abortions also JES control
commands and operator messages. For SMS errors also the
corresponding messages.
"1" - All JCL, JES, operator and SMS messages.

Notify

The specification of a notification on z/OS. A maximum of 17


characters is allowed.

Job parameters

The specification of additional job parameters such as "TIME=1440".


Separate several job parameters by commas.

z/OS file name

The name of the dataset or member which contains:


* the JCL of the job (Option "JCL from z/OS") or
* the JCL and the job card of the job (Option "JCL incl. job card from
z/OS").
For example: SYSS.UC4.JCL.JOB1 or SYSS.UC4.JCLLIB
(UC4JOB1)
Jobs can also derive from the source administration system Librarian.
The following syntax applies: *LIBRARIAN(Dataset, Member).
A maximum of 225 characters is allowed.
Dataset name and member name must be put in single quotation
marks as otherwise, the agent will put the name of the user under
which it runs in front.
Example: IBMUSER.SYSS.UC4.JCL.JOB1
The agent ignores the first file line if type "z/OS JCL" is selected
because it expects the job card in it.

434

Chapter3 Objects

Return code

This setting is relevant if the job end should be monitored via SMF
Records. The return codes of the job STEPS are collected in this case.
The setting "Highest" uses the highest return code when the job ends.
"Latest" considers only the return code which has occurred last.
The UC4 administrator can specify whether SMF Records should
be used for monitoring job ends. The relevant parameter is
SMFJob= in the Event Monitor's INI file and the Variable UC_EX_
JOB_MD=UC4START in the agent's INI file.

Runtime tab
The Runtime tab is an object class-specific tab that is available in every executable object in
UC4. It can be used to specify parameters for a task's runtime behavior.

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluation of estimated runtime (runtime evaluation)
Monitoring of maximum runtime (runtime monitoring)
Monitoring of minimum runtime (runtime monitoring)
Reaction if the runtime is longer or shorter than defined (runtime monitoring)

Description

Field/Control
Definition for ENDED_
OK

Description

Automation Engine

Return code <=

435

Maximum return code for the normal end of a task.


A task ends normally (Status ENDED_OK) if its return code lies
below or is equal to the specified maximum return code.
To set the return code, you can also use the script element
:MODIFY_STATE.

Else execute

If the relevant task does not end with a return code that lies within
the ENDED_OK zone, you can define an alternative object that
should be processed.
Note that this object will not be processed if the task is
terminated by using the script statement :EXIT.

End status for Forecast

Selection list for the end status that this task should return if you
make a Forecast calculation.

Estimated runtime (ERT)


Current ERT =

Display of this task's next estimated runtime (ERT).


You can specify an estimated runtime here. This value then applies
until an ERT calculation has been made after the task's next run.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that
the UC4 administrator has specified in the UC4 Variable UC_
CLIENT_SETTINGS using the key ERT_METHOD will be used
for the estimated runtime.

Fixed value

Enter a fixed value as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the actual runtime.
Possible selection: average, linear regression, maximal value

from the last ... runs

Number of past runs that are considered for ERT calculation.


Allowed values: 0 to 25.

+ ... %

Value in percent for an upward ERT correction.

Differences > ... % are


ignored

You can ignore possible huge deviations for the estimated runtime.

but do use ... runs at least

Number of past runs that should be considered regardless of


deviations. Allowed value: 0 to 25.

Show chart

Button for updating the estimated runtime according to the current


settings. A diagram is displayed in a separate window which
represents the last 25 ERT/RRT runs. An already open window will
be updated.

Reset values

Button for deleting the real and estimated runtimes.


After a security query, all stored runtimes will be cleared.

Maximum runtime
(MRT)

Upper limit (in percent) until which the real runtime should be used
to calculate the estimated runtime.

436

Chapter3 Objects

None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action (ELSE condition) must be
specified which reacts when maximum runtime is exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's
activation is used as the maximum runtime. An action (ELSE
condition) must be specified which reacts when maximum runtime
is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

Define a number of days and a particular time until which the task
must be finished. The starting point for the date calculation is the
task's real date. An action (ELSE condition) must be specified
which reacts when maximum runtime has been exceeded.

Minimum runtime (SRT)


None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The minimum runtime is used as a fixed value in the format
"hours:minutes:seconds". An action (ELSE condition) must be
specified which reacts if the runtime falls below the minimum
runtime.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is
used as the minimum runtime. An action (ELSE condition) must be
specified which reacts when runtime falls below the minimum
runtime.

- ... %

A correction value in percent can be specified for ERT for the


minimum runtime. The determined value is subtracted from the
estimated runtime.

Else
Cancel / Quit

With this checkbox being activated, the task's end or cancelation


process is initiated if the runtime has been exceeded. Only
available if the maximum runtime is monitored.

Execute

Selecting this checkbox determines a task's execution. You can


directly select an executable object. This task will be activated if
the runtime is above or below the expected value. Only available
when runtime is monitored.

Automation Engine

437

Comments

A different definition of runtime monitoring can be used for tasks that run in a Workflow or are
activated using a Schedule object. You can define this in the properties of the affected objects
(Runtime tab). In doing so, you can implement specific requirements for runtime monitoring that
refer to the special context of Workflows or Schedules. The task settings which are defined in the
Workflow or Schedule override the settings that were made in the task itself.
By default, the settings for runtime monitoring as defined in the task also apply to the Workflow or
Schedule.

Step List for z/OS Jobs

There is a distinctive feature in the Runtime tab of z/OS Jobs. As in other tasks, you can specify a
maximum return code in order to determine whether a job is handled as having ended normally or
has aborted.Additionally, you can evaluate individual steps. These steps must be defined in the
step list.
Return codes are checked when a z/OS job ends:
l

l
l

The first check is made in order to verify whether a system or user abend has occurred. If so,
the job is regarded as aborted and the maximum return code is used (system comes before
the user).
If no step list has been defined, the job's return code is checked and used.
If a step list has been defined, the return codes of the individual steps are compared to the
step list. Only steps whose return codes are not equal to 0 are checked. Return code 0
always signals OK.
If a step is included in the step list, it depends on the definition whether the step is OK or not
OK. The first step that is not OK considers the job to be aborted. This step's return code is
used as the job's return code.
If a step is not included in the step list, its return code must be 0. Otherwise, the job is
considered as aborted.

438

Chapter3 Objects

You can open or close the step list by using the arrow button. A table accepts the step definitions.
Field/Control

Description

Step list
Step name

Name of the step.


The step name is not case-sensitive.
Allowed characters: A to Z, 0 to 9, $, # and @.
Step names can be specified by using wildcard characters (use "*" and
"?"). "*" stands for any character, "?" for exactly one.
If "*" is the first step entry in the step list, all other steps are irrelevant

Return Code

Return code that is assigned to the step.


Several return codes can be specified. Different return codes must be
separated by commas if they are listed (for example 1,2,9); a range of
return codes is specified with a hyphen (for example 10-15). These two
ways to define return codes can be used together.

OK

Indicator for checking steps.


The step's table column is empty (default):
Each match with a specified return code means that the step is not OK.
If there is no match the step is OK.
The table column selection has been made by clicking the mouse or
using a blank (flagged with X):
Each match with a specified return code means that this step is OK. If
there is no match, this step is not OK.

See also:

Automation Engine

439

Runtime Evaluation
Runtime Monitoring
Return codes for OA jobs
Variables & Prompts Tab
The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: Job
Object class: Executable object
Object type (short name): JOBS
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available when you open the object
the next time.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

440

Chapter3 Objects

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Only defined variables

The object only obtains the object variables of the superordinate


task that have been defined in its Variables & Prompts tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and if the value that should be
overwritten has not been changed in the Variables & Prompts
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.
Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the particular PromptSet element is not a text field, click its
labeling.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.

Automation Engine

441

To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually
enter the predefined variables, or select them in a dialog that you call using the
button.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs if the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available
when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a workflow because you can only
start a rollback process within a workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but are processed by
using the Automation Engine.
Backup actions will always be processed before the object is processed, and rollback actions can
only be started for workflow tasks that have already ended. For more information, see the related
documentation.

442

Chapter3 Objects

Field/Element

Description

Enable Rollback

Use this to activate or deactivate the rollback settings.


When this option is deactivated, all the fields of this tab are
disabled.

Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

Automation Engine

Rollback

443

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

File Rollback

A file-based rollback is only available for Job and


FileTransfer objects that run on Windows or UNIX. In other
objects, the corresponding fields are disabled.
For a file-based rollback of Jobs, the system uses the
job's Agent, and for a file-base rollback of
FileTransfers, it uses the destination Agent.

444

Chapter3 Objects

Backup

Specify the path or file(s) that should be stored.


If you do not specify file names, the directory's complete
content will be backed up. To include subfolders, you must
select the option Include sub-directories .
You can use the wildcard characters * and ? in the file
name. * is a placeholder for any number of characters (0 n) and ? represents exactly one character. This allows you
to select files with a certain name and ending.
Examples for Windows:
C:\temp\test.txt
C:\temp\*.txt
C:\temp\ oder C:\temp\*
C:\temp\test??.*
The specified directory or files are automatically copied to
the following directory each time before the object runs:
<Backup folder>/<Client>/<Date>/<RunID>/
You define the backup folder in the INI files of the
agents (in the [VARIABLES] section) with the Agent
Variable UC_EX_PATH_BACKUP. By default, the
system uses "..\BACKUP" (Windows) or "../backup"
(Unix) as its backup folder (on the operating system of
the files and folders that should be backed up.
For example:
To be backed up:C:\uc4\source\*.txt
Backup folder:C:\uc4\backup
UNIX: The files are not directly stored in the directory
above but in a TAR archive that uses the RunID as its
name.
Before you run the object, make sure that there is
enough local disk space for the file backup and that the
OS user has all the required rights.
The backup folder's contents are deleted in regular
intervals. You can define how long the files should be
stored and when they should be checked with the
settings BACKUP_RETENTION_CHECK and
BACKUP_RETENTION_LIFETIME. These are
available in the UC4 Variable UC_HOSTCHAR*.
If the task starts in Rollback mode, the files are copied
from the backup folder to the directory that should be
backed up.

Automation Engine

Delete before restore

445

This field affects rollbacks.


If this option is active, the content of the original directory
that was used to create a backup will be deleted before the
backup folder is restored (see the description above of the
Backup field). This ensures that the destination directory
is empty before the files are copied from the backup folder
and avoids potential errors.
Subfolders will only be deleted if the option Include subdirectories is active.

Include subdirectories

Subdirectories and their contents will be included in


backup, deletion and restore processes.

Output ScanTab
The Output Scan tab determines the filters that are used to search the report of a task and/or
external file plus the reaction to the provided result.
Output Scan tab actions will be processed before the PostProcess tab actions.
Note that the actions will always be processed regardless of the task's end status.
Login info is required for the Output Scan even if the Windows or UNIX Agent's password check
is deactivated (UC_HOSTCHAR - ANONYMOUS_FT/JOB). Either the Login object that is set
in this tab in the section "Override host for FileScan" (if available) or the one that is specified in
the Attributes tab is used.

For example:

446

Chapter3 Objects

The above task refers to two Filter objects. FILTER.OUTPUT searches for the word ERROR in an
external file and FILTER.REPORT searches for a term that should be found in any case in the
report. The report is searched first because the list is processed from bottom to top.
The following table shows the possible effects in various situations:
The report does not The external file
include the expected includes the word
term
"ERROR"

Return code

Alarm object

9
5

ALARM.CALL

ALARM.CALL

Description

The Action area includes a table with filter definitions.


In this table, you can select one or several Filter objects whose conditions should be checked. You
also define here whether a certain conditions must apply or not and the return code that the affected
task should obtain. Optionally, you can also specify an object that should be executed.
Note that the entries will always be processed from bottom to top.
The first entry that applies is decisive for the task's return code. Successive conditions that apply
do not affect the return code. The optional object is executed in each line in which the condition
applies.
Note that filter definitions are checked at runtime. For example, a task obtains the status
FAULT_POST_PROCESSING if the Filter object you indicate searches a report that does not
exist in the task.
Field/Element

Description

Action
Output filter

The Filter object that includes the criteria that should be applied for
searching reports and/or external files.

True/False

You can select whether the criteria that are specified in the Filter object
must apply.
"true" - yes
"false" - no

Set return code

The return code for the task.

Status Text

Any text that is used for the task's remote status when the filter
definition applies.
The remote status of task appears in the corresponding column in
the Activity Window.

Execute

The object that should be processed in reaction to the result that is


supplied by the Filter object (optional).

Automation Engine

447

Field/Element

Description

Pass down to dynamic


children

This option is available in SAP jobs and RemoteTaskManager objects.


It determines whether Filter objects should also apply to child tasks.
"Yes" - The search takes place in the task and its children.
"No" - The search takes place only in the task.
"Only children" - The search takes place only in the child task.

Override host for


FileScan (optional)

By default, this task's agent and Login object are used to access an
external file that has been defined in the Filter object. You can change
one or both entries.
In FileTransfers, the destination agent is used by default.

Host

The name of an OS or a Java agent.

Login

The name of a Login object.

Form Tabs

Form tab (JMX)


The Form tabis object type-specific and is only found in JMX, PeopleSoft, SAP, or SQL Jobs.
Script elements can be easily entered through forms.
Object: Job
Object class: Executable object
Object type (short name): JOBS

448

Chapter3 Objects

The window is divided in two parts. The right half shows a tree structure listing all script elements
(JMX JCL) provided by UC4. In order to keep a clear overview, they are sorted according to topics
(e.g. operations). By double-clicking on one of the sub-categories, the appropriate script element is
added to the list in the left half of this tab.

Highlight a script element to call the appropriate form and it will be displayed instead of the tree
structure. Settings made here are automatically written to theProcess tab. The order of the script
elements automatically corresponds to the order shown in the list (compare Form and Process
tab). The order can be changed at any time simply by moving the arrow keys in the upper left half of
the window.

Other symbols for editing the list:


Symbol

Description
Inserts a new line at the current position.

Automation Engine

449

Duplicates the highlighted line.


Inserts a new line at the end.
Removes the current line.
Values can be added and selected via the available forms. Also, data is available from the MBean
Server if a connection has been established. For these cases, the button Browse (next to the
control field) can be used to obtain the existing information in table form (e.g. operations for JMX_
INVOKE).
The MBean Browser displays a maximum of 300 entries. The title line in the Browser window shows
the total number of available MBeans. If there are more than 300, UC4 recommends limiting the
number of displayed entries. Right-click the tree view in the MBean Browser and select the
command "Apply filter". Enter a filter for the MBean object names and confirm with OK, and this will
update the MBean Browser view.

The JMX agent must be selected in the Attributes tab. Otherwise, a connection will not be
established. The traffic light symbol shown on the bottom left edge of the Form tabindicates the
connection status.
Instead of specifying values in Form fields, you can also insert script variables.
See also:
About the JMX JCL

Form Tab (PeopleSoft)


The Form tabis object-type specific which is found only in PeopleSoft, JMX, SAP or SQL Jobs.
Script elements can easily be entered in it through forms.
Object: Job
Object class: Executable object
Object type (short name): JOBS

450

Chapter3 Objects

The window is divided into two parts. The right half shows a tree structure listing all script elements
(PeopleSoft JCL) provided by UC4. In order to keep a clear overview, they are listed according to
topics(e.g. monitor functions). By double-clicking on one of the sub-categories, the appropriate
script element is added to the list in the left half of this tab.

Now highlight a script element to call the appropriate form and it will be shown instead of the tree
structure. Settings made here are automatically written to theProcess tab. The order of the script

Automation Engine

451

elements corresponds to the list. It can be changed at any time simply by moving the arrow keys in
the upper left half of the window.

Further symbols for editing the list:


Symbol

Description
Insert a new line at the current position
Duplicates the highlighted line
Insert a new line at the end
The current line is removed.

In the available forms, you can enter and select values. Additionally, however, particular data is
available from PeopleSoft if a connection has been established to it. For this case, the
symbol
can be found next to the control field through which you can obtain the existing information in tableform (e.g. jobs for PS_RUN_JOB).
In order to establish a connection, a login window opens when you a PeopleSoft job is opened.
Enter the user and password, or decide to work offline.

Select the PeopleSoft agent in the Attributes tab to open this window. Connection data, which is
determined by the agent, are taken from the UC4 Variable "UC_EX_ERP_CONNECT". They are
also shown in the status bar of the tab. Next to it, the connection status is displayed with a trafficlight symbol.

452

Chapter3 Objects

Note that you can select in the Settings of the UserInterface whether to open PeopleSoft Jobs in
online or offline mode. If online mode is your choice, you can specify a Login object containing
the login data. It facilitates the automatic logon to PeopleSoft.
Instead of specifying values in Form fields, you can also insert script variables.
See also:
About UC4 JCL for Applications
About PeopleSoft JCL

Form Tab (SAP)


The Form tab is object-type specific and it is only available in SAP, JMX, PeopleSoft or SQL
Jobs. You can easily enter script elements in it through forms.
Object: Job
Object class: Executable object
Object type (short name): JOBS
No forms are available for certain functions such as R3_MODIFY_JOB or R3_SET_BDC_
DATA.

The window is divided in two parts. The right half shows a tree structure that lists all script elements
(SAP JCL) that are provided by UC4. To keep a clear overview, they are listed according to topics
(such as monitoring). Double-click on one of the sub-categories in order to display the appropriate
script element of the list in the left half of this tab.

Automation Engine

453

Now highlight the script element in order to call the corresponding form which will then display
instead of the tree structure. Settings that you specify here are automatically written to the Process
tab. The order of the script elements in the Process tab corresponds to the order of the list that
displays in the left half of the window. You can change it whenever you want by clicking on one of
the arrow keys in the upper left half of the window.

Further symbols for editing the list:


Symbol

Description
Inserts a new line at the current position.
Duplicates the highlighted line.
Inserts a new line at the end.
The current line is removed.

454

Chapter3 Objects

In the forms you can enter and select values. Additionally, you can use specific data from the SAP
system provided that there is a connection. In this case, the
symbol appears next to the
control field. You use it to obtain the existing information in table form (such as process chains for
BW_ACTIVATE_CHAIN). The following actions are also available:
Symbol

Description
Modification symbol.
Creation symbol.
Display symbol.
Calls the SAPCriteria Manager.
The "SAPCriteria Manager" privilege is required for this function.
Assumes SAP job steps.

Instead of specifying values in Form fields, you can also insert script variables.
You cannot set the checkboxes or radio buttons of the Form tab in a script variable. Entering a
script variable manually for these parameters in the Process tab has the effect that this value
will be overwritten when you store the Form tab.
The connection status is displayed with a traffic-light symbol in the status line.
You can change the client used for the SAP connection using the context menu in the status
line. SAP-system data (such as the variant list in R3_ACTIVATE_REPORT) will be retrieved for
this client.
A connection to the SAP system is established via the SAP agent. The user name, password and
client are taken from the Connection object for "ABAPBasis". The user requires the following
authorizations for using the SAP forms:
1) Authorization object S_RFC
ACTVT: 16
RFC_NAME: BDCH, RFC1, RSAB, RSPC_API, SALX, SDIFRUNTIME, SVAR_RFC, SXBP,
SXMI, SYST, BACV, SYSU
RFC_TYPE: FUGR
2) Authorization object S_XMI_PROD
EXTCOMPANY: *
EXTPRODUCT: UC4
INTERFACE: XAL, XBP, XMB
3) Authorization object S_TABU_DIS
ACTVT: 03
DICBERCLS: SPFL
This authorization is required for the form-switching operating modes, the function group RSAB for
Infopackages and RSPC_API for process-chain forms.

See also:

Automation Engine

455

About UC4 JCL for Applications


About SAP BW JCL
About SAP JCL

Form tab (SQL)


The Form tab is object type-specific and is only available in SQL, JMX, PeopleSoft and SAP
Jobs. You can easily enter SQL statements by using forms.
Object: Job
Object class: Executable object
Object type (short name): JOBS

The window is divided into two parts. The right half shows a tree structure that lists all script
elements (JMX JCL) that are provided by UC4, as well as SQL statements. Double-click one of the
sub-categories in order to add the appropriate script element to the list in the left half of this tab.
An entry form opens if a UC4 script element is concerned. The view is different if you opted for an
SQL statement. A convenient interface helps you to formulate commands. The middle area of the
tab shows a text field in which you can enter the statement. The displayed syntax provides input
assistance. The text field's font type and size depend on the settings that have been made in the
UserInterface. The right column shows the database structure with all the tables and their columns.
The primarykey and the foreign key are flagged with special icons. Table and column names
can be moved to the text field by using the drag and drop function.
Note that the database structure can only be displayed if an agent and a Login object with valid
login data have been selected in the job.
Each SQL statement must be entered in a separate line. The following illustration shows that
SQL_ON_ERROR and SELECT are dealt with in separate lines. Within a statement, you can
use several lines.

456

Chapter3 Objects

Entries that are made in the form or text field are automatically written to the Process tab. The order
of the SQL statements automatically corresponds to the order that is shown in the list (compare
Form and Process tab). The order can be changed at any time simply by moving the arrow keys in
the upper left half of the window.

By default, each statement ends with a semicolon. If this character is used within an SQL
statement, a different separator is defined and the job automatically inserts the statement SQL_
SET_STATEMENT_TERMINATOR in the script.
The Database Agent uses SQL statements exactly as specified in the Job. Statements are not
adjusted before they are passed on to the database. Therefore, UC4 strongly recommends only
using SQL statements the database supports. For example, the MSSQL Server command GO
is adjusted by the Query Analyzer before it is passed on to the database. No such adjustment
takes place within the Database Agent.

Automation Engine

457

Note for MS SQL Server Databases (especially in combination with transactions): SET
IMPLICIT_TRANSACTIONS is set to the default value ON. Further information is available in
the corresponding Microsoft documentation.
Further symbols for editing the list:
Symbol

Description
Inserts a new line at the current position.
Duplicates the highlighted line.
Inserts a new line at the end.
Removes the current line.

The traffic lights symbol shown at the bottom left edge of the Form tab indicates the database's
connection status.
Instead of specifying values in Form fields, you can also insert script variables.

See also:
About the SQL JCL
Script Tabs

Pre Process Tab


The Pre Process tab is an object type-specific tab which is only available in "Job" objects. It can
be used to store processing commands in UC4's scripting language.
Object: Job
Object class: Executable object
Object type (short name): JOBS

458

Chapter3 Objects

Description
The script is either processed when the job is activated or when it starts. The particular point in time
depends on the setting "Generate at runtime" which can be activated in the Attributes tab.
As opposed to the Process tab, the Pre-Process tab's processing commands are processed in the
header. Thus, statements can be used here which are executed before the job messenger becomes
involved.
The Pre Process and Process tabs are processed in one go. This means that it is possible to
set script variables in the Pre-Process tab which can also be accessed in the Process tab.
The script statement :INC_SCRIPT can be used to insert the Pre-Process tab's content
somewhere else.
Particularities for z/OS
In Pre Process, you can define all JCL commands (e.g. JCLLIB, JOBCAT, JOBLIB, OUTPUT etc.
) which must be defined after the job card but before the script's first step.
The Event Monitor only considers Pre-Process tab steps if this tab's first step has the same
name as the UC4 system. Otherwise, canceled Pre-Process job steps do not affect a UC4
Job's end status.
Example:
Name of the UC4 system: UC4PROD
Pre-Process tab:
//JOBLIB DD DISP=SHR,DSN=.....
// DD DISP=SHR,DSN=....
//UC4PROD EXEC PGM=modname
Process:

Automation Engine

459

//STEP01 EXEC PGM=IEFBR14


//STEP01 EXEC PGM=IEBGENER

See also:
Script Editor
About UC4 Scripts
SampleCollection

Process Tab
The Process tab is an object type-specific tab in which the processing commands of UC4's
scripting language are stored.
Object: Job
Object class: Executable object
Object type (short name): JOBS

Description
The script is either processed at job activation or start. This point in time depends on the Generateat-runtime setting which can be defined in the Attributes tab.
Processing commands that should be processed in the header (such as setting specific host
attributes) or executed before the job messenger starts, must be defined in the Pre Process tab.
Processing commands that should be processed after the job has ended are stored in the Post
Process tab. In doing so, you can influence the final end of this Job.

460

Chapter3 Objects

These lines correspond to the particular JCL (Job Control Language) of the target system and are
transferred to the target system exactly as they are. DATA lines can, for example, contain BS2000
commands or MS DOS commands for batch processing.
Particularities for Guardian/NSK
Special functions are provided for the automated handling of input requests.
Particularities for z/OS
The actual JCL is indicated here. Do NOT specify a job card (to be specified through the attributes)
or an end card.
Particularities for SAP
Because there is no JCL in SAP, UC4 supplies a SAP JCL which is interpreted by the SAP agent
and converted to processing statements for the target system.

See also:
Script Editor
About UC4 Scripts
SampleCollection

Post-Process Tab
The Post Process tab is an object type-specific tab that is only available in the objects
"FileTransfer", "Job" and "RemoteTaskManager". Processing commands can here be stored in
UC4's script language.
Object: Job
Object class: Executable object
Object type (short name): JOBS

Automation Engine

461

Description
The script commands stored in this tab are processed after the job has ended. Therefore, the job
must have run in the target system either completely (ended normally) or partially (canceled, lost
etc.).
A Job's end can still be influenced with post-script commands. The Job's return code and status
text (the text supplied by the job messenger in the Trailer) can be modified subsequently, for
example. The script statement :MODIFY_STATE - which was developed exclusively for being used
in the Post Process tab - defines the final ending of the Job.
Reports, for example, can be analyzed with PREP_PROCESS_REPORT. If an error is found, the
status ENDED_NOT_OK could be defined for a job although it has already ended normally from the
"technical" point of view and vice versa. Return code "0" is assigned to canceled Jobs because the
fact that the job has been canceled irrelevant for the further processing.
With the script statement :RSET, script variables can be transferred between the Process and
Post Process tabs. This script statement returns the value which has been assigned to the script
variable in the Process tab.
A Job's post script cannot contain JCL lines.
Additionally, the following script elements must not be used:
l
l
l

:PUT_ATT - Setting attributes for job generation is irrelevant.


:EXIT - Canceling script processing withreturn code > "0" is not allowed.
:STOP - Interrupting script processing is not allowed.

See also:
Script Editor
About UC4 Scripts
SampleCollection

Child Post-Process tab(SAP)


The Child Post Process tab is an object type-specific tab that is only found in SAP jobs and
RemoteTaskManagers.
Object: Job
Object class: Executable object
Object type (short form): JOBS

462

Chapter3 Objects

The script lines shown below are used for the children of the jobs. The following applies:
1. The script is processed for each individual child process.
2. The script is processed immediately after the child process finishes.

See also:
Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all UC4
objects.

Automation Engine

463

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

464

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

465

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Job - Execution

Object-Type specific Features

The script is processed in a specific way in the object type "Job". Depending on the JCL (Job
Control Language) and the script elements, an executable job is generated for the respective
target system and transmitted via file transfer.
The UC4 Script (if existing) and the JCL lines are processed and subsequently, the JCL is sent to
the target system. UC4 Script is never sent to the target system.

Database

The Database Agent regularly attempts to establish a connection to the database if its first
attempt was not successful. The UC4 administrator can define this interval in the INI-file
parameter connect=. The job remains in status "Active" during these attempts to establis a
connection.
The job also remains in status "Active" if the agent is not able to establish a connection because the
login data specified in the Login object is incorrect. It must be canceled manually either in the

466

Chapter3 Objects

Activity Window, using the script function CANCEL_UC_OBJECTor directly in the job by
monitoring the maximum runtime.
Keep in mind that it is not possible to end commands the agent has been processing in the
database at the moment job canceling is initiated. The JDBC interface does not provide this
function. Jobs can only be canceled between two commands. Therefore, the agent waits until a
command which is just being processed is finalized and cancels the job afterwards. Use the
functions of your database Server to cancel ongoing commands.

MPE

The UC4 administrator can specify the parameter login_check=yes in the MPE agent's INI file.
The password defined in the Login object is then checked. For reasons of security, UC4
recommends using this setting. Login_check=no only checks the User name.

UNIX

The user specified in the Login object also owns the job and report file. The UC4 administrator
can assign authorizations for both files using the agent's INI-file parameters JobFileMode= and
ReportMode=.
TThe UC4 administrator can specify the parameter login_check=yes in the UNIX agent's INI
file. The password defined in the Login object is then checked. For reasons of security, UC4
recommends using this setting. The setting Login_check=no only checks the User name.
Job - Include
When a job is processed, Includes are read and used to generate the executable job for the target
system. Depending on the job definition, activation data is retrieved, variable settings evaluated,
the attribute dialog facilitated, messages for the target system prepared, the log on/off in the
target system facilitated, the job report requested, etc.
UC4 supplies platform-specific Includes in client 0000. Within Header and Trailer Includes, user
Includes are called using the parameter "NOFOUND=IGNORE" in order to avoid errors if these
Includes do not exist.
In doing so, individual Includes can be created which are responsible for special tasks during the
various stages of job execution. These tasks are then included in UC4 processing.
For running Jobs, you require the right to run Job Includes when you use Job Includes.Note
when you use Job Includes (access method "X" for JOBI objects).
Job

Header Include

Trailer Include

User Includes

BS2000

HEADER.BS2000

TRAILER.BS2000

HEADER.BS2000.USER.PRE
HEADER.BS2000.USER.HEAD
HEADER.BS2000.USER.START
TRAILER.BS2000.USER.END
TRAILER.BS2000.USER.ABEND

GCOS8

HEADER.GCOS8

TRAILER.GCOS8

HEADER.GCOS8.USER.PRE
HEADER.GCOS8.USER.HEAD
TRAILER.GCOS8.USER.END

Automation Engine

467

JMX

HEADER.JMX

TRAILER.JMX

HEADER.JMX.USER.PRE
HEADER.JMX.USER.HEAD
HEADER.JMX.USER.START
TRAILER.JMX.USER.END

MPE

HEADER.MPE

TRAILER.MPE

HEADER.MPE.USER.PRE
HEADER.MPE.USER.HEAD

NSK

HEADER.NSK

TRAILER.NSK

HEADER.NSK.USER.PRE
HEADER.NSK.USER.HEAD
HEADER.NSK.USER.START
TRAILER.NSK.USER.END

Oracle
Application
s

HEADER.OA

TRAILER.OA

HEADER.OA.USER.PRE
HEADER.OA.USER.HEAD
HEADER.OA.USER.START
TRAILER.OA.USER.END

z/OS

HEADER.MVS

TRAILER.MVS

HEADER.MVS.USER.PRE
HEADER.MVS.USER.HEAD
HEADER.MVS.USER.START
TRAILER.MVS.USER.END

OS/400

HEADER.OS400

TRAILER.OS400

HEADER.OS400.USER.PRE
HEADER.OS400.USER.HEAD
TRAILER.OS400.USER.END

PeopleSoft

HEADER.PS

TRAILER.PS

HEADER.PS.USER.PRE
HEADER.PS.USER.HEAD
HEADER.PS.USER.START
TRAILER.PS.USER.END

RA

HEADER.CIT

TRAILER.CIT

HEADER.CIT.USER.PRE
HEADER.CIT.USER.HEAD
HEADER.CIT.USER.START
TRAILER.CIT.USER.END

SAP

HEADER.SAP

TRAILER.SAP

HEADER.SAP.USER.PRE
HEADER.SAP.USER.HEAD
HEADER.SAP.USER.START
TRAILER.SAP.USER.END

SAP BW

HEADER.SAPBW

TRAILER.SAPBW

HEADER.SAPBW.USER.PRE
HEADER.SAPBW.USER.HEAD
HEADER.SAPBW.USER.START
TRAILER.SAPBW.USER.END

Siebel

HEADER.SIEBEL

TRAILER.SIEBEL

HEADER.SIEBEL.USER.PRE
HEADER.SIEBEL.USER.HEAD
HEADER.SIEBEL.USER.START
TRAILER.SIEBEL.USER.END

SQL

HEADER.SQL

TRAILER.SQL

HEADER.SQL.USER.PRE
HEADER.SQL.USER.HEAD
HEADER.SQL.USER.START
TRAILER.SQL.USER.END

468

Chapter3 Objects

UNIX

HEADER.UNIX

TRAILER.UNIX

HEADER.UNIX.USER.PRE
HEADER.UNIX.USER.HEAD
HEADER.UNIX.USER.START
TRAILER.UNIX.USER.END

VMS

HEADER.VMS

TRAILER.VMS

HEADER.VMS.USER.PRE
HEADER.VMS.USER.HEAD
TRAILER.VMS.USER.END

Windows

HEADER.WINDO
WS

TRAILER.WINDO
WS

HEADER.WINDOWS.USER.PRE
HEADER.WINDOWS.USER.HEA
D
HEADER.WINDOWS.USER.STA
RT
TRAILER.WINDOWS.USER.END
TRAILER.WINDOWS.USER.ABE
ND

Due to the program logic, the Include object of the own client is used even if an object of the same
name is available in client 0000.
UC4 recommends using User Includes for special tasks. You can also modify the supplied Header
and Trailer Includes in client 0000 and store them in your own client. This only increases
maintenance work when the supplied Includes were changed with an updated version due to
programming reasons.
There are interdependencies between the individual Includes. Keep this in mind when modifying
Include objects.
If you do not intend to work with user-defined Include objects in general or on particular
platforms, the UC4 administrator can deactivate this function in the UC4 Variable UC_
SYSTEM_SETTINGS using the key "DISABLE_USER_HEADER". In this case, Include
objects are not called and this increases performance.

See also:
Agent's Job Messenger
Generated Jobs
Job generation is an individual stage of job execution which includes particular steps.
After a job has been started, it passes through different execution stages. In its first stage activation - it gets a run number (RunID) with which it can be clearly identified within the UC4
system. Now the job is also displayed in the Activity window of the UserInterface.
The second stage is the generation stage. The contents of the Pre Process and the Process tab are
executed and the final JCL (Job Control Language) is produced. Now you can view the generation
result with the command Open generated Job in the context menu of the Activity Window. A dialog
is called that contains three tabs. The first tab is write-protected.

Automation Engine

469

Attributes
The first tab contains the content of the attributes of the Job object. In it, the destination system and
all the necessary information for executing the object, such as the CodeTable and start type are
shown. The maximum number of simultaneously running tasks and the setting for which cases the
job must be deactivated after execution, can be viewed.
Host Attributes
The content of the middle tab depends on the type of the destination system. A UNIX job gets other
attributes than a SAP job for example. The tab, as well as the attributes of the Job object, is writeprotected and serves as information source.
JCL
The generated JCL is shown in the third tab which is not write-protected. Content modifications are
only considered for the current execution. Here, the job report contains the original JCL and the
modified one. An extra line indicates the user who has changed the content.
Note that the Dialog Generated job can even be called after the end of the job as long as it is in the
Activity window.
Job - Statistics/Report

Object-type-specific Features

External reports are only available in objects of type "Job". External reports, in the form of job
reports for Unix, SAP and Windows as well as SYSOUT and SYSLST in BS2000, will be
transferred to UC4 via a file transfer. Doing so requires the corresponding option being activated
in the Host Attributes tab.
Job reports can be called in the following ways:
Handling

470

Chapter3 Objects

Menu File Command


Last Job Report

In the Menu, File, you can select Last Job Report. A window will open
which displays the job report of the last job execution.

Click the right mouse


button on job in the
UC4 Explorer

Select Last Job Report from the menu.

Click the right mouse


button on the object in
the statistics window

Select Display Job Report in the context menu.


If no job report exists, an error message appears.

Note for the setting "Job report - Database" (seehost-attributes tab):


When a job has been executed on an agent, its corresponding job report will be stored on the
agent computer. As soon as the UC4 Automation Engine has written this data to the database,
the job report will automatically be deleted on the agent computer. If it cannot be deleted due to
an error, the deletion process will NOTbe repeated and an error message will be output.
Job Report - PeopleSoft
After job execution, PeopleSoft process data is available in the Job's report provided that the
checkbox "Database" has been activated in the Host Attributes tab.
By default, job reports contain:
l
l
l
l
l
l

Command line output of the PeopleSoft process


Status
Return code
Session ID
Start and end times
Messages

The process log from the PeopleSoft Process Scheduler Batch Server can also be displayed. This
requires particular prerequisites to be met. See: Installing the agent for PeopleSoft.

PeopleSoft Process Log File


The directory in which the log files are stored is specified in the configuration file psprcs.cfg of the
PeopleSoft Process Scheduler Batch Server (Section [Process Scheduler]). The agent retrieves the
name of the directory and log file from this configuration file. It transfers the log file to the UC4
Automation Engine which stores it in the UC4 Database.
Log/Output Directory=%PS_SERVDIR%\log_output
As an environment variable is used in the example shown above, this environment variable must
also be set in the agent. It contains the complete path specifications of the directory.
PS_SERVDIR="C:\Psoft\HR800\appserv\prcs\PSHR800"
The path of the application servers' configuration file must be indicated by the UC4 administrator.
Otherwise the agent could not access it. The format is: Server name=File.
[PSCONFIG]
PSNT=\\psserv01\appserv\prcs\PSHR800\psprcs.cfg
PSUNX=\\psserv01\appserv\prcs\PSHR800\psprcs.cfg

Automation Engine

471

An individual subdirectory is created in the retrieved directory of each PeopleSoft process. The
name of this subdirectory is specified as follows:
<PID>_<Process name>_<Process request>
<PID>

Process identification (e.g.: SQR).

<Process name>

Name of the process


Corresponds to the parameter PROCESSNAME= of PS_RUN_PROCESS

<Process request> Instance number of the process request.


Accordingly, the directory name for the report shown above is:
C:\Psoft\HR800\appserv\prcs\PSHR800\log_output\SQR_DDDAUDIT_100
The name of the log file is identical to the name of the subdirectory. The log file ends on ".log". The
file name for the log file with all the path specifications for the PeopleSoft process is as follows:
C:\Psoft\HR800\appserv\prcs\PSHR800\log_output\SQR_DDDAUDIT_100\SQR_DDDAUDIT_
100.log
Job Attributes

Job Attributes
The attributes for Job objects mainly refer to the input and setting options that are available in the
Header, Attributes and Runtime tabs.
Because there are Job objects for various platforms, some attributes refer to a particular job:
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l

BS2000
Database
GCOS8
JMX
MPE
NSK
Oracle Applications
z/OS
OS/400
PeopleSoft
SAP
Siebel
UNIX
VMS
Windows

Attributes that are available for all jobs


Some attributes (such as the archive keys of objects) are available in all executable objects. Some
attributes do not depend on the platform for which the job is defined (such as the attributes for the
host, login information or the attribute dialog). The following table provides an overview of the
attributes that are available for all jobs:
Tab

Attribute

Description

Value

Access Via:

472

Chapter3 Objects

ARCHIVE_
KEY1

Archive key 1

User-defined,
limited to 60 characters

GET_ATT,
:PUT_ATT,
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
limited to 20 characters

GET_ATT,
:PUT_ATT,
Change
Program,
via script
variable,
predefined
variable

ATTR_DLG

Attribute Dialog

"Y" - The attribute dialog


displays.
"N" - The attribute dialog
does not display.

GET_ATT,
:PUT_ATT(PreProcess)

AUTO_DEACT

Deactivate
automatically when
finished.

"NEVER" - Never
deactivate automatically.
"ENDED_ERROR_
FREE" - In the case of
error-free processing,
deactivate automatically.
"RESTART_ERROR_
FREE" - In the case of an
error-free restart,
deactivate automatically.
"ALWAYS" - Always
deactivate automatically.

GET_ATT,
:PUT_ATT

AUTO_DEACT_
DELAY

Deactivate
automatically when
finished - alwaystime delay.

User-defined,
any value between "0" and
"99".

GET_ATT,
:PUT_ATT

AUTO_DEACT_
ERROR_FREE

Deactivate
automatically when
finished - after an
error-free restart error-free.

Task status,
limited to 20 characters

GET_ATT,
:PUT_ATT

CODE

Code

The name of a CodeTable,


limited to 200 characters.

GET_ATT,
:PUT_ATT (PreProcess,
Process),
predefined
variable

Automation Engine

473

CSCRIPT

The string in the


child's PostProcess tab of the
job should be
changed.

Change Program

DATE_
CREATED

Created on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-0000 00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-0000 00:00:00"

GET_ATT

DCMODUS

Mode UserInterface

"Y" - the UserInterface is


active.
"N" - The UserInterface is
not active.

GET_ATT

FILENAME_JOB

File name

The name of the file


(without path) that the
agent creates for the job
that should run.

GET_ATT,
predefined
variable

FILENAME_
SYSLST

File name

The name of the file


(without path) that the
agent creates for the
system output (SYSLST).

GET_ATT,
predefined
variable

FILENAME_
SYSOUT

File name

The name of the file


(without path) that the
agent creates for the
system output (report).

GET_ATT,
predefined
variable

FSC_HOST

Override host for


FileScan (optional) Host

The name of an agent,


limited to 32 characters.

GET_ATT,
:PUT_ATT (PreProcess,
Process),
Change
Program,
predefined
variable

FSC_LOGIN

Override host for


FileScan (optional) Login

The name of a Login


object,
limited to 200 characters

GET_ATT,
:PUT_ATT (PreProcess,
Process),
Change
Program,
predefined
variable

474

Chapter3 Objects

GEN_AT_
RUNTIME

Generate at runtime

"Y" - Generation at
runtime.
"N" - Generation at
activation time.

GET_ATT

GROUP

Group

The name of a group,


limited to 200 characters.
" " - For an immediate start.

GET_ATT,
:PUT_ATT (PreProcess,
Process),
Change
Program,
predefined
variable

HOST

Host

The name of an agent,


limited to 32 characters.

GET_ATT,
:PUT_ATT (PreProcess),
Change
Program,
predefined
variable

INT_ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
limited to 16 characters.

GET_ATT,
:PUT_ATT,
Change
Program,
via script
variable,
predefined
variable

LAST_DATE

Last used on

The time stamp in the


format "YYYY-MM-DD
HH:MM:SS"
If not available: "0000-0000 00:00:00"

GET_ATT,
predefined
variable

LAST_USER

Last used by

The name of the User


object,
limited to 200 characters.

GET_ATT,
predefined
variable

LOGIN

Login

The name of a Login


object,
limited to 200 characters.

GET_ATT,
:PUT_ATT (PreProcess,
Process),
Change
Program,
predefined
variable

LOGIN_INFO

Login info

The Login object's entire


Login information.

GET_ATT,
predefined
variable

Automation Engine

475

MAX_JCL_
LINES

The maximum
number of job lines
that should be
generated.

User-defined,
usually jobs with a
maximum of 1000 job lines
are generated. This value
can be increased for large
jobs.

GET_ATT,
:PUT_ATT (PreProcess,
Process)

MAX_
PARALLEL_
ELSE

Parallel running
Tasks - Else

"WAIT" - Job waits until


processing is possible
"ABEND" - Job is
disrupted

GET_ATT,
:PUT_ATT (PreProcess,
Process)

MAX_
PARALLEL_
TASKS

Parallel running
Tasks - Max.

User-defined,
any value between "0" and
"99999".

GET_ATT,
:PUT_ATT (PreProcess,
Process),
predefined
variable

MAX_
RETCODE

ENDED_OK until
return code

User-defined,
limited to 11 characters.

GET_ATT,
:PUT_ATT (PreProcess,
Process)

MODIFY_
COUNT

Modified

The number of object


modifications.

GET_ATT

OBJECT_NAME

Object name

User-defined,
limited to 200 characters.

Change Program

OBJECT_TITLE

Title

User-defined,
limited to 255 characters.

GET_ATT,
:PUT_ATT (PreProcess,
Process),
predefined
variable

476

Chapter3 Objects

OO

Job report

"J" - Saves the job report in


UC4.
"F" - Saves the job report in
the target system.
"S" - Saves the job report
on error only.
"N" - Does not save the job
report.

GET_ATT,
:PUT_ATT (PreProcess,
Process. For
BS2000: only
Pre-Process)

The following
combinations are possible:
"JF" - Saves the job report
in UC4 and in the target
system.
"JSF" - Saves the job
report in the case of an
error in UC4 and in the
target system.
"JS" - Saves the job report
in the case of an error in
UC4.
"SF" - Saves the job report
in the case of an error in
the target system.
OSCRIPT

A string in the PostProcess tab of the


job should be
changed

Change Program

PPF_EXECUTE

Action - Execute

The name of an executable


object,
limited to 200 characters.

Change Program

PPF_FILTER

Action - Output filter

The name of a Filter object,


limited to 200 characters.

Change Program

PPF_
INHERITANCE

Inherit to dynamic
child tasks

"Y" - Yes
"N" - No
"C" - Children only

Change Program

PSCRIPT

The string in the


Pre-Process tab of
the job should be
changed.

QUEUE

Queue

Change Program

The name of a Queue


object,
limited to 200 characters.

GET_ATT,
:PUT_ATT
Change
Program,
predefined
variable

Automation Engine

RESOURCE_
CONSUMPTION

Consumption
(Resources)

SCRIPT

The string in the


Process tab of the
job should be
changed.

SYNC_OBJECT

Assigned Sync
object

The name of a Sync


object,
a maximum of 20
characters must not be
exceeded.

Change Program

TIMEZONE

TimeZone

User-defined
a maximum of 8 characters
must not be exceeded.

GET_ATT,
:PUT_ATT,
predefined
variable

UC4_PRIORITY

UC4 Priority

User-defined,
any value between "0" and
"255".

GET_ATT,
:PUT_ATT,
predefined
variable

USAGE_
COUNT

Last used

Number of object usages

GET_ATT,
predefined
variable

USER_
CREATED

Created by

The name of the User


object,
limited to 200 characters.

GET_ATT,
predefined
variable

USER_
MODIFIED

Changed by

The name of the User


object,
limited to 200 characters.

GET_ATT,
predefined
variable

USERID

Login info

The User ID from the Login


object's login information.

GET_ATT,
predefined
variable

See also:
Attributes
UC4.DB Change
:PUT_ATT statement
GET_ATT function

User-defined,
any value between "0" and
"99999".

477

GET_ATT,
:PUT_ATT (PreProcess,
Process),
Change
Program,
predefined
variable
Change Program

478

Chapter3 Objects

BS2000
The following overview includes the attributes of a BS2000 Job object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

ACCOUNT,
BS2_ACC,
BS2_
ACCOUNT,
ACC, A

Login info

Account from Login info of the


Login object

GET_
ATT,
predefined
variable

ENTER_
PARAMS,
ENTER_PAR,
EP

Runtime options - Enter


parameter

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

EXPRESS, E

Runtime options - Express

"Y" - Job starts immediately,


regardless of batch limit
"N" - Job does not start
immediately

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOB_CLASS,
JC

Runtime options - Job class

User-defined,
maximum 8 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

JOB_NAME, JN

Runtime options - Order name

User-defined,
maximum 8 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

Automation Engine

479

OL

Job report SYSLST

"J" - save log in UC4


"N" - do not save a log in UC4
"F" - save log in the target
system
"JF" - save log in the target
system and in UC4

GET_
ATT,
:PUT_
ATT (PreProcess)

PRIORITY, P

Runtime options - Priority

User-defined,
Value between "0" and "255"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

SYSLST_DB

SYSLST - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreScript)

SYSLST_
ERROR_ONLY

SYSLST - On error only

"Y" - SYSLST log only saved if


error occurs
"N" - SYSLST log always
saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

SYSLST_FILE

SYSLST - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess)

SYSOUT_DB

SYSOUT - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess)

SYSOUT_
ERROR_ONLY

SYSOUT - On error only

"Y" - SYSOUT log only saved


if error occurs
"N" - SYSOUT log always
saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

SYSOUT_FILE

SYSOUT - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess)

480

Chapter3 Objects

TIME, T

Max. CPU time

User-defined,
When this attribute is read, a
16-figure value with leading
zeros is returned.

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

GCOS8
The following overview includes the attributes of a GCOS8 job-object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

GCOS8_IDENT

Start parameter - IDENT

User-defined,
maximum 63 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

GCOS8_
JCLJOB

Start parameter - Include Job

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

Automation Engine

481

GCOS8_
SNUMB

Start parameter - SNUMB

User-defined,
maximum 5 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

GCOS8_
URGENCY

Start parameter - Urgency

User-defined,
Value between "0" and "63"

GET_
ATT,
:PUT_
ATT,
Change
Program

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

JMX
The following overview includes the attributes of a JMX job and describes their functions,
allowed values and ways of modification.

482

Chapter3 Objects

Attribute

Description

Value

Accesses

AGENT_ID

MBean Server - Agent ID

User-defined,
maximum 20 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

INITIAL_
CONTEXT_
FACTORY

MBean Server - Initial Context


Factory

User-defined,
maximum 100 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

JOBREPORT_
DB

Job report - Database

"Y" - yes, "N" - no

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - yes, "N" - no

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

Automation Engine

SERVER_URL

MBean Server - Server URL

User-defined,
maximum 100 characters

483

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT Statement
GET_ATT Function
UC4.DB Change

MPE
The following overview includes the attributes of a MPE Job object and describes their functions,
allowed values and ways of modification.

Attribute

Description

Value

Accesses

ACCOUNT,
BS2_ACC,
BS2_
ACCOUNT,
ACC, A

Login info

Account from the Login


object's login info

GET_
ATT,
predefined
variable

GROUPNAME,
MPE_
GROUPNAME

Login info

Logon group from the Login


object's login info

GET_
ATT,
Change
Program,
predefined
variable

484

Chapter3 Objects

JOB_NAME, JN

Runtime options - Order name

User-defined,
maximum 8 characters
The first character must be a
letter.

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report is only stored


if an error occurs
"N" - Job report always stored

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

MPE_HIPRI

Runtime options - HIPRI

"ON" - HIPRI used


"OFF" - HIPRI not used

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

MPE_
INPUTPRIO

Runtime options - Input priority

User-defined,
value between "1" and "13"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
predefined
variable

Automation Engine

485

MPE_OTHER

Runtime options - Other

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable

MPE_QUEUE

Runtime options - Queue

User-defined,
maximum 8 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

The queue set with this


attribute must be defined by
the UC4 administrator with the
UC4 Variable UC_MPE_
QUEUE. This is checked with
the statement:PUT_ATT.

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

NSK
The following overview includes the attributes of a NSK Job object and describes their functions,
allowed values and ways of modification.

Attribute

Description

Value

Accesses

CPU

Start parameter - CPU

Value between "-1" and "15"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

GROUPNAME,
MPE_
GROUPNAME

Login info

Logon group from Login info of


the Login object

GET_
ATT,
Change
Program,
predefined
variable

486

Chapter3 Objects

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

PRIORITY, P

Start parameter - Priority

User-defined,
value between "0" and "199"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

HOME_
TERMINAL

Start parameter - Virtual


Terminal

User-defined, max. 26
alphanumeric characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

NSK_JOB_
TYPE

Job type

"0" - TACL
"1" - NBEXEC
"2" - OSS

GET_
ATT,
Change
Program,
predefined
variable

See also:
Job
Host Attributes Tab

Automation Engine

487

Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

Oracle Applications
The following overview includes the attributes of an Oracle Applications Job object and
describes their functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

OA_APPL_
NAME

Responsibility - App. Short


Name

User-defined,
maximum 50 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
via script
variable,
predefined
variable

OA_RESP_
NAME

Responsibility - Key

User-defined,
maximum 100 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
via script
variable,
predefined
variable

488

Chapter3 Objects

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

z/OS
The following overview includes the attributes of an z/OS Job object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

JCL_SOURCE

Runtime options - z/OS file


name

Maximum 64 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

JOB_CLASS, JC

Runtime options - Job class

User-defined,
maximum 1 character

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

JOB_NAME, JN

Runtime options - Job name

User-defined,
maximum 8 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

Automation Engine

489

MVS_ACCOUNT

Runtime options - Account

User-defined,
maximum 40 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
via script
variable,
predefined
variable

MVS_
COMPLETEJOBOUT

Report Selection - With


additional output

" " - INI-file value


"Y" - Yes
"N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

MVS_DETERMINE_
RETCODE

Runtime options - Return


code

"H" - Highest
"L" - Latest

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

MVS_
GETMSGCLASSES

Report Selection - Obtain


the following message
class/classes

"*DEFAULT" - INI-file value


"*ALL" - All message
classes
"A" to "Z" and "0" to "9" Specify one or several
message classes

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

MVS_JOB_PARAMS

Runtime options - Job


Parameters

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

490

Chapter3 Objects

MVS_JOBPURGE

Report handling on Host Purge

" " - INI-file value


"Y" - Yes
"N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

MVS_JOBTYPE

Type

"UC4" - UC4
"JCL1" - JCL from z/OS
"JCL2" - JCL incl. Job card
from z/OS

GET_
ATT,
predefined
variable

MVS_MSG_LEVEL

Runtime options - Msg level

User-defined,
maximum 3 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

MVS_MSGCLASS

Runtime options - Msg


class

User-defined,
maximum 1 character

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

MVS_NOTIFY

Runtime options - Notify

User-defined,
maximum 16 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

Automation Engine

491

MVS_PROG_NAME

Runtime options - Prog.


name

User-defined,
maximum 20 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

MVS_
RELMSGCLASS

Report handling on Host Release

" " - INI-file value


"Y" - Yes
"N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

MVS_
ROUTEMSGCLASS

Report handling on Host Route message


class/classes to

"*DEFAULT" - INI-file value


"*NO" - No routing
"A" to "Z" and "0" to "9" Specify one or several
message classes

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

PRIORITY, P

Runtime options - Priority

User-defined,
value between "0" and "15"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

JOBREPORT_DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

492

Chapter3 Objects

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - SYSOUT log only


saved if error occurs
"N" - SYSOUT log always
saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

OS/400
The following overview includes the attributes of an OS/400 Job object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

JOB_NAME, JN

Runtime options - Job name

User-defined,
maximum 10 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

Automation Engine

493

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job reports only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

OS400_JOBD

Runtime options - Job


description

User-defined,
maximum 21 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

OS400_
JOBLOG

Spool

"QPJOBLOG" = Only spool


contents from QPJOBLOG
are saved.
"*ALL" = Entire spool contents
of the Job are saved.

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

OS400_JOBQ

Runtime options - Job queue

User-defined,
maximum 21 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

494

Chapter3 Objects

OS400_
JOBTYPE

Type

"CMD" = Job with OS/400


commands.
"CL" = Job with ILE CL script.
"REXX" = Job with REXX
script.

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
predefined
variable

OS400_
RTGDTA

Runtime options - Rooting


data

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

PRIORITY, P

Runtime options - Priority

User-defined,
Value between "0" and "99"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

PeopleSoft
The following overview includes the attributes of a PeopleSoft Job object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

Automation Engine

495

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_ATT
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_ATT
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_ATT
:PUT_
ATT (PreProcess,
Process)

PS_JOB_
DELETE

Runtime options - Delete


process request after
execution

"0" - Do not delete process


request
"1" - Delete process request

GET_ATT
:PUT_
ATT (PreProcess,
Process)

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

SAP
The following overview includes the attributes of an SAP Job object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

JOB_CLASS, JC

Start parameter - Job class

Job priority in SAP


"A", "B" or "C"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

496

Chapter3 Objects

JOB_NAME, JN

Start parameter - Job name

User-defined,
maximum 32 character

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job reports only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

SAP_
ADDRESSTYPE

Spoollist recipient - Address


Type

"B" - SAP User


"C" - Shared distribution list
"D" - X.500 address
"F" - Fax number
"G" - Organization object/ID
"H" - Organizational
unit/position
"J" - SAP object
"L" - Telex number
"O" - SAPoffice user
"P" - Private distribution list
"R" - SAP user in another SAP
system
"U" - Internet address
"X" - X.400 address

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

Automation Engine

497

SAP_
AGENTLOG

Optional reports - Agent log

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

SAP_APPLLOG

Optional reports - Application


logs

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

SAP_
BLINDCOPY

Spoollist recipient - Blind


copy

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

SAP_CLIENT

Login info

Client from Login info of the


Login object

GET_
ATT,
Change
Program,
predefined
variable

SAP_COPY

Spoollist recipient - Copy

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

SAP_DELIVER

Spoollist recipient - Report


send status

" " - Default


"A" - Always
"E" - Error case
"N" - Never

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

498

Chapter3 Objects

SAP_DST_
SYSTEM

Start parameter - Target


system

User-defined,
maximum 32 character

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

SAP_EXPRESS

Spoollist recipient - Express

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

SAP_JOB_
DELETE

Start parameter - Delete job


after completion in CCMS

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

SAP_JOB_DEL_
NOT_ON_
ERROR

Start parameter - but not on


error

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT,
Change
Program

SAP_JOB_TYPE

Job type

"0" - ABAP Engine/Business


Intelligence
"1" - Exchange Infrastructure

GET_
ATT,
predefined
variable

SAP_
JSTATISTICS

Optional reports - Statistics of


Java Scheduler jobs

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT,
Change
Program

Automation Engine

499

SAP_LANG

Start parameter - Language

User-defined,
maximum 2 character

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

SAP_
NOFORWARD

Spoollist recipient - No
forwarding

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

SAP_NOPRINT

Spoollist recipient - No
printing

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

SAP_
RECIPIENT

Spoollist recipient - Recipient

User-defined,
maximum 241 character

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

SAP_
SPOOLDIR

Optional reports - Spool


directory

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

500

Chapter3 Objects

SAP_
STARTMODE

Start parameter - start mode

"ASAP" - As soon as possible


"IMMEDIATE" - Immediately

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

SAP_
STATISTICS

Optional reports - Statistics of


ABAP jobs

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT,
Change
Program

SAP_
STATUSBYMAIL

Spoollist recipient - Report


status by mail

" " - Default


"A" - Always
"E" - Error case
"N" - Never

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

SAP_STEPLIST

Optional reports - Step lists

"Y" - ja, "N" - nein

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
ChangeProgramm

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

Siebel
The following overview includes the attributes of a/an Siebel Job object and describes their
functions, allowed values and ways of modification.

Automation Engine

501

Attribute

Description

Value

Accesses

COMPRESSION

Start parameter Compression

"1" - Yes, "0" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

ENCRYPTION

Start parameter - Encryption

"1" - Yes, "0" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

ENTERPRISE_
SERVER

Start parameter - Enterprise


Server

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

GATEWAY_
SERVER

Start parameter - Gateway


Server

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

502

Chapter3 Objects

LANGUAGE

Start parameter - Language

User-defined,
maximum 3 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

SIEBEL_
SERVERS

Start parameter - Siebel


Servers

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

Automation Engine

503

SQL
The following overview includes the attributes of a SQL Job object and describes their functions,
allowed values and ways of modification.

Attribute

Description

Value

Accesses

DATABASE_
NAME

Connection - database

User-defined,
maximum 100 characters

GET_ATT
:PUT_
ATT (PreProcess,
Process)
Change
Program,
predefined
variable

DATA_
SOURCE

Connection - file name

User-defined,
maximum 255 characters

GET_ATT
:PUT_
ATT (PreProcess,
Process)
Change
Program,
predefined
variable

JOBREPORT_
DB

Job report - database

"Y" - yes, "N" - no

GET_ATT
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - on error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_ATT
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - file

"Y" - yes, "N" - no

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SERVER_
NAME

Connection - server

User-defined,
maximum 100 characters

GET_ATT
:PUT_
ATT (PreProcess,
Process)
Change
Program,
predefined
variable

504

Chapter3 Objects

SQL_
AGENTLOG

Optional reports - Agent log

"Y" - yes, "N" - no

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SQL_
CAPTIONS

Settings - show headlines in


tables

"Y" - yes, "N" - no

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SQL_
COLUMN_
SEPERATOR

Settings - column separator

User-defined,
maximum 1 character

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SQL_MAX_
CHARACTERS

Settings - max. number of


characters in a table column

User-defined,
value between "1" and "9999"

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SQL_MAX_
ROWS

Settings - max. number of


lines in tables

User-defined,
value between "1" and "9999"

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SQL_
REMOVE_
CRLF

Settings - remove line breaks

"Y" - yes, "N" - no

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SQL_SHOW_
NULL

Settings - show NULL as


empty string

"Y" - yes, "N" - no

GET_ATT
:PUT_
ATT (PreProcess,
Process)

SQL_SUBST_
CHARACTER

Settings - substitute character

User-defined,
maximum 1 character

GET_ATT
:PUT_
ATT (PreProcess,
Process)

Keep in mind that :PUT_ATTmay be used to set a database plus server (DATABASE_NAME,
SERVER_NAME) or a Microsoft Access database. It is not possible to assign values to all
three attributes because the access to the database would not be unique.

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT Statement

Automation Engine

505

GET_ATT Function
UC4.DB Change

UNIX
The following overview includes the attributes of a UNIX Job object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report is only stored


if a error occurs
"N" - Job report is always
stored

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

UNIX_CMD

Start parameter - Command

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
via ScriptVariable,
predefined
variable

UNIX_SHELL

Start parameter - Shell

User-defined,
maximum 3 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

The Unix Shell set with this


attribute must be defined by
the UC4 administrator in the
UC4 Variable UC_SHELL_
UNIX. This is checked with
the statement :PUT_ATT.

506

Chapter3 Objects

UNIX_SHELL_
OPTIONS

Start parameter - Shell options

User-defined,
maximum 16 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via ScriptVariable,
predefined
variable

UNIX_TYPE

Type

"SHELL_SCRIPT" - Job is
generated, transferred to the
target system and executed
as the shell script.
"COMMAND" - Command or
command sequence is sent to
the shell and executed there.

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
predefined
variable

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

VMS
The following overview includes the attributes of a VMS Job object and describes their functions,
allowed values and ways of modification.

Attribute

Description

Value

Accesses

JOB_NAME, JN

Start parameter - Job name

User-defined,
maximum 39 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

Automation Engine

507

JOBREPORT_
DB

Job report - Database

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - Yes, "N" - No

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

PRIORITY, P

Start parameter - Priority

User-defined,
Value between "0" and "999"

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
predefined
variable

VMS_QUEUE_
NAME

Start parameter - Queue name

User-defined,
maximum 31 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

508

Chapter3 Objects

Windows
The following overview includes the attributes of a Windows Job object and describes their
functions, allowed values and ways of modification.

Attribute

Description

Value

Accesses

DOMAIN, WIN_
DOMAIN

Login info

Domain from Login info of the


Login object

GET_
ATT,
Change
Program,
predefined
variable

JOB_OBJECT

Job object

"Y" - yes, "N" - no, " " - Default

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

JOBREPORT_
DB

Job report - Database

"Y" - yes, "N" - no

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
ERROR_ONLY

Job report - On error only

"Y" - Job report only saved if


error occurs
"N" - Job report always saved

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

JOBREPORT_
FILE

Job report - File

"Y" - yes, "N" - no

GET_
ATT,
:PUT_
ATT (PreProcess,
Process)

Automation Engine

509

WIN_CMD

Start parameter - Command

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

WIN_LOGON_
AS_BATCH

Start parameter - Log on as


batch user

"Y" - yes, "N" - no

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

WIN_REPORT_ Job report - Is generated by


BY_SCRIPT
script

"Y" - yes, "N" - no

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

WIN_SHOW_
AT_DESKTOP

Start parameter - Show job at


the desktop

"Y" - yes, "N" - no

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

WIN_TYP

Type

"BAT" - batch processing,


"KDO" - command,
"EXTCOMPROC" - Interpreter

GET_
ATT,
Change
Program,
predefined
variable

WIN_VIEW

View

"NORM" - window,
"MAX" - full screen,
"MIN" - symbol

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program

510

Chapter3 Objects

WIN_WORK_
DIR

Start parameter - Working


directory

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT (PreProcess,
Process),
Change
Program,
via script
variable,
predefined
variable

See also:
Job
Host Attributes Tab
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

3.2.17 Login
Login
The "Login" object stores login data for hosts. Jobs and FileTransfers use it in order to access
operating systems and applications.
Object class: System object
Object type (code designation): LOGIN
The agent passes the login information and password on to the OS or application whenever a job or
FileTransfer should be processed. This information is checked and the OS rejects the execution if
any of the provided data is incorrect.
If the information is correct, the task is processed under the ID which has been stored in the Login
object. This ID is not a UC4 user ID but an OS ID.
Some operating systems allow a deactivation of the login check. Therefore, the UC4
administrator can specify in the agent's INI file whether login data should be checked.
In addition to handling Logins manually in the UC4 Explorer, you can also use the following
script elements:
l
l
l

CREATE_OBJECT - Creates a new Login object


MODIFY_OBJECT - Changes the attributes of a Login object
REMOVE_OBJECT - Deletes a Login object

Creating Login Objects


Login objects serve to store login data for hosts.

Automation Engine

511

Procedure

1. Click the button in the toolbar and a window opens which lists all the available object
types. Select type "Login" (LOGIN).
2. Assign a suitable name and open the Login object. Then click the Login tab.
3. Enter the login data to be used by the agents to log on to the host. Login data can be
specified for one particular agent or for all agents of a particular platform. If you select an
agent name in the first column, the second column specifying the platform is automatically
completed. If you select the wildcard character *, the platform must be manually specified in
the second column. The specification of Login data is required in any case.
4. For reasons of security, UC4 recommends splitting your login data to several Login objects
and to assign the relevant authorizations accordingly. The availability of different Login
objects also helps to keep a clear overview.
5. Login objects are system objects.

Various other settings are available for Login objects. Details are provided in the documentation
about the individual tabs.
Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

512

Chapter3 Objects

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates user, date and time regarding the most recent use of the object. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Archive Keys

Two keywords of your choice can be specified in all executable objects and the
Sync object. These keys are written to the statistical data each time the object
is processed.
Statistical data can be selected using these archive keys. Archive keys are
displayed in the Statistical Overview and can be printed.

Login Tab
The Login tab is object type-specific and is only found in the "Login" object. You can define login
data that is required by jobs and file transfers for logging on to operating systems and
applications here.
Object: Login
Object class: System object
Object type (code designation): LOGIN

Description

Field/Control Description

Automation Engine

Name

513

The name of the agent or the backend system.


You can select the agent from a dropdown list. The list includes all the installed
agents of the UC4 system.
You can also directly enter a value in this field. This is required for specifying the
name of a backend system (such as a Version Management system). Then you
select the related system type in the "Type" column. It is the administrator who
defines the system types (UC4 Variable UC_LOGIN_TYPES).
When you select "*", the selection is not limited to the name. In this case, you
must always specify the type. The Login information of this line then applies to all
the agents / systems of the selected type.
Lines that include a unique name are given preference to "*".

Type

The platform of the agent or type of the backend system.


The host type will automatically be set and cannot be changed when you select a
particular agent.
Specific host types: ILM (only selectable in system client 0000)
"MAIL" - used for e-mail connections via SMTP
"DB" - for partitioning with
RA agents: Note that you must select the name of the solution.
The administrator can define additional types for Login objects in the UC4
Variable UC_LOGIN_TYPES. These types can be selected in the column
when you either define "*" or any value for the name.

Login info

Login information to be used for logging on is specified here.


Login information must be defined in the format which is suitable for the particular
operating system or application.
Note that there can be platform-specific peculiarities.

Password

Login password shown with hidden characters.


Maximum 20 characters
MPE is an exception. 3 passwords can be specified. The password plus
separators must not exceed 62 characters.
Passwords must not include commas, regardless of the platform you use.

Comments

Login information can be read using the script function GET_ATT and the corresponding job
attributes.

Login Information Format

Operating system / Application

Format

Conversion to capital
letters

BS2000

user ID, account

entire field

514

Chapter3 Objects

Database

user name

none

GCOS8

user ID

entire field

JMX

user name

none

MPE

user ID.account[,group
name]

entire field

NSK

Group name.user ID

none

Oracle Applications

user name

none

z/OS

user ID

entire field

OS/400

user ID

entire field

PeopleSoft

Operator ID

none

SAP (ABAP Engine/Business


Intelligence)

Client, user ID

none

SAP (Exchange Infrastructure)

XI user ID

none

UNIX

user ID

none

VMS

user ID

entire field

Windows

domains\user ID

domains only

Platform-specific Features

J2EE/JMX
Usually, it is only required to specify one password. Three passwords must be indicated (separated
by commas) if WebSphere version 6 with the activated administrative security is used:
l
l
l

The 1st password is the user password.


The 2nd password is the keystore password.
The 3rd password is the truststore password.

Oracle Applications
In Login objects, an internal OA user must be specified who should be used for processing jobs. By
contract, a valid OA database user must be specified in the object ERP_LOGIN.
Windows
"*OWN" can be specified as domain when logging on for Windows. The Windows job is then
processed with a local login authorization.
Note that Windows agents require particular rights to process Jobs. These must be assigned to
the user who starts the agent.
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all
object types in UC4.
Object: Login
Object class: System object
Object type (code designation): LOGIN

Automation Engine

515

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

516

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

517

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.18 Notification
Notification
A Notification is an object that can be used to inform UC4 Users of task statuses or other
changes via email, SNMP trap or through the UserInterface with the Notification Monitor. Some
Notification types include options to escalate to another Notification based on wait time and/or
User rejection of the Notification from the Notification Monitor.
Object class: Executable object
Object type (short name): CALL
The Attributes tabincludes an option that specifies the Notification type. The type you select
determines whether emails are sent, SNMP traps are created, messages are sent to the UC4
Notification Monitor, and how messages are escalated. Available options for each type are listed in
the table below:

518

Chapter3 Objects

Type

Email

SNMP Trap

Notific
ation
Monito
r
Messa
ge

Escal
ation

Email

Sent

Not available

Not
applica
ble

Not
applic
able

Message

Optionally sent

Optionally created

Must
be
accept
ed

Not
applic
able

Request

Optionally sent

Optionally created

Can be
accept
ed or
rejecte
d

Time
based

Alert

Optionally sent

Optionally created

Can be
accept
ed or
rejecte
d

Time
based
or by
User
rejecti
on

To send Emails using Notification objects, you must correctly set up the E-mail connection.

Notification Monitor

The Notification monitor is a window that displays Notification messages in the UserInterface. The
particular User sees it either immediately or when s/he logs on the next time. For more information
on the Notification Monitor, see Notification - Monitor.
Creating Notifications
Notification objects send messages to email addresses, individual users, or even user groups in
a UC4 system's client. Before creating your Notification, you should know what template to use
and which tabs you will want to respond to.

Selecting a Template

UC4 ships following Notification templates: CALL.ALARM, CALL.STANDARD and


CALL.MAIL.HTML.
The CALL.ALARM template has:
l
l

Alert set as its type on the Notification tab


&UC_CAUSE_NR entered in the Attach reports from Task (RunID) field on the
Notification tab.
A predefined sample code on the Process tab.

Automation Engine

519

CALL.ALARM is a helpful template for using UC4's scripting language for your notification
messages and when you want to start with example code that you can configure to fit your needs.
For more information, see Notification - Object Type ALARM.
The CALL.MAIL.HTML template shows the following peculiarities:
l
l

Email is set as its type on the Attributes tab.


Notification tab: It includes a predefined notification text in HTML format.
&UC_CAUSE_NR is entered in the Attach reports from Task (RunID field.
A sample script that reads the values of the causing object and writes them to the notification
text on the Process tab.

The CALL.STANDARD template has:


l
l

Request set as its type on the Notification tab


Nothing defined on the Notification or Process tabs.

CALL.STANDARD is helpful template for using the Notification tab in order to define your
Notification messages. The Notification tab allows you to define messages without the complexity
or powerful benefits of UC4's scripting language.

Which Tabs to Use

When you define a Notification, you have to consider how you want to send messages, what you
want to send, and who you want to send them to. The tabs you will use to create a Notification will
depend on the answers to those questions.
To Consider:

Use:

How you want to send


messages

The Type and other settings on the Attributes tab, and optionally the
settings on theHeader, Variables & Prompts, Documentation, Sync
and Runtime tabs.

What you want to


send

The Notification and/or Process tabs.


From the Notification tab you can specify a subject and message
body. These fields allow for text and Variable objects, but if you want to
create anything more complex (like returning the calling objects name
or putting in a line break), you will want to use the Process tab instead.
The Process tab is a type-specific tab where processing instructions
are stored in UC4's scripting language. If you use the Process tab, text
entered for the subject and message on the Notification tab will be
ignored.
Another thing you can define on the Notification tab is how you attach
files. The file attachment settings from the Notification tab can still be
used even if you are using the Process tab to specify a subject and
message body.

Who you want to send


them to

The Recipients tab to specify users, user groups, and email


addresses. If a Calendar keyword is additionally specified, the
receivers will only be notified if the relevant date lies within the
Calendar's specified period of time. All the specified users are informed
if otherwise - due to the specified Calendar conditions - none of the
users would be informed.

520

Chapter3 Objects

Procedure

1. Click the button in the toolbar. A window listing all the available object types
opens. Select a Notification template. To create a Notification with predefined code
on the Process tab, select CALL.ALARM.
2. Assign an adequate name and open the Notification object. Then click on the
Notification tab
3. Select a Notification type and respond to any of the other fields on the Process tab.
More detailed information about all the possible impacts is provided in the Notification
Monitor description. Define your subject, message, and attachments using the
Notification and/or Process tabs.
4. Specify recipients on the Recipients tab.
5. Optionally specify settings on the Header, Variables & Prompts,
Documentation, Sync and Runtime tabs.
Header tab
The Header tab is a general tab that is available in every UC4 object.

Description

Field/Control

Description

Header
Title

You define object titles here. This title should contain a short and
characteristic description of the related object because it appears in all
overviews.

Automation Engine

521

Created

This indicates the user who has created this object including the date
and time.

Modified

This indicates the user who has last modified this object including the
date and time. The number of times that the object has been modified is
displayed to the right.

Last used

This indicates user, date and time regarding the most recent object
usage. The number of times that the object has been used is displayed
to the right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

Archive keys

You can specify two keywords of your choice in all executable objects
and in Sync objects. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects.

Default (UC_
CLIENT_SETTINGS)

When you select this option, the reports that the UC4 administrator has
defined in the UC4 Variable UC_CLIENT_SETTINGS with the key
EXT_REPORTS will be generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize tasks on the basis of defined conditions. To use this function, you enter
one or several Sync objects including the actions that should be included in this tab.

522

Chapter3 Objects

When the task starts, the Sync objects are checked one after the other. The UC4 Automation
Engine tries to use the Sync object in the first line by calling the start action. If this is not possible
because of the Sync object's current condition, the task waits, aborts or is skipped. The type of
reaction depends on the Else condition that is defined in the tab's last column. If "wait" is specified,
the task waits until it can use the Sync object with the start action. The UC4 Automation Engine
checks the Sync object in the next line etc. The task starts as soon all Sync objects are
successfully used. Depending on the task's end status, either an abend or end action is processed.
You can specify up to 500 Sync objects.
Sync objects must not include more than 5000 rules. Rules are defined actions that are directly
entered in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Because of this task allocation, it can take several seconds until a Sync is released after
a task has ended. In this case, the report entry shows a time stamp that is later than the task
has ended. Such delays occur when the primary's work load is high or if it is processing lots of
Syncs.
Note that using many Sync objects and rules can reduce task clarity. Therefore UC4
recommends keeping the number of Sync objects to a minimum.

Description

You can only select actions that have been defined in the Sync object.
Field/Control

Description

Sync object

This selects the Sync object that should be used for synchronizing a
task.

Start action

This defines the action that should be taken when a task starts. If this
is not possible because of the Sync's status, the Else condition
becomes effective.

Abend action

This action will be processed when the task aborts.

Automation Engine

End action

This action will be processed when the task ends successfully.

Else

This defines what should happen to the task when the start action
cannot be executed:
l

l
l

the task should wait until the start action can be executed
(WAIT)
the task aborts (ABEND)
the task is skipped (SKIP)

See also:
Sync
Attributes Tab
The Attributes tab is object type-specific and is only available in Notification objects.
Object: Notification
Object class: Executable object
Object type (short name): CALL
It contains the specifications for the type of Notification.

Description

Field/Control
Attributes

Description

523

524

Chapter3 Objects

Group

When the Notification should be started through a Group, you can


define the particular Group here. No entry means that the Notification is
activated immediately.
Note that the entry in this field will not be considered if the Notification
is started through a Workflow, a Schedule or as a recurring task.

Queue

Selection of a Queue object in which the FileTransfer should be


processed. The FileTransfer automatically starts in the Client Queue
(object name: CLIENT_QUEUE) if nothing has been specified in this
field.

Int. Account

The specification of an internal account.


Contents do not affect the UC4 system's internal processing. You can
access the attribute "Int. Account" with script elements and integrate it
in your processes.

Priority

You can assign different grades of importance for Notifications: normal,


low or high. This priority is displayed in emails and in the notified
operator's message window and the color of the icon in the edge of the
Notification monitor changes according to the selected priority:
l
l
l

low - green
normal - yellow
high - red

This priority only serves to visualize a Notification's importance but


has no other effects.
Type

There are four type that affect how messages are sent to the
Notification monitor and what kinds of escalations are available:
Message: Message will be sent to the Notification Monitor. No
escalation is available.
Request: Messages will be sent to the Notification Monitor. Users
can accept or reject the message, but their selection will not escalate
the message to another Notification. However, the Notification can be
escalated based on the time settings in the "Escalation" box.
Alert and Messages will be sent to the Notification Monitor. Users can
accept or reject the message. The Notification will be escalated if a
user rejects the message or based on the time settings in the
Escalation box.
Email is the Notification type: Message will not be sent to the
Notification monitor and no escalation is available.
The type defines expected reactions from the operator who should be
notified.

SNMPconnection

Activate this check box if an SNMP Trap should also be created when
a Notification starts.

Send email

If this check box is activated for Message, Request, or Alert types,


emails are also sent to the responsible recipients at Notification start.
You can specify two email addresses in User objects. Emails are then
sent to both addresses.

Automation Engine

525

Escalation

Only available for the types "Request" and "Alert".

After ... Min. without


response

Time limit (in minutes) in which the controlling recipient has to respond.

quit automatically

If the check box "quit automatically" is activated, an escalated


Notification automatically closes its predecessor with the status
ENDED_ESCALATED.

Notification

An additional Notification which will be activated whenthe controlling


recipient does not respond, or when a user rejects an "Alert" message
in the Notification Monitor, or when a user rejects an "Alert" message in
the Notification Monitor.

Runtime parameters
UC4 Priority ... (0-255)

The priority that should be used for this job's execution in UC4.
Allowed values: 0 to 255
Default: 0
The priority that the UC4 administrator has specified in the UC4
Variable UC_CLIENT_SETTINGS with the key "TASK_
PRIORITY" is used when you select the value "0".

TimeZone

The TimeZone that should be used.

Generate at runtime

You select this check box if the Notification should not be generated at
activation time but at runtime.

Tasks running
parallel
Max. number

The setting that defines the maximum number of parallel executions for
this Notification.
Allowed values: 0 to 99999
Default: 0 (no limit on tasks running parallel)
Examples:
Max. "1" - At all times, there must only be one active Notification.
Max. "2" - At all times, the maximum of two active Notifications must
not be exceeded.
etc.

Else: Wait Abort

The instructions that define how this Notification should be handled if


its execution exceeds the maximum number of tasks that are set to run
parallel.

Notification tab
The Notification tabis an object type-specific tab that is only available in the Notification object.
It includes a subject, the message body and attachment settings. The subject and the message
body will be ignored when you use the Process tab.
Object: Notification
Object class: Executable object
Object type (short name): CALL

526

Chapter3 Objects

Description

Field/Control

Description

Subject

The title for the message or the subject field of e-mails.


This field allows text and Variable objects. This setting will be ignored
when you use the Process tab. An e-mail subject will automatically be
created when you do not specify it. An automatic subject is composed
of the Notification object's name, its running number (RunID) and the
client.
For example: Notification: 'DAYSHIFT' RunID:'0001569030'
client:'0011'

Text field for the


message

Attachments

Max. 8000 characters. This field allows text and Variable objects, but if
you want to create anything more complex (like returning the calling
objects name or putting in a line break), you will want to use the
Process tab instead. This setting is ignored if you use the Process tab.

Automation Engine

Attach reports from


task (RunID)

527

The RunID of the task whose reports should be attached to the e-mail.
A file is sent for each report type. The file names are composed as
follows:
RunID.report type.txt
For example: "002523059.LOG.txt"
You can also include external Job output files.

Source:
This option is only available when the Type is set to E-mail or the Email box is checked on the Notification tab
This option indicates the reports and files that should be attached and is
only relevant for Jobs.
l

Database - Only the Job's default reports that are stored in the
UC4 Database are attached. This also applies to the Job report
if it has been stored in the UC4 Database.
External files - Files that are stored on the agent computer. This
also applies to the Job report (if it has been stored as a file) and,
if available, registered Job output files.
All - Reports in the database and files on the agent computer. If
the same report is available in the database and as a file, it is
only sent once.Two e-mails are sent if data is available on the
agent (one from the AutomationEngine and one from the Agent).

To send external output files, the user requires the authorization "P"
for external reports (EXTREP) and Jobs. Otherwise, the files are
not attached and an error message is written to the Notification's
report. The agent on which the Job has been executed must be
active and the files must exist.
Attach a file

The path and the name of the file that should be attached.
The file must be stored in a directory that can be accessed by the Email connection.

Recipients tab
The Recipients tabis object type-specific and is only available in Notification objects. It contains
the specifications for the receivers of a Notification.
Object: Notification
Object class: Executable object
Object type (short name): CALL

528

Chapter3 Objects

Description

Field/Control

Description

Calendar

The Calendar that includes the schedule of the responsible recipient.

Keyword

The time period for which a recipient is responsible.


This time period corresponds to a defined calendar keyword.
When a Calendar is specified, the recipient will only be notified when
the current date lies within the defined Calendar keyword.

Recipients

You can either select a particular User, or a UserGroup, or an email


address as the responsible recipient who should be notified. When two
email addresses are specified in User objects, emails are sent to both
addresses. Selecting a UserGroup means that all its members will be
notified. You can also specify an email address. Make sure you select
at least one User or UserGroup for Message, Request, or Alert
Notification types to assure that messages will be written to the
Notification Monitor.
You can add or delete users and user groups at runtime by using the
script elements:ADD_ATTand:REMOVE_ATT.
All the specified users are informed if no user is available because
of Calendar conditions.
Predefined variables can only be used in the Recipients column,
and only when they represent an email address.

Automation Engine

529

Runtime tab
The Runtime tab is an object-specific tab that is available in every executable object in UC4. It
can be used to specify parameters for a task's runtime behavior.

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluating the estimated runtime (Runtime Evaluation)
Monitoring the maximum runtime (Runtime Monitoring)
Monitoring minimum runtime (Runtime Monitoring)
Reaction to runtimes that have been exceeded or not reached (Runtime Monitoring)

Description

Field/Control

Description

Definition for
ENDED_OK
Return Code <=

The maximum return code for a task's normal end.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.

Else execute

You can run an object when the task does not end with a return code
that lies within the ENDED_OK area.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

530

Chapter3 Objects

End status for


Forecast

The selection list for the end status that this task should return when
you make a forecast calculation.

Estimated runtime
(ERT)
Current ERT =

This displays the task's next estimated runtime (ERT).


You can enter the estimated runtime here. This value applies until the
ERT calculation is made after the task's next execution.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" is used to calculate the
estimated runtime.

Fixed value

A fixed value is entered as the estimated runtime.


Format: "seconds"

Dyn. Method

The selection list for the dynamic method that is used to calculate the
estimated runtime from the real runtime.
Possible selection: Average, linear regression, maximal value

from the last ... runs

The number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

A value in percent for an upward correction of the ERT.

Differences > ... % are You can ignore possible huge differences to of actual runtimes.
ignored
The upper limit (in percent) for actual runtimes that should be included
in estimated runtime calculation.
but do use ... runs at
least

The number of past runs that should be considered regardless of


differences. Allowed value: 0 to 25.

Show Chart

A button that you can click in order to update the estimated runtime
according to the current settings. A diagram displays in a separate
window; it shows the last 25 ERT/RRT runs. Windows that are already
open are updated.

Reset Values

A button that you can use to delete the real and estimated runtimes.
A security query displays, confirm it and all saved runtimes are cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's activation is
used as its maximum runtime. You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

Automation Engine

531

+ ... %

When you select the ERT, you can also specify a correction value in
percent for the maximum runtime. The value you determine is added to
the estimated runtime.

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

A number of days and a time is determined until which the task must be
finished. The starting point for the date calculation is the task's real
date. You must specify an action (ELSE condition) that applies if the
maximum runtime has been exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The minimum runtime is used as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the runtime falls below the minimum runtime.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as the minimum runtime. You must specify an action (ELSE condition)
that applies if the runtime falls below the minimum runtime.

- ... %

A correction value in percent can be specified for ERT for the minimum
runtime. The determined value is subtracted from the estimated
runtime.

Else
Cancel / Quit

If you activate this check box is activated, the task is canceled or quit if
the runtime has been exceeded. Only available if the maximum runtime
is monitored.

Execute

If you activate this check box, you determine that the task is executed.
You can directly select the executable object. If the runtime is
exceeded or not reached, the specified task is executed. Only available
if the runtime is monitored.

Comments

A different type of runtime monitoring can be used for tasks that have been activated in a Workflow
or using the object "Schedule." You can define it in the properties of the relevant object (Runtime
tab). The setting that are defined within the context of a Workflow or Schedule overrule the settings
that have been defined in the task itself.
You can also pass these setting on for runtime monitoring in the Workflow or Schedule. This is the
default setting.

See also:
Runtime Evaluation
Runtime Monitoring

532

Chapter3 Objects

Variables & Prompts Tab


The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: Notification
Object class: Executable object
Object type (short name): CALL
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically appended during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Automation Engine

Only defined variables

533

The object only obtains the object variables of the superordinate


task that have been defined in its "Variables & Prompts" tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the "Variables & Prompts"
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
You can use the following procedure in order to overwrite PromptSet variables with the value of a
parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.
Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the PromptSet area is not a text field, you click on the
labeling of the PromptSet element.
PromptSet objects

In the Value & Prompts tab, you can also select one or several PromptSet objects that should be
called during the activation process. In doing so, you can overwrite the default values of PromptSet
elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. To change this order, you use the arrow buttons.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables

534

Chapter3 Objects

in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually
enter the predefined variables, or select them in a dialog that you call using the
button in the
toolbar.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined Variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs when the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same Variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available
when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a workflow because you can only
start a rollback process within a workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but are processed by
using the Automation Engine.
Backup actions will always be processed before the object is processed, and rollback actions can
only be started via workflows. For more information, see the related documentation.

Automation Engine

Field/Element

Description

Enable Rollback

Use this to activate or deactivate the rollback settings.

535

When this option is deactivated, all the fields of this tab are
disabled.
Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

536

Chapter3 Objects

Rollback

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

ProcessTab
The Process tab is a type-specific tab where processing instructions are stored in UC4's
scripting language.
Object: Notification
Object class: Executable object
Object type (short name): CALL

Description

The script is either processed at Notification activation or start. This point in time depends on the
setting "Generate at runtime" which can be defined in the Attributes tab.
A Notification's script cannot contain JCL lines.

Automation Engine

537

See also:
Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

538

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

539

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Notification - Execution

Object-Type-Specific Features

A Notification can be activated in various ways. For example:

Object

Description

Tab

Notification

There is no reaction to the Notification


within the specified time.

Notification

RemoteTaskManager,
Workflow and Schedule

One or several individual tasks do not


have the specified end status.

Attributes

All executable objects

Runtime specification does not apply.

Two places on
Runtime

Workflow and Schedule


tasks

Runtime specification does not apply.

Runtime in the object's


properties

Workflow and Schedule


task

Task does not end on the specified


status.

Result in the object's


properties

540

Chapter3 Objects

Workflow

Task has not yet started at the checking


time.

Checkpoint in the
object's properties

Workflow

Preceding Workflow tasks do not end


on the specified status.

Dependencies in the
object's properties

Workflow task

A condition action executes a


Notification.

Preconditions or
Postconditions

Jobs

Task Output Scan requirements met.

Output Scan

If a Notification starts as a result of the above mentioned conditions of tasks in Workflows or


Schedules, detailed system information is made available. This information can be read in the script
of the Notification from the Read Buffer with the script statement :READ. Please bear in mind that
this is only possible when the Notification was not activated with the setting "Generate at runtime"
in the Attribute tab!
l
l
l
l

UC_CAUSE_NAME - The name of the causing task.


UC_CAUSE_NR - The RunID of the causing task.
UC_CAUSE_STATE - The status of the causing task.
UC_CAUSE_RETCODE - The return code of the causing task.

Examples
:READ &UC_CAUSE_NAME,,
:READ &UC_CAUSE_NR,,
:READ &UC_CAUSE_STATE,,
:READ &UC_CAUSE_RETCODE,,
You can of course also start a Notification manually or using the script function ACTIVATE_UC_
OBJECT.
If a Notification is activated, the defined operators are informed. Additionally, calendar
specifications are taken into account. If no responsible operator is specified in the calendar, all
operators are alerted.
Message, Request, Alert and E-mail are the Notification types. The type defines expected
responses from the operator.
Message:
A message can only be acknowledged by the receiver. There is no escalation.
Request:
An alert can be either accepted or rejected. The result of the question can be evaluated, although it
does not escalate to another Notification in this case. If the receiver is not reached within the
defined time period or the escalation is not scheduled, only a time-dependent escalation is possible.
Alert:
An alert can be either accepted or rejected. Depending on the response, there are different types of
reactions.
If the receiver accepts the alert, he/she takes responsibility to resolve the problem.
If the receiver or the last of several receivers rejects the alert, the escalation begins.
If the receiver(s) is/are not reached within the defined time frame, only a time-dependent escalation
is possible. If an escalation is not defined, the Notification is called again.
Email:
The Notification is only used to send an email. No Monitor is displayed in the UserInterface.

Automation Engine

541

For technical reasons and very rarely it happens that an email is sent to a receiver several times.
Escalation:
With every escalation, another Notification is started. An alert, message or request will also be
opened. Other users can then be informed and react to an incidence.
You can set the escalated Notification to automatically closes its predecessor with the status
ENDED_ESCALATED in the Operator tab. Afterwards, only the users who have been informed by
this Notification can react to the incidence.
SNMP Connection:
If defined in the Attributes tab, an SNMP trap is also created with the start of a Notification.
There are three requirements for an SNMP connection:
1. SNMP is installed on the computer and runs as a service.
2. The UC4 SNMP subagent has been installed.
3. The SNMP connection is activated in the UC4 Automation Engine's INI file.
Sending email:
If defined in the Attributes tab, the defined operators are also informed via email with the start of
Notification.
The email is sent in addition to the defined message, request or alert. The email contains the name
of the Notification, its RunID and the client in the subject field. The message text of the Notification
is used as text.
For technical reasons and very rarely it happens that an email is sent to a receiver several times.
Monitor
Notification executions can be observed in the Monitor View which displays the status.
Notification - Monitor
The monitor view of a Notification is available during the execution of an object.
You can specify in the UserInterface settings whether it should open automatically when the object
is activated. The UserInterface always comes to the fore when there is a Notification information,
regardless of any other programs that might also be open.
Whenever the Notification is activated, the Notification symbol blinks in the upper right hand corner
of the UserInterface. It calls attention for an incoming message. This symbol only disappears if
there are no more active Notifications for the particular user.

542

Chapter3 Objects

A list of the UC4 systems and clients that contain Notifications for the logged-on user is displayed if
you click the Notification symbol. The color of the exclamation mark indicates the given priority.
Clicking on a list entry opens a window and displays all the appropriate Notifications.

Column

Description

Name

Name of the Notification


Depending on the priority, the exclamation or question mark is red (high priority),
yellow (normal) or green (low).

Type

Type of the Notification (alert, request, message)

Priority

Priority of the Notification (high, normal, low)

RunID

Run number of the Notification


Tasks whose RunID show a small red edge include a comment.

Message

Message text of the Notification

Escalation

Date and time on which the Notification escalates. The specified Notification starts
if there is no user acknowledgement.
A particular point in time is only displayed if a definition was made in the setting
"Escalation" of the "Operator" tab.

Status

Status of Notification execution


l
l
l
l
l

Called (all types) - user has not yet reacted to the Notification
Confirmed (request) - user has acknowledged the Notification with "OK".
Rejected (alert) - user has rejected the Notification.
Accepted (alert) - user has accepted the Notification.
Not yet called (alert) - the Notification was accepted by a user but not yet
finished

The Notification remains active until a notified user responds. The Notification then ends normally or
is canceled. In the case of an escalation, each Notification remains visible in the Activity Window
by default. In the Attributes tab you can specify that the Notification cancels its predecessor. Do
so by activating the control box "End automatically".
The status of a Notification can be checked in its monitor view. Statistics and reports can be viewed
in the context menu (right mouse button). Canceling a Notification is also possible in the monitor
view.

Automation Engine
Message

The Notification remains active until all users have acknowledged it with "OK" and obtains the
status ENDED_OK.

543

544

Chapter3 Objects

Request

The Notification ends as soon as one of the users acknowledges it with "Yes" or "No". Depending
on this, it either obtains the status ENDED_OK or ENDED_NOT_OK.

Automation Engine

545

Alert

When a user accepts the Notification, it remains visible for all other users that were specified as
operators. The push buttons, however, are deactivated for these users. The user can either do what
is requested by the Notification and then acknowledge with "Done" or reject. If he rejects, the push
buttons are activated again so that a different user can accept the Notification.
If all users reject the Notification, it ends on the status ENDED_ESCALATED and will be restarted.
Calling the Monitor

Description

Automatically

The monitor of the Notification can be displayed during execution.


This option can be activated in the settings of the UserInterface.

Click the right mouse


Select Monitor in the context menu.
button on Notification
in the Activity Window.
Select the Notification Select Monitor in the File menu.
in the Activity Window.

See also:
Notification

546

Chapter3 Objects

Notification - Object Type ALARM


The CALL.ALARM object is a ready-for-use Notification that writes particular data to a message
text by using a script.

General information
When you create a new Notification object, you can choose between two different types:
STANDARD and ALARM.

Both types are Notifications and differ from each in that the ALARM-type Notification already
includes a ready-for-use UC4 script that reads data and outputs it in the message text. The user
who executes this object is automatically specified as the receiver. Type "Alert" and "High" priority
are always specified in ALARM Notifications.

Automation Engine

547

Script
A complete UC4 script ensures that the CALL.ALARM object can be executed immediately after it
has been created because the receiver is automatically the user who has started the Notification
object. Dynamic values, such as the name of the causing task, its RunID, etc. are retrieved and
output in the message text. The script outputs the message text in the required language.
Examples:
Retrieving the user who has started the object plus the corresponding department.
:ADD_ATT can be used to add this user as a receiver. Therefore, you can also process
CALL.ALARM objects even without specifying a receiver.
!Get Operator
:set&userid# = SYS_USER_NAME
:set&dep# = SYS_USER_DEP
:ADD_ATT OPERATOR, '&userid#/&dep#'
!
Retrieving the name, RunID, status and return code of the task that triggered the Notification object.
Additional information is available here: Notification - Execution.
!Get Script
:read&UC_CAUSE_NAME,,
:read&UC_CAUSE_NR,,
:read&UC_CAUSE_STATE,,
:read&UC_CAUSE_RETCODE,,

548

Chapter3 Objects

!
:set&nl# = UC_CRLF
!
Retrieving the name, RunID and object type of the superordinate task that has activated the
Notification object. Additionally, the UC4 system name, client number, time and date of activation,
and the language are queried. The script element GET_MSG_TEXT() supplies the status text of the
task that caused the Notification to start.
:set&parentname# = SYS_ACT_PARENT_NAME('ACT')
:set&parentnr# = SYS_ACT_PARENT_NR('ACT')
:set&parenttyp# = SYS_ACT_PARENT_TYP('ACT')
:set&system# = GET_UC_SYSTEM_NAME
:set&client# = SYS_ACT_CLIENT
:set&date# = SYS_DATE_PHYSICAL()
:set&time# = SYS_TIME_PHYSICAL("HH:MM:SS")
:set&lang# = SYS_USER_LANGUAGE
:set&statustext# = get_msg_txt(&UC_CAUSE_STATE,'')
!
After a language check, the retrieved information is written to the message text in German, English
or French using the script element :PUT_ATT or :PUT_ATT_APPEND.
:if&lang# = 'E'
!: put_att SUBJECT = "Alarm:'&UC_CAUSE_NAME' RunID:'&UC_CAUSE_NR'
Client:'&client#'
: set &date# = conv_date(&date#,"MM/DD/YYYY")
: PUT_ATT CALL_TEXT = "An error occurred! &nl# &nl#"
: put_att_append CALL_TEXT = "UC4 system: &system# &nl#"
: put_att_append CALL_TEXT = "Client: &client# &nl#"
: put_att_append CALL_TEXT = "Object: &UC_CAUSE_NAME &nl#"
: put_att_append CALL_TEXT = "Run#: &UC_CAUSE_NR &nl#"
: put_att_append CALL_TEXT = "State Text: &statustext# (&UC_CAUSE_
STATE) &nl#"
: put_att_append CALL_TEXT = "Retcode: &UC_CAUSE_RETCODE &nl#"
: put_att_append CALL_TEXT = "Date/Time: &date# &time# &nl# &nl#"
: put_att_append CALL_TEXT = "Parent of this object (if available):
&nl# &nl#"
: put_att_append CALL_TEXT = "Parent: &parentname# &nl#"
: put_att_append CALL_TEXT = "Type: &parenttyp# &nl#"
: put_att_append CALL_TEXT = "Run#: &parentnr# &nl#"
:endif
:if&lang# = 'D'
!: put_att SUBJECT = "Alarm:'&UC_CAUSE_NAME' RunID:'&UC_CAUSE_NR'
Client:'&client#'
: set &date# = conv_date(&date#,"MM/DD/YYYY")
: PUT_ATT CALL_TEXT = "Ein Fehler ist aufgetreten! &nl# &nl#"
: put_att_append CALL_TEXT = "UC4 system: &system# &nl#"
: put_att_append CALL_TEXT = "Mandant: &client# &nl#"
: put_att_append CALL_TEXT = "Objekt: &UC_CAUSE_NAME &nl#"
: put_att_append CALL_TEXT = "Run#: &UC_CAUSE_NR &nl#"
: put_att_append CALL_TEXT = "Status: &statustext# (&UC_CAUSE_STATE)
&nl#"
: put_att_append CALL_TEXT = "Retcode: &UC_CAUSE_RETCODE &nl#"
: put_att_append CALL_TEXT = "Datum/Zeit: &date# &time# &nl# &nl#"
: put_att_append CALL_TEXT = "Parent dieses Objektes (wenn

Automation Engine

549

vorhanden): &nl# &nl#"


: put_att_append CALL_TEXT = "Parent: &parentname# &nl#"
: put_att_append CALL_TEXT = "Typ: &parenttyp# &nl#"
: put_att_append CALL_TEXT = "Run#: &parentnr# &nl#"
:endif
:if&lang# = 'F'
!: put_att SUBJECT = "Alarm:'&UC_CAUSE_NAME' RunID:'&UC_CAUSE_NR'
Client:'&client#'
: set &date# = conv_date(&date#,"MM/DD/YYYY")
: PUT_ATT CALL_TEXT = "Une erreur s'est produite! &nl# &nl#"
: put_att_append CALL_TEXT = "UC4 system: &system# &nl#"
: put_att_append CALL_TEXT = "Client: &client# &nl#"
: put_att_append CALL_TEXT = "Objet: &UC_CAUSE_NAME &nl#"
: put_att_append CALL_TEXT = "Run#: &UC_CAUSE_NR &nl#"
: put_att_append CALL_TEXT = "Statut: &statustext# (&UC_CAUSE_STATE)
&nl#"
: put_att_append CALL_TEXT = "Retcode: &UC_CAUSE_RETCODE &nl#"
: put_att_append CALL_TEXT = "Date/Heure: &date# &time# &nl# &nl#"
: put_att_append CALL_TEXT = "Parent de cet objet (si disponible):
&nl# &nl#"
: put_att_append CALL_TEXT = "Parent: &parentname# &nl#"
: put_att_append CALL_TEXT = "Type: &parenttyp# &nl#"
: put_att_append CALL_TEXT = "Run#: &parentnr# &nl#"
:endif

See also:
Getting Started - Notifications
Notification - Execution
Notification Attributes
The following table describes the attributes of a Notification object.

Tab

Attribute

Description

Value

Access Via:

ARCHIVE_
KEY1

Archive key 1

User-defined,
limited to 60 characters.

GET_ATT,
:PUT_ATT,
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
limited to 20 characters.

GET_ATT,
:PUT_ATT,
Change
Program,
via script
variable,
predefined
variable

550

Chapter3 Objects

ATTACH_
FILE

Attach a file

User-defined,
limited to 255 characters.

GET_ATT,
:PUT_ATT,
predefined
variable

ATTACH_
REPORTS_
RUNID

Attach reports
from task
(RunID)

User-defined,
limited to 32 characters.

GET_ATT,
:PUT_ATT,
via script
variable,
predefined
variable

ATTACH_
REPORTS_
SOURCE

Attach reports
from task
(RunID) Source

"DB" - Database
"EXTERNAL" - External files
"ALL" - All

GET_ATT,
:PUT_ATT,
via script
variable,
predefined
variable

CALENDAR

Assigned
Calendar

The name of a calendar,


limited to 200 characters.

:ADD_ATT,
Change
Program

CALENDAR_
KEYWORD

Assigned
Calendar
Keyword

The name of a calendar keyword,


limited to 200 characters.

ADD_ATT,
Change
Program

CALL_TEXT

Message

User-defined,
limited to 8000 characters.

GET_ATT,
:PUT_ATT,
via script
variable

Script variables that are used in texts and should be changed must be
used within the first 256 characters. All script variables that are use
afterwards will not be considered.
CO_EMAIL

Send Email

"Y" - Send Email


"N" - No Email

GET_ATT,
:PUT_ATT

CO_
PRIORITY

Priority

"HIGH" - High priority


"NORMAL" - Normal priority
"LOW" - Low priority

GET_ATT,
:PUT_ATT,
predefined
variable

CO_RISING_
NAME

Escalation:
Notification

The name of a notification,


limited to 200 characters.

GET_ATT,
:PUT_ATT,
Change
Program,
predefined
variable

CO_RISING_
TIME

Escalation: After
... min. without
positive
response

The time in minutes, any value


between "1" and "9999"

GET_ATT,
:PUT_ATT,
predefined
variable

SNMP
Connection

"Y" - Activate SNMP connection


"N" - No SNMP connection

CO_SNMP

Reading the attribute creates a 16figure value with leading zeros.

GET_ATT,
:PUT_ATT

Automation Engine

CO_TYPE

Type

"QUESTION" - Request
"MESSAGE" - Message
"ALARM" - Alert
"EMAIL" - Email

GET_ATT,
:PUT_ATT,
predefined
variable

DATE_
CREATED

Created on

The time stamp in the format


"YYYY-MM-DD HH:MM:SS"
If not available: "0000-00-00
00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

The time stamp in the format


"YYYY-MM-DD HH:MM:SS"
If not available: "0000-00-00
00:00:00"

GET_ATT

DCMODUS

Mode
UserInterface

"Y" - UserInterface is active


"N" - No UserInterface active

GET_ATT

GEN_AT_
RUNTIME

Generate at
runtime

"Y" - Generation at runtime.


"N" - Generation at activation
time.

GET_ATT

GROUP

Group

The name of a group,


limited to 200 characters
" " - For an immediate start

GET_ATT,
:PUT_ATT,
Change
Program,
predefined
variable

INT_
ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
limited to 16 characters.

GET_ATT,
:PUT_ATT,
Change
Program,
via script
variable,
predefined
variable

LAST_DATE

Last used on

The time stamp in the format


"YYYY-MM-DD HH:MM:SS"
If not available: "0000-00-00
00:00:00"

GET_ATT,
predefined
variable

LAST_USER

Last used by

The name of the User object,


limited to 200 characters.

GET_ATT,
predefined
variable

MAX_
PARALLEL_
ELSE

Parallel running
tasks - Else

"WAIT" - Notification waits until


execution is possible.
"ABEND" - Notification
terminates.

GET_ATT,
:PUT_ATT

MAX_
PARALLEL_
TASKS

Parallel running
tasks - Max.

User-defined,
any value between "0" and
"99999"

GET_ATT,
:PUT_ATT,
predefined
variable

551

552

Chapter3 Objects

MAX_
RETCODE

ENDED_OK
until return code

User-defined,
limited to 11 characters.

GET_ATT,
:PUT_ATT

MODIFY_
COUNT

Modified

The number of object


modifications.

GET_ATT

OBJECT_
NAME

Object name

User-defined,
limited to 200 characters.

Change
Program

OBJECT_
TITLE

Title

User-defined,
limited to 255 characters.

GET_ATT,
:PUT_ATT,
predefined
variable

QUEUE

Queue

The name of a queue,


limited to 200 characters.

GET_ATT,
:PUT_ATT,
Change
Program,
predefined
variable

RECIPIENT

Recipients

Recipients can be added to the


runtime by using the script
element ADD_ATT and removed
with REMOVE_ATT.

:ADD_ATT,
:REMOVE_ATT

SCRIPT

The string in the script of the notification should be


changed.

Change
Program

SUBJECT

Subject

User-defined,
limited to 255 characters.

GET_ATT,
:PUT_ATT,
via script
variable,
predefined
variable

SYNC_
OBJECT

Assigned Sync
object

The name of a Sync,


limited to 200 characters.

Change
Program

TIMEZONE

TimeZone

User-defined,
limited to 8 characters.

GET_ATT,
:PUT_ATT,
predefined
variable

UC4_
PRIORITY

UC4 Priority

User-defined,
any value between "0" and "255".

GET_ATT,
:PUT_ATT,
predefined
variable

USAGE_
COUNT

Last used

The number of object usages.

GET_ATT,
predefined
variable

USER_
CREATED

Created by

The name of the User object,


limited to 200 characters.

GET_ATT,
predefined
variable

USER_
MODIFIED

Changed by

The name of the User object,


limited to 200 characters.

GET_ATT,
predefined
variable

Automation Engine

553

See also:
Notification
Attributes
:PUT_ATT statement
GET_ATT function
:ADD_ATT statement
:REMOVE_ATT statement
UC4.DB Change

3.2.19 PromptSet
PromptSet
PromptSet objects include the definitions for an input mask and can be assigned to executable
objects.
Object class: Passive object
Object type (short name): PRPT
PromptSet objects can be used to create an input dialog which is used to assign user values to
started objects. Using the "Variables & Prompts" tab, you can assign one or several PromptSets to
an executable object. When the object starts, the prompts of all selected PromptSet objects are
displayed one after the other. The user's values and settings that are provided through these input
dialogs are then available in the form of object variables.
You can use the Designer tab to define the input dialog. Select the required graphical elements
such as text fields or combo boxes using the drag & drop function and then determine their
properties (such as allowed and selectable values, object variable name, required value).
PromptSet objects cannot be printed. The functions "Print" and "Print Preview" are deactivated.
Header tab
The Header tab is a general tab which is available in every UC4 object.

554

Chapter3 Objects

Description

Field/Element Description
Header
Title

Define object titles here. This title should include a short and characteristic
description of the corresponding object because it is displayed in all overviews.

Created

Indicates the user who has created this object including the corresponding date
and time.

Modified

Indicates the user who has last modified this object including the corresponding
date and time. The number of times that the object has been modified is displayed
to the right.

Last used

Indicates the user who last used the object including the date and time. The
number of times that the object has been used is displayed to the right.
This field is only displayed if the update function in the UserInterface settings is
active.

Archive keys

In all executable objects and in Sync objects, you can define two keys of your
choice. Whenever the object is executed, these keys are also shown in the
statistical data.
You can select the statistical data in accordance with these archive keys. They
are also shown in the statistical overview.

Designer Tab
The Designer tab is object type-specific and is only available in PromptSet objects.
PromptSet objects are user-defined input prompts that can be used to assign values either manually
while the object is being activated, or automatically by using dynamic variables.

Automation Engine

555

In the Designer tab, you can select and arrange the individual graphical elements by using the drag
& drop function. The right window section lists the available elements (components). In the left
window section, you can define the behavior of the PromptSet elements through properties. You
can use the Variables & Prompt tab to assign one or several PromptSets to an executable object.

You can see a preview of the input prompt when you click the "PromptSet Preview" button. Note
that pushbuttons and the message box will not be displayed.

Control Elements
[Control Elements ] [Properties ][Overview: Elements and Properties]

The following table lists and describes the different PromptSet elements that can be used to
compose an input dialog. A Variable object must be assigned as the data reference for each element
(Property section). It determines the element's options and allowed value(s). These values are only
accessed when the PromptSet object is called. When PromptSets are called, the system also
checks whether the default value, property values (such as minimum value, maximum value,
maximum length) and the formatting comply with the data reference Variable object.
In the following table, the Data types reference variable column includes the data type that is
required for the Variable object in order that it may be selected as the element's data reference.
Element

Description

Dat
a
typ
es
refe
ren
ce
vari
able

556

Chapter3 Objects

Text input.
Text

Blanks at the end of the text are truncated.


The reference variable can be used to determine the
allowed values that can be entered in the text field (=
reference values). There are no limitations if the
Variable object does not include any values.

T
e
x
t

In text fields, a reference check is only made if the


reference Variable object is of data type "Text". In
other data types the system does not check whether
the specified value corresponds to the reference
values. UC4 recommends using the specific
PromptSet elements in all other reference data
types (such as, date element for the "Date" data
type).
To use "Multi Select", you require the "Separator"
property. This is a character that separates several
values from each other. Note that all specified values
must comply with the reference values if you use
multiple selection.
The maximum length of text fields is 950 characters.
The selection or indication of a number.
Numb
er

The reference variable determines the allowed values.


Only Variable objects of the data type "Number" can be
assigned to this element. If there are no reference
values, there are no limitations. Multi selection is not
possible.
The selection of a particular option from several options.
l

Radio
button

The reference Variable object determines the number of


options including their values. UC4 recommends using
the option field with at least two options for selection.
Defining an invalid default value (reference values) or no
value in the PromptSet object has the effect that the
first entry is automatically selected in the prompt.

The multiple selection of options.


l

Chec
kbox

Reference variables serve to determine the number of


checkboxes (recommended minimum: one) and their
labels. The element is automatically displayed as a
checklist with a scroll bar if the maximum of 32 options
has been exceeded.
Setting an invalid default value (reference values) or no
value has the effect that no field is selected in the
requested prompt.

N
u
m
b
e
r
T
e
x
t
N
u
m
b
e
r

T
e
x
t
N
u
m
b
e
r

Automation Engine

557

The multiple selection of options.


l

Chec
klist

Checklists are helpful if several checkboxes are used.


A scroll bar is displayed if the check list includes more
than eight entries.
The number of entries and their labels are derived from
the reference variable.

No option is selected at runtime if no value or an invalid


default value (data reference) has been stored.

The entry selection from a list.


Comb
o box

The list content is retrieved from the reference variable.


Combo boxes always require a value if reference values
(reference variable with entries) are available.
l

T
e
x
t
N
u
m
b
e
r
T
e
x
t
N
u
m
b
e
r
T
i
m
e
D
a
t
e
T
i
m
e
s
t
a
m
p

558

Chapter3 Objects

The date selection field.


Date

Instead of a variable, you can also use a Calendar


object as a reference.
You can only select date values that comply with the
reference values. The selected default value is the
current date. If this value is invalid because of the
reference values, the system automatically retrieves
and uses the next valid date.

D
a
t
e
T
i
m
e
s
t
a
m
p

Date and time elements cannot be stored if they do not


include default values. If the current time/date should
always be displayed as default values when the prompt
opens, use the predefined variables &$PHYS_DATE_
format# and &$PHYS_TIME_format# for this purpose.
You can either enter the date manually or select it in the
dialog. Invalid days are grayed out in this date dialog.

The time selection field.


Time

The selected default time is the current time. The


PromptSet object cannot be stored if this field includes
no value. If the default value is invalid due to the
reference values, the system automatically retrieves
the next valid entry and displays it in the input mask.
The time stamp selection field.
l

Time
stamp

Label

The selected default value is the current date/time. The


object cannot be stored without this default value. If the
default value does not comply with the reference
values, the system automatically retrieves the next
valid entry and displays it in the input mask.

This element displays text and cannot be used to pass


on values. Use it to label other elements.

T
i
m
e

T
i
m
e
s
t
a
m
p

Automation Engine

559

Element Properties
[Control Elements ] [Properties [Overview: Elements and Properties]

Property

Description

Elem
ent

560

Chapter3 Objects

Default value

The value that the PromptSet element includes when the input mask is
called. This value can be overwritten in the Variables & Prompts tab or
in the properties of Workflow and Schedule tasks.
You can store the PromptSet object even if the default value does
not comply with the data type or limitations that have been defined
on PromptSet level (minimum, maximum, max. length, value
required). The resulting error will only occur when the attempt is
made to store the object to which the PromptSet object has been
assigned.
Predefined variables can also be specified as default values
(Variables... button). At runtime, these have already been
resolved.
If the default value of checkboxes, combo boxes and checklists
does not comply with the values or the format of the reference
variable, no option is selected when the input mask opens. Combo
boxes are highlighted in yellow because a value must be selected
in any case. The option field automatically pre-selects the first
option.
Text, combination, date, time and time stamp fields display an
incorrect value; however, an error occurs when an attempt is made
to send the prompt with "Done". Ensure that the default value
complies with the reference values.

The prompt lists erroneous default values in a separate Message


Window.

T
e
x
t
N
u
m
b
e
r
C
h
e
c
k
b
o
x
O
p
t
i
o
n
f
i
e
l
d
C
h
e
c
k
l
i
s
t
C
o
m
b
o
b
o
x
D
a
t
e
T
i
m
e
T
i
m

Automation Engine

Data reference

The Variable object that determines the values that can be selected or
entered with the corresponding control element. In addition to the
Variable's value, the data type and limitations (minimum, maximum,
max. length) are also important. The reference data types that are
allowed for the individual PromptSet elements are described in the
table above.

561

The reference values are always retrieved from the first value column
(static variables) or the result column (dynamic variable).
The drop-down menu only includes Variable objects as a reference
that have a suitable data type for the PromptSet element (see table
above).

If the values specified for a PromptSet element do not comply with


the reference values, the prompt cannot be sent after object
activation. More information is provided in the chapter PromptSet Activation.
Note the following if you use dynamic variables (except for the
source "Filelist") as the data reference: The number of entries that
is returned by dynamic Variable objects is limited by the setting
SQLVAR_MAX_ROWS in the UC4 Variable UC_SYSTEM_
SETTINGS (default value 200 lines).

The system client is supplied with static Variable objects of each data
type. They can be used as the standard data reference for each
PromptSet element:
l
l
l
l
l

UC_DATATYPE_STRING
UC_DATATYPE_DATE
UC_DATATYPE_NUMERIC
UC_DATATYPE_TIME
UC_DATATYPE_TIMESTAMP

T
e
x
t
N
u
m
b
e
r
C
h
e
c
k
b
o
x
O
p
t
i
o
n
f
i
e
l
d
C
h
e
c
k
l
i
s
t
C
o
m
b
o
b
o
x
D
a
t
e
T
i
m
e
T
i
m

562

Chapter3 Objects

Calendar
Keyword

Uses a Calendar as the data reference.


l

Only available for the elements Date and Time stamp. The Keyword
field is deactivated if a Variable has already been selected as a
reference.
l

D
a
t
e
T
i
m
e
s
t
a
m
p

Caption

The descriptive text that is displayed next to the element in the input
mask.

All

Click on the description in the Variables & Prompts tab of


executable objects, Workflows or Schedule tasks and the
PromptSet element changes to a text field in which you can enter a
predefined variable.
Multi select

Allows the selection or entry of several values.


l

In Multi select text fields , you can enter several values that are
separated by separators. Existing reference values are checked for
their validity.
In the elements Checklist / Checkbox, this option is always set and
cannot be deactivated.

T
e
x
t
C
h
e
c
k
b
o
x
C
h
e
c
k
l
i
s
t

Automation Engine

Separator

The character that separates the individual values in multiple


selections.

563

Default value: ";"


No separator is required if the option Array is activated.
l

T
e
x
t
C
h
e
c
k
b
o
x
C
h
e
c
k
l
i
s
t

Array

Several values of checkboxes and checklists are provided to the


object in the form of an Array Variable. Therefore, it can only be used in
combination with the "Multi select" properties. You can specify the
Variable name in the section of the same name.

All selected options (separated by separators) are assigned as one


value if this option is deactivated.

C
h
e
c
k
b
o
x
C
h
e
c
k
l
i
s
t

564

Chapter3 Objects

Minimum
Maximum
Max. length

Limits the allowed value range for the element.


Minimum, maximum: String that defines the minimum and/or
maximum value.
Max. length (only for text fields): Number of maximum characters for
text fields. 0 or no value indicates that there is no limitation.

Mini
mum,
maxi
mum:

These limitations are already checked when you store the object to
which the PromptSet object has been assigned. Therefore, you
cannot store objects whose PromptSet values (Variables &
Prompts tab) are invalid because of the PromptSet properties.
With Max. length specified, you can only enter the defined
maximum number of characters in this text field.

N
u
m
b
e
r
D
a
t
e
T
i
m
e
T
i
m
e
s
t
a
m
p

Max.
lengt
h:

Upper case

Letters are automatically entered in the text field in the form of


uppercase letters.

T
e
x
t
T
e
x
t

Automation Engine

Quotes

565

The character that is appended to the value's beginning and end.


l

T
e
x
t
N
u
m
b
e
r
C
h
e
c
k
b
o
x
O
p
t
i
o
n
f
i
e
l
d
C
h
e
c
k
l
i
s
t
C
o
m
b
o
b
o
x

566

Chapter3 Objects

Output format

The output format for the values of the control elements Date and
Time stamp.
This field is only active if a Calendar object has been set as a
reference (value required). Otherwise, you can define the output format
in the reference Variable object.
Data type
Time stamp

Available formats
l
l

Date

l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l

YYYYMMDDHH24MISS
YYYY-MM-DD HH:MM:SS
DD-MON-YYYY
DD-MON-RR
MM-DD-YYYY
YYYYMMDD
MMDDRR
DDMMRR
MM-DD-RR
MM/DD/RR
YYMMDD
YY.MM.DD
YY-MM-DD
YYYYMMDD
YYYY.MM.DD
YYYY-MM-DD
DDMMYY
DD.MM.YY
DD-MM-YY
DDMMYYYY
DD.MM.YYYY
DD-MM-YYYY
MMDDYY
MMDDYYYY
MM/DD/YY
MM/DD/YYYY

D
a
t
e
T
i
m
e
s
t
a
m
p

Automation Engine

Variable name

The name of the PromptSet variable that is available for the object and
stores the control element's value(s). PromptSet variables can be
used in the same way that object variables are used (they can be
modified, inherited etc).
The variable name must be specified without a leading &. In the object
itself, you must always use the & character for PromptSet variables.

567

T
e
x
t
N
u
m
b
e
r
C
h
e
c
k
b
o
x
O
p
t
i
o
n
f
i
e
l
d
C
h
e
c
k
l
i
s
t
C
o
m
b
o
b
o
x
D
a
t
e
T
i
m
e
T
i
m

568

Chapter3 Objects

Dynamic

This property is only available for combo boxes and is only useful if the
data reference is a dynamic Variable object (SQL, SQLI or FILELIST).

Setting this option has the effect that the reference value is always
newly resolved when the combo box is called. The list content is
directly retrieved from the data source when it is opened. This behavior
affects the PromptSet object's preview, the Variable & Prompts tab
and the PromptSet dialog at runtime.

b
o
x

More information is provided in the documentation about dynamic input


dialogs.
Input assistant

If the input assistant is active, a "..."button is shown next to the text


field. Click it to open a dialog that lists the reference variables. The
Key column of static Variable objects is no longer available. You can
open this button in the Variables &Prompts tab and in the prompt at
runtime.

C
o
m
b
o

T
e
x
t

The search field can be used to filter the list. A search always includes
the complete Variable object and not only the displayed entries. You
can also define the column in which the search should take place. It is
displayed with a symbol.
Select a line and Click OK tab in order to have the value of the first
column assigned to the text field. A multi selection includes several
entries that can be selected. The corresponding values are assigned to
the text with separators.
Regular
expression

Creates rules for allowed text field contents by using a regular


expression.
For more information about regular expressions click here.
Examples:
Only allow two-digit numbers: [0-9]{2}
Allow all characters except for "x": [^x]
One of the characters "a", "b" or "c": [abc]
All uppercase and lowercase letters, numbers and the comma
character can be used as often as required: [A-Za-z0-9,]*
Allowed characters: #, , ,$, @, A-Z, 0-9. Maximum length 10: [A-Z09_#@$,]{0,10}
Make sure that you do not use blanks at the beginning and the end
of the regular expression. They are not allowed and will not
automatically be ignored.

T
e
x
t

Automation Engine

Locked

Users cannot change the control element's value (default value) in the
input mask.

569

T
e
x
t
N
u
m
b
e
r
C
h
e
c
k
b
o
x
O
p
t
i
o
n
f
i
e
l
d
C
h
e
c
k
l
i
s
t
C
o
m
b
o
b
o
x
D
a
t
e
T
i
m
e
T
i
m

570

Chapter3 Objects

Value required

Users must enter or select a value, or accept the default value.


l

Text fields that use this option will be highlighted at runtime if they do
not include a value and you cannot send the PromptSet dialog.
l

T
e
x
t
C
h
e
c
k
b
o
x
C
h
e
c
k
l
i
s
t

Automation Engine

Has focus

The element selection in the input mask. Activating this option is only
useful for a particular control element per PromptSet object. If this
option has been set several times, the focus is set to the last control
element that is affected.

571

T
e
x
t
N
u
m
b
e
r
C
h
e
c
k
b
o
x
O
p
t
i
o
n
f
i
e
l
d
C
h
e
c
k
l
i
s
t
C
o
m
b
o
b
o
x
D
a
t
e
T
i
m
e
T
i
m

572

Chapter3 Objects

Show as
password

The characters that are entered in the text field are displayed as "*".

T
e
x
t

With this option activated, this text field's value is encrypted and is no
longer shown in plaintext in reports etc.
To run commands of Windows or UNIX Jobs that include
encrypted passwords, you use the Job messenger's parameter
CMD.

Tooltip

Additional information about the element that is displayed in the input


mask as a tooltip.

All

Custom Field

This is an additional field in which you can enter any text of your
choice.

All

It does not affect the functionality of the PromptSet element.

Table Overview - Elements and Properties


[Control Element ] [Properties ] [Overview: Elements and Properties ]

Property

Data
reference
Calendar
Calendar
Keyword
Caption
Multi select
Separator
Array
Minimum
Maximum
Max. length
Quotes
Output
format
Variable
name

Text

Nu
mbe
r

Che
ckb
ox

Opti
on
field

Check
list

Combo
box

Date

Time

Time
stamp

L
a
b
el
in
g

Automation Engine

573

Default
value
Input
Assistant
Locked
Upper case
Value
required
Has focus
Show as
password
Tooltip

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all object
types in UC4.

All Documentation tabs that the UC4 administrator has defined in the UC4 variable UC_
OBJECT_DOCU are shown. Note that imported objects have their own Documentation tabs.
The Version Management tab displays the stored object versions if this function is active.

574

Chapter3 Objects

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information into clear parts. Each documentation element can be used to
store texts, but also to define attributes.
You can also define links (for example, to files, folders or to documents in the intranet and Internet)
in structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element including its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

575

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).


PromptSet - Activation
There are some points that require particular consideration when objects are executed to which a
PromptSet object has been assigned.

576

Chapter3 Objects

Prompt

The open prompt displays the graphical elements as they have been defined in the PromptSet
object.
When several PromptSet objects have been assigned to the activated object using the Variables &
Prompts tab, they will be listed in the left window area. You can select one of these entries and the
related PromptSet input dialog will be displayed. You can switch between the available input dialogs
by using the Previous and Next buttons. The order of the dialogs complies with the order that is
used in the Variables & Prompts tab.
Click on the elements' labels to open the text field in which you can enter predefined variables.
The input request remains open if you cannot send it using the Done button because of invalid
values (if the values do not comply with the reference values, for example). Additionally, the errors
will be listed in a separate field that is shown below the PromptSet element.This field includes the
name of the PromptSet element and the corresponding error. As soon as you enter the correct
value, the related error line will be crossed out in the error field. The Cancel button cancels the
activation of the object.
The task's TimeZone is also displayed.
When a Schedule starts, the PromptSet objects of its subordinate tasks are not called. Only the
Schedule's input prompt is displayed.
By default, the same applies for Workflows, but you can change this behavior in the task
properties.

Automation Engine

577

In objects that are executed recurrently or are activated in an AgentGroup with the mode "All",
the input dialog is only displayed once when the object starts. The specified values then apply
for all other executions.
Pay attention to the settings that are specified in PROMPT_RESPONSETIME, PROMPT_
TIMEOUT in the UC4 Variable UC_CLIENT_SETTINGS in combination with PromptSet input
prompts.

Input Assistant

The Input Assistant is available for text fields and can be activated via the PromptSet object
properties. With the Input assistant activated, "..." is displayed next to the text field and can be used
to open a new window. This dialog displays the content of the reference Variable object. Exception:
The key column of static Variable objects is not displayed. The left area lists all non-assigned
reference values, the right area the assigned ones. You can select any values and change their
assignments using the arrow buttons. Clicking OK closes the Input Assistant and the values are
inserted in the text field area Assigned. The values of the value column 1 (static variable) or the
result column are used.
Assigning several values to text fields requires the multi-select function to be activated
(PromptSet properties). In this case, the individual values are separated with the character that
has been defined using the property "Separator".

Displayed default values

The default values of PromptSet objects can be overwritten in the Variables & Prompts tab. The
values can also be modified through the task properties if the object is part of a Workflow or
Schedule. PromptSet values of tasks that start via ACTIVATE_UC_OBJECT can be set in this
script using :PUT_READ_BUFFER. Note that the read buffer Variable has the same name as the
PromptSet variable (Properties - Variable name). No prompt is displayed for tasks that are activated
through a Workflow, Schedule or script.

578

Chapter3 Objects

The following table shows the possible constellations where you can change the default value of
PromptSets and the value that is used:
PromptSe
t

Variables &
Prompts tab

Workflow/Schedule
properties

PUT_READ_
BUFFER

Default value for


activation
No default value

Value1
Value1

Value1

Value1
Value2

Value2

Value2

Value2

Value2

Value3

Value3

Value2

Value3

Value3

Value3

Value3

Value1
Value1

Value2

Value4

Value4

Value4

Value4

Value4

Value4

Using the script element ACTIVATE_UC_OBJECT with the parameter PASS_VALUES has
the effect that object variables and all the object's PromptSet variables are passed on to the
activated object.

Input restrictions

When entering values in text, date, time and time stamp fields, ensure that you keep the reference
variable's limitations such as: allowed values (reference values), min. value, max. value, max.
length and data type. You can also limit the allowed size via the PromptSet element's properties.
The limitations on PromptSet level are already checked when the PromptSet objects are assigned.
Text fields that require an entry (PromptSet property "Valid entry required") and contain no value are
highlighted in yellow. Text fields are limited to the number of characters that has been specified in
the PromptSet property "Max. length".
The Input Assistant simplifies the process of entering values. It can be activated via the element
properties in the PromptSet object.

Modifications at runtime

You can only modify PromptSet values at runtime for Workflow and Schedule tasks that have not
yet been generated. Object variables cannot be modified at runtime.

Restart behavior

When restarting an object, the PromptSet dialog displays the values that have been entered during
the last activation process (reference RunID = 0). If you specify a particular reference ID in the
restart dialog, the values of this object execution are used.
PromptSet variables can be changed with UC4 Script. If the script generation ends normally, these
modifications also apply for restarts. They even apply if the task aborts afterwards,

Automation Engine

579

regardless of whether the task has been restarted via the Activity Window, the Statistics or using
Script (RESTART_UC_OBJECT).
For example:
Value 1 is entered in a Job's PromptSet dialog and sent. In the script, this value is changed to 15.
Subsequently, the Job aborts due to an OS error. When it is restarted, the prompt displays the value
15.
PromptSet value modifications that are made during a restart are logged in the activation report.
No PromptSet dialog is displayed when Workflow or Schedule tasks are restarted. For new task
starts with modified PromptSet values, modify the properties in the corresponding Workflow or
Schedule. The same is true if the restart is made using UC4 Script (RESTART_UC_OBJECT). In
this case, you can override the values with the script element :PUT_READ_BUFFER.
See also:
PromptSet - Designer tab
Dynamic PromptSet Dialogs
UC4 provides additional methods that can be used to structure the input masks of tasks
dynamically. Combo boxes and an Input Assistant for text fields whose contents can vary
depending on the values of other PromptSet elements are available for this purpose.
The following steps are required in order to create a PromptSet dialog using a dynamic combo box or
the Input Assistant for the text field:
1.
2.
3.
4.

Create a PromptSet object with at least one text field or combo box.
For the text field, use the property "Input Assistant".
For the combo box, set the property "Dynamic".
Use a Variable object with the sources SQL, SQLI, FILELIST or BACKEND as a data
reference for the text field / combo box.
5. Enter one or several PromptSet variables of other elements of the same PromptSet in this
reference Variable object.
PromptSet variables can be used in the following fields of the reference Variable's Variable
tab:
VARA.SQL, VARA.SEC_SQL: Connection, Login, SQL Statement
VARA.SQLI, VARA.SEC_SQLI: SQL query (UC4 DB)
VARA.FILELIST:Host, Login, Directory
VARA.BACKEND: Host, Login, Command
No special settings are required for the Input Assistant because the reference variable is only
resolved when it is accessed.
Note that PromptSet variables that are defined as an array (multi selection) cannot be used in
reference variables.
If you want to use PromptSet variables in Variable objects, you must ensure that the value 3 is
set in VAR_SECURITY_LEVEL (UC_SYSTEM_SETTINGS). Note that this limitation does not
apply to the SQL statements of VARA objects that use the sources SQL SECURE and SQLI
SECURE.
A default value must be set in the PromptSet object for the elements whose values are used in
the required fields of VARA objects (such as Host and Login).

580

Chapter3 Objects

Examples:

The following example creates a PromptSet dialog with a dynamic combo box whose content
depends on a radio button field. The radio button field should be used to specify a UC4 client. The
combo box then always lists the selected client's tasks.
The reference values of both PromptSet elements are directly retrieved from the UC4 Database via
SQLI Variables.
Reference variables
Create the reference sources for the PromptSet object. Create two Variable objects, each with the
source SQLI.
The first Variable is used to supply the UC4 system clients. Insert the following SQL command in
the VARA object's Variable tab (MS SQL Server):
select distinct EH_Client from EH
The second Variable retrieves the task names depending on the selected UC4 client. In the SQL
command, you can use the expected Variable name of the radio button as the client value for this
purpose. Doing so results in the following command:
select distinct EH_Name from EH where EH_Client=&CLIENT#
Check the first Variable by clicking the Preview button in the Variable tab. Note that you cannot test
the second Variable because the PromptSet Variable &CLIENT# cannot yet be resolved.
Ensure that the system setting (UC_SYSTEM_SETTINGS - SQLVAR_INTERNAL)and the
privilege for internal SQL variables have been provided.

PromptSet objects

Automation Engine

581

In the next step, we create the PromptSet object with a radio button field and a combo box.
Assign the SQL variable that retrieves the UC4 client as a data reference to the radio button field.
Verify that this element's Variable name complies with the name that has been used in the SQL
command of the other Variable object (see above). In this example, the Variable name is CLIENT#
(without a leading &).
Assign the other reference Variable object to the combo box.
Important note: Set the option Dynamic . Otherwise, an SQL error will occur when the
PromptSet dialog is called.
Reason: Setting this option has the effect that the reference Variable is only resolved when the
combo box is called. If it is not set, it is resolved even before the PromptSet variables are
available.
Note that opening the combo box also results in an error if the element on which it depends
includes an invalid value or no value at all. UC4 recommends setting a default value for the
element that provides the value.

Finally, call the PromptSet preview in order to test the input mask's functionality.

582

Chapter3 Objects

3.2.20 Queue
Queue
All activities within UC4 are processed within Queue objects. Queues determine the maximum
number of parallel running tasks including their priorities.
Object: Queue
Object class: Active object
Object type (short form): QUEUE
Each task is automatically processed within a Queue. The system automatically uses the Queue
available in each client (object name:CLIENT_QUEUE) if no particular Queue object has been
selected in the Attributes tab of an executable object. You can assign any number of objects to a
Queue object.
Queues are active objects with the only difference being that they cannot be executed. All of a
client's Queue objects are displayed in the Activity Window and the System Overview. It is possible
to stop and restart the execution of a Queue's tasks.

See also:
Queue - "Attributes" tab
Header tab
The Header tab is a general tab which is available in every UC4 object.

Automation Engine

583

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates the user who last used the object including the date and time. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Archive Keys

Two keywords of your choice can be specified in all executable objects and the
Sync object. These keys are written to the statistical data each time the object
is processed.
Statistical data can be selected using these archive keys. Archive keys are
displayed in the Statistical Overview and can be printed.

Attributes Tab
The Attributes tab is object type-specific and is only available in objects of type "Queue".

584

Chapter3 Objects

Description

Field/Element

Description

Queue settings

General settings for Queue objects

Max. slots

Maximum number of parallel running tasks which are


assigned to the Queue object.
There is no limit if this field is not checked. By default, this
field is not active.
Allowed value: "1" to "100000"
When an object is started, the Queue slot is reserved before
the objects are checked (Sync, resources, max. number of
parallel tasks, host). The task changes to the status "Waiting
for Queue slot" if no Queue slot is available.
Note that the value "0" does NOT signal "unlimited" and
can only be set via the Queue modification.

Priority

Priority used to process the Queue object's tasks.


Allowed values: 1 to 255
Default value: 200
Tasks can also obtain a different priority if this has been
defined in the table "Exceptions".
The Queue's priority is checked before the task's priority.
In the case that two tasks have the same Queue priority,
the task's priority is used.

Automation Engine

Exceptions

585

Definition of exceptions for particular periods.


Note that exceptions are not considered if no limit has
been specified for the Queue's max. slots.

Calendar

Calendar object which can be used to determine the days on


which an exception applies (optional).

Keyword

Selection of a particular Calendar keyword of the defined


Calendar object (optional).

From

Point in time as of which an exception applies.


Time in the format: HH:MM
The seconds value is always "00".
This setting is always required when creating an exception.

To

Point in time until when the exception applies.


Time in the format: HH:MM
The actual point in time is always one second earlier than has
been specified. Thus, the seconds are always "59".
Example: Definition in the field To : 10:05 - actual time:
10:04:59.
This setting is always required when creating an exception.
Selecting a Calendar but not a time slot ("From", "To") for
an exception has the effect that the system automatically
defines the values "00:00" (field From) and "00:00" (field
To) which corresponds to a complete day. You need to
reopen the object to have these changes displayed in the
table.

Max. slots

Maximum number of parallel running tasks for the exception's


defined period.
Allowed values: "unlimited", "0" to "99999"
Default value: "unlimited"
Not specifying a value has the effect that the system
automatically enters the default value in the table. You need
to store and reopen the Queue object to have your
modifications displayed.
Note that a CallAPI script also occupies a place in a
Queue. By default, the client queue is used unless the
UC4 Variable UC_CLIENT_SETTINGS includes different
settings.

586

Chapter3 Objects

Priority

Priority of the tasks that are active in the period during which
the exception applies.
Allowed value: 1 to 255
Default value: 255
Not specifying a value has the effect that the system
automatically enters the default value in the table. You need
to store and reopen the Queue object to have your
modifications displayed.

Description

Short description for an exception (optional)


Maximum 255 characters

Consider Estimated Runtime for


calculation

ERT consideration of all active tasks when an object starts,


in relation to the modification of maximum slots through
exceptions.
By default, this function is active. This setting is only
available if there is at least one exception.
Activate this option and try to execute an object that has
been assigned to this Queue object. In this case, the
system checks via the ERT of all active tasks of this
Queue whether the maximum number of available slots
would be exceeded through a new activation at a later
point in time. Only the max. slots that were changed due
to exceptions are considered. The object does not start if
executing the new object would result in the maximum
number being exceeded.
Note that a Queue's slot limit can be exceeded if this
setting has not been activated. Changing the number of
maximum slots has no impact on active tasks.

TimeZone

TimeZone object to be considered

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

Automation Engine

587

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

588

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

589

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Consideration of Estimated Runtime for Calculation


This description provides more details about the Queue object setting "Consider Estimated
Runtime for Calculation".
Also refer to the description of the Queue object's Attributes tab.
The term task limit refers to a Queue object's maximum number of tasks running parallel or its
maximum slots.
Activating this option has the effect that the system checks whether the task limit of future
exceptions would be exceeded before it executes a task assigned to the Queue object. This check
includes the ERT (Estimated runtime) of the Queue object's tasks to be started and all those that
are active at start time. A task is not started if the check proves that starting this task would result in
the Queue limits (max. slots) being exceeded at a later point in time.
If a Queue's maximum number of parallel running tasks has already been reached or exceeded
at an object's start time, the task changes to a waiting condition (status: Waiting for Queue slot).
The following examples intend to explain this setting in more detail.

590

Chapter3 Objects

Example 1

The following diagrams show the number of tasks via a time line. The green lines refer to the Queue
object's active tasks. The beginning of a line indicates a tasks' start time. The length of the green
line corresponds to the task's estimated runtime (ERT).
The blue line represents the Queue's task limit. The maximum available Queue slots are reduced
from 20 to 10 due to an exception which occurs from 02:00 am to 04:00 am.
An object assigned to the Queue object is processed at 1:00 am (red line). At this point in time, the
Queue object already includes 10 active tasks.

An ERT check of the object to be started shows that the task would still be active at the time the
exception applies (2:00 am). Thus, the system determines the number of parallel running tasks that
would still be active at this point in time. The ERT calculation of the Queue object's active tasks
indicates that only 5 tasks will still be active at 2:00 am. Thus, the task can start.

Automation Engine

591

Example 2

Example 2 is similar to example 1. The green lines represent the active tasks of a Queue object.
The blue line shows the course of the Queue's task limit.
An object assigned to the Queue object is activated at 1:00 am (red line). An ERT check of all active
tasks shows that no Queue slots will be available at the exception time (2:00). Executing a new
object would exceed the Queue's maximum number of tasks running parallel. Thus, the task cannot
start.

592

Chapter3 Objects

See also:
Queue - Attributes tab
Using Queue Objects
This document describes the handling of Queue objects in detail.

Queue Assignment

In UC4, each executable object will automatically be processed within a Queue object. It is possible
to assign a particular Queue object to most executable objects.
You can select a Queue in the Attributes tab of the following objects:
l
l
l
l
l
l
l
l
l

Workflow
Notification
Event
FileTransfer
Group
Job
RemoteTaskManager
Schedule
Script

There are no Queue settings for Cockpit objects. These always start in the Client Queue.
You can also dynamically specify the setting for a Queue object at runtime via the script element
:PUT_ATT (attribute: QUEUE).

Automation Engine

593

Start /Stop

Queue objects themselves cannot be executed. You can, however, activate (START) and
deactivate (STOP) the execution of objects within a Queue.
When stopping a Queue's execution, Workflows and Schedules change to the waiting condition
"STOP - Queue processing has been stopped". This does not affect any other active tasks. All
objects that are activated in a stopped Queue obtain the status "Waiting for Queue slot". When the
status has been changed to "START", all tasks that have been in a waiting condition due to the
Queue can start.
All of a client's Queue objects are displayed in the left half of the Activity Window or the System
Overview in which it is also possible to change the Queue's mode (start/stop) via the context menu.
The Activity Window of client 0 provides an overview of the Queue objects of all clients. A Queue's
current status is displayed by symbols.
Symbol

Description
"START" - Object execution of the Queue object is active. The max. Queue slots
must show a value above 0.
"STOP" - Object execution is deactivated. No further objects of the Queue will
start.
The Queue object's max. slots are "0" - i.e. it is not possible to start tasks. This
status depends on the setting specified in the Attributes tab and on the modified
Queue slots. The Queue's status is "START".

594

Chapter3 Objects

Exceptions

The maximum number of parallel-running tasks which are active in a Queue object can be specified
using the setting "max. slots". You can also specify a priority. Queue exceptions can be used to
modify these two settings for particular periods of time.
Example:
The priority should be increased to 50 and the max. slots should be reduced to 100 from Monday to
Friday between 12:00 am and 02:00 pm.
Days can be selected by specifying a Calendar object and the corresponding keyword. This setting
is optional. The validity time for the exception (From, To) and the priority are required parameters.
UC4 recommends activating the setting "Consider Estimated Runtime for Calculation".

Make sure to keep the order in which the exceptions have been entered in the table. The lines
are always processed from top to bottom. The first applicable exception is selected. You can
change the order of table entries using the arrow buttons.
Example:
The following exceptions have been defined in a Queue object:
Calendars

FIRM.CALENDAR

Keyword

ULTIMO

From

To

Max. slots

Priority

8:00

16:00

25

100

8:00

10:00

10

50

In this example, the first exception always applies for the period of time between 8:00 am and 04:00
pm. The second exception lies exactly within this period, thus it will never be checked.
See also:
Client Queue
Queue - Attributes tab
Consideration of Estimated Runtime for Calculation
Queue - Modifications
The settings of Queue objects can be changed in various places.
You can modify a Queue by using:
l
l
l
l

the object definition "Edit".


"Modify": To be opened via the Activity Window and the System Overview.
script element: MODIFY_SYSTEM.
"Ignore Queue" and "Ignore Agent Resource".

Automation Engine

595

Edit

"Edit" can be used to change all the settings and options of a Queue object. You can also define and
change exceptions.
See: Attributes tab

Modify

You can open this command by using the context menu in the System Overview or the Activity
Window. The Activity Window's left half includes a list of all of a client's Queue objects. System
client 0 displays the Queue objects of all clients.
"Modify" can be used to change the settings for "Max. slots" and "Priority". These modifications are
then valid until a new modification is made by an exception or a User. This command opens a dialog
that displays the current settings and allows modifications to be made.

MODIFY_SYSTEM

Also refer to the description of this script element.

Ignore Queue limit

If a task is in a waiting condition because there are not enough Queue slots (status: "Waiting for
Queue slot"), you can use the command "Ignore Queue limit" in order to start the task immediately.
This command is available in the Activity Window's context menu and the Workflow monitor.

See also:
Queue - Usage
System Overview - Queues
Activity Window

596

Chapter3 Objects

Client Queue
The following description explains the functions and peculiarities of a specific Queue object - the
"CLIENT_QUEUE".
Each client of a UC4 system includes the Queue object "CLIENT_QUEUE". This objects is
automatically created when a client is created. It is available in "<No Folder>".
By default, the Client Queue is stopped after it has been created.
Each executable object is automatically processed in the Client Queue unless a particular Queue
object has been defined in its settings. A particular Queue object can be allocated via the Attributes
tab or the script element :PUT_ATT.
Queue settings are not available for the Cockpit. It always starts in the client Queue.
Compared with regular Queue objects, the "CLIENT_QUEUE" has some limitations:
l

l
l
l
l

There is no limit to the number of max. slots. The maximum number of parallel-running tasks
cannot be limited.
The Client Queue cannot be renamed or deleted.
Transport, export or import actions are not possible.
The Client Queue cannot be copied.
No Queue exceptions.

The following Client Queue settings can be changed:


l
l

Priority (default value: 200)


Object execution: Start /Stop (default value: STOP)

See also:
Queue - Attributes tab
Queue - Usage

3.2.21 RA Solution
RA Solution
This object represents an RA Solution and is automatically created when the solution is loaded.
Object class: System object
Object type (short name): CITC

Header tab
The Header tab is a general tab which is available in every UC4 object.

Automation Engine

597

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates the user who last used the object including the date and time.
The number of times the object has been used is displayed to the right.

Archive keys

Two keywords of your choice can be specified.

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

598

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
By default, RA Solutions contain the Documentation tab Signature which contains the RA
Solution's signature data.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

599

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

600

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

3.2.22 RemoteTaskManager
RemoteTaskManager
The RemoteTaskManager monitors and controls non-UC4 operations that were not started by
UC4.
Object: RemoteTaskManager
Object class: Executable object
Object type (short name): JOBQ
The RemoteTaskManager can be used for:
l
l
l
l

PeopleSoft processes
All SAP jobs
Especially intercepted SAP
SAP process chains

You can set filter criteria in the RemoteTaskManager object in order to specify the external
workflows that should be shown in UC4. They are displayed in the Activity Window as the
RemoteTaskManager's children. Non-UC4 operations can also be monitored via the UserInterface.
The RemoteTaskManager provides even more functions: Non-UC4 operations can be started,
intercepted and canceled. The Child Post-Process tab can be used to write a script which is

Automation Engine

601

processed when the non-UC4 operation has ended. The statistics include details about each job
execution, and if required the job report can be transferred to your UC4 system.
You determine the area in which a RemoteTaskManager object can be used when you create it.

See also:
RemoteTaskManager - Execution
Intercepted Jobs
Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

602

Chapter3 Objects

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Extended Reports

Extended reports can be written for all objects that can be activated.
They log the complete script with all Includes, the generated JCL of
Jobs or accesses to UC4 objects etc.

Default (UC_
CLIENT_SETTINGS)

If you select this option, the reports that the UC4 administrator defined
in the UC4 Variable UC_CLIENT_SETTINGS with the key "EXT_
REPORTS" are generated.

All

All extended reports are written for this object.


This option overwrites possible presettings of the client.

None

No extended reports are written for this object.


This option overwrites possible presettings of the client.

Sync Tab
The Sync tab is object type-specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions to be taken in this tab if you intend to use this possibility.

Automation Engine

603

The Sync objects are checked one after the other when the task starts. The UC4 Automation
Engine tries to allocate the Sync object of the first line by calling the start action. If this is not
possible due to the Sync object's current status, the task waits, aborts or is skipped. The particular
reaction depends on the Else condition defined in the tab's last column. If "wait" has been specified,
the task waits until it can use the Sync object with the start action. Then the UC4 Automation
Engine checks the Sync object in the next line etc. The task starts as soon as all Sync objects
could successfully be allocated. Depending on the task's end status, either an abend or end action
is processed.
Up to 500 Sync objects can be specified.
Sync objects must not include a total of more than 5000 rules. Rules are defined actions which
are directly entered in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Due to this task allocation, it can take several seconds until a Sync is released after a
task has ended. In this case, the report entry shows a time stamp which is later than when the
task has ended. Such delays occur when the primary's work load is high or if it is processing lots
of Syncs.
Note that using many Sync objects and rules can reduce task clarity. Therefore, UC4
recommends keeping the number of Sync objects to a minimum.

Description

Only actions which have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object to be used for synchronizing the task

Start action

Defines the action to be taken at task start. If this is not possible due to
the Sync's status, the Else condition becomes effective.

Abend action

This action will be processed if the task aborts.

End action

This action will be processed if the task ends successfully.

Else

Define what should happen to the task if the start action cannot be
executed:
l
l
l

Task should wait until the start action can be executed (WAIT)
Task aborts (ABEND)
Task is skipped (SKIP)

See also:
Sync
Attributes Tab
The Attributes tab is object type-specific and is only provided in the "RemoteTaskManager"
object.

604

Chapter3 Objects

Description

Field/Control

Description

Host

Name of an AgentGroup or name of the agent


connected to the PeopleSoft or SAP system whose
non-UC4 operations should be monitored. An
AgentGroup can also be specified.

Queue

Selection of a Queue object in which the


RemoteTaskManager should be processed. The
RemoteTaskManager automatically starts in the
Client Queue (object name: CLIENT_QUEUE) if
nothing has been specified in this field.

Int. Account

Specification of an internal account.


Contents do not affect the UC4 system's internal
processing. You can access the attribute "Int.
Account" with script elements and integrate it in your
processes.

Max. parallel running jobs

Maximum number of jobs which can run parallel


The RemoteTaskManager does not start jobs if
value "0" is specified.

Start Jobs

The RemoteTaskManager object starts scheduled


SAP jobs when this attribute is set.
This option is not available in RemoteTaskManager
objects for process chains.

Automation Engine

Transfer job reports to DB

605

The report of the non-UC4 operation is transferred to


the UC4 Database.
In RemoteTaskManager for process chains,
either all reports (report of the chain and its
steps) or no reports are transferred.

Terminate Queue autom.

The RemoteTaskManager object ends automatically


if there are no more non-UC4 operations which
correspond to the specified filter criteria.

Filtering

Configuration for monitored and controlled


operations.
"Flat" - Operations are displayed in vertical order.
"Hierarchical" - The hierarchical view displays
existing parent-child relations.
Note that a RemoteTaskManager cannot start
intercepted child jobs without parents if
hierarchical filtering has been specified. Such
child jobs can be started if flat filtering has been
specified.
This option is not available in RemoteTaskManager
objects for process chains.

Consumption ... (Resources)

Resources consumed during the execution.


Allowed values: "0" to "99999"
Default value: 0
The value the UC4 administrator specified with
the key "WORKLOAD_DEFAULT_JOB" in the
UC4 Variable UC_SYSTEM_SETTINGS is
used if value "0" is selected.

UC4 Priority

Priority to be used for processing the


RemoteTaskManager in UC4.
Allowed values: 0 to 255
Default value: 0
The priority the UC4 administrator specified in
the UC4 Variable UC_CLIENT_SETTINGS with
the key "TASK_PRIORITY" is used if you select
value "0".

TimeZone

TimeZone object that is to be considered.

Generate at runtime

If this checkbox is activated, the content of the


Process tab is not processed at
RemoteTaskManager activation but at its start.
These points in time are not necessarily the same
(e.g. when the RemoteTaskManager is processed
by a Workflow).

Result evaluation per single task

606

Chapter3 Objects

Return Code

Return code expected from the


RemoteTaskManager's non-UC4 operations.

Else

Object that should be processed when a non-UC4


operation does not supply the specified return code.

PeopleSoft and SAP Tab


This tab contains the filter criteria that the RemoteTaskManager uses in order to select the
external workflows that should be mapped in UC4.
The structure of this tab can vary depending on the area that you use. A separate object template
is available for each area because the filter criteria can be very different.
Modifications made in the filter specifications do not affect the running of RemoteTaskManager
objects.
The RemoteTaskManager for CCMS Jobs facilitates the filtering of Jobs that are NOT in status
"scheduled". For technical reasons they cannot start automatically ("Start jobs" checked)
because they already run within SAP.

PeopleSoft Processes
[PeopleSoft Processes] [All SAP jobs] [Intercepted SAP jobs] [Java Scheduler Jobs in SAP] [Process Chains
in SAP]

Wildcard characters cannot be used for specifying filter criteria.

Filter

Description

Automation Engine

User Identification (Operator ID)

Name of a PeopleSoft user.

Process Type

Process type of the PeopleSoft process.

Process Name

Name of the PeopleSoft process.

Process Instance

Area for the process instance numbers to be selected.

Server name

Name of a PeopleSoft Process Scheduler Batch Server.

607

All SAP Jobs


[PeopleSoft Processes] [All SAP Jobs] [Intercepted SAP Jobs] [Java Scheduler Jobs in SAP] [Process Chains
in SAP]

The wildcard characters "*" and "?" can be used for the specification of some filter criteria.

Filter

Description

Job name

Name of the SAP job.

Job count

Number of the SAP job.

User name (job


initiator)

Name of the SAP user who has scheduled the job.

Wildcard
characters
allowed

608

Chapter3 Objects

Job status

Status of the SAP job:


l
l
l
l
l
l

Scheduled
Released
Ready
Active
Ended
Canceled

Scheduled start
time

Use the attributes "greater than or equals" and "lower than


or equals" to indicate a period that should be considered in
the selection.

Job without start


date

Consideration of SAP jobs without start date.

Job with start


condition "with
predecessor"

Consideration of SAP jobs with start date "after


predecessor".

Event
Identification

Name of the Event.

Event Parameter

Parameter for the selected Event.

Client

Client in the SAP system.

Job group

Name of the job group.

"true" - The jobs are selected.


"false" - The jobs are not used in the RemoteTaskManager.

"true" - The jobs are selected.


"false" - The jobs are not used in the RemoteTaskManager.

Intercepted SAP Jobs


[PeopleSoft Processes] [All SAP Jobs] [Intercepted SAP Jobs] [Java Scheduler Jobs in SAP] [Process Chains
in SAP]

The wildcard characters "*" and "?" can be used for the specification of some filter criteria.

Automation Engine

Filter

Description

Job name

Name of the SAP job.

Job count

Number of the SAP job.

User
name (job
initiator)

Name of the SAP user who has scheduled the job.

Scheduled
start time

Use the attributes "greater than or equals" and "lower than or


equals" to indicate a period which is considered in the selection.

Client

Client in the SAP system.

609

Wildcard
characters
allowed

Specify a particular client or the wildcard character "*" as the


placeholder for all clients. It is not possible to use both in
combination (e.g. "2*").

Java Scheduler Jobs in SAP


[PeopleSoft Processes] [All SAP Jobs] [Intercepted SAP Jobs] [Java Scheduler Jobs in SAP] [Process Chains
in SAP]

Wildcard characters must not be used in filter criteria.


Keep the spelling of filter criteria in mind as the Java Scheduler distinguishes upper and lower
case.

610

Chapter3 Objects

Filter

Description

Job name

Name of the Java Scheduler job.

User name (job


initiator)

Name of the SAP user who scheduled the Java Scheduler job.

Job status

Status of the Java Scheduler job:


l
l
l
l
l
l

scheduled
released
ready
active
completed
canceled

Scheduled start time

Use the attributes "Greater than or equals" and "Lower than or equals"
to determine the period to be considered in the selection.

Node name

Node on which the Java Scheduler job has been processed.

Return code

Return code of the Java Scheduler job.

Process Chains in SAP


[PeopleSoft Processes] [All SAP Jobs] [Intercepted SAP Jobs] [Java Scheduler Jobs in SAP] [Process Chains
in SAP]

You can use the wildcard character '*'in filter criteria.


For example: To show all process chains whose names contain "BW", you must specify the filter
'*BW'. The system searches for the complete filter term if you do not use wildcards.

Automation Engine

611

In RemoteTaskManager objects for process chains, the options Filtering and Start jobs
(Attributes tab) are disabled because they are useless here.

Filter

Description

ProcessChain

Technical name of the process chain in SAP.

Description

Description of the process chain.

Runtime tab
The Runtime tab is an object class-specific tab which is available in every executable object in
UC4. It can be used to specify parameters for a task's runtime behavior.

612

Chapter3 Objects

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluating the estimated runtime (Runtime Evaluation)
Monitoring the maximum runtime (Runtime Monitoring)
Monitoring the minimum runtime (Runtime Monitoring)
Reaction to runtimes that have been exceeded or not reached (Runtime Monitoring)

Description

Field/Control

Description

Definition for
ENDED_OK
Return code <=

Maximum return code for a task's normal end.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.
To set the return code, you can also use the script element
:MODIFY_STATE.

Else execute

You can execute an object if the task does not end with a return code
that lies within the ENDED_OK area.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

End status for


forecast

Selection list for the end status that this task should return when you
make a Forecast calculation.

Estimated runtime
(ERT)
Current ERT =

Displays the task's next estimated runtime (ERT).


You can enter the estimated runtime here. This value applies until the
ERT calculation is made after the task's next execution.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" is used to calculate the
estimated runtime.

Fixed value

A fixed value is entered as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the real runtime.
Possible selection: Average, linear regression, maximum value

from the last ... runs

Number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

Value in percent for an upward ERT correction.

Automation Engine

613

Differences > ... % are You can use this parameter to ignore huge deviations from the actual
ignored
runtimes up to a particular percentage.
Upper limit (in percent) for actual runtimes that should be included in
estimated runtime calculation.
but do use ... runs at
least

Number of past runs that should be considered regardless of


differences. Allowed value: 0 to 25.

Show Chart

Button that can be clicked in order to update the estimated runtime


according to the current settings. A diagram is displayed in a separate
window; it shows the last 25 ERT/RRT runs. Windows that are already
open are updated.

Reset Values

Button that can be used to delete the real and estimated runtimes.
A security query is displayed; confirm it and all saved runtimes are
cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action (ELSE condition) must be
specified which reacts when maximum runtime is exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's activation is
used as the maximum runtime. An action (ELSE condition) must be
specified which reacts when maximum runtime is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

A number of days and time of day are set for when the task must be
finished. The starting point for the calculation of the date is the real date
of the task. An action (ELSE condition) must be specified which reacts
when maximum runtime is exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

614

Chapter3 Objects

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as its maximum runtime. You must specify an action (ELSE condition)
that applies if the maximum runtime has been exceeded.

- ... %

When you select the ERT, you can also specify a correction value in
percent for the maximum runtime. The value you determine is added to
the estimated runtime.

Else
Cancel / Quit

If you activate this check box, the task is canceled or quit if the runtime
has been exceeded. Only available if the maximum runtime is
monitored.

Execute

If you activate this check box, you determine that the task is executed.
You can directly select the executable object. If the runtime is
exceeded or not reached, the specified task is executed. Only available
if the runtime is monitored.

Comments

A different type of runtime monitoring can be used for tasks that have been activated in a Workflow
or by using a Schedule object. You can define it in the properties of the relevant object (Runtime
tab). The settings that are defined within the context of a Workflow or Schedule overrule the settings
that have been defined in the task itself.
You can also apply these setting for runtime monitoring in the Workflow or Schedule. This is the
default setting.

See also:
Runtime Evaluation
Runtime Monitoring
Variables & Prompts Tab
The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: RemoteTaskManager
Object class: Executable object
Object type (short name): JOBQ
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Automation Engine

615

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Only defined variables

The object only obtains the object variables of the superordinate


task that have been defined in its Variables & Prompts tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the Variables & Prompts
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.

616

Chapter3 Objects

Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the particular PromptSet element is not a text field, click its
labeling.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually
enter the predefined variables, or select them in a dialog that you call using the
button.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs when the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.

Automation Engine

617

Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available when
the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a Workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a Workflow because you can only
start a rollback process within a Workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but processed using
the Automation Engine.
Backup actions are will always be processed before the object runs and Rollback actions can only
be started via Workflows. For more information, see the related documentation.

Field/Element

Description

618

Chapter3 Objects

Enable Rollback

Use this to activate or deactivate the rollback settings..


When this option is deactivated, all the fields of this tab are
disabled.

Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.d in the Backup object depend on the
relevant task's processes and actions. Note that you must
define them manually. For example, if you use the current
object to update your database, it is useful to backup the
database using the Backup object.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

Rollback

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

Process Tab
The Process tab is a type-specific tab in which processing instructions are stored in UC4's
scripting language.

Automation Engine

Description

The script is either processed at RemoteTaskManager activation or start. This point in time
depends on the setting "Generate at runtime" which can be defined in the Attributes tab.
A RemoteTaskManager's script cannot contain UC4 JCL for PeopleSoft and SAP.

See also:
Script Editor
About UC4 Scripts
SampleCollection
Output ScanTab
The Output Scan tab determines the filters that are used to search the report of a task and/or
external file plus the reaction to the provided result.
Output Scan tab actions will be processed before the Post Process tab actions.
Note that the actions will always be processed regardless of the task's end status.

619

620

Chapter3 Objects

For example:
The above task refers to two Filter objects. FILTER.OUTPUT searches for the word "ERROR" in
an external file and "FILTER.REPORT" searches for a term that should be found in any case in the
report. The report is searched first because the list is processed from bottom to top.
The following table shows the possible effects in various situations:
The report does not The external file
include the expected includes the word
term
"ERROR"

Return code

Alarm object

9
5

ALARM.CALL

ALARM.CALL

Description

The Action area includes a table with filter definitions.


In this table, you can select one or several Filter objects whose conditions should be checked. You
also define here whether a certain conditions must apply or not and the return code that the affected
task should obtain. Optionally, you can also specify an object that should be executed.
Note that the entries will always be processed from bottom to top.
The first entry that applies is decisive for the task's return code. Successive conditions that apply
do not affect the return code. The optional object is executed in each line in which the condition
applies.
Note that filter definitions are checked at runtime. For example, a task obtains the status
FAULT_POST_PROCESSING if the Filter object you indicate searches a report that does not
exist in the task.

Automation Engine

Field/Element

621

Description

Action
Output filter

The Filter object that includes the criteria that should be applied when
searching reports and/or external files.

True/False

You can select whether the criteria specified in the Filter object must
apply.
"true" - yes
"false" - no

Set return code

The return code for the task.

Status Text

Any text that is used for the task's remote status when the filter
definition applies.
The remote status of task appears in the corresponding column in
the Activity Window.

Execute

The object that should be processed in reaction to the result that is


supplied by the Filter object (optional).

Pass down to dynamic


children

This option is available in SAP jobs and RemoteTaskManager objects.


It determines whether Filter objects should also apply to child tasks.
"Yes" - The search takes place in the task and its children.
"No" - The search takes place only in the task.
"Only children" - The search takes place only in the child task.

Override host for


FileScan (optional)

By default, this task's agent and Login object are used to access an
external file that has been defined in the Filter object. You can change
one or both entries.
In FileTransfers, the destination agent is used by default.

Host

The name of an OSor a Java aent

Login

The name of a Login object.

Post-Process Tab
The Post Process tab is an object type-specific tab that is only available in the objects
"FileTransfer", "Job" and "RemoteTaskManager". Processing commands can be stored here in
UC4's script language.

622

Chapter3 Objects

Description

The script commands stored in this tab are processed when the RemoteTaskManager ended or was
canceled.
An ended RemoteTaskManager can still be controlled with post-process commands. For example,
the RemoteTaskManager's return code and status text (the text supplied by the Job messenger in
the Trailer) can subsequently be modified. The script statement :MODIFY_STATE (which was
developed for exclusive use in the Post Process tab) defines the final ending of the
RemoteTaskManager.
Reports, for example, can be analyzed with PREP_PROCESS_REPORT. If an error is found, the
status ENDED_NOT_OK could be defined for a RemoteTaskManager although it has already
ended normally from the "technical" point of view and vice versa. Return code "0" is assigned to
canceled RemoteTaskManagers because the fact that the RemoteTaskManager has been
canceled is irrelevant for further processing.
With the script statement :RSET, script variables can be transferred between Process and Post
Process tabs. This script statement returns the value that has been assigned to the script variable
in the Process tab.
A RemoteTaskManager's post script cannot contain JCL lines.
Additionally, the following script elements must not be used:
l
l
l

:PUT_ATT - Setting attributes for RemoteTaskManager generation is irrelevant.


:EXIT - Canceling script processing withreturn code > "0" is not allowed.
:STOP - Interrupting script processing is not allowed.

See also:
Script Editor
About UC4 Scripts
SampleCollection

Automation Engine

623

Child Post-Process Tab


The Child Post Process tab is an object type-specific tab that is only found in SAP jobs and
RemoteTaskManagers.

The script lines shown below are used for the children of the Jobs and the RemoteTaskManagers.
The following applies:
1. The script is processed for each individual child process.
2. The script is processed immediately after the child process finishes.

See also:
Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

624

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

625

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

626

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

RemoteTaskManager - Execution
You can activate several RemoteTaskManagers that use the same Agent. However, overlaps
may occur because of the filter criteria that have been specified. UC4 ensures that a non-UC4
operation is only shown in one RemoteTaskManager. UC4 recommends avoiding that filter
criteria overlap when you set them in active RemoteTaskManagers.
In PeopleSoft, the assignment of process-request instance numbers can be reset (e.g. from
200000 to 100000). This is an unusual procedure that has the effect that the PSPRCSRQST
table is cleared. Otherwise, the problem of "duplicate keys" would occur. The
RemoteTaskManager must be ended and re-activated when the instance number has been
reset. There must be no PeopleSoft processes in the UC4 activities, because otherwise Queue
items would be missing.

Displaying and tracing non-UC4 operations

The Activity Window displays external procedures that comply with the filter criteria as subtasks of
the RemoteTaskManager (the hierarchical view must be activated for this purpose). This does not
apply for jobs that have been started by UC4, because the RemoteTaskManager exclusively deals
with non-UC4 operations. When a non-UC4 operation ends, it is no longer displayed in the Activity
Window.
Canceled child tasks always remain in the Activity Window and can be deactivated there.

Automation Engine

627

Note that filtering for active SAP jobs can supply incomplete results. Jobs are matched with the
SAP system through polling (in intervals). The RemoteTaskManager only displays jobs that are
active at this point in time. If a job is started within a particular interval and ends immediately
afterwards, it is not shown in the RemoteTaskManager.
You can also access the statistics of non-UC4 operations via the RemoteTaskManager's statistics.
The corresponding report is available when the setting "Transfer job reports to DB" has been
activated in the Attributes tab.
SAP Process chains
The SAP agent retrieves all the process chains that comply with the specified filter criteria. If the
filters only apply to the child processes of a process chain, only the child processes will be
displayed. If the process chain parent and the child(ren) comply with the criteria, their structure will
also be displayed in the Activity Window (the hierarchical view must be activated for this purpose).
Process chains that have ended successfully are automatically removed from the Activity Window.
Aborted chains remain in it as subordinate tasks of the RemoteTaskManager.
You can also restart process chains. In the Activity Window's context menu, you can select the
menu item "Modify task - Restart Remote" for this purpose.
The RemoteTaskManager cannnot identify process chains that were activated by a UC4 job and
restarted in SAP.
Note that cold starting the SAP agent can have the effect that the processes that are shown in
the RemoteTaskManager are lost.
Whether reports are available depends on what you have specified in the setting "Transfer job
reports to DB" (Attributes tab).

Controlling the queue

The RemoteTaskManager does not only monitor but can also activate scheduled SAP jobs when
the attribute "Start jobs" is set. Additionally, the maximum number of operations running parallel can
also be controlled. The RemoteTaskManager then acts in the same way that a Group object acts.

Stop/Go

RemoteTaskManager objects can be intercepted using the context menu command "Stop". Doing
so has the effect that:
l

l
l
l

The RemoteTaskManager does not accept new operations that meet the specified filter
criteria.
Running operations are not stopped.
Child Post Processes of operations that end during a "Stop" are processed.
Operations do not start anymore if the attribute "Start jobs" has been set in the
RemoteTaskManager.

The "Go" command in the context menu cancels the "Stop" condition.

Canceling

Canceling the RemoteTaskManager object has the following consequences:


The attribute "Start jobs" is set:

628

Chapter3 Objects
l
l

Operations that have not yet started are also canceled.


Operations that have already started continue.

The attribute "Start jobs" is not set:


l

All operations are canceled.

Ending

The same procedure applies as for RemoteTaskManagers that are canceled (except that it ends on
status "ENDED_OK").
Note that Jobs are only filtered once. The preliminary ending of a RemoteTaskManager which
also starts Jobs can trigger the start of non-assigned Jobs. These Jobs are not filtered when the
RemoteTaskManager is reactivated and they can therefore not be controlled by UC4.
RemoteTaskManager Attributes
The following overview includes the attributes of a RemoteTaskManager object and describes
their functions, allowed values and ways of modification.

Tab

Attribute

Description

Value

Accesses

ARCHIVE_
KEY1

Archive key 1

User-defined,
maximum 60 characters

GET_ATT
:PUT_
ATT
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
maximum 20 characters

GET_ATT
:PUT_
ATT
Change
Program,
via script
variable,
predefined
variable

AUTO_CLOSE

Terminate Queue
autom.

"0" - The
RemoteTaskManager does
not end automatically.
"1" - The
RemoteTaskManager ends
when no more Jobs are
available.

GE_ATT
:PUT_
ATT
(Process)
Change
Program

Automation Engine

629

AUTOSTART_
JOBS

Start Jobs

"0" - Scheduled Jobs are


not started automatically.
"1" - Scheduled Jobs are
started automatically.

GET_ATT
:PUT_
ATT
(Process)
Change
Program

DATE_
CREATED

Created on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-0000 00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-0000 00:00:00"

GET_ATT

DCMODUS

Mode
UserInterface

"Y" - UserInterface active


"N" - No UserInterface
active

GET_ATT

FSC_HOST

Override host for


FileScan
(optionally) - Host

Name of an Agent,
maximum 32 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

FSC_LOGIN

Override host for


FileScan
(optionally) - Login

Name of a Login object,


maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process),
Change
Program,
predefined
variable

GEN_AT_
RUNTIME

Generate at
runtime

"Y" - Generation at runtime


"N" - Generation at
activation time

GET_ATT

HOST

Host

Name of an Agent,
maximum 32 characters

GET_ATT
:PUT_
ATT
(Process)
Change
Program,
predefined
variable

630

Chapter3 Objects

INT_ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
maximum 16 characters

GET_ATT
:PUT_
ATT
(Process)
Change
Program,
via script
variable,
predefined
variable

LAST_DATE

Last used on

Time stamp in the format


"YYYY-MM-DD
HH:MM:SS"
If not available: "0000-0000 00:00:00"

GET_
ATT,
predefined
variable

LAST_USER

Last used by

Name of the User object,


maximum 200 characters

GET_
ATT,
predefined
variable

MAX_
RETCODE

ENDED_OK until
return code

User-defined,
maximum 11 characters

GET_ATT
:PUT_
ATT
(Process)

MAX_
PARALLEL_
START

Max. parallel
running jobs

User-defined,
Value between "0" and
"999"

GET_ATT
:PUT_
ATT
(Process)
Change
Program,
predefined
variable

MAX_RET_
CHILDREN

Result evaluation
per single task return code

User-defined,
maximum 11 characters

GET_ATT
:PUT_
ATT
(Process)
Change
Program

MAX_RET_
EXECUTE

Result evaluation
per single task else

Name of an executable
object,
maximum 200 characters

GET_ATT
:PUT_
ATT
(Process)
Change
Program,
via script
variable

MODIFY_
COUNT

Modified

Number of object
modifications

GET_ATT

OBJECT_NAME

Object name

User-defined,
maximum 200 characters

Change
Program

Automation Engine

631

OBJECT_TITLE

Title

User-defined,
maximum 255 characters

GET_
ATT,
:PUT_
ATT
(Process),
predefined
variable

OO

Transfer Job
reports to DB

"J" - Job reports of external


Jobs in UC4 are stored.
"N" - Job reports are not
stored.

GET_ATT
:PUT_
ATT
(Process)

PPF_EXECUTE

Action - Execute

Name of an executable
object,
maximum 200 characters

Change
Program

PPF_FILTER

Action - Output
filter

Name of a Filter object,


maximum 200 characters

Change
Program

PPF_
INHERITANCE

Inherit to dynamic
child tasks

"Y" - Yes
"N" - No
"C" - Children only

Change
Program

QUEUE

Queue

Name of a Queue,
maximum 200 characters

GET_
ATT,
:PUT_
ATT
(Process)
Change
Program,
predefined
variable

RESOURCE_
CONSUMPTION

Consumption
(Resources)

User-defined,
Value between "0" and
"99999"

GET_
ATT,
:PUT_
ATT
(Process)
Change
Program,
predefined
variable

SCRIPT

String in the script of the Group which should be


changed

Change
Program

SYNC_OBJECT

Assigned Sync
object

Name of a Sync,
maximum 200 characters

Change
Program

TIMEZONE

TimeZone

Name of a TimeZone
object
maximum 8 characters

GET_ATT
:PUT_
ATT
(Process),
predefined
variable

632

Chapter3 Objects

UC4_PRIORITY

UC4 Priority

User-defined,
Value between "0" and
"255"

GET_ATT
:PUT_
ATT
(Process),
predefined
variable

USAGE_
COUNT

Last used

Number of object usages

GET_
ATT,
predefined
variable

USER_
CREATED

Created by

Name of the User object,


maximum 200 characters

GET_
ATT,
predefined
variable

USER_
MODIFIED

Changed by

Name of the User object,


maximum 200 characters

GET_
ATT,
predefined
variable

See also:
RemoteTaskManager
Attributes
:PUT_ATT Statement
GET_ATT Function
UC4.DB Change

3.2.23 Schedule
Schedule
Schedules can be used to start executable objects periodically.
Object class: Executable object
Object type (short name): JSCH
A Schedule contains tasks and starts them in a pre-defined interval (e.g. every two days). The start
time can individually be determined for each task.
Object types that can be handled via a Schedule:
l
l
l
l
l
l
l
l

Events
FileTransfers
Groups
Workflows
Jobs
Notification
RemoteTaskManager
Scripts

The minimum interval to be scheduled is a day. Use the command "Execution with Options" if
an object should start more often.

Automation Engine

633

Creating Schedules
Schedules start executable objects in predetermined intervals.

Procedure

1. Click the button in the toolbar and a window listing all the available object types opens.
Select type Schedule (JSCH).
2. Assign a suitable name and open the Schedule object. Click the Notification tab
3. The setting "Period" can be used to determine the intervals in which the scheduled tasks
should be processed. The period change defines the time for a new period to start.
4. The Schedule tab lists all objects that will be started via the Schedule. Objects can be added
by dragging them from the Explorer and dropping them to the tab or by selecting the
corresponding command from the Schedule's context menu. The properties window opens
automatically. There are various ways of configuring the task's execution in its tabs. UC4
recommends specifying the start time in any case - the predetermined default time is 00:00.
Use the other settings in accordance with your requirements.
5. You can also use the Runtime tab settings in order to monitor the Schedule's execution.
6. UC4 script elements can be stored in the Process tab.
7. Activate the Schedule object. Only active Schedules can start their assigned tasks.
There are numerous other possible settings that can be specified in the Schedule object. Details
are found in the documentation about the individual tabs.
Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control

Description

634

Chapter3 Objects

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects etc.

Default (UC_
CLIENT_SETTINGS)

If you select this option the reports the UC4 administrator defined in the
UC4 Variable UC_CLIENT_SETTINGS with the key "EXT_
REPORTS" are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions that should be taken in this tab if you want to make use of this
possibility.

Automation Engine

635

When the task starts, the Sync objects are checked one after the other. The UC4
AutomationEngine tries to use the Sync object that is defined in the first line by calling the start
action. If this is not possible because of the Sync object's current condition, the task waits, aborts
or is skipped. The type of reaction depends on the Else condition defined in the tab's last column. If
"wait" has been specified, the task waits until it can use the Sync object with the start action. Then
the UC4 Automation Engine checks the Sync object in the next line etc. The task starts as soon all
Sync objects could successfully be used. Depending on the task's end status, either an abend or
end action is processed.
Up to 500 Sync objects can be specified.
All Sync objects must not include a total of more than 5000 rules. Rules are defined actions that
are directly specified in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Due to this task allocation, it can take several seconds until a Sync is released after a
task has ended. In this case, the report entry includes a time stamp that is later than the task
has ended. Such delays occur when the primary's work load is high or if it is processing lots of
Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions that have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object that should be used to synchronize the task.

Start action

Defines the action that should be taken when the task starts. If this is
not possible because of the Sync's status, the Else condition becomes
effective.

636

Chapter3 Objects

Abend action

This action is processed if the task aborts.

End action

This action is processed if the task ends successfully.

Else

You can define here what should happen to the task if the start action
cannot be executed:
l

l
l

The task should wait until the start action can be executed
(WAIT).
The task aborts (ABEND).
The task is skipped (SKIP).

See also:
Sync
Attributes Tab
The Attributes tab is object type-specific and is only available in "Schedule" objects. You can
use it to define start parameters and period settings.
Object: Schedule
Object class: Executable object
Object type (short name): JSCH

Description

Field/Control
Attributes

Description

Automation Engine

Group

637

If the Schedule should be started by a Group, you can select this Group
here. If there is no entry, the Schedule is activated immediately.
Note that the entry that is specified here is not considered if the
Schedule is started through a Workflow, a Schedule or as a recurring
task.

Queue

Selection of a Queue objectin which the Schedulet should be


processed. The Schedule automatically starts in the Client Queue
(object name: CLIENT_QUEUE) if nothing has been specified in this
field.

Children Queue

Queue object that is used for the Schedule's tasks. The Queue of the
subordinate tasks is replaced by the value that is specified here if the
Schedule is being processed. The settings that are made in the
individual tasks are used if no value has been specified for "Children
Queue".
If you select *OWN, the Workflow's Queue (attribute: Queue) is used
for the subordinate tasks.

Int. Account

Specification of an internal account.


Contents do not affect the UC4 system's internal processing. You can
access the attribute "Int. Account" with script elements and integrate it
in your processes.

Period ... Day(s)

The Schedule object starts all tasks that are assigned to it periodically.
Here, you can specify the length of the period in days, the default value
being 1 day. With this setting, tasks run on a daily basis.
You can specify for each task in theStart time tab at which time and on
what day within the specified period ("Start of period + n days") it
should be processed.
Allowed values: 1 - 99

Periodic turnaround

Determine the time when a new period should begin. Already started
Jobs continue to run.

UC4 Priority ... (0-255)

Priority that should be used to execute the Schedule in UC4.


Allowed values: 0 to 255
Default: 0
The priority that the UC4 administrator has specified in the UC4
Variable UC_CLIENT_SETTINGS with the key "TASK_PRIORITY" is
used if you select value "0".

TimeZone

Selection of a TimeZone object.

Generate at runtime

Activate this checkbox if the Schedule should not be generated at


activation time but at runtime.

Tasks running
parallel

638

Chapter3 Objects

Max ...

Setting that defines the maximum number of parallel executions for this
Job.
Allowed values: 0 to 99999
Default: 0 (no limit on tasks running parallel)
Note that tasks are executed per active Schedule.
Examples:
Max. "1" - At any time, not more than one Schedule execution must be
available.
Max. "2" - At any time, not more then two active Schedule executions
must be available.
etc.

Else: Wait Abort

Instruction that defines how this Schedule should be handled if its


execution exceeds the specified maximum number of tasks that can
run at the same time.
Wait = The Schedule waits until execution is possible.
Abort = The Schedule is interrupted.

Result evaluation
per single task
OK-Status

Selection field for the End status that is expected for the subordinated
tasks of the Schedule.

Else ...

Select an object that should be executed if the defined OK status of one


or more subordinated tasks does not occur.

The settings that are specified in this tab can be read and modified at runtime. Attributes of this
object are accessed with script statements and functions.
Schedule Tab

Schedule Tab
The Schedule tab is object-type-specific and is only available in "Schedule" objects. It is used to
store and display the scheduled executable objects.
Object: Schedule
Object class: Executable object
Object type (short name): JSCH

Automation Engine

639

Description
Adding tasks
Drag & Drop objects from the UC4 Explorer to the Schedule tab. You can also use the popup-menu
command Add task in order to store an object in the Schedule. A dialog window opens in which you
can enter the name of the object that should be inserted or select the object directly from a small
UC4 Explorer window (click on the three dots to call it).

Within a Schedule, objects can be copied and inserted using the commands Copy task(s) and Insert
task(s).
The properties dialog is automatically displayed when a task has been inserted. You can start
conditions and dependencies in it using the following tabs:
l
l
l
l

Start time tab


Calendar tab
Runtime tab
Result tab

640

Chapter3 Objects

The point of time that is defined for the Schedule's periodic turnaround is automatically
suggested as start time.
Schedules can include an object several times. Drag and drop the object to an existing entry and
its start time is used for the inserted task.
Description of the Schedule line
Each scheduled task is displayed in one table line. These lines are sorted by the tasks' start times.
Tasks of the same start time are additionally sorted by name.
l

Definition
A red alarm clock symbol is found at the beginning of the table line if the task is active. A
gray symbol refers to an inactive task. Right after the clock symbol, the start time is shown
which is composed of period and the exact start time.
Conditions
The table column "Conditions" informs about task properties which influence the start of the
task. Abbreviations symbolize existing conditions or dependencies:
l A - indicates that the task was set inactive
l C - indicates that a Calendar condition was specified (properties of the task,
Calendar tab)
l S - signals that the task is influenced by a Sync object. Note that dependencies to
Sync objects are not set in the Schedule itself. They are defined in the Sync tab of the
respective object.
l T - signals that runtime monitoring has been defined (properties of the task, Runtime
tab)
l R - is displayed when the end status of the task is monitored (properties of the task,
Result tab)

Name and Type


The task's name and object type are given in the last two columns.

Menu commands
Commands that refer to individual tasks or the Schedule can be called through the context menu of
the UserInterface or the buttons in the toolbar.
If you highlight a task, the context menu activates commands for this task. You can call the
properties dialog, the statistics or the last report of the task. Task can so be edited or removed from
a Schedule.
If no task is highlighted, the available commands refer to the Schedule itself and statistics or the
last report can be displayed or a new task be added.

Properties of Objects

Properties of Objects

In addition to the start time, you can specify dependencies and conditions for each individual
task. Use the command Properties... in the Schedule's context menu for this purpose.
The following tabs are available:
l
l

Starttime Tab - To define the start time.


Calendar Tab - To specify Calendar conditions.

Automation Engine
l
l
l

641

Runtime Tab - To monitor the minimum and/or maximum runtime.


Variables &Prompts Tab - To modify object or PromptSet variables.
Result tab - To define the reaction to the end status.

In the properties tab Variables &Prompts, you can also use object variables and PrompSet
variables. Predefined variables are also supported. Their values also refer to the Schedule.

See also:
Schedule Logic

Start-Time Tab

You can use the Start time tab in order to set the time at which the Schedule should start a task.
You can set tasks inactive that do not start but should still remain in the Schedule.

For example:
The task that is shown above is started by the Schedule at 08.00 pm on the same calendar day on
which the period starts or changes.

Description
Field/Control

Description

Time

Task's starting time in hours and minutes.

642

Chapter3 Objects

Start of period+ ...


Day(s)

Number of days (calendar days serve as the basis) that must have
passed after the start of the period. Subsequently, the task starts at the
specified time.
The logical datespecifies the period's start.

Active

The task is active in the Schedule if the check box is selected.


If the check box is not selected, the task is not active. It is therefore not
executed but is still part of the Schedule.

Comments
You can specify the duration of the period in the Schedule object'sAttributes tab. If it lasts several
days, you can additionally define that a particular task should start on a day that is not the starting
day. Pay special attention to these definitions if the periodic turnaround does not take place at 00:00
o'clock.
Start-time days are based on actual calendar days. This includes that a new calendar day always
commences at midnight. This is of special importance if the periodic turnaround does not take place
at 00:00 o'clock. A period that covers one day (24 hours), with a periodic turnaround that takes place
at 10:00am lasts two calendar days. Therefore, tasks can start between 00/10:00 am and
00/11:59pm and between 01/00:00am and 01/10:00am.
For example:
SCHEDULE:
Period: 2 days
Periodic turnaround: 06:00 am
TASK:
Start time: 08:00 am
Start of period: + 1 day
The following table shows the Schedule's first 5 execution days:
Day1

Day2

Day3

Day4

Day5

03:00 pm

08:00 am

06:00 am

08:00 am

06:00 am

Activation of
Schedule

TASK
starts

Periodic turnaround
takes place.

TASK
starts

Periodic turnaround
takes place.

The system verifies that all specified times lie within the Schedule's period. You cannot specify
times that lie beyond this period.
Vice versa, if you want to reduce the period of a Schedule that already includes tasks, the start time
of the latest task is decisive (calculated from the period's start time). If a task starts at 5:00pm on
the period's third day (03/5:00pm), the complete period cannot be shorter than 4 days.

Display in the Schedule and its Monitor


The graphical display shows the start time in the Definition column in the format period/time. A gray
clock symbol indicates that the task is currently inactive.

Automation Engine

643

Variables & Prompts Tab

The Variables & Prompts tab can be used to change the values of object and PromptSet
variables of Schedule tasks. In doing so, you can activate Schedule tasks with particular values.

This tab is structured in a similar way to the Variables & Prompts tab of objects. PromptSet
objects and object variables that are assigned to the object are listed and you can modify their
values as required. Modifications only apply to the Schedule task and do not affect any other
executions. To get the original values back again, you remove the object from the Schedule and add
it again.
The menu items "Parent PromptSets" and "Parent Values" provide an overview of the
Schedule's PromptSet objects and object variables. These values are displayed but they cannot
be changed.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements if you also want to use variables in
the value. The effect is that the PromptSet elements now appear as a gray text field that has the
name of the related PromptSet variable. In this specific text field, you can use predefined variables
and also the Schedule's (parent) object or PromptSet variables (with a leading &).
You can select the predefined variables in a dialog that you call using the

644

Chapter3 Objects

button. Note that this button will only become active when you position the text cursor in a gray
text field.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
For example:
The variable name of one of the Schedule's PromptSet elements is &PARENT#
The variable name of one of the Schedule task's PromptSet elements is &CHILD#
To pass the Schedule's value on to the task, you click on the blue description of the PromptSet
element with the variable &CHILD# and then you enter &PARENT# in the text field.
To show the Variable names and values of the Schedule's PromptSet elements, you select
"Parent PromptSets" and click on the description next to it. The description of appearing text
field represents the variable 's name and its content is the value. The field is grayed out and
cannot be changed.
You can also use predefined variables as values for object and PromptSet variables. To use
predefined variables in the values of PromptSet elements, you click on the element's
description. You can open the dialog for the variable selection by using the button at the right
lower edge.
In this tab, you can neither add new PromptSet elements nor object variables.
When a Schedule is activated, this means that only the Schedule's PromptSet object is called.
The prompts of the tasks are not displayed. For the tasks, the values that have been set in the
Schedule's properties apply. If you have not made any changes on Schedule level, the values of
the Variables & Prompts tab or of the PromptSet definition are used. The values of the
Schedule and the tasks apply for all periods.

See also:
"Variables & Prompts" tab

Calendar Tab

The Calendar tab can be used to define the Calendar dependencies of a task in a Schedule. The
task is only activated and executed if the specified Calendar conditions are met.
A task that is not processed because of the specified Calendar conditions obtains the status
ENDED_INACTIVE - Inactive today because of Calendar.

Automation Engine

645

For example:
The task that is shown above is only executed if its starting date is part of the WORKDAYS in the
Calendar FIRM.CALENDAR.

Description
Field/Control

Description

Calendar

By activating this check box, you can assign a Calendar and


calendar keywords.
The following settings are available if this checkbox is
active:

Execute if one condition


matches

The task is processed if the logical date complies with one of


the specified Calendar conditions.
Schedule tasks: The logical date is the start time that has
been used in order to schedule them (see: Start time
tab).

Execute if no condition matches.

The task is processed if the logical date does not comply


with any of the specified Calendar conditions.

Execute if all conditions match

The task is processed if the logical date complies with all


specified Calendar conditions.

Table

In this table, you can select one or more Calendars with


Calendar keywords.

Calendar

Selection field for the Calendar.

646

Chapter3 Objects

Keyword

Selection field for the Calendar keyword. It must be selected


from the Calendar's existing keywords.

Display in the Schedule and its Monitor


C is shown in the graphical display if the Calendar tab is used.

Runtime tab

The Runtime tab can be used to monitor the runtime of a task in a Schedule. It is possible to
monitor the maximum and/or minimum runtime of this task and to react to deviations.
The possible settings largely correspond to those made in the object's Runtime tab.

Example:
The above example allows a minimum runtime of two hours for this task in the Schedule. If this time
cannot be kept, the night shift will be informed with an object of the same name. The maximum
runtime is not monitored. Possible settings for runtime monitoring which has been specified in the
task itself are not considered.

Automation Engine

647

Description
Field/Control

Description

Use MRT/SRT
settings of the task

Settings for runtime monitoring are taken from the object.


If this check box is not activated, you can define your runtime
monitoring settings for the task in this window. The task settings
specified in the Workflow override those defined in the object itself.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


Time is specified as a fixed value in the format
"hours:minutes:seconds". An action can be specified for the case that
the maximum runtime is exceeded (refer to Else section).

ERT

The maximum runtime is monitored.


The estimated runtime (ERT)for this task is used as the maximum
runtime. Refer to the Else section to specify what should happen if the
maximum runtime has been exceeded.

+ ... %

When selecting ERT as the maximum runtime, you can also specify a
correction value in percent. The calculated value will then be added to
the estimated runtime.

Curr. date + day(s)

The maximum runtime is monitored.

Time

Examples:
0 days = the day of task activation
A point in time is set when the task should have finished. The number
of days is counted from the task's activation onwards.
2 days = two days after task activation
Allowed values: 0 - 99
Refer to the Else section to specify what should happen if the
maximum runtime has been exceeded.

TimeZone

TimeZone that should be used.

Minimum Runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The minimum runtime is used as a fixed value in the format
"hours:minutes:seconds". Refer to the Else section to specify what
should happen if the minimum runtime has been exceeded.

648

Chapter3 Objects

ERT

The minimum runtime is monitored.


The estimated runtime of the task is used as its minimum runtime.
Refer to the Else section to specify what should happen if the actual
runtime is shorter than the minimum runtime.

- ... %

When selecting ERT as the minimum runtime, you can additionally


specify a correction value in percent. The calculated value will then be
subtracted from the estimated runtime.

Else
Cancel / Quit

If this check box is activated, the task will be canceled or ended when
its runtime is above the expected value. Only available when the
maximum runtime is being monitored.

Execute

Object that should start if the runtime is above or below the expected
value.
Enter the name of the object or select it directly from a small UC4
Explorer (refer to the three dots to call it.

In the example shown above, the Schedule neither checks the maximum nor the minimum runtime.

Display in the Schedule and its Monitor


A "T" is displayed in the graphical display when the Runtime tab is used.

See also:
Runtime Evaluation
Runtime Monitoring

Result Tab

The Result tab can be used to define the reactions to a task's end status. Any task can be
reactivated and/or restarted if the specified status cannot be reached.
The Result tab is ignored if a task obtains the status ENDED_INACTIVE.

Automation Engine

649

Example:
In the above example, the task will immediately be repeated if it does not end with the status
ENDED_OK. If this status is still not reached after the second execution, the night shift will be
informed with the object of the same name.

Description
Field/Control

Description

OK status

This entry specifies the status that should be reached by the task.
The task result is not checked if no status is selected.
If the task does not reach the specified status, the actions that have
been defined in the ELSE section are executed.

Else
Repeat

Enables automatic repetitions if the specified status is not reached.


In Job objects, repetitions are executed in the form of restarts.
Repetitions start at the restart point that has last been passed. This
means that the job is automatically repeated from the processing step
where it has stopped.

Number of repetitions.

after ... Minutes

Waiting time in minutes before the repetition starts. 0 minutes means


that the repetition starts immediately.

650

Chapter3 Objects

Execute

Option for the selection of an executable object.


Enter the object name or click the three dots to open a new Explorer
window in which you can select the object of your choice.

Only after the last


unsuccessful
repetition

Activate this check box if the selected object should not start
immediately, but only after the determined number of repeated runs.

Display in the Schedule and its Monitor


An "R" displays in the graphical display if you use the Result tab.

Runtime tab
The Runtime tab is an object class-specific tab which is available in every executable object in
UC4. It can be used to specify parameters for a task's runtime behavior.

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluating the estimated runtime (Runtime Evaluation)
Monitoring the maximum runtime (Runtime Monitoring)
Monitoring the minimum runtime (Runtime Monitoring)
Reaction to runtimes that have been exceeded or not reached (Runtime Monitoring)

Automation Engine

651

Description

Field/Control

Description

Definition for
ENDED_OK
Return code <=

Maximum return code for a task's normal end.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.

Else execute

You can execute an object if the task does not end with a return code
that lies within the ENDED_OK area.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

End status for


forecast

Selection list for the end status that this task should return when you
make a Forecast calculation.

Estimated runtime
(ERT)
Current ERT =

Displays the task's next estimated runtime (ERT).


You can enter the estimated runtime here. This value applies until the
ERT calculation is made after the task's next execution.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" is used to calculate the
estimated runtime.

Fixed value

A fixed value is entered as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the real runtime.
Possible selection: Average, linear regression, maximal value

from the last ... runs

Number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

Value in percent for an upward ERT correction.

Differences > ... % are You can ignore possible huge differences to of actual runtimes.
ignored
Upper limit (in percent) for actual runtimes that should be included in
estimated runtime calculation.
but do use ... runs at
least

Number of past runs that should be considered regardless of


differences. Allowed value: 0 to 25.

Show Chart

Button that can be clicked in order to update the estimated runtime


according to the current settings. A diagram displays in a separate
window; it shows the last 25 ERT/RRT runs. Windows that are already
open are updated.

652

Chapter3 Objects

Reset Values

Button that can be used to delete the real and estimated runtimes.
A security query displays, confirm it and all saved runtimes are cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action as an ELSE condition must be
specified which reacts when maximum runtime is exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's activation is
used as the maximum runtime. An action as an ELSE condition must
be specified which reacts when maximum runtime is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

A number of days and time of day are set for when the task must be
finished. The starting point for the calculation of the date is the real date
of the task. An action as an ELSE condition must be specified which
reacts when maximum runtime is exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as its maximum runtime. You must specify an action (ELSE condition)
that applies if the maximum runtime has been exceeded.

- ... %

When you select the ERT, you can also specify a correction value in
percent for the maximum runtime. The value you determine is added to
the estimated runtime.

Else
Cancel / Quit

If you activate this check box is activated, the task is canceled or quit if
the runtime has been exceeded. Only available if the maximum runtime
is monitored.

Execute

If you activate this check box, you determine that the task is executed.
You can directly select the executable object. If the runtime is
exceeded or not reached, the specified task is executed. Only available
if the runtime is monitored.

Automation Engine

653

Comments

A different type of runtime monitoring can be used for tasks that have been activated in a Workflow
or using the object "Schedule." You can define it in the properties of the relevant object (Runtime
tab). The setting that are defined within the context of a Workflow or Schedule overrule the settings
that have been defined in the task itself.
You can also assume these setting for runtime monitoring in the Workflow or Schedule. This is the
default setting.

See also:
Runtime Evaluation
Runtime Monitoring
Variables & Prompts Tab
The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: Schedule
Object class: Executable object
Object type (short name): JSCH
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.

654

Chapter3 Objects

In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Only defined variables

The object only obtains the object variables of the superordinate


task that have been defined in its Variables & Prompts tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the Variables & Prompts
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.
Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the PromptSet area is not a text field, click the labeling of the
PromptSet element.
PromptSet objects

Automation Engine

655

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually
enter the predefined variables, or select them in a dialog that you call using the
button.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs when the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical Variable names.

656

Chapter3 Objects

Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available
when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Process Tab
The Process tab is a type-specific tab in which processing instructions are stored in UC4's
scripting language.
Object: Schedule
Object class: Executable object
Object type (short name): JSCH

Description

The script is either processed at Schedule activation or start. This point in time depends on the
setting "Generate at runtime" which can be defined in the Attributes tab.
A Schedule's script cannot contain JCL lines.

See also:
Script Editor
About UC4 Scripts
SampleCollection

Automation Engine

657

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

658

Chapter3 Objects

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Automation Engine

659

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Schedule - Execution

Object-Type specific Features

Once you activate and start a Schedule object, it will obtain the status "Active". The scheduled
tasks will then be processed according to the defined period and the period turnaround.
Checking and Monitoring Tasks
When the schedule starts, the system checks the start times of all tasks (task properties - Start
time tab). Tasks whose start time has already been exceeded in this period of the schedule obtain
the status "ENDED_TIMEOUT - Start time exceeded". The system will attempt to start them at the
scheduled time after the Schedule's period turnaround has taken place. All tasks whose start time is
still in the future of this period obtain the status "Waiting for start time". The start of these tasks will
be initiated at the scheduled time.
When a task starts, its start conditions are checked. This includes the defined dependencies on
calendars (task properties - Calendar tab) and on Sync objects (Sync tab of the task). As a result
of this check, the task will either start or not and will obtain the corresponding status.

660

Chapter3 Objects

During the execution of a task, its runtime is monitored it this is defined in its properties ( Runtime
tab). This enables a reaction to an end status that is other than expected. You can define it in the
task properties - Result tab.
Checking the Schedule
When the Automation Engine starts, the system checks whether an active schedule's period
turnaround took place in the past. As a result, it will run as many period turnarounds as it takes to
achieve a period turnaround that lies in the future. Only then, the system checks again whether
there are scheduled tasks whose start time has already been exceeded. These tasks obtain the
status "ENDED_TIMEOUT - Start time exceeded".
Monitoring and Modifying a Schedule
You can check the status of tasks that are stored in a Schedule object in the monitor view. You can
even change the start conditions for the tasks' current runs in this view. Changes to the task and
task properties that you make directly in the Schedule can also be passed on to the next period
turnaround. Note that in this case, it is not required to restart the schedule. You can also start tasks
immediately, regardless of their current states, start times or start conditions.
Statistics
Each period of a schedule has its own statistical record. This includes that a new RunID will be
assigned whenever a period turnaround takes place.
Stopping the Execution
You can stop and restarted an activated schedule at any time. No further tasks will start when you
run the Stop command. Stop (recursive) has the effect that running tasks in active workflows
continue but the subsequent tasks will be stopped.
Handling

Description

Right-click the object


in the Activity Window

Select Stop or Go in the context menu.

Right-click the
schedule's monitor
view

Select Stop or Go in the context menu.

Termination or Period Turnaround of a Schedule that includes active tasks

Terminating a schedule that includes active tasks causes a particular reaction depending on
whether you end it manually or a period turnaround takes place:
Manual Termination
The context-menu command "Quit" ends an active Schedule object immediately. The schedule's
active tasks will then directly appear in the Activity Window without their schedule (parent).
Period Turnaround
If a period turnaround takes place while a schedule still includes active tasks, a new instance of the
schedule will start for the new period. The old schedule activity waits until its active tasks have
ended and obtains the status "Ending". Tasks of the old period that have not yet started obtain the
status "ENDED_SKIPPED Schedule ended prematurely"
.

Automation Engine

661

See also:
Schedule Logic
Schedule - Monitor
A Schedule monitor is available as long as the Schedule object remains in the Activity Window.
You can define in the Settings of the UserInterface whether it should open automatically when
the object is activated. The monitor display informs about the status of specified tasks. Start
times of tasks and other settings (Modifications to active Schedules ) can be modified.

A Schedule's monitor is available even if the Schedule has already ended. The status of the
Schedule and its tasks are saved for the statistics. Doing so facilitates subsequent analyses of
particular executions via Details, Statistics and Reports. You can also use the monitor view in order
to reexecute particular tasks.

662

Chapter3 Objects

The Schedule monitor basically looks the same during and after execution. The Schedule is
displayed as defined in its Schedule tab.
Each task that should be started is displayed in one table line. Tasks are sorted by start times.
Tasks of the same start time are additionally sorted by names.
l

Start time
A clock symbol is displayed at the beginning of each table line. If this symbol is displayed in
gray, it signals that the task is inactive. Then the start time is shown which is composed of
the specified period and the starting time in a 24-hour format.
Conditions
This column informs about task properties that influence its start. These properties can be
specified in the Schedule tab of the object (to be called through the context menu). If
conditions or dependencies have been specified, the corresponding abbreviations are shown
in this column:
l A - The task has been set inactive (Start time tab).
l C - A Calendar condition has been set (Calendar tab).
l S - The object uses a Sync object. Note that dependencies to Sync objects are not
specified in the Schedule itself. They are defined in the "Sync" tab of the respective
object.
l T - Runtime monitoring has been defined (Runtime tab).
l R - A reaction to the end status of a task has been defined (Result tab).
Name, type and RunID
The task's name, object type and last RunID are provided in the following columns.
Tasks with a small red edge being displayed together with the RunID include a comment.
Status
Here, the task status is shown with a colored symbol and the corresponding status text.
Next check
This columns shows the time and date on which the system will check if the task should be
started.
Next start time
The last column shows the time and date on which the task will presumably be executed.

Automation Engine

663

This point in time depends on the period that has been specified in the task ((Start time tab)
and the defined Calendar conditions.
"CALE_LOOK_AHEAD_MAX" is displayed if the calculated start time lies beyond the period
that the UC4 administrator has defined in the UC4 Variable UC_CLIENT_SETTINGS. This
information is also displayed if the Calendar keyword is no longer valid (validity period of
static keywords) or no longer available (has been deleted or renamed).The task switches its
status to "FAULT_OTHER - Start impossible. Other error." in such a case.
To update the column "Next start time", right-click a task in "Modify Schedule" and select the
option Recalculate next start time . This is especially useful if a Calendar that is used in
one of the tasks has been changed.
A context-menu command is available which you can use to calculate the next start time if
Calendar conditions have been changed.

Schedule Monitor during Execution


During execution, the Schedule monitor is dynamic.
Some task properties can be modified. These changes are valid until the Schedule ends. If the
Schedule is restarted, the original settings apply again.
The following table provides an overview of how the current task status and the particular
modification correlate.
Modification

Task Status

Result

Set start time


ahead

Task waits for start


time

Task starts at the new start time.

Set start time


back

Task waits for start


time

Task starts at the new start time. If this new start


time lies ahead of the current time, the task obtains
the status "ENDED_TIMEOUT - Start time
exceeded".

Reset start time


back or forward

Task is already
finished (any end
status)

Task will only start at the new start time after the
Schedule's periodic turnaround.

Set active

Task waits for start


time

The task starts at the defined start time.

Set inactive

Task waits for start


time

The task obtains the status "ENDED_INACTIVE"


at the start time and is not executed.

Settings for
runtime
supervision

Task waits for start


time

Task starts with new setting for runtime


supervision.

Settings for
runtime
supervision

Task is already
finished (any end
status)

Task will only start with new setting for runtime


supervision after the periodic turnaround of the
Schedule.

Tasks can also be started immediately, regardless of their current status, start time and conditions.
If tasks with the status "Waiting for start time" are started immediately, the next automatic start for
this task is made after the Schedule's periodic turnaround.

664

Chapter3 Objects

Restarting tasks is also possible in the monitor display of the Schedule. Parameters and/or test
options for the restart can be set in a dialog box.
See: Executing with options
You can also call the monitors of Schedule tasks that have a monitor view of their own (for example,
Workflows or Groups). The tasks must being executed at this time.
You can call the details of each task; you can edit tasks, and their statistics and reports; and you
can call Schedules. By using the monitor's context menu, you can also start and stop Schedules.
Calling the Monitor
Automatically

The monitor of a Schedule can be displayed while the Schedule is


executed. You can select this option in the UserInterface settings.

Right-click Schedule
in the Activity Window

Select Monitor in the context menu.

Right-click Schedule
in the Activity Window

In order to view the monitor of super-ordinate Schedule, click Monitor


Parent in the context menu.

Schedule Monitor after Execution


The monitor is static after the execution.
Statistics and reports are available for Schedules as well as for all individual tasks. A task's details
and properties can also be viewed. Properties cannot be changed and are write-protected.
You can also open the monitors of particular tasks of the Schedule that have their own monitors (for
example, Workflows or Groups). Tasks can also be started with options by using the popup-menu
command Restart....

Automation Engine

665

Calling the Monitor


Right-click the line of
the Schedule task in
the statistic view.

SelectMonitor in the context menu.

See also:
Schedule
Modifications to Active Schedules
Schedule Attributes
The following overview includes the attributes of a Schedule object and describes their
functions, allowed values and ways of modification.

Tab

Attribute

Description

Value

Accesses

ARCHIVE_
KEY1

Archive key 1

User-defined,
maximum 60
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
maximum 20
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

CALENDAR

Assigned Calendar

Name of a Calendar
maximum 200
characters

Change
Program

CALENDAR_
KEYWORD

Assigned Calendar
Keyword

Name of a Calendar
Keyword
maximum 200
characters

Change
Program

666

Chapter3 Objects

CHILD_QUEUE

Children Queue

Name of the Queue


object for the
Schedule's task,
maximum 200
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

DATE_
CREATED

Created on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available: "000000-00 00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available: "000000-00 00:00:00"

GET_ATT

DCMODUS

Mode UserInterface

"Y" - UserInterface
active
"N" - No
UserInterface active

GET_ATT

GEN_AT_
RUNTIME

Generate at runtime

"Y" - Generation at
runtime
"N" - Generation at
activation time

GET_ATT

GROUP

Group

Name of a Group,
maximum 200
characters
" " - for immediate
start

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

INT_
ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
maximum 16
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

JSCH_PERIOD

Period

Value between "0"


and "99"

GET_ATT

JSCH_
PERIOD_TA

Period turn around

Time format HH:MM

GET_ATT

Automation Engine

667

LAST_DATE

Last used on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available: "000000-00 00:00:00"

GET_
ATT,
predefined
variable

LAST_USER

Last used by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

MAX_
PARALLEL_
ELSE

Parallel running
Tasks - Else

"WAIT" - Schedule
waits until processing
is possible
"ABEND" - Schedule
disrupted

GET_
ATT,
:PUT_
ATT

MAX_
PARALLEL_
TASKS

Parallel running
Tasks - Max.

User-defined,
Value between "0"
and "99999"

GET_
ATT,
:PUT_
ATT,
predefined
variable

MAX_
RETCODE

ENDED_OK until
return code

User-defined,
maximum 11
characters

GET_
ATT,
:PUT_
ATT

MODIFY_
COUNT

Modified

Number of object
modifications

GET_ATT

OBJECT_
NAME

Object name

User-defined,
maximum 200
characters

Change
Program

OBJECT_TITLE

Title

user-defined,
maximum 255
characters

GET_
ATT,
:PUT_
ATT,
predefined
variable

QUEUE

Queue

Name of a Queue,
maximum 200
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

SCRIPT

String in the script of the Schedule which


should be changed

Change
Program

668

Chapter3 Objects

SYNC_
OBJECT

Assigned Sync object

Name of a Sync,
maximum 200
characters

Change
Program

TASK_NAME

Name of the task in


the Schedule which
should be replaced

Name of an
executable object,
maximum 200
characters

Change
Program

TIMEZONE

TimeZone

Name of a TimeZone
object
maximum 8
characters

GET_
ATT,
:PUT_
ATT,
predefined
variable

UC4_
PRIORITY

UC4 Priority

User-defined,
Value between "0"
and "255"

GET_
ATT,
:PUT_
ATT,
predefined
variable

USAGE_
COUNT

Last used

Number of object
usages

GET_
ATT,
predefined
variable

USER_
CREATED

Created by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

USER_
MODIFIED

Changed by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

See also:
Schedule
Attributes
:PUT_ATT statement
GET_ATT function
UC4.DB Change

Modifications in Active Schedules


Modifications such as adding tasks or changing task properties can be made in active
Schedules.
You can do so either in the Schedule object itself (permanent changes) or via the Schedule monitor
(temporary changes).
The report contains detailed information about all the modifications that were made.

Automation Engine

669

Note that periods or period turnarounds cannot be changed in active Schedules. Restart the
Schedule if you intend to change them.

Schedule object

Schedule objects can be used to add or remove tasks or change the property specifications of
tasks. During the storing process, it is verified whether or not the Schedule object contains any
active executions. If so, a query concerning the update of the active Schedules is made. If you
confirm with "Yes", tasks and properties of the active Schedules are loaded at the next period
turnaround. If your response is "No", the changes are only active when the Schedule is restarted.
Refer to the Schedule object or the Schedule monitor to get the information if the Schedule is
updated with the next period turnaround.

The command "Reload definition at period turnaround" can be called via the context menu of the
Activity Window. It is very useful for canceling or postponing the update. A red check indicates that
the Schedule will be reloaded at the next period turnaround.

Schedule monitor

Changes can also be made in the Schedule monitor. They are then only valid for the current
execution of the Schedule and do not influence the Schedule object itself. Changes remain valid
only until the Schedule is reloaded or ended.
The start time and runtime monitoring of existing objects can be changed. Calendar settings and the
reaction to the end status, however, cannot be changed. New tasks can be added whereas existing
tasks cannot be removed. Set tasks to inactive via the Start time tab if they should not be
processed via the Schedule.
Modifications of any type are displayed with a

symbol.

670

Chapter3 Objects

A task can also be started immediately using the corresponding command of the context menu.
When the execution has ended, the task waits for its next start time. Use the command "Reset
Task" to have the task processed as usual in the current period. If its start time already lies in the
past, task processing starts immediately.

See also:
Schedule
Monitor
Task Properties

3.2.24 Script
Script
Scripts can be used to define internal processing instructions. These will not be executed on the
target system. A Script is written in the scripting language of UC4.
Object class: Executable object
Object type (short name): SCRI

Header tab
The Header tab is a general tab which is available in every UC4 object.

Automation Engine

671

Description

Field/Control

Description

Header
Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

672

Chapter3 Objects

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects etc.

Default (UC_
CLIENT_SETTINGS)

If you select this option the reports the UC4 administrator defined in the
UC4 Variable UC_CLIENT_SETTINGS with the key "EXT_
REPORTS" are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions that should be taken in this tab if you want to make use of this
possibility.

When the task starts, the Sync objects are checked one after the other. The UC4
AutomationEngine tries to use the Sync object that is defined in the first line by calling the start
action. If this is not possible because of the Sync object's current condition, the task waits, aborts
or is skipped. The type of reaction depends on the Else condition that is defined in the tab's last
column. If "wait" has been specified, the task waits until it can use the Sync object with the start
action. Then the UC4 Automation Engine checks the Sync object in the next line etc. The task
starts as soon all Sync objects could successfully be used. Depending on the task's end status,
either an abend or end action is processed.
Up to 500 Sync objects can be specified.
All Sync objects must not include a total of more than 5000 rules. Rules are defined actions that
are directly specified in the Sync object.

Automation Engine

673

Task ends are administered by work processes but only the primary work process releases busy
Syncs. Because of this task allocation, it can take several seconds until a Sync is released after
a task has ended. In this case, the report entry includes a time stamp that shows a later time
than the task has ended. These delays occur if the primary's work load is high or if it is
processing lots of Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions that have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object that should be used to synchronize the task.

Start action

Defines the action that should be taken when the task starts. If this is
not possible because of the Sync's status, the Else condition becomes
effective.

Abend action

This action is processed if the task aborts.

End action

This action is processed if the task ends successfully.

Else

You can define here what should happen to the task if the start action
cannot be executed:
l

l
l

The task should wait until the start action can be executed
(WAIT).
The task aborts (ABEND).
The task is skipped (SKIP).

See also:
Sync
Attributes Tab
The Attributes tab is object type-specific and is only available in"Script" objects. It can be used
to define start parameters.
Object: Script
Object class: Executable object
Object type (short name): SCRI

674

Chapter3 Objects

Description

Field/Control

Description

Attributes
Group

If the Script should be started by a Group, you can select this Group
here. If there is no entry, the Script is activated immediately.
Note that the entry specified in here is not considered if the script is
started through a Workflow, a Schedule or as a recurring task.

Queue

Selection of a Queue objectin which the script should be processed.


The script automatically starts in the Client Queue(object name:
CLIENT_QUEUE) if nothing has been specified in this field.

Int. Account

Specification of an internal account.


Contents do not affect the UC4 system's internal processing. You can
access the attribute "Int. Account" with script elements and integrate it
in your processes.

UC4 Priority ... (0-255)

Priority that should be used to run the job in UC4.


Allowed values: 0 to 255
Default: 0
The priority that the UC4 administrator has specified in the UC4
Variable UC_CLIENT_SETTINGS using the key "TASK_
PRIORITY" is used if you select value "0".

TimeZone

TimeZone that should be used.

Generate at runtime

Activate this check box if the Script should be generate at runtime


instead of being generated at its activation time.

Automation Engine

675

Tasks running
parallel
Max ...

Setting that defines the maximum number of parallel executions for this
Job. It can only be specified when "Generate at runtime" has been
activated.
Allowed values: 0 to 99999
Default: 0 (no limit on tasks running parallel)
Examples:
Max. "1" - At any time, not more than one Script execution must be
available
Max. "2" - At any time, not more then two active Script executions must
be available.
etc.

Else: Wait Abort

Instruction defining how to handle this Script if execution exceeds the


maximum number of tasks set to run parallel.
Wait = The Script waits until execution is possible.
Abort = The Script is interrupted.

Runtime tab
The Runtime tab is an object class-specific tab which is available in every executable object in
UC4. It can be used to specify parameters for a task's runtime behavior.

The Runtime tab is structured as follows:


l
l
l
l

Return code handling


Forecast setting
Evaluating the estimated runtime (Runtime Evaluation)
Monitoring the maximum runtime (Runtime Monitoring)

676

Chapter3 Objects
l
l

Monitoring the minimum runtime (Runtime Monitoring)


Reaction to runtimes that have been exceeded or not reached (Runtime Monitoring)

Description

Field/Control

Description

Definition for
ENDED_OK
Return code <=

Maximum return code for a task's normal end.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.

Else execute

You can execute an object if the task does not end with a return code
that lies within the ENDED_OK area.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

End status for


forecast

Selection list for the end status that this task should return when you
make a Forecast calculation.

Estimated runtime
(ERT)
Current ERT =

Displays the task's next estimated runtime (ERT).


You can enter the estimated runtime here. This value applies until the
ERT calculation is made after the task's next execution.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" is used to calculate the
estimated runtime.

Fixed value

A fixed value is entered as the estimated runtime.


Format: "seconds"

Dyn. method

Selection list for the dynamic method that is used to calculate the
estimated runtime from the real runtime.
Possible selection: Average, linear regression, maximal value

from the last ... runs

Number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

Value in percent for an upward ERT correction.

Differences > ... % are You can ignore possible huge differences to of actual runtimes.
ignored
Upper limit (in percent) for actual runtimes that should be included in
estimated runtime calculation.
but do use ... runs at
least

Number of past runs that should be considered regardless of


differences. Allowed value: 0 to 25.

Automation Engine

677

Show Chart

Button that can be clicked in order to update the estimated runtime


according to the current settings. A diagram displays in a separate
window; it shows the last 25 ERT/RRT runs. Windows that are already
open are updated.

Reset Values

Button that can be used to delete the real and estimated runtimes.
A security query displays, confirm it and all saved runtimes are cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action as an ELSE condition must be
specified which reacts when maximum runtime is exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's activation is
used as the maximum runtime. An action as an ELSE condition must
be specified which reacts when maximum runtime is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object.

A number of days and time of day are set for when the task must be
finished. The starting point for the calculation of the date is the real date
of the task. An action as an ELSE condition must be specified which
reacts when maximum runtime is exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". You must specify an action (ELSE
condition) that applies if the maximum runtime has been exceeded.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as its maximum runtime. You must specify an action (ELSE condition)
that applies if the maximum runtime has been exceeded.

- ... %

Else

When you select the ERT, you can also specify a correction value in
percent for the maximum runtime. The value you determine is added to
the estimated runtime.

678

Chapter3 Objects

Cancel / Quit

If you activate this check box is activated, the task is canceled or quit if
the runtime has been exceeded. Only available if the maximum runtime
is monitored.

Execute

If you activate this check box, you determine that the task is executed.
You can directly select the executable object. If the runtime is
exceeded or not reached, the specified task is executed. Only available
if the runtime is monitored.

Comments

A different type of runtime monitoring can be used for tasks that have been activated in a Workflow
or using the object "Schedule." You can define it in the properties of the relevant object (Runtime
tab). The setting that are defined within the context of a Workflow or Schedule overrule the settings
that have been defined in the task itself.
You can also assume these setting for runtime monitoring in the Workflow or Schedule. This is the
default setting.

See also:
Runtime Evaluation
Runtime Monitoring
Variables & Prompts Tab
The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: Script
Object class: Executable object
Object type (short name): SCRI
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Automation Engine

679

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names as for script variables. If you omit the preceding "&",
it is automatically added during the storing process and is available the next time the object opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Only defined variables

The object only obtains the object variables of the superordinate


task that have been defined in its Variables & Prompts tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the Variables & Prompts
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.

680

Chapter3 Objects

Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the PromptSet area is not a text field, click the labeling of the
PromptSet element.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually
enter the predefined variables, or select them in a dialog that you call using the
button.
Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during object execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs when the object is stored and an element's value does not fulfill the limitations of
the PromptSet properties (min. value, max. value, max. length, value required etc). The affected
fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.

Automation Engine

681

Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available
when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a workflow because you can only
start a rollback process within a workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but are processed by
using the Automation Engine.
Backup actions will always be processed before the object is processed, and rollback actions can
only be started via workflows. For more information, see the related documentation.

Field/Element

Description

682

Chapter3 Objects

Enable Rollback

Use this to activate or deactivate the rollback settings.


When this option is deactivated, all the fields of this tab are
disabled.

Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

Rollback

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

Process Tab
The Process tab is an object type-specific tab in which the processing instructions are stored in
UC4's scripting language.
Object: Script
Object class: Executable object
Object type (short name): SCRI

Automation Engine

Description

The script is either processed at activation or start. This point in time depends on the setting
"Generate at runtime" which can be defined in the Attributes tab.
A Script cannot contain JCL lines.

See also:
Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

683

684

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 Variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

685

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

686

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Script - Execution

Object-Type specific Features

A Script object is processed at a Workflow's activation time provided that it is part of this
Workflow and that the check box "Generate at Runtime" (Attributes tab) has not been selected.
During runtime, its status changes to "Finished".
Runtime
Script with the option Generate at runtime being set:
l
l

The runtime refers to the duration from start until the end time.
In restarts, the runtime is always "0".

Script without the option Generate at runtime being set:


l

The runtime is always "0".

Synchronization and max. number of parallel running tasks


In executable objects, the system always checks Sync objects and the maximum number of
parallel running tasks after they have been generated regardless of the setting "Generate at

Automation Engine

687

runtime". As there is no execution stage for Script objects, they end when they have been
generated. The following exception results thereof: The defined Sync actions and the verification of
parallel running tasks take place prior to the generation stage if the option Generate at runtime has
been activated. Otherwise, these settings do not have any effect.
Script Attributes
The following table describes the attributes of a Script object.

Tab

Attribute

Description

Value

Accesses

ARCHIVE_
KEY1

Archive key 1

User-defined,
maximum 60
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
maximum 20
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

DATE_
CREATED

Created on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available:
"0000-00-00
00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available:
"0000-00-00
00:00:00"

GET_ATT

DCMODUS

Mode UserInterface

"Y" - UserInterface
active
"N" - No
UserInterface active

GET_ATT

GEN_AT_
RUNTIME

Generate at runtime

"Y" - Generation at
runtime
"N" - Generation at
activation time

GET_ATT

688

Chapter3 Objects

GROUP

Group

Name of a Group,
maximum 200
characters
" " - for immediate
start

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

INT_
ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
maximum 16
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

LAST_DATE

Last used on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available:
"0000-00-00
00:00:00"

GET_
ATT,
predefined
variable

LAST_USER

Last used by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

MAX_
PARALLEL_
ELSE

Parallel running tasks Else

"WAIT" - Script
waits until
processing is
possible
"ABEND" - Script is
interrupted

GET_
ATT,
:PUT_
ATT

MAX_
PARALLEL_
TASKS

Parallel running tasks Max.

User-defined,
Value between "0"
and "99999"

GET_
ATT,
:PUT_
ATT,
predefined
variable

MAX_
RETCODE

ENDED_OK until
returncode

User-defined,
maximum 11
characters

GET_
ATT,
:PUT_
ATT

MODIFY_
COUNT

Modified

Number of object
modifications

GET_ATT

OBJECT_
NAME

Object name

User-defined,
maximum 200
characters

Change
Program

Automation Engine

See also:

689

OBJECT_
TITLE

Title

user-defined,
maximum 255
characters

GET_
ATT,
:PUT_
ATT,
predefined
variable

QUEUE

Queue

Name of a Queue,
maximum 200
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

SCRIPT

String in the script of the Script object which


should be changed

Change
Program

SYNC_
OBJECT

Assigned Sync object

Name of a Sync,
maximum 200
characters

Change
Program

TIMEZONE

TimeZone

Name of a
TimeZone object
maximum 8
characters

GET_
ATT,
:PUT_
ATT,
predefined
variable

UC4_
PRIORITY

UC4 Priority

User-defined,
Value between "0"
and "255"

GET_
ATT,
:PUT_
ATT,
predefined
variable

USAGE_
COUNT

Last used

Number of object
usages

GET_
ATT,
predefined
variable

USER_
CREATED

Created by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

USER_
MODIFIED

Changed by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

690

Chapter3 Objects

Script
Attributes
:PUT_ATT
GET_ATT function
UC4.DB Change

3.2.25 Server
Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control

Description

Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Attributes Tab
The Attributes tab is object type-specific, and in this form is only available in "Server" objects.

Automation Engine

691

Description

Field/Element

Meaning

ServiceManager
record

Settings for the connection between the Server process and a


ServiceManager. This allows the Server process to be started directly via the
UserInterface (System Overview) or with the script element MODIFY_
SYSTEM.
The values are automatically set if the search for a corresponding
ServiceManager service has been successful. You can open this search by
using the command "Refresh ServiceManager Scan" in the System
Overview's context menu. For the scan, the default port number 8871 is used
unless a different port has been specified in the UC4 Variable UC_SYSTEM_
SETTINGS, setting SMGR_PORT_RANGE.
An automatic scan takes place when the Server processes start for the first
time. Server processes that are linked with a Service Manager are
automatically scanned every time they start.
Reason: Server processes always start with consecutive ascending
numbers. If no scan takes places when the ServiceManager service starts
(via the System Overview or by using MODIFY_SYSTEM) and if the order is
not kept, the service name that is entered in the Server object does not
comply with the actual Server process name. As a result, some of the Server
processes can be started neither via the System Overview nor by using the
script element MODIFY_SYSTEM.

Phrase

Name of the ServiceManager environment.

Name

Name of the service in the ServiceManger for the Server process.

Port

ServiceManager's port number

692

Chapter3 Objects

Linked to
ServiceManager

Connection between the Server process and the ServiceManager.


This setting is automatically made after a successful ServiceManager scan
for the Server process. With this option deactivated, the Server process can
no longer be started via the System Overview or with MODIFY_SYSTEM.

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

693

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

694

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

3.2.26 StyleSheet
StyleSheet
This object type contains a particular stylesheet which should be used for displaying XML
reports.
Object class: Passive object
Object type (short name): XSL
You can design the content and appearance of an XML report as required. The folder
STYLESHEETSof system client 0000 includes some ready-made StyleSheet objects which can
be used for SAP reports:
l
l
l
l

XSL.SAP.APPLICATIONLOG
XSL.SAP.SPOOLDIRECTORY
XSL.SAP.STATISTICS
XSL.SAP.STEPLIST

The UC4 administrator can use the UC4 Variable UC_REPORT_STYLESHEETS to assign the
StyleSheet objects to the individual report types.
In the report, you can switch between two different views: XML structure or stylesheet.

Automation Engine

695

A report cannot be displayed with a stylesheet if


l
l
l
l

no StyleSheet object has been assigned to the report type.


the report has not completely been transferred due to an error.
the report is very long and must be transferred page by page.
the XML data cannot be correctly parsed.

Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates the user who last used the object including the date and time. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Archive keys

Two keywords of your choice can be specified here.

StyleSheet Tab
The StyleSheet tab contains the style sheet to be used for displaying the XML report.

696

Chapter3 Objects

See also:
Report Types

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all object
types in UC4.

Automation Engine

697

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following context
menu commands:
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

698

Chapter3 Objects

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number nor "." nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.27 Sync
Sync
Syncs are used to define states, status transitions and store current conditions and values.
Object class: Active object
Object type (short name): SYNC
Executable objects can react to these specifications and modify them. Therefore, the states and
values of Sync objects can be used to synchronize the processing of executable objects - even
outside of Workflow structures.
Sync objects and their actions are assigned to executable objects in their Sync tab.You can
also create Sync objects in the system client 0000. They can then be used in all a UC4 system's
clients.
See also:

Automation Engine

699

Synchronizing Jobs in Different Workflows


Using Sync to Access Jobs
Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control

Description

Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.
The counter also increments when the Sync object's status
changes.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

700

Chapter3 Objects

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects etc.

Default (UC_
CLIENT_SETTINGS)

If you select this option the reports the UC4 administrator defined in the
UC4 Variable UC_CLIENT_SETTINGS with the key "EXT_
REPORTS" are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Attributes Tab
The Attributes tab is an object type-specific tab which can be found in this form only in the
"Sync" object. It is used to display and change current Sync object states and values.
Object: Sync
Object class: Active object
Object type (short name): SYNC

Description

Field/Control

Description

Attributes
Current State

Here you display or change a Sync object's current status

Current Value

Here you display a Sync object's current value or provide a new one.

Automation Engine

701

Sync Tab
The Sync tab is object type-specific and is in this form only available in the "Sync" object. It is
used to define conditions and values of Sync objects.
Object: Sync
Object class: Active object
Object type (short name): SYNC

Description

Field/Control

Description

State

Here you define one or more state which can be assumed by the Sync
object.

Description

Here you can enter a short and clear description.

Action

Here you can determine the actions that can be called by an executable
object.
These actions will be listed in executable objects in the Sync tab.

On status

The action can be taken only if the Sync object is in corresponding


state.

And

The action can additionally be influenced by the value of a Sync object.


Select a comparison operator here.

Value

The action execution can additionally be dependent on the value of a


Sync object.
Input this value here.

Set status

With an action, a state will also be assigned to a Sync object.

702

Chapter3 Objects

Set

With an action, a value can also be modified.


Select an operator for this modification here.

Value

With an action, a new value can also be assigned to a Sync object.


Enter this value here.

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

703

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

704

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Sync - Monitor
The Sync Monitor shows the current condition of a Sync object and its use by tasks. It offers a
complete overview of a selected Sync object.
In the upper part of the monitor, the current condition of the Sync including its value is displayed.
Information is given on the task which last changed the Sync object. These are the name of the
task, its RunID as well as the date and time of the change.

Automation Engine

705

A table contains all activated and non-activated tasks which use the Sync. The portrayal of the
tasks corresponds to that in the Activity Window. Additionally, there are active tasks (tasks which
are in a waiting position due to their current Sync value or currently executed) and inactive tasks
(tasks which have already been executed). The contents of the Sync Monitor are updated according
to the settings in the UserInterfaces automatically or manually.
Column

Description

Active or Inactive

Object names of active and inactive tasks

Typ

Object type of the task

RunID

Run number of an activated task

Start Action

Action which was defined in the"Sync" tab of the task and executed at
its start

Status

The current status of the task

Various commands which refer to a highlighted task can be called via the context menu (right
mouse button). For individual tasks you can read, for example, details, statistics or the report. It is
also possible to edit the task.

706

Chapter3 Objects

The Sync object can also be directly modified from within the monitor. By using the command
button Properties a window is opened with the current attributes of the Sync object. You can also
do this via the context menu (right mouse button). No tasks must be marked.

Calling the Monitor


Right mouse button on
the Sync object in the
UC4 Explorer

Select Monitor in the popup menu

Right mouse button on


the Sync object in the
UC4 Explorer

Select Sync Monitor in the File menu.

Right mouse button on


the task in the Activity
Window

In the context menu of a task which are found in the status "Waiting for
Sync", select the command Sync Monitor.

See also:
Sync
Using Sync Objects
This document describes a typical application area of a Sync object. It describes how a Sync
object controls access to a resource (such as a database).
This example is based on the following assumptions:

Automation Engine

707

* A maximum of 3 tasks can access the database simultaneously.


* Exclusive database access by one task should also be possible.
Due to the fact that you can define states, values and actions, there are numerous fields of
application. This example focuses on the principles of using Sync objects.
1.

Creating a Sync Object

The Sync object should be able to assume two states:


l
l

Exclusive access
Normal (shared) access

Open the Sync tab and specify the two states including a description. Any names of your choice
can be used. States are associated with values. In this example, the value "0" is used for the first
status (an individual task exclusively uses the database), the second one can assume values
between "0" (no task is using the database) and "3" (max. 3 tasks can access the database at the
same time). These numbers are not explicitly written to the Sync object, they are integrated as soon
as actions are defined (see below in this document).

The following illustration shows the TASK (job DB.USE) that should be synchronized. As all
executable objects, it includes a Sync tab that can be used to specify Sync objects and the actions
that change the particular Sync object's status.

708

Chapter3 Objects

In the Sync object, now define 4 ACTIONS:


1.
2.
3.
4.

Normal (shared) database access


Exclusive database access
Release after normal (shared) access
Release after exclusive access

Enter these actions in the bottom area of the Sync tab. Any names of your choice are possible. The
field "Defined States" shows the states that you have already defined in the tab's upper area. We
have defined the values shown below, but they do not yet exist in writing:
l
l

Status "EXCLUSIVE" refers to value "0"


Status "SHARE" can assume values between "0" and "3"

These are the required "Actions" described in detail:


USE
The action USE can be triggered if the Sync object is in the status SHARE with a value below three.
This action keeps the current status, but the value increases by one. This action is intended for
normal tasks which access the database. These tasks check whether multiple database usage is
possible. Also, they check if the value lies below three because only three tasks are allowed to
access the database simultaneously (in accordance with the definitions made in this example). The
value increases by one because one more task is now using the database.
USE_EXCLUSIVE
The action USE_EXCLUSIVE can be triggered when the Sync object is in the status SHARE with
value zero. This action is only possible if no other task uses the database. It sets the status
EXCLUSIVE, hence no other task must use the database.
RELEASE
There are two different specifications of RELEASE. The first RELEASE action refers to the status
SHARE which must have a value greater than zero. A "normal" task has used the database and is
now terminating. The existing status remains, but the value decreases by one. The second
specification of the RELEASE action refers to the status EXCLUSIVE. A task which has

Automation Engine

709

exclusively used the database now terminates and in doing so, shared database use is possible
again.
All the actions described above are specified in the table shown below:

Finally, click the "Attributes" tab which shows the Sync's current status and value. Select a start
status before you integrate this Sync object in a task. In this example, the start status is "SHARE"
with value "0". Store and close the Sync object.
2.

Integrating the Sync Object in a Task

This step shows how a Sync object is integrated in tasks. The illustration below shows a job that
uses the Sync object to access the database. The job starts and executes the action "USE". It
checks whether the database can currently be used multiple times (shared use) and counts the
number of tasks using it. The job can only be started if fewer than three tasks are using the
database. The action defined in "Else" is processed if the limit of 3 tasks has been reached. In this
case, the job waits until one of these tasks has ended. As soon as that occurs, the waiting job
starts, and either accesses the database successfully or aborts and the action "RELEASE" is
processed.

710

Chapter3 Objects

The following job uses the Sync object to access the database exclusively. The status
"EXCLUSIVE" has been specified as the start status. In doing so, no other task can access the
database. This start action, however, is only possible if no other task currently uses the database.
The action "RELEASE" again releases the database for multiple uses.

See also:
Sync
Synchronizing tasks in different Workflows

Automation Engine

711

Synchronizing Workflows Using Sync Objects


The order of tasks within a Workflow is clearly defined by the lines linking them. But what about
tasks which are part of different ProcessPlans and should still be executed interdependently?
There are two methods for solving this issue:
l
l

External dependencies
Sync objects

The first method is easily implemented and provides a clear structure and overview. This method is
available as of UC4 version 6.00A and is highly recommended. Before, Sync objects had to be used
to synchronize Workflows. This method is more difficult but can still be used.
A Sync object is used in the following example which intends to show the difference to external
dependencies.
Workflows: JP.MM and JP.COSTING
The two Workflows "JP.MM" and "JP.COSTING" are the starting basis. Both include two Jobs
which run one after the other within their respective Workflows. There are no interdependencies
except if both Workflows run at the same time. In this case, the job "COSTING2" must not start
before job "MM1" has ended.

712

Chapter3 Objects

Sync: MM.STATE
This example uses the Sync object" MM.STATE" to coordinate the affected Jobs. As the name
suggests, it maps the state of the job "MM1".
States:
The Sync object can have two states: DONE and READY. State DONE shows that processing has
been completed. State READY allows processing.

Automation Engine

713

Actions and Value:


Executable objects which refer to this Sync can trigger its predefined actions. "Value" is not used in
this example.
l

SET_READY
The action SET_READY can be triggered when the Sync object is in the state DONE. In
doing so, the action READY is set.
Thus, this action can only be executed when a corresponding processing has been
completed.
SET_DONE
The action SET_DONE can only be triggered when the Sync object shows the state
READY. In doing s, the action DONE is set.
Thus this action can only be executed when it is ready for processing.

Job: MM1
This job is part of the Workflow "JP.MM" and has no START action. When it ends, it triggers the
action SET_DONE in the Sync object. As a result, the state DONE (end of processing) is set. A
necessary precondition is that the current state is READY (for processing).

Job: COSTING2
This job is part of the Workflow "JP.COSTINGT" and uses the Sync object's action SET_READY
when it starts. This action can only be carried out when the current status is DONE. This can only
be the case when the job MM1 has been completed. At the same time, this action sets the status
READY (for processing).

714

Chapter3 Objects

Activity Window
The Activity Window shows the complete process:
l
l

l
l

The Workflows "JP.MM" and " JP.COSTING" run parallel. Their status is: ACTIVE.
The job "MM2" is waiting for "MM1" to complete. This is the normal processing order of the
Workflow.
The job "MM1" is running. Its status is: ACTIVE.
The job "COSTING2" is also waiting. It is waiting for the Sync object's state DONE. As
"MM1" is still running, the Sync object has the state READY. Only when the job "MM1" has
ended, the Sync's state changes to "DONE". This is the point in time when the job "MM2"
starts.

See also:
Sync
Using Sync for Access of Jobs

Automation Engine

715

3.2.28 TimeZone
TimeZone
This object records values for local time evaluation. By using these current values, UTC
(Coordinated Universal Time), the UC4 time base, is converted into local time. The local time is
then always displayed in the UserInterface, for example. Vice versa, the local time that results
from user activity in the UserInterface or direct user entries, is converted to UTC by the UC4
Automation Engine.
Object class: System object
Object type (short name): TZ
Objects for most time zones are supplied with UC4 in client 0000. User-defined TimeZone objects
can still be created in client 0000 or in local clients. However, you cannot create a local TimeZone
object with the same name as one that is already used in client 0000.
A TimeZone can be established as a default setting for each client . If no time zone is defined, the
UC4 Automation Engine automatically uses UTC.
Note that the name of a TimeZone object is limited 8 characters. If this number is exceeded, this
TimeZone cannot be selected for other objects.
TimeZone objects that have been transferred with the Transport Case are not automatically
refreshed. Calculations for objects that use them are based on UTC. This affects all time
conditions such as Calendar settings or start times and can be avoided by opening and storing
any TimeZone object of your choice. All TimeZone objects are then refreshed.
See also:
Time
Header tab
The Header tab is a general tab which is available in every UC4 object.
Object: TimeZone
Object class: System object
Object type (short name): TZ

716

Chapter3 Objects

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates user, date and time regarding the most recent use of the object. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Attributes Tab
The Attributes tab is an object type-specific tab which is only available within the "TimeZone"
object. The values used for conversion from UTC (Coordinated Universal Time), the standard
UC4 time, into local time are set in this tab.
Object: TimeZone
Object class: System object
Object type (short name): TZ

Automation Engine

717

TimeZone objects can also store different specifications for individual years. This function has been
added in order to facilitate the integration of date modifications. The USA, for example, will use a
different date for changing from Daylight Savings Time to normal time as of 2007.
It is also possible to adjust a TimeZone object in the year in which the date will be changed. In
doing so, the object's statistical records of previous years would be affected as they would
show wrong values because they use the new specifications made for the TimeZone object.
Follow the steps described below to configure your TimeZone object:
1. Open the TimeZone object
2. Pay attention to the field Year . It refers to the year from which onwards the TimeZone
specifications will apply. Enter the starting year for the new values for changing from
Daylight Savings Tine to normal time.
3. Specify new settings in the rest of the tab
4. Store the TimeZone object
UC4 internally stores the old specification and creates a new data record for the new specification.
For new calculations with the year being < than the new definition, the data record for the particular
year is searched for and used for calculations from UTC to local time.
Just enter the year if you intend to change a TimeZone specification. The modified settings are then
stored for this particular year.
View: Only the specifications made for the latest year are displayed, all other specifications are
available in the background but are not displayed.

Description

Field/Control Description
General

718

Chapter3 Objects

Year

Choice of year for and after which local time values are valid.
Allowed values: Four-digit year entries
Default: Current year

Difference to
UTC

Values indicating the difference between UTC and the TimeZone.

Hours

Difference to UTC in hours.


Allowed values: -13 to +13
Default: 0

Minutes

Difference to UTC in minutes.


Allowed values: -59 to +59
Default: 0

Daylight
Saving Time
Difference to
normal time

Number of minutes by which Daylight Saving Time differs from normal time.

Minutes

Difference to normal time in minutes.


Only positive values can be specified.

Change to
Daylight
Saving Time

Point in time of changeover from normal time to Daylight Saving Time.

Month

Month of a particular year in which the change to Daylight Saving Time is made.
Allowed values: 1 to 12
Default: 1

Weekday

Weekday on which the change to Daylight Saving Time is made.


The week begins with Monday (= 1) and ends on Sunday (= 7).
Allowed values: 1 to 7
Default: 1
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday
7 = Sunday

n.Day

Setting defining on which pre-determined weekday (for example, the 2nd or 3rd
Wednesday) of the month the change to Daylight Saving Time will take place. A
setting of '5' always denotes the last possible defined weekday, even if the month
is made up of only four weeks.
Allowed values: 1 to 5
Default: 1

Hour

Hour of the day at which the change to Daylight Saving Time is made.
Allowed values: 0 to 23
Default: 0

Automation Engine

Minute

719

Number of minutes after the hour at which the change to Daylight Saving Time is
made.
Allowed values: 0 to 59
Default: 0

Change to
normal time

Point in time of changeover from Daylight Saving Time to normal time.

Month

Month of a particular year when the change back to normal time takes place.
Allowed values: 1 to 12
Default: 1

Weekday

Weekday on which the change back to normal time takes place.


The week begins with Monday (= 1) and ends on Sunday (= 7).
Allowed values: 1 to 7
Default: 1
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday
7 = Sunday

n.Day

Setting defining on which pre-determined weekday (for example, the 2nd or 3rd
Wednesday) of the month the change back to normal time will take place. A
setting of '5' always denotes the last possible defined weekday, even if the month
is made up of only four weeks.
Allowed values: 1 to 5
Default: 1

Hour

Hour of the day at which the change back to normal time takes place.
Allowed values: 0 to 23
Default: 0

Minute

Number of minutes after the hour at which the change back to normal time takes
place.
Allowed values: 0 to 59
Default: 0

See also:
Time
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all
object types in UC4.
Object: TimeZone
Object class: System object
Object type (short name): TZ

720

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own Documentation
tabs
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

721

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be includede.

722

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.29 User
User
The User object records a user's UC4 logon settings, its user-group assignments, folder
assignments, access rights and privileges.
Object class: System object
Object type (short name): USER
To access UC4 system's client, you must at least define one user. In the Automation Engine, single
users are created as User objects. The first user of a new client must be defined in system client
0000 and then be assigned to an already existing client. You can select the command
Duplicate/Link/Move and Move To... from the context menu for this purpose. If this user is provided
with the adequate authorization, all further users can then be created in the local client.
User objects are an integral part of the Automation Engine's authorization system. The settings
established for a user influence the functional range of that user's work in UC4.
User objects are created and maintained in the UserInterface's UC4 Explorer. The User object's
name is composed of the user's name and his/her department, separated by a slash. A maximum of
200 characters is allowed for this combination.

Automation Engine

723

Users in System Client 0000


In a UC4 system's system client 0000, the "UC/UC" User object is supplied with the password
"UC". This user is absolutely necessary for the administration and operation of the UC4 system.
You should NEVER delete or rename this user. Immediately following the installation process, you
should change this user's password. New Client objects and initial User objects for these clients
can be set up in the system client after you have logged on by using the user "UC/UC".

Users in Local Clients 0001 to 9999


If a local user is provided with adequate authorization, additional users can be created after this user
logs on to the local client.

See also:
Client
UserGroup
Header tab
The Header tab is a general tab which is available in every UC4 object.
Object: User
Object class: System object
Object type (short name): USER

Description

Field/Control Description

724

Chapter3 Objects

Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates user, date and time regarding the most recent use of the object. The
number of times the object has been used is displayed to the right.
Only displayed if the update function in the UserInterface settings has been
activated.

Archive keys

Two keywords of your choice can be specified here.

User Tab
The User tab is an object type-specific tab which is only available in the "User" object. A user's
UC4 logon settings are defined here.

Object: User
Object class: System object
Object type (short name): USER

Description

Field/Control

Description

Automation Engine

User is active
User is locked

725

User condition:
l
l

Active means that the user can log on to the UC4 system.
Inactive users must not log on to the UC4 system; logically,
they are no longer part of the UC4 system.
The repeated indication of a wrong password has the effect
that a user is locked.

Running tasks continue regardless of the current user status.


First name

User's first name

Last name

User's last name


The first and last names of the user are displayed in various areas of
the UserInterface. For example, in the System Overview

EMail1

User's Email address


The user can be alerted by electronic post via UC4's Email SNMP
connection

EMail2

User's second Email address

Default Login

Login object for the database access of Variable objects with the
source "SQL".
The specified Login will only be used if the User has logged on and if
the setting "Apply User's Login" has been specified.

New password

For each newly created user, the password is always "pass". This is
the default password and must be changed immediately with the next
logon, even if you select "pass" as password again.
Assign a new User password by activating the checkbox and
entering the password in the text field.
The UC4 administrator defines the password criteria in the
settings of the UC4 Variable UC_CLIENT_SETTINGS.
If users are in various international locations, special national
language characters -- umlauts (), accents (), special letters (),
etc. -- should be avoided. Not all keyboards in all countries
support such characters.

Confirm password

Password repeat
While saving the user settings, both passwords are checked for a
match

User has to change the


password at next login

If this box is checked, the user identifies himself to the UC4 system
using the assigned password Following this, he is prompted to
replace this password with a new one

Password never expires

If this check box is activated, the user never has to change the
password. The password "pass" is an exception and must always be
changed immediately at the next logon.

726

Chapter3 Objects

LDAP connection

This option is only displayed if the UC4 administrator has


activated the LDAP connection.
With this setting being activated, the user is checked with a directory
service such as the Microsoft Active Directory and not in the UC4
system when logging on.
Further information about the LDAP connection is provided in the
chapter "Authorization System" in the Administration Guide.

Logon allowed from ... to

This determines a period of time in hours and minutes within which


the user can logon to the UC4 system. Logon is denied when
attempted outside of the defined time frame.

Calendar check

Authorization check according to the Calendar


If, during logon, none of the listed Calendars are valid with their
Calendar keys, access will be denied

Calendar name

Selection of a Calendar which should be checked during logon

Calendar key

Selection of a Calendar key which should be checked during logon

Max. parallel sessions

Maximum number of parallel login sessions a user can have


A value of "0" enables unlimited parallel access frequency

Min. activity refresh

The minimum time interval (in seconds) for refreshing the display.
If the user clicks the Refresh button again in less time than specified
here, the system will ignore the new refresh request and finish
processing the previous one. This prevents the system from getting
jammed up with multiple refresh requests in rapid succession in case
the user impatiently clicks the Refresh button repeatedly.

TimeZone

Choice of TimeZone to be used for this user following UC4 system


logon. If no TimeZone has been chosen, the client's pre-set
TimeZone is used.

Authorizations tab
The Authorizations tab is object-specific and is only available in User and UserGroup objects.
It can be used to define access rights for objects, files, statistics and reports. These rights are an
integral part of UC4's authorization system.
Object: User
Object class: System object
Object type (short name): USER
Changes concerning authorizations become immediately effective when the User object is
stored.

Automation Engine

727

Description

Rights consist of access permissions and restrictions. The rights of a user are based on an
authorization profile and the authorization profiles of all groups to which he or she belongs.
Access rights and restrictions are defined in a table.
There is a maximum number of characters that can be used for filter specifications. UC4
recommends creating a separate line for each filter in order to keep a clear overview.
Field/Control

Description

Grp.

The Grp. (authorization groups) column is where access rights or denials


can be defined.
Access rights are expressed in the authorization groups 1 to 9. These
groups are all on the same level. The numbers are only used to
distinguish the particular groups.
All access rights of the same authorization groups are connected to each
other via a logical OR. Access rights defined for an authorization group
thus sum up. All access rights of different authorization groups are
connected via a logical AND. Only accesses for which access
authorization was granted in all authorization groups are allowed.
"NOT" stands for access denial. It does not depend on an authorization
group and applies in all cases.

728

Chapter3 Objects

Type

The particular authorizations for object types (short name) can be


specified in the column Type.
Exception: EXTREP does not refer to an object type but to the external
output of Jobs.
Valid object types can be directly selected from a list. If the wildcard
character "*" is used, the authorizations apply for all objects and files.

Name

Filter for object name and folder path.


maximum 200 characters
The wildcard characters "*" and "?" can be used. "?" stands for exactly
one, while "*" stands for any number of characters. This field can also
include more than one filter. Several filters must be separated by
commas.
Folder and subfolder paths must always start with a "\".
Example: "\PRODUCTION\MATERIAL.HANDLING"
When an object is created the filter is compared with the name of the
template object. If the name of the filter doesnt correspond with the
template the user is not able to create the object.

Host

Filters for agent names (job execution, FileTransfer source).


Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Login

Filter for names of Login objects (job execution, FileTransfer source,


registered job output files).
Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

File Name (S)

Filter for file names (file transfer source, registered job output file).
Maximum 255 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Host (D)

Filter for agent names (FileTransfer destination).


Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Automation Engine

Login (D)

729

Filter for names of Login objects (FileTransfer destination).


Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

File Name (D)

Filter for file names (FileTransfer destination).


Maximum 255 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Access method: Read


Opening objects and folders is possible.

Access method: Write


Modifying objects is possible. This right granted for folders has the effect
that a user can create objects in it.

Access method: Execute


Executing objects is possible.

Access method: Delete


Deleting objects and folders is possible.
Links are not objects. If a user intends to delete a link, s/he requirer
write access to the folder in which this link is stored. No deletion right
is required.

Access method: Cancel


Canceling active objects is possible.

Access to Statistics

Access to Reports

Access method: Modify at runtime


This access method permits the setting of trace options on UC4
Automation Engines or agents and the ending of RemoteTaskManager
and Event objects.

Affects the product Service Orchestrator.


This access type allows the user to define an SLA for the particular
objects.
This authorization affects the object types: CALL, JOBF, JOBP, JOBS,
SCRI
Note the following for using authorization filters for object attributes:
If an object's attribute (such as Login) does not contain a value (""), the wildcard character * is
used for comparison with filter lines. If an authorization line contains a particular filter for this
attribute (Login), it is still checked.

730

Chapter3 Objects

For example: The object "JOBS.TEST" does not contain a Login object. The following lines are still
used in the authorization check:
Gr
p

Type

Name

Ho
st

Login

File name
(S)

Host
(D)

Login
(D)

File name
(D)

JOB
S

JOBS.T
EST

LOGIN.*

JOB
S

JOBS.T
EST

LOGIN.TE
ST.*

Definition of Rights
Depending on the selected type, entry fields in the table's columns are opened or closed. For each
field, a small tooltip text (help) is displayed in the table's heading when the mouse pointer stops on
it.
Several specifics apply for access rights to folders: To filter path names, the folder must be
specified relative to the top folder of the client (Root). The filter specification starts with a "\"
character. Individual sub-folders must also be separated with this character unless the wildcard
character"*" is used. If the filter ends on a "*" character, the authorizations apply for the indicated
folder and all sub-folders in this structure. If the filter ends on a "\", access is only granted to the subfiles of this structure. Authorizations given to folders are not passed on to the objects they contain.
Filters that include identification, directories or path specifications are displayed in the fields File
Name (Q) and File Name (Z) of FileTransfer objects. If "C:\TEMP\*" is specified in the field File
Name (Z) , files of any name are transferred to this directory via file transfer.
Access modes can be determined in the fields following the "File Name (Z)". They can also be
deselected using the space bar or a mouse click. Click Save tab in the toolbar in order to activate
access rights or denials immediately.
Each object type has different rights. TimeZone objects, for example, cannot be executed.
Therefore, the X right is ignored. The following illustration shows the rights that can be used for the
particular object types.
The object type API refers to the CallAPI utility.
Object type
API
BU
CALE
CALL
CITC
CLNT
CODE
CONN
CPIT
DOCU

Automation Engine

Object type

731

EVNT
EXTREP
FILTER
FOLD
HOST
HOSTG
HSTA
JOBD
JOBF
JOBG
JOBI
JOBP
JOBQ
JOBS
JSCH
LOGIN
PRPT
QUEUE
REPORT
SCRI
SERV
SLA
SYNC
TZ
USER
USRG
VARA
XLS
Service Orchestrator
The Service Orchestrator is an independent product that uses the authorization and user system of
the Automation Engine. There are specific authorizations and types that are explained below:

732

Chapter3 Objects

Authorization

Object type

Name / Filter for the


names

Descriptio
n

CALL, JOBF, JOBP, JOBS,


SCRI

Object name

Users
require the
L right to be
able to
define
SLAs for
objects.
The
particular
objects can
be
determined
in User and
UserGroup
objects.

BU

Name of a Business Unit

Viewing
SLAs that
belong to
the
specified
Business
Unit in
monitoring
and
reporting
view.

BU

Name of a Business Unit

Editing
SLAs that
belong to
the
specified
Business
Unit.

SLA

SLA name

Viewing
SLAs in
monitoring
and
reporting
view.

SLA

SLA name

Editing
SLAs (SLA
manageme
nt)

Privileges Tab
The Privileges tab is an object type-specific tab which is only available in User and UserGroup
objects. It can be used to allow or deny users to access system functions. Privileges are an
integral part of the Authorization System.

Automation Engine

733

Object: User
Object class: System object
Object type (short name): USER
Automic recommends that users newly log on to the UserInterface in order to ensure that
changes in privileges become effective.

Description

Activate the appropriate check box in order to grant a particular privilege to a particular User. A
User's privileges are the sum of user-specific privileges and those resulting from the membership in
a particular UserGroup.
Field/Control

Description

Change system status (STOP/GO)

Users can change the system's status and


interrupt automatic processing.

Access to System Overview

Users can call the System Overview which


provides access to system and security
information and functions.

Access to recycle bin

The Recycle Bin can be opened. This


allows users to restore deleted objects.
Restored objects are found in the <No
Folder> folder.

Access to transport case

The Transport Case can be opened. Users


are enabled to view objects that should be
transported to a different client or system in
the Explorer window. Users can also delete
objects that should be transported from the
transport case.

734

Chapter3 Objects

View messages from own user group

Definition of message types that should be


shown to the user in the Message Window.
Individual users also receive messages to
the users of all UserGroups of which they
are members.

View messages to administrators

Users also receive administrator


messages. They are not assigned to any
specific user or client and inform about
system-wide actions (such as a Server
start).

View all messages from own client

Users can see all messages that are


addressed to their client's users.

View security messages

Users also receive security messages.


These messages are not assigned to a
specific user. They are created through the
access check of the Authorization System.

Access to selective statistics

Users can create statistic summaries by


object, time period, RunID or archive keys
and view the statistics of child objects.

Deal with authorizations at object level

Users who should be able to specify or


change exclusive access rights to an object
require this privilege along with write
access (W) to the object.

Modify the status of a task manually

Privileged users can change task states.


The system does not check if the new
status is a logical status. If status >= 1800
is set, the task ends.

Object properties: allow manually reset of


'Opened Flag'

If a user opens an object for editing, the


object is marked. If a program interruption
occurs during the editing process, the
object keeps this tag even if the
UserInterface is restarted. Privileged users
can remove this tag.

FileTransfer: Start without Login object


specified

It is possible to process FileTransfers


without using a Login object. The agent then
uses the user who started it.
The administrator specifies in the
variable UC_HOSTCHAR_DEFAULT,
key ANONYMOUS_FT whether the
agent is allowed to process
FileTransfers without Login object.

View server usage over all clients

Users can view the server process


workload in the individual clients through
the System Overview.

Access to <No Folder>

The <No Folder> folder can be opened. This


enables access to restored or transported
objects.

Automation Engine

735

Logon via Call interface

Users can access the AE system via the


Call Interface which enables them to start
tasks from within their own programs or via
the utility.

SAP Criteria Manager

This privilege can be used to grant access


to the SAP Criteria Manager via the Form
tab of SAP Jobs.

Access to version management

The UserGroup can access the Version


Management folder and open (writeprotected), restore and delete saved object
versions. Statistics and reports are also
available.

Access to Auto Forecast

This privilege can be used to grant the


UserGroup access to the Auto-Forecast
function for the automatic calculation of
forecast data for tasks that will run within a
specified period of time.

Create diagnostic information

This privilege handles two rights:


l

It facilitates the setting of trace


options.
It displays the quarantine area in the
System Overview.

Take Over Task

Tasks run under the user who has started


them. Users intending to assume tasks
from other users require this privilege. The
corresponding command is then displayed
in the Activity Window's context menu.

ILMactions

In the System Overview, a User can


access the ILM area and its corresponding
settings.

Create and modify Backend variables

This privilege can be used to create and edit


BACKEND-type Variable objects.
The "New object" dialog does not display
this Variable type to users who do not have
this privilege. Backend Variables always
open in read-only mode.

Create and modify SQL-Internal variables

With this privilege being assigned, users


can create and modifyVariable objectswith
the source "SQL - internal" and "SQL internal SECURE". Requirement: The
value YES must be specified in the setting
SQLVAR_INTERNAL of the variable UC_
SYSTEM_SETTINGS.
If this privilege is not available, the Variable
type "SQLI" is not displayed in the
templates dialog and cannot be created.
Internal SQL Variables always open in
write-protected mode.

736

Chapter3 Objects

Work in Runbook Mode

This privilege activates the runbook mode.


Runbook mode simplifies the tab view of
particular objects in the UserInterface.
Users who work with runbook can access
the relevant tabs more easily. Tabs are only
hidden and can be activated at any time.
The following changes apply:
l

Manage favorites on user group level

Workflows: The Header,


Documentation and Workflow tabs
are displayed. All other tabs are
hidden.
OS Jobs (such as Windows and
UNIX):The Header, Documentation
and Variables & Prompts tabs are
displayed.
Opening the workflow properties:
The Variables & Prompts tab is
automatically selected. No field is
hidden.

Displays the favorites of all the client's


UserGroups.
The Explorer includes a specific Favorites
folder to which objects can be added by
using the drag and drop function. The
objects are not actually moved to the folder
but a reference is created to them (similar to
the Transport Case).
UserGroups are displayed as folders in the
Favorites folder.
Without this privilege, users can only view
the UserGroups of which they are a
member in the Favorites folder.
The Favorites functionality affects the
Prucacv*.htm file of the product ECC
(Enterprise Control Center) and in
particular, the Process Automation plug-in.

Automation Engine

ECC: Access to Service Catalog


ECC: Access to Process Monitoring
ECC: Access to Service Orchestrator
ECC: Manage SLAs and Business Units in
Service Orchestrator
ECC: Access to Policy Orchestrator
ECC: Access to Process Assembly
ECC:Access to Administration

737

Privileges for the Enterprise Control Center


(ECC).
The ECC uses the Automation Engine's
OS. During the configuration / installation
process, you can determine the AE
systems to which the ECC can connect.
However, you give users access to see and
work with the perspectives and certain
functional areas by giving them the related
access privileges here.

ECC: Access to Dashboards


ECC: Access to Predictive Analytics

UserGroups Tab
The UserGroups tab is an object-specific tab that is only available in "User" objects. It enables
the assignment of single users to user groups.
Object: User
Object class: System object
Object type (short name): USER

Description

A user can be a "member" of one or more user groups. Along with "membership", that user assumes
all authorizations and privileges defined within that (those) user group(s). These authorizations and
privileges are added to those which can already be defined for that user.
Field/Control Description

738

Chapter3 Objects

Member of

List of the client's user groups in which the user is a member.

Not Member
of

List of the client's user groups in which the user is not a member.

< Add

By pressing this button, user groups selected in the list "Not Member of" will be
assigned to the user.

Remove >

Pressing this button ends a user's membership in the user groups selected in the
list "Member of".

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all
object types in UC4.
Object: User
Object class: System object
Object type (short name): USER

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.

Automation Engine

739

You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

740

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.30 UserGroup
UserGroup
The "UserGroup" object merges users in order to directly assign them identical authorizations
and privileges.
Object class: System object
Object type (short name): USRG

Description

As many UserGroups as desired can be created as objects in a UC4 system's client. In the Rights
tab for User Groups, characteristic authorizations can be defined for a specific number of users.
When these users are then added to this user group, they assume all of these pre-defined
authorizations. The assignment of users to one or several user groups simplifies administrative
work, since all authorizations can be maintained in one area.
UserGroup objects make up an integral part of the UC4 Automation Engine's authorization system.
Settings for user assignments, folder assignments, access rights, privileges and logging on to UC4

Automation Engine

741

are all established in this object. The settings established for a user group influence the functional
range of working with UC4 for all users belonging to that user group.
UserGroup objects are created and maintained in the UserInterface's UC4 Explorer. A maximum of
200 characters is allowed for UserGroup object names.

See also:
Client
User
Header tab
The Header tab is a general tab which is available in every UC4 object.
Object: UserGroup
Object class: System object
Object type (short name): USRG

Description

Field/Control Description
Title

Define object titles here. This title should contain a short and characteristic
description of the corresponding object as it is displayed in all overviews.

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and time. The
number of times the object has been modified is displayed to the right.

Last used

Indicates user, date and time regarding the most recent use of the object. The
number of times the object has been used is displayed to the right.
Shown only when the update function in the UserInterface settings is activated.

742

Chapter3 Objects

UserGroup Tab
The UserGroup tab is an object type-specific tab which in this form is only found in the
"UserGroup" object. A user group's users can be assigned here.
Object: UserGroup
Object class: System object
Object type (short name): USRG

Description

A user group can contain any number of users. Being member of a particular user group includes
that all the authorizations and privileges of this group are assigned to the user. These are then added
to the user's already existing authorizations.
No users can be added or removed from a UserGroup when the logging for revision reports has
been activated in the client. In this case, memberships can directly be specified in the User
object. The auditing function can be activated by the UC4 administrator using the key OBJECT_
AUDIT in the UC4 Variable UC_CLIENT_SETTINGS.
Field/Control Description
Members

A list of client users who are members of this UserGroup.

No Members

A list of client users who are not members of this UserGroup.

< Add

Pressing this button adds the users selected in the "No Members" list to the
UserGroup.

Remove >

Pressing this button deletes the users selected in the "Members" list from the
UserGroup.

Automation Engine
Authorizations tab
The Authorizations tab is an object type-specific tab that is only available in UserGroup and
User objects. It can be used to define access rights to objects, files, statistics and reports.
These rights are an integral part of UC4's authorization system.
Object: UserGroup
Object class: System object
Object type (short name): USRG
Changes concerning authorizations become immediately effective when the User object is
stored.

Description

Rights are composed of access permissions and restrictions. User rights are based on an
authorization profile and the authorization profiles of all groups to which a user belongs.
Access rights and denials are defined in a table.
There is a maximum number of characters that can be used for filter specifications. UC4
recommends creating a separate line for each filter in order to keep a clear overview.
Field/Control

Description

743

744

Chapter3 Objects

Grp.

The Grp. (authorization groups) column is where access rights or


denials are defined.
Access rights are expressed in the authorization groups 1 to 9. These
authorization groups are all on the same level. The numbers are only
used to distinguish the particular groups.
Access rights of the same authorization groups are connected to
each other via a logical OR. Access rights that have been defined for
an authorization group sum up. All access rights of different
authorization groups are connected via a logical AND. Access is only
allowed if access authorization has been granted in all authorization
groups.
"NOT" stands for access denial. It does not depend on authorization
group and applies in all cases.

Type

The particular authorization for object types (short name) can be


specified in the column Type.
Exception: EXTREP does not refer to an object type but to the
external output of the Job.
Valid object types can be directly selected from a list. If the wildcard
character "*" is used, the authorizations apply for all objects and files.

Name

Filter for object name and folder path.


Maximum 200 characters
The wildcard characters "*" and "?" can be used. "?" stands for
exactly one, while "*" stands for any number of characters. This field
can also include more than one filter. Several filters must be
separated by commas.
Folder and subfolder paths must always start with a "\".
Example: "\PRODUCTION\MATERIAL.HANDLING"
When an object is created the filter is compared with the name of
the template object. If the name of the filter does not comply with
the template, the user cannot create the object.

Host

Filter for agent names (job execution, FileTransfer source).


Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Login

Filter for names of Login objects (job execution, FileTransfer source,


registered job output files).
Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Automation Engine

File Name (S)

745

Filter for file names (FileTransfer source, registered job output file).
Maximum 255 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Host (D)

Filter for agent names (FileTransfer destination).


Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Login (D)

Filter for names of Login objects (FileTransfer destination).


Maximum 200 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

File Name (D)

Filter for file names (FileTransfer destination).


Maximum 255 characters
The wildcard characters "*" and "?" can be used. This field can also
include more than one filter. Several filters must be separated by
commas.

Access method: Read


Opening objects and folders is possible.

Access method: Write


Modifying objects is possible. This right used in folders has the effect
that a user can create objects in it.

Access method: Execute


Executing objects is possible.

Access method: Delete


Deleting objects and folders is possible.
Links are no objects. If a user intends to delete a link, s/he
requires a write right for the folder in which the link is stored but no
deletion right.

Access method: Cancel


Note that you can also cancel active objects.

Access to Statistics

Access to Reports

746

Chapter3 Objects

Access method: Modify at runtime


This access method permits the setting of trace options on UC4
Automation Engines or agents and the ending of
RemoteTaskManager and Event objects.

Affects the product Service Orchestrator.


This access type allows the user to define an SLA for the particular
objects.
This authorization affects the object types: CALL, JOBF, JOBP,
JOBS, SCRI
Note the following for using authorization filters for object attributes:
If an object's attribute (such as Login) does not contain a value (""), the wildcard character * is
used for comparison with filter lines. If an authorization line contains a particular filter for this
attribute (Login), it is still checked.

For example: The object JOBS.TEST does not contain a Login object. The following lines are still
used in the authorization check:
Gr
p

Type

Name

Ho
st

Login

File name
(S)

Host
(D)

Login
(D)

File name
(D)

JOB
S

JOBS.T
EST

LOGIN.*

JOB
S

JOBS.T
EST

LOGIN.TE
ST.*

Definition of Rights
Depending on the selected type, entry fields in the table's columns are open or closed. For each
field, a small tooltip text (help) is displayed in the table's heading when the mouse pointer stops on
it.
Several specifics apply for access rights to folders: When you filter path names, the folder must be
specified in a way that corresponds to the top folder of the client (Root). The filter specification
starts with a "\" character. Individual sub-folders must also be separated with this character unless
the wildcard character "*" is used. If the filter ends on a "*" character, the authorizations apply for the
indicated folder and all sub-folders in this structure. If the filter ends on a "\" character, access is
only granted to the sub-folders of this structure. Authorizations given to folders are not passed on to
the objects they contain.
Filters that include identification, directories or path specifications are displayed in the fields "File
Name (Q)" and "File Name (Z)" of FileTransfer objects. If "C:\TEMP\*" is specified in the "File
Name (Z)", files of any required names can be transferred to this directory via file transfer.
Access modes can be determined in the fields following the "File Name (Z)". They can also be
deselected using the space bar or with a mouse click. Press Save in the toolbar to immediately
activate access rights or denials.
Each object type has different rights. TimeZone objects cannot be executed, for example.
Therefore, the right "X" is ignored. The following illustration shows the rights that can be used for the
individual object types.
The object type API refers to the CallAPI utility.

Automation Engine

Object type
API
BU
CALE
CALL
CITC
CLNT
CODE
CONN
CPIT
DOCU
EVNT
FILTER
FOLD
HOST
HOSTG
HSTA
JOBD
JOBF
JOBG
JOBI
JOBP
JOBQ
JOBS
JSCH
LOGIN
PRPT
QUEUE
REPORT
SCRI
SERV

747

748

Chapter3 Objects

Object type

SLA
SYNC
TZ
USER
USRG
VARA
XLS
Service Orchestrator
The Service Orchestrator is an independent product that uses the authorization and user system of
the Automation Engine. There are specific authorizations and types that are explained below:
Authorization

Object type

Name / Filter for the


names

Descriptio
n

CALL, JOBF, JOBP, JOBS,


SCRI

Object name

Users
require the
L right to be
able to
define
SLAs for
objects.
The
particular
objects can
be
determined
in User and
UserGroup
objects.

BU

Name of a Business Unit

Viewing
SLAs that
belong to
the
specified
Business
Unit in
monitoring
and
reporting
view.

Automation Engine

749

BU

Name of a Business Unit

Editing
SLAs that
belong to
the
specified
Business
Unit.

SLA

SLA name

Viewing
SLAs in
monitoring
and
reporting
view.

SLA

SLA name

Editing
SLAs (SLA
manageme
nt)

Privileges Tab
The Privileges tab is an object type-specific tab which is only available in UserGroup and User
objects. You can use it to allow or deny Users of a UserGroup access to system functions.
Privileges are an integral part of the Authorization System.
Object: UserGroup
Object class: System object
Object type (short name): USRG
Automic recommends that users newly log on to the UserInterface in order to ensure that
modified privileges become effective.

750

Chapter3 Objects

Description

Activate the appropriate check box in order to grant a particular privilege to the Users of a particular
UserGroup. A User's privileges are the sum of user-specific privileges and those resulting from a
membership in a particular UserGroup.
Field/Control

Description

Change system status (STOP/GO)

Users can change the system's status and


interrupt automatic processing.

Access to System Overview

Users can call the System Overview which


provides access to system and security
information and functions.

Access to recycle bin

The Recycle Bin can be opened. This allows


users to restore deleted objects. Restored
objects are available in the folder <No Folder>.

Access to transport case

The Transport Case can be opened. Users can


view objects that should be transported to a
different client or system in the Explorer
window. Users can also delete objects that
should be transported from the transport case.

View messages from own user group

Definition of message types that should be


shown to the user in the Message Window.
Individual users also receive messages that are
sent to the users of all user groups in which
they are members.

View messages to administrators

Users also receive administrator messages.


These are not assigned to any specific user or
client and inform about system-wide actions
(such as a Server start).

View all messages from own client

Users can see all messages that are addressed


to their client's users.

View security messages

Users also receive security messages. These


messages are not assigned to a specific user.
They are created through the access check of
the Authorization System.

Access to selective statistics

Users can create statistic summaries by


object, time period, RunID or archive keys and
view the statistics of child objects.

Deal with authorizations at object level

Users who should specify or change exclusive


access rights to an object require this privilege
along with write access (W) to the object.

Modify the status of a task manually

Privileged users can change task states. The


system does not check if the new status is a
logical status. If status >= 1800 is set, the task
ends.

Automation Engine

751

Object properties: allow manually reset


of 'Edit Hint'

If a user opens an object for editing, this object


is marked. If a program interruption occurs
during the editing process, the object keeps this
tag even if the UserInterface is restarted.
Privileged users can remove this tag.

FileTransfer: Start without Login object


specified

You can also process FileTransfers without


using a Login object. The agent then uses the
User under whom it has been started.
The administrator specifies in the variable
UC_HOSTCHAR_DEFAULT, key
ANONYMOUS_FT whether the agent is
allowed to process FileTransfers without
using a Login object.

View server usage over all clients

Users can view the server process workload in


the individual clients through the System
Overview.

Access to <No Folder>

The <No Folder> folder can be opened. In doing


so, restored or transported objects can be
access.

Logon via Call interface

Users obtain access to the AE system via the


Call Interface which enables them to start tasks
from within their own programs or via the utility.

SAP Criteria Manager

This privilege can be used to grant access to


the SAP Criteria Manager via the Form tab of
SAP Jobs.

Access to version management

The UserGroup can access the Version


Management folder and open (write-protected),
restore and delete saved object versions.
Statistics and reports are also available.

Access to Auto Forecast

This privilege can be used to grant the


UserGroup access to the Auto-Forecast
function for the automatic calculation of
forecast data for tasks that will run within a
specified period of time.

Create diagnostic information

This privilege handles two rights:


l
l

It facilitates the setting of trace options.


It displays the area quarantine in the
System Overview

Take Over Task

Tasks run under the user who has started them.


Users who want to assume tasks from other
users require this privilege. The corresponding
command is then displayed in the Activity
Window's context menu.

ILMactions

In the System Overview, a User can access


the ILM area and its corresponding settings.

752

Chapter3 Objects

Create and modify SQL-Internal


variables

With this privilege being assigned, users can


create and modifyVariable objectswith the
source "SQL - internal" and "SQL - internal
SECURE". Requirement: The value YES must
be specified in the settingSQLVAR_
INTERNAL of the variable UC_SYSTEM_
SETTINGS.
If this privilege is not available, the Variable
type "SQLI" is not displayed in the templates
dialog and cannot be created. Internal SQL
Variables always open in write-protected mode.

Create and modify Backend variables

This privilege can be used to create and edit


BACKEND-type Variable objects.
The "New object" dialog does not display this
Variable type to users who do not have this
privilege. Backend Variables always open in
read-only mode.

Work in Runbook Mode

This privilege activates the runbook mode.


Runbook mode simplifies the tab view of
particular objects in the UserInterface. Users
who work with runbook can access the relevant
tabs more easily. Tabs are only hidden and can
be activated at any time. The following changes
apply:
l

Workflows: The Header, Documentation


and Workflow tabs are displayed. All
other tabs are hidden.
OS Jobs (such as Windows and
UNIX):The Header, Documentation and
Variables & Prompts tabs are displayed.
Opening the workflow properties: The
Variables & Prompts tab is automatically
selected. No field is hidden.

Automation Engine

Manage favorites on user group level

753

Displays the favorites of all the client's


UserGroups.
The Explorer includes a specific Favorites
folder to which objects can be added by using
the drag and drop function. The objects are not
actually moved to the folder but a reference is
created to them (similar to the Transport Case).
UserGroups are displayed as folders in the
Favorites folder.
Without this privilege, users can only view the
UserGroups of which they are a member in the
Favorites folder.
The Favorites functionality affects the
Prucacv*.htm file of the product ECC
(Enterprise Control Center) and in particular, the
Process Automation plug-in.

ECC: Access to Service Catalog


ECC: Access to Process Monitoring
ECC: Access to Service Orchestrator
ECC: Manage SLAs and Business
Units in Service Orchestrator
ECC: Access to Policy Orchestrator
ECC: Access to Process Assembly

Privileges for the Enterprise Control Center


(ECC).
The ECC uses the OS of the Automation
Engine. During the configuration / installation
process, you can determine the AE systems to
which the ECC can connect. However, you
give user groups access to see and work with
the perspectives and certain functional areas by
giving them the related access privileges here.

ECC:Access to Administration
ECC: Access to Dashboards
ECC: Access to Predictive Analytics

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all
object types in UC4.
Object: UserGroup
Object class: System object
Object type (short name): USRG

754

Chapter3 Objects

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own Documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (such as to files, folders or to documents in the Intranet and Internet etc.)
in structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

755

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

756

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

3.2.31 Variable
Variable
Variables are objects that store values or retrieve them dynamically.
Object class: Active object
Object type (short name): VARA
Variable objects can either be static or dynamic. Already when you create a Variable object, you can
define its type in the Source setting in the Attributes tab. Note that you cannot change this type
subsequently.
Variable

Source

Description

Automation Engine

Static

Static variable

757

In a Variable object, you can enter values


manually or by using script. These values
remain stored in the object.
The Variable tab includes a table that
displays all values. Users can either
modify these values manually or specify
additional values. Each entry (line)
consists of one key and five value
columns.
The script elements :PUT_VAR, :PUT_
VAR_COL and :DELETE_VAR are only
available for static variables.

Dynamic

SQL
SQLSECURE
SQL - internal
SQL - internal SECURE
Multi
File list
Backend

The values of dynamic Variable objects are


not stored in the object. They are directly
retrieved from the specified data source
while they are accessed. This process is
referred to as Variable resolution. Values
can neither be defined by a user nor by
script.
The values of static and dynamic Variable
objects can be read using the script
element GET_VAR.

Depending on a Variable's content, you can use it to influence the processes of your UC4 system.
Static variables can also be used to have current values displayed in Cockpits.
In addition to the manual handling of static Variable objects in the UC4 Explorer, you can also use
the following script elements:
l
l
l

CREATE_OBJECT - Creates a new static Variable object.


MODIFY_OBJECT - Changes the attributes of a static Variable object.
REMOVE_OBJECT - Deletes a Variable object.

In addition to Variable objects, UC4 also uses script variables. Information about agents is provided
in the document that describes agent variables.
The Search function can be used to search for object names, keys and values of static Variable
objects.
Creating Variables
Storing variables or retrieving values.

Procedure

1. Click the
button in the toolbar and a window opens that lists all the available object types.
Select the Variable (VARA) and a particular source for its values. The source indicates
whether a Variable is a static or a dynamic one. Depending on the source, there are different
ways of using the Variable. The Variable tab also depends on this setting. Note that you
cannot change the source subsequently.
2. Assign a suitable name and open the Variable object. Click the Notification tab

758

Chapter3 Objects

3. A Variable object can store any number of values. The only restriction is that all values must
be of the same data type. Therefore, you must select the data type (characters, numbers,
time stamp, date or time).
4. In static Variable objects, each entry is stored in a separate key (first column). The key type
(to be specified with the option validity area ) affects its name assignment.
5. The settings "Min. value", "Max. value" and "Max. length" can be used to limit the value
range of Variable objects.
6. Specify the Variable's behavior if one of its entries does not contain a value at its runtime.
7. The Variable tab of static Variable objects includes values and their keys. You can manually
maintain this table. Static Variable objects are usually handled using script elements.
If the Variable is a dynamic one, its Variable tab includes the specific settings of the
selected source. Dynamic variables do not store values in the object but access the data
source directly.
The Attributes tabprovides four different dynamic data sources for selection: external
database (SQL), UC4 Database (SQL-internal), other Variable objects (Multi), the directory
of a host (Filelist) or the result of an OS command (Backend).
8. Variables are active objects because their contents can be changed at any time.
Nevertheless, they remain in the UC4 Explorer and cannot be started.
There are numerous other settings that can be specified in Variable objects. Details are provided
in the corresponding documentation that describes the individual tabs.
Header tab
The Header tab is a general tab which is available in every UC4 object.

Description

Field/Control

Description

Title

Define object titles here. This title should contain a short and
characteristic description of the corresponding object as it is displayed
in all overviews.

Automation Engine

759

Created

Indicates the user who created this object including the date and time.

Modified

Indicates the user who last modified this object including the date and
time. The number of times the object has been modified is displayed to
the right.
The counter also increments if this Variable object's contents are
accessed with :PUT_ATT or GET_ATT.

Last used

Indicates user, date and time regarding the most recent use of the
object. The number of times the object has been used is displayed to
the right.

Attributes Tab
The Attributes tabis object-type specific and is only available in Variable objects.You can use it
to define the data types and the sources of values.
Object: Variable
Object class: Active object
Object type (short name): VARA

Description

Field/Control
Attributes

Description

760

Chapter3 Objects

Source

Reference source for the Variable object's values. The content of the
Variable tab depends on this setting.
You must define the Variable source when you create an object. It cannot
be changed subsequently.
Values can be written to the Variable object either manually by a user, or by
using script (static). It can also be dynamically retrieved from a database
(SQL), other Variable objects (Multi) or a computer (Filelist).
The script elements :PUT_VAR, :PUT_VAR_COL and :DELETE_VAR
are only available for Variables with a static source.
Static

Values are written to the Variable


object by a user or a script. As
opposed to dynamic sources, the
values remain stored in the object.
You can simplify the access to a
static variable by using script (:PUT_
VAR/GET_VAR) if you specify the
setting "Validity area."
In Variable objects that use the
source "Static", the Variable's value
and validity are defined depending on
the selected data type and validity
area. These specifications can also
be set using the script element
MODIFY_OBJECT.

SQL

The Variable's values are retrieved


from an external database (not the
UC4 Database) by using SQL
statements. The corresponding
settings are available in the Variable
tab.
To retrieve values from a database,
you need :
l

SQL - internal

a Database Agent for


Variables
a Database Connection object
which contains the database
connection parameters.
a Login object that includes
the database user and the
password.

The UC4 Database serves as the


source of Variable values. These
values are also retrieved by using
SQL statements that can be defined
in the Variable tab. Because this is an
internal database access, there is no
need to specify a Connection or Login
object.
Note that by default, you cannot
create or modify Variable objects
with the source "SQL - internal"
for security reasons. You can
change this setting by using

Automation Engine

Data type

761

The data type is decisive for the format of the Variable's values.
The exact format of the selected data type (except: "String")can be
determined using the attribute "Output Format".
String

Max. 1023 alpha-numeric characters.


Blanks at the end of the string will be truncated. Leading
blanks are kept.

Number

Any numbers in the specified area between 0 and


2147483647.

Timestamp

Any date or time specification.

Time

Time specification.

Date

Date specification.

The data type of the values that are available in the first column are
checked. The Variable's data type must comply with the data type of the
first column that is returned by SQL statements if you use the sources
"SQL" and "SQL internally". Data can also be processed by using specific
SQL statements. An error occurs if static variables should be stored or
dynamic variables are accessed and the data types do not comply with
each other.
Variable objects that have the source "Filelist" and "Backend" are always
created with the data type "Text". This type cannot be changed.
Note the following if you change the data type of static Variable objects that
already include values:
l

You can easily change "Number", "Timestamp", "Time" or "Date" to


"Text". The values are converted one to one.
The output format must be selected if "Text" has been changed to
"Number", "Timestamp", "Time" or "Date". When the Variable object
is stored, the system verifies that the values comply with the
specified format.
You cannot directly modify the data types "Date", "Time", "Number"
and "Timestamp". They must be converted to the data type "Text"
before you can change them.

The data type of Variables of type "Multi", "SQL" and "SQL internally" can be
changed whenever it is necessary.
The data type of the particular script variable ("float", "signed", "unsigned"
or "string" is irrelevant in values that have been retrieved from Variable
objects of data type "Number" using the script element GET_VAR. The
value can always be stored. Algebraic signs and decimal places are
removed if they are not supported by the script variable's data type. The
values are always passed on to the script as a "string" if a different data
type has been specified in the Variable object.

762

Chapter3 Objects

Validity area

The selected key defines the validity area for static variables.
The setting of the validity area in a Variable object can be used to simplify the
script that writes values to Variables or reads them. Usually, the Key must be
specified as a parameter in the script element :PUT_VAR or GET_VAR
which makes it difficult to store particular values in a unique way. If the script
does not include a key, the system automatically selects a key depending on
the settings that have been made in the Variable object (such as the agent
name in a Job)
Note that this setting is only useful for Variable objects in which the value
"static" has been defined for the attribute "Source".
No scope

The UC4 system automatically uses "*"


as the key. The Variable contains only
one entry.

Freely
selected

You can use any terms as the Key. The


Variable can contain any number of
values.

Host each host


name

The host name (agent) is used if no key


has been specified. The Variable
contains a value for each host.

Task each task


name

The object name is used if no key has


been specified. The Variable contains a
value for each object.

Workflow
name each
Workflow
name

The name of the Workflow is used if no


key has been specified. The Variable
contains a value for each Workflow.

Workflow
session each
Workflow
session

The RunID of the Workflow in which the


task runs is used if no key has been
specified. The Variable contains a value
for each Workflow.

User each user


name

The User name (such as SMITH/UC4) is


used if no key has been specified. The
Variable contains a value for each User.

User
session each user
session

The running number of the user session is


used if no key has been specified. The
Variable contains a value for each user
session which will be deleted together
with the key when the user session ends.

Automation Engine

Output Format

763

This setting defines the format that should be used to store values to the
Variable object (source: static variables) or to retrieve from the data source
(dynamic variables).
The content of this selection menu depends on the data type. Several
different formats are available for each data type except String.
The output format only refers to the first column. In static variables, this is
the column Value 1, in Database and Multi Variables, it is the first basic
column. Note that Multi Variables use the first basic column as their
reference column. This means that the source variable's output format
can affect the retrieved values.
The output format of static variables for a particular data type can be
changed whenever it is necessary. In doing so, the values are converted
to the new format. If the values do not comply with the old format, they
cannot be converted to a new format.
The format that is used to enter value in static variables is irrelevant unless it
is a UC4-supported format of the particular data type. The values are then
converted to the relevant output format.
The data type "Text" does not show this combo box.
Data
type

Available formats

Timesta
mp

Date

l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l

Time

l
l
l
l
l

Default format

YYYYMMDDHH24MISS
YYYY-MM-DD
HH:MM:SS

YYYY-MM-DD HH:MM:SS

DD-MON-YYYY
DD-MON-RR
MM-DD-YYYY
YYYYMMDD
MMDDRR
DDMMRR
MM-DD-RR
MM/DD/RR
YYMMDD
YY.MM.DD
YY-MM-DD
YYYYMMDD
YYYY.MM.DD
YYYY-MM-DD
DDMMYY
DD.MM.YY
DD-MM-YY
DDMMYYYY
DD.MM.YYYY
DD-MM-YYYY
MMDDYY
MMDDYYYY
MM/DD/YY
MM/DD/YYYY

YYMMDD

HHMMSS
HH:MM:SS
HHMM
HH:MM
MMSS

HHMMSS

764

Chapter3 Objects

Min. value
Max. value

Maximum or minimum value of the Variable object. Only available for the data
types number, date and timestamp.
In static and dynamic variables, this limitation refers to the first value column.
The key or Result column is not checked.
The Variable's source determines the behavior if this value has been
exceeded:
l

Max. text length

Static:
An error message is output if an attempt is made (either manually or
by using script) to store a value to the Variable object that lies below
the "Min. value" or above the "Max. value". The value is not stored.
SQL, SQL - internally, Multi and Filelist:
Values that are not within the allowed value range are not returned.

Maximum character length. This input field only displays if the data type
"String" is selected.
Allowed values: 1 tos 1023
The maximum applies (1023 characters) if this option is deactivated.
In static and dynamic variables, this limitation refers to the first value column.
The Key or Result column is not checked.
The behavior that follows an exceeded value depends on the Variable's
source:
l

Upper Case

Static:
An error message displays if an attempt is made to store a value that
exceeds the specified max. length of characters. The value is not
stored.
SQL, SQL - internal, Multi and Filelist:
Values that exceed the maximum length are excluded.

Only for the data type "Text". Lowercase letters that are used in variable
values are automatically converted to uppercase.
Only affects the first value column (static and dynamic Variable objects).

Sort

The column whose values should be used to sort the entries can be defined
here. Only available for static Variable objects.
Possible options: Key, 1, 2, 3, 4 or 5

Sort order

Type of sorting. This field only displays if the value "Static" is selected for the
source.
Possible options: Descending or Ascending

Key not found


Error

An error message is output if an object attempts to access an entry that is not


available at runtime via script.

Automation Engine

Initial values

765

Depending on the data type, an initial value is returned if an entry does not
contain a value at the time an object attempts to access it via script:
l
l
l
l
l

String - " ".


Number - "0000000000000000".
Timestamp - "0000-00-00 00:00:00"
Time - "00:00:00"
Date - "0000-00-00"

The result or output format is not used.


The Variable data types "Number" and "Time stamp" can only be selected if the scope "Freely
selected" is specified. All other scopes require the data type "String". Otherwise, an error occurs
when they are accessed using the script elements :PUT_VAR or GET_VAR, or when the
Variable object should be stored.

Scope Examples

This example illustrates the possible settings of a Variable object.


Create the following objects:
l
l
l

A Job object.
Two Variable objects: VARA.JP_NAME and VARA.JP_SESSION.
A Workflow that contains the Job object as a task.

The Variable VARA.JP_NAME uses the scope "Workflow Name" and the Variable VARA.JP_
SESSION the setting "Workflow Session".
The job contains the following script which writes values to the two Variable objects:
:PUT_VAR 'VARA.JP_NAME',,'VALUE'
:PUT_VAR 'VARA.JP_SESSION',,'VALUE'
First, make an attempt to start the Job. It fails because this task does not run within a Workflow.
Now start the Workflow. It will be executed without error. The next step is to open the Variable
objects. The Variable VARA.JP_NAME contains the name as key and the Variable VARA.JP_
SESSION the Workflow's RunID. Close the Variable objects.
In the next step, restart the Workflow. The Variable VARA.JP_NAME remains unchanged, the
Variable VARA.JP_SESSION now contains two values. Remove the two Workflows from the
Activity Window. The Variable VARA.JP_SESSION is empty because values stored in JobSession are only kept until the Workflow task is deactivated.
In the last step, duplicate the Workflow object and execute both Workflows. The Variable
VARA.JP_NAME contains 2 values with the names of the two Workflows as keys.

Variable Objects in System Client 0000

The attribute "Variable type" is also available for Variable objects that are created in the system
client 0000. It affects the access to other clients' Variable objects.

766

Chapter3 Objects

Field/Control

Description

Variable type
Not shareable

The Variable can only be accessed in the system client. Variables of


the same name that are stored in a different client are not connected to
the Variable in the system client.

Read only

The Variable can be accessed from other clients in reading mode.


Modifications can only be made in the system client. A Variable of the
same name cannot be created in other clients.

Referenceable

The Variable can be copied to other clients by using the drag & drop
function. If the Variable is accessed in reading mode, it is first searched
in the client and only if it is not available there, the one of the system
client is used. Access in "writing" mode automatically creates the
Variable in the client if it does not yet exist there.

The attributes of referenceable Variables can only be changed in the system client. This tab is
therefore write-protected in user-defined clients.

Automation Engine

767

Variable Tab
The Variable tab is object-type specific and is only available in Variable objects. Depending on
the variable's source, you can either define values manually (static variables) or configure values
that will be retrieved dynamically.
Object: Variable
Object class: Active object
Object type (short name): VARA

General Information

The Variable tab's content depends on the source that has been determined when the Variable
object has been created. You cannot change this source subsequently. Variable values can
dynamically be selected from a database (SQL), from other Variable objects (Multi) or from an agent
computer's directory (Filelist) in the form of a file list. The corresponding settings are provided in the
Variable tab. In this tab, you can also manually enter values for static variables.
Static variables include one key and five value columns. The number of columns that is used in
dynamic variables depends on the data source and is not limited.
The following script elements can be used to handle contents:
l
l
l
l

:PUT_VAR - It stores values in static variables.


:PUT_VAR_COL - It stores a value to a particular column of a static Variable object.
GET_VAR - It reads a value from a variable.
:DELETE_VAR - It deletes one or all values of a static variable

You can use the script function PREP_PROCESS_VAR in order to access all or several particular
entries of a variable. It prepares the processing of a data sequence.
In certain dynamic variables, you can use PromptSet variables in particular fields of the Variable
tab.The PromptSet Variables column lists the fields in which you can do so (table below that
includes the field descriptions).
Using them is necessary for creating dynamic PromptSet dialogs.

768

Chapter3 Objects

Only PromptSet variables are supported in the Variable-tab fields (script, object and predefined
variables are not allowed). Keep this in mind if you use the supplied Template objectsof Backend
variables because their fields include the names of PromptSet variables by default.
Note when you use database variables (SQL, SQLSECURE, SQLI and SQLISECURE types)
that binary fields are not supported. Binary data that is the result of an SQL query will cause an
error in the preview or when the values are retrieved at runtime.
Note that in database variables (SQL, SQLI, SQL SECURE, SQL SECURE types), the system
will not check the SQL statements that will be processed for technical reasons. This includes
that you can also change or delete data records by using Variable objects. For security reasons,
UC4 recommends restricting user accesses accordingly. You should use a database user with
read-only rights for variables that access an external database (SQL, SQLSECURE). In internal
SQL variables (SQLI, SQLISECURE), you can limit object accesses with a privilege (create
and modify SQL-internal variables).
Depending on the data type, SQL andSQLI variables return the values "" (string, date, time,
timestamp) or 0 (number) for NULL values.

Static
[Static] [SQL] [SQL SECURE] [SQL - internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

In static variables (source setting - static), you can enter the values for the Variable tab either
manually or by using the script elements :PUT_VAR or :PUT_VAR_COL. Each table-line entry is
composed of a key plus 5 values and depends on what has been specified in the Attributes tab.
Note that the key must not start with a & character. Otherwise, you can store the Variable object
but an error will occur when an attempt is made to access these lines using script.
A key can include a maximum of 200 characters.
The settings "Data type" and "Output format"(Attributes tab) only refer to the first value column.
The data type "Text" is used for all other value columns.
The following value ranges are allowed depending on the selected data type:

Automation Engine

Data Type

Content Length

String

Maximum of 1023 characters.

Number

Between 0 and 2147483647.

Timestamp

Date and time specification depending on the output format.

Time

Time specification depending on the output format.

Date

Date specification depending on the output format.

769

You can use the Search function to find Variable objects, keys and values.
The values are sorted according to the settings that have been made in the Attributes tab. By
default, the key column is sorted in an ascending order.

SQL
[Static] [SQL][SQL SECURE] [SQL - internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

Variable values that use the SQL source are loaded from an external database using SQL
statements. In this case, the UC4 system's database cannot be used.
The variable source SQL - internal can be specified to make use of the UC4 Database.
Note that SQL variables require the Database Agent to be specifically configured and started.
Subsequently, it cannot be used to execute Database Jobs and Events. The relevant notes are
included in the Installation Guide for Database Agents.
You change the maximum time that resolving SQL variables should take in the setting VAR_
TIMEOUT (UC_HOSTCHAR*).
The maximum length per value is 1023 characters. Any attempt to read a larger database field
results in an error when the variable is resolved. Non-printable characters are automatically
truncated.

770

Chapter3 Objects

The maximum number of lines that is returned is specified in the setting SQLVAR_MAX_
ROWSof the UC4 Variable UC_SYSTEM_SETTINGS.
Field/Element

Description

Database
connection
Connection

The database-type Connection object that includes the


connection parameters to the required database.

Login

The Login object that stores the name of the database user and
the corresponding password.
The login data for accessing the database is retrieved from the
Connection object if you neither specify a Login object nor set
the option Apply User's default Login . An error occurs if the
variable should be resolved and this object does not include any
login information.

Apply User's
Default Login

You can also select a Login object for SQL variables in User
objects (default Login). With the option Apply User's Login
being activated, the Login object that has been assigned to the
current User is applied. The Login object that is specified in the
variable is ignored in this case. An error occurs if the variable is
accessed and no Login is defined in the User object.

SQL
SQL
statement

The text field for the specification of SQL statements. These


SQL statements are used to select data records in the database
and have them supplied as variable values.
For example: select * from col
Note that all SQL statements are allowed in this text field.
You can even change or delete database entries.
UC4 does not verify whether these SQL commands include
errors or are harmful. They are passed on to the database
without being verified. This means that an execution error can
only occur during database access which is when the
variables are being resolved.
Note that you must used the setting VAR_SECURITY_
LEVEL(UC_SYSTEM_SETTINGS) in the SQL statements if
you usepredefined variablesor other Variable objects.
Otherwise, no value replacement takes place (default) and a
database error occurs.
Maximum length: 4096 characters

PromptSet
Variables

Automation Engine

Result Format

The definition of the Result column's content.


The first column that is displayed in the preview is the Result
column. The other columns include the individual values of the
database columns that have been returned by the SQL query.
The Result column can show a combination of value columns
and any characters. This is defined via the Result Format.
Column numbers that have been specified using {} curly brackets
in the Result Format field will be replaced by the value of the
corresponding column.
For example:
Value column 1: JOB1
Value column 2: WIN01
Return Format: {1}_{2}
Result column: JOB01_WIN01
The Result column corresponds to the first value column if no
Result format is specified.
The limitations for variables (min. value, max. value, length)
do not affect the Result column but the first returned column.
If the values of this column exceeds the allowed range, this
line is skipped and is not available via the Variable object.

Preview

This executes the SQL statements and displays the result in a


new window. In doing so, the SQL statements are checked and
possible errors can be identified (such as the data type of the
Variable object and of the database do not comply with each
other).
The Database Agent sends the preview data to the
Automation Engine in the form of a message. An error occurs
if this message exceeds the maximum message length that a
Server process accepts (see parameter MaxMsgSize= in
theAutomationEngine's INI file, default value: 3145 728
Byte). In this case, you can limit the result either by using a
maximum number of lines or through SQL statements.

SQL SECURE
[Static] [SQL] [SQL SECURE] [SQL - internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

771

772

Chapter3 Objects

SQL SECURE is similar to the variable type SQL as it also runs SQL statements on an external
database. As opposed to SQL, you can use all supported variables within SQL statements without
putting the database at the risk of an SQL injection. The variables are replaced regardless of the
setting VAR_SECURITY_LEVEL (UC_SYSTEM_SETTINGS).
You cannot directly specify the variables in the field SQL Statement but you include them by using
bind parameters. These bind parameters are maintained in the related tables and can include
predefined variables, placeholders for VARA objects and PromptSet variables. In the SQL script,
you use the "?" character at the locations where the bind parameters will be inserted.
For technical reasons, the system cannot check whether only SELECT commands are used in the
variable's SQL. To prevent that SQL commands other that SELECT are run, UC4 recommends
using a database user who has read-only access rights.
This special behavior for replacing variables only applies to the SQL statements. To use
PromptSet variables in the fields Connection and Login, you still require the setting VAR_
SECURITY_LEVEL=3.
This variable type also requires a Database Agent that was started in DB service mode and it
must be of version v9 SP3 or later. Older agents do not support the variable type SQL SECURE.
The maximum number of returned lines is defined in the UC4 Variable UC_SYSTEM_
SETTINGS, setting SQLVAR_MAX_ROWS.
Field /
Element

Description

Database
connection
Connection

The database-typeConnection objectthat includes the connection


parameters to the selected database.

Login

The Login object that stores the name of the database user and the
corresponding password.
The login data for accessing the database is retrieved from the
Connection object if you neither specify a Login object nor set the
option Apply User's default Login . An error occurs if the variable
should be resolved and this object does not include any login
information.

PromptSet
Variables

Automation Engine

Apply
User's
Default
Login

You can also select a Login object for SQL Variables in User
objects(default Login). With the option Apply User's Login being
activated, the Login object that has been assigned to the current
User is applied. The Login object that is specified in the Variable is
ignored in this case. An error occurs if the Variable is accessed and
no Login is defined in the User object.

SQL query
SQL
Statement

The SQL statements that you use in order to select specific


database entries that serve as variable values.
Variables that are directly specified in the SQL will not be replaced.
To include variables, you use the bind parameters.
Maximum length: 4096 characters

773

774

Chapter3 Objects

Bind
parameters

The table that includes the bind parameters.


You use bind parameters in order to insert variable values within
SQL statements. You can use predefined variables, PromptSet
variables and placeholders for VARA object that you enter in this
table. Each line represents one bind parameter.
The UC4 Variable VAR_SECURITY_LEVEL (UC_SYSTEM_
SETTINGS) does not cause any limitations.
In the SQL SQL statements, you must use a "?" character for every
location in which the replaced value of a bind parameter should be
inserted. A bind parameter must exist for each "?". Make sure that
you keep the order (table). Note that you cannot use bind
parameters several times.
No values will be replaced if a specified variable does not exist.
In this case, the variable name is used which can cause an error
when the variable should be resolved.
The parameters are automatically numbered and cannot be
changed. To remove individual bind parameters, highlight them
and push the DEL key.
You can use variable names as bind parameters and any values
of your choice.
The following field data types and input formats are supported for
bind parameters:
l
l
l
l
l
l

Dat: yyyy-mm-dd
Time: hh:mm:ss
Timestamp: yyyy-mm-dd hh:mm:ss
String: any string
Boolean: possible values: 0 / 1 or true / false
Number: no thousand separator,a decimal point as a
decimal separator

Other field types of the database and other formats are not
supported.Data types are not converted (no conversion from
timestamp to date). Inserting an invalid value causes an error when
the SQL commands are processed.

Automation Engine

Result
Format

The definition of the Result column's content.


The first column that is displayed in the preview is the Result
column. The other columns include the individual values of the
database columns that have been returned by the SQL query. The
Result column can show a combination of value columns and any
characters. This is defined via the Result Format.
Column numbers that have been specified using {} curly brackets in
the Result Format field will be replaced by the value of the
corresponding column.
For example:
Value column 1: JOB1
Value column 2: WIN01
Return Format: {1}_{2}
Result column: JOB01_WIN01
The Result column corresponds to the first value column if no
Result format is specified.
The limitations for Variables (min. value, max. value, length) do
not affect the Result column but the first returned column. If the
values of this column exceeds the allowed range, this line is
skipped and is not available via the Variable object.

Preview

This executes the SQL statements and displays the result in a new
window. In doing so, the SQL statements are checked and possible
errors can be identified (such as the data type of the Variable object
and of the database do not comply with each other).
The Database Agent sends the preview data to the Automation
Engine in the form of a message. An error occurs if this
message exceeds the maximum message length that a Server
process accepts (see parameter MaxMsgSize= in
theAutomationEngine's INI file, default value: 3145 728 Byte). In
this case, you can limit the result either by using a maximum
number of lines or through SQL statements.

SQL - internal
[Static] [SQL][SQL SECURE] [SQL -internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

775

776

Chapter3 Objects

If a Variable's source is "SQL - internal", its values are retrieved from the UC4 Database via SQL
statements. It is not required to specify a connection or a login because the database access is an
internal one.
The UC4 administrator can activate this function by using the setting SQLVAR_INTERNAL in the
UC4 Variable UC_SYSTEM_SETTINGS. The user privilege "Create and modify SQL- internal
variables" is also required.
The maximum length per value is 1023 characters. Any attempt to read a larger database field
results in an error when the variable should be resolved. Non-printable characters are automatically
truncated.
The maximum number of lines that is returned is specified in the settingSQLVAR_MAX_
ROWSof the UC4 Variable UC_SYSTEM_SETTINGS.
A conversion error that occurs while running SQL commands on MSSQL server databases can
cause a deadlock or an inconsistent transaction (with an unforeseen result). Automic
recommends verifying the commands in SQLI variables of users very carefully because the
Automation Engine cannot intercept such an error for technical reasons.
Field/Element
SQL

Description

PromptSet
Variables

Automation Engine

SQL
statement

The text field for the specification of SQL statements. These


SQL statements are used in order to determine the UC4
Database's data records that are used as variable values.
For example: select * from OH
Select the type of UC4 Database you use in order to be able to
execute SQL commands: MSSQL, Oracle or DB2. The SQL
statements remain stored for each database type.
Note that SQL statements are not checked. You can even
change or delete database entries.
UC4 does not verify whether these SQL commands include
errors or are dangerous. They are passed on to the database
without being verified. This means that an execution error will
only occur when during database access which is when the
Variables are being resolved.
Note that using predefined variables or other Variable objects
require that you must specify the setting VAR_SECURITY_
LEVEL (UC_SYSTEM_SETTINGS) in the SQL statements
accordingly. Otherwise, the variables are not replaced
(standard) and a database error occurs.
Maximum length: 4096 characters

Result Format

The definition of the Result column's content.


The first column that is displayed in the preview is the Result
column. The other columns include the individual values of the
database columns which have been returned by the SQL query.
The Result column can show a combination of value columns
and any characters. This is defined via the Result Format.
Column numbers that have been specified by using {} curly
brackets in the field Result Format will be replaced by the value
of the corresponding column.
For example:
Value column 1: JOB1
Value column 2: WIN01
Result Format: {1}_{2}
Result column: JOB01_WIN01
The Result column corresponds to the first value column if no
Result format is specified.
The limitations for Variables (min. value, max. value, length)
do not affect the Result column but the first returned column.
If the values of this column exceed the maximum range, this
line is skipped and is not available via the Variable object.

Preview

This executes the SQL statements and displays the result in a


new window. In doing so, the SQL statements can be checked
and other errors be identified (such as the data type of the
Variable object and of the database do not comply with each
other).

777

778

Chapter3 Objects

SQL - internal SECURE


[Static] [SQL][SQL SECURE] [SQL - internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

This variable type fulfills the same function as "SQL - internal", with the difference being that
variables can always be inserted in the SQL statements - regardless of the setting VAR_
SECURITY_LEVEL - UC_SYSTEM_SETTINGS. To include variables in the SQL, you use bind
parameters. In doing so, you cannot compose SQL statements and this protects the database from
the risk of an SQL injection.
Like in "SQLI internal", the variable values are directly retrieved from the UC4 Database. This
means that you do not need a Database Agent.
SQLI SECURE variables are bound to the setting SQLVAR_INTERNAL in the UC4 Variable UC_
SYSTEM_SETTINGS and to the privilege "Create and modify SQL-internal variables".
For technical reasons, the system cannot check whether only SELECT commands are used in the
variable's SQL.
You determine the maximum number of returned lines with the settingSQLVAR_MAX_ROWSin
the UC4 Variable UC_SYSTEM_SETTINGS.
Field /
Element

Description

SQL
SQL
Query

The SQL statements that you use in order to select specific database
entries that serve as variable values.
Variables that are directly specified in the SQL will not be replaced.
To include variables, you use the bind parameters.
Maximum length: 4096 characters

PromptSet
Variables

Automation Engine

BindParameter

The table that includes the bind parameters.


You use bind parameters in order to insert variable values within SQL
statements. You can use predefined variables, PromptSet variables
and placeholders for VARA object that you enter in this table. Each
line represents one bind parameter.
The UC4 Variable VAR_SECURITY_LEVEL (UC_SYSTEM_
SETTINGS) does not cause any limitations.
In the SQL SQL statements, you must use a "?" character for every
location in which the replaced value of a bind parameter should be
inserted. A bind parameter must exist for each "?". Make sure that
you keep the order (table). Note that you cannot use bind parameters
several times.
No values will be replaced if a specified variable does not exist. In
this case, the variable name is used which can cause an error
when the variable should be resolved.
The parameters are automatically numbered and cannot be
changed. To remove individual bind parameters, highlight them
and push the DEL key.
You can use variable names as bind parameters and any values
of your choice.
The following field data types and input formats are supported for bind
parameters:
l
l
l
l
l
l

Dat: yyyy-mm-dd
Time: hh:mm:ss
Timestamp: yyyy-mm-dd hh:mm:ss
String: any string
Boolean: possible values: 0 / 1 or true / false
Number: no thousand separator,a decimal point as a decimal
separator

Other field types of the database and other formats are not
supported.Data types are not converted (no conversion from
timestamp to date). Inserting an invalid value causes an error when
the SQL commands are processed.

779

780

Chapter3 Objects

Result
Format

The definition of the Result column's content.


The first column that is displayed in the preview is the Result column.
The other columns include the individual values of the database
columns which have been returned by the SQL query. The Result
column can show a combination of value columns and any
characters. This is defined via the Result Format.
Column numbers that have been specified by using {} curly brackets
in the field Result Format will be replaced by the value of the
corresponding column.
For example:
Value column 1: JOB1
Value column 2: WIN01
Result Format: {1}_{2}
Result column: JOB01_WIN01
The Result column corresponds to the first value column if no Result
format is specified.
The limitations for Variables (min. value, max. value, length) do
not affect the Result column but the first returned column. If the
values of this column exceed the maximum range, this line is
skipped and is not available via the Variable object.

Preview

This executes the SQL statements and displays the result in a new
window. In doing so, the SQL statements are checked and possible
errors can be identified (such as the data type of the Variable object
and of the database do not comply with each other).

Multi
[Static][SQL][SQL SECURE] [SQL - internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

Automation Engine

781

Variables that use the "Multi" source setting obtain a combination of values of two other Variable
objects. Define the source Variable and the type of value calculation in the Variable tab.
Field/Element

Description

Variable 1
Variable 2

The definition of the two Variable objects that serve as values sources.
Variable 1 is decisive for the number of columns. The reference columns
values of both variables are combined depending on the operation that has
been specified. The reference column depends on the variable source: Key
column (in static variables), first value column (variable source: SQL, SQLinternally, Multi) or the Filelist column (variable source: Filelist). Columns that
are not included in Variable 2 do not include a value for the corresponding
entries.
The values of Variable 1 are used if two Variable objects include entries of the
same name.
Note that the data type of the source variable's reference column should
comply with the Multi variable's data type. Otherwise, an error occurs or the
values are not available.

Preview

This retrieves the Variable values, executes the specified operation and
displays the result in a new window.

Result Format

Definition of the Result column's content.


The first column that is displayed in the preview is the Result column. The
Result column can show a combination of value columns and any other
characters. You can define it via the Result Format.
Column numbers that have been specified using curly brackets {} in the Result
Format field will be replaced by the value of the corresponding column.
For example:
Value column 1: JOB1
Value column 2: WIN01
Result Format: {1}_{2}
Result column: JOB01_WIN01
Without a Result Format being specified, the value of the Result or Key column
of Variable is assumed.
The values of the Result column have to comply with the Variable's
limitations (min. value, max. value, max. length), the output format or the
data type. Otherwise, the Result column does not include a value.

Operation
Set union

This retrieves all values of the Variables 1 and 2. If the Variable entries are
identical, the values of Variable 1 are used.

Intersection

This retrieves the values that are used in Variable 1 and in Variable 2. If the
values are identical, the Result/Key column entries of Variable 1 are used.

Difference

All values of Variable 1 that are not included in Variable 2. The Result/Key
column entries of the Variables are compared with each other.

782

Chapter3 Objects

Filelist
[Static][SQL][SQL SECURE] [SQL - internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

Selecting Filelist as the source has the effect that the Variable object obtains the file names of a
particular directory as its values. Doing so requires an OS agent to be specified. The agent always
supplies the file list in an ascending order.
Variables that use Filelist as their source only include one column (as opposed to SQL, SQLinternaland Multi). Keep this in mind if you use the script element GET_PROCESS_LINE.
There is no Result column.
Field/Element

Description

Directory

The directory whose file names should be returned as value list


when the Variable object is accessed. This directory must be
available on the specified host.
Example of a Windows computer:
C:\temp
You can also have only the files of a particular name or ending
supplied. You can set filters using wildcard characters: * stands
for several characters, ? for exactly one character.
For example:
C:\uc4\utility\temp\*.txt

Preview

Source Host
(-Filelist)

The preview can be used to check the settings for fields


(directory does not exist, host is not available, no read access to
the path). If there are no problems, the file list will displayed in a
new window.

PromptSet
variables

Automation Engine

Host

783

The OS agent that is used to access the specified directory. You


cannot select an agent group.
The system automatically uses the agent of the task that triggers
the Variable access (in FileTransfers: the source host) if no host
has been selected,.
A runtime error occurs if the Variable is used in an object to
which no agent or Login have been assigned.

Apply task's
host

With this option being activated, the agent of the task is used
that accesses the Variable object.

Login

The Login object for logging on to the host. Without a


specification, the system automatically uses the Login object of
the task that accesses the Variable.

Apply task's
Login

This setting has the effect that the system uses the Login object
of the task in which the variable is used.

Backend
[Static][SQL][SQL SECURE] [SQL - internal] [SQLI SECURE] [Multi] [Filelist] [Backend]

Backend-type variables execute a command on an operating system and supply the result in the
form of values that are shown in columns. The way how the columns are split can be defined
Variable object. You can enter several commands for various operating systems, system names
and versions in a variable. The correct command of the particular agent is automatically selected
and executed when the variable is resolved.
To access the source computer, you must select an agent and a Login object (same procedure as
for the Filelist variable type).
The operating systems UNIX and Windows are supported. You can select the OS in the
corresponding tabs (below the command table).

784

Chapter3 Objects

The privilege "Create and modify Backend variables" is required in order to create and modify
BACKEND-type VARA objects.
The return code is automatically set to 1 if a Windows command results in an error. This means
that when you use the VARAobject within a script, the script will abort. In order to avoid this,
you can append " & set ERRORLEVEL=0" at the end of the Windows command..
For example: cmd /c dir /b /o:d C:\temp\*.xml & set ERRORLEVEL=0'
This command lists the files of a directory. The return code is always 0 regardless whether files
are found or not. In doing so, you can make sure that tasks that use this variable will not abort.
Note that the settings BACKENDVAR_TIMEOUT (UC_HOSTCHAR_DEFAULT) and
BACKENDVAR_MAX_ROWS(UC_SYSTEM_SETTINGS) are also available for Backend-type
variables.
Field /
Element

Description

Host
Host

The agent on whose computer the command should be executed.

Apply task
Host

This setting uses the agent of the task that accesses the Variable
object.
The task's agent is preferred if this option is set. The variable's agent
(see Host) is used if the task does not include an agent (such as in
Script objects ). An error occurs if the Variable should be resolved
and neither the task nor the Variable include an agent.

Login

The Login object for logging on to the agent computer.

Apply task
Login

This setting uses the Login of the task that uses the variable.
The task's Login object is preferred if this option is set. The
Variable's Login (see "Login) is used if the task does not include a
Login object (such as in Script objects). An error occurs if the
Variable should be resolved and neither the task nor the Variable
include a Login object.

PromptSet
variables

Automation Engine

Command

Table for the definition of commands per operating system.


In Windows, these are not batch lines. This means, that you must
define the particular program that should be executed.
Examples:
Listing the directory:cmd /c dir C:\temp
Ping:ping localhost -n 10
You can store the commands for several operating systems in
one variables. They system automatically uses the OS
commands of the relevant agent when the variables are resolved.
In the columns OS Name and Version, you can filter for the
names (such as a particular UNIX derivate) and OS version. The
suitable line for the specified agent is automatically used when
the variable is executed.
The first entry that complies with the OS, OS name and version of
the agent is used.
Note that Backend-type variables execute exactly one
command.
UNIX: The user who is specified in the Login object requires the
right to execute the corresponding command. Linux: Root rights
are required for the chkconfig and runlevel commands.

OS name

Filters for the name of the operating system.


You can also use the wildcard character *. It serves as a placeholder
for any number of characters.
The OS name refers to the agent's OS name that is shown in the
System Overview -> Agents -> SW column.

Version

The filters for the OS version.


Version refers to the agent's OS version that is shown in the System
Overview -> Agents -> SW version column.

Command

OS command.
Windows only supports PowerShell commands.

785

786

Chapter3 Objects

Columns

The definition of how the result should be split in columns.


Syntax:
column name:start position(length) [;column name:start position
(length) . . .]
Column name: Name of the column, freely selectable
Start position: Position of the character where the column starts.
Length: Number of characters that determines the column's size.
Semicolons (;) must only be used between several columns.
They are not required at the end of the complete definition.
You must define at least one value column (minimum
requirement).
For example:
process:1(20);pid:25(10)
The above example splits the command's output in two columns:
The process column starts with the first character and has a length
of 20 characters. "pid" starts at character 25 and is 10 characters
long.

Column
format

The definition of the Result column's content.


The first column that is displayed in the preview is the Result
column. It can be composed of value columns and any characters
(to be determined in the result format).
Column numbers that are specified in curly brackets {} in the Result
Format field are replaced by the value of the relevant column.
For example:
Value column 1: JOB1
Value column 2: WIN01
Result format: {1}_{2}
Result column: JOB01_WIN01
The Result column complies with the first Value column if you do not
specify a Result format.
The Result column's values must range within the Variable's
limits (min. value, max. length) or comply with the data type.
Otherwise, the Result column does not obtain a value.

Preview

This runs the relevant command on the defined computer and


displays the result in a separate window.

Templates
Predefined BACKEND-type Variable objects are supplied in client 0 (UC _RB_VARIABLES
folder):
Object name

Operating System

Function

Col
um
ns

Automation Engine

787

UC_RB_VARA_
PROCESSLIST

Windows, Linux,
AIX, SunOS, HP-UX

Lists the active processes.

UC_RB_VARA_
SERVICES_PAUSED

Windows, Linux,
AIX, SunOS, HP-UX

Lists all paused services.

Ser
vice
na
me

UC_RB_VARA_
SERVICES_RUNNING

Windows, Linux,
AIX, SunOS, HP-UX

Lists all started services.

Ser
vice
na
me

UC_RB_VARA_
SERVICES_STOPPED

Windows, Linux,
AIX, SunOS, HP-UX

Lists all stopped services.

Ser
vice
na
me

UC_RB_VARA_
USERLIST

Windows, Linux,
AIX, SunOS, HP-UX

Lists all OS users.

Us
er
(ac
cou
nt)
na
me

The maximum ProcessID length


can differ depending on the
particular UNIX system. Adjust
the column length in the Variable
object if necessary.

Windows: Active Directory for


Powershell must be installed on
the relevant computer.

Pro
zes
s ID
Pro
ces
s
na
me

These Variable objects can be used for dynamical PromptSet element. Their specified agent is the
variable name &AGENT#, and their Login is &LOGIN#. Ensure that you use these names for the
PromptSet variables of the required elements.
In PromptSet objects, you can select the predefined Variable objects directly as reference
variable. It is not necessary to create them in their clients beforehand.
Variable objects include the options Apply task Host / Apply task Login and use the Agent /
Login of the task (if available) to which the PromptSet object is assigned.
The setting VAR_SECURITY_LEVEL is relevant when the PromptSet or object variables
&AGENT# und &LOGIN# should be passed on from the task to the Variable object. VAR_
SECURITY_LEVEL is irrelevant when the agent and the login can directly be used from the task
(see the options "Apply task Host" / "Apply task Login" which can be used for jobs, for example).
The above table also shows the operating systems for which commands are specified in the
variable. The correct command is executed depending on the agent and its OS.

See also:
Attributes Tab

788

Chapter3 Objects

Documentation Tabs
Documentation tabs are user-defined and client-specific tabs that can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used
to store texts, but also to define attributes.
You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

Automation Engine

789

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

790

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

Using Variable Objects


Within a UC4 system, you can use Variable objects in various ways. Note that there are some
peculiarities that require particular consideration depending on where you use Variable objects.
Variable objects and their values can be used in:
l
l
l
l

l
l
l
l
l

Object attributes (executable objects): predefined variables


Variables & Prompts tab: predefined variables
Variable (SQL) - Variable tab - SQL statements - predefined variables
Workflow - Object properties - Preconditions and Postconditions tabs (for parameters):
predefined variables
PromptSet - Designer tab - default value: predefined variables.
PromptSet objects: as a data reference
Cockpit objects: as a data reference for the elements
Database Events
Script: PREP_PROCESS_VAR, GET_VAR, :PUT_VAR, :PUT_VAR_COL and
:DELETE_VAR (write access is only possible for static variables)

Automation Engine

791

Direct usage in objects

You can use predefined variables to insert values of Variable object in executable objects at
runtime. The following Variable name which is composed of the VARA object's name is used:
{Variable object [, Key [, Column number ]] }
When the task is executed, the placeholder is replaced by the relevant value. Key and Column
number are optional parameters. The value is automatically retrieved from the Result column (in
dynamic variables) or from the first value column (in static variables) if you have not specified a
specific column.The first line is used if you have not specified a Key.
You can also use the function Variables... in the UserInterface in order to insert placeholders in
object attributes.
You can determine a particular behavior if the specified variable cannot be found. Do so in the
UC4 Variable UC_CLIENT_SETTINGS using the setting VARA_ERROR_ON_
REPLACEMENT. By default, processing aborts.
These placeholders cannot be used in the Forms tabs. Forms only support predefined variables
for system and object values.
Placeholders for Variable objects are not supported in scripts.To access Variable objects, you can
use the script element GET_VAR . Dynamic variable values are always directly retrieved from the
data source. The script elements :PUT_VAR, :PUT_VAR_COL and :DELETE_VAR can only be
used for static variables.

Resolving dynamic variables

792

Chapter3 Objects

To resolve dynamic Variable objects, the values are directly retrieved from the data source
(database, Variable, Agent) and made available for the object. This process takes place whenever a
Variable is accessed because the values are not stored in the object. The same behavior applies
when tasks are restarted.
Variables are resolved when the particular task that uses the Variable is being generated. This
depends on the setting "Generate at runtime".
When resolving UC4 variables, the system first searches for them in the current client and then
in the system client.
Note that a Variable is not resolved if an attribute that includes a Variable placeholder is read
using the script element GET_ATT. The attribute value remains unresolved in this case.
The task changes to a waiting condition ("Waiting for Variable service") if no agent is available
(Variable types "SQL" and "Filelist") for the execution. Invalid directory specifications or SQL
statements cause the task to abort with an error. Check the settings of the Variable objects and
ensure that the agent has started.
Task status

Description

Resolving Variables

Dynamic Variable objects that are used in


object attributes are resolved.

Waiting for continuation of variable resolving

Waiting condition of a task that cannot


resolve dynamic variables because the
agent or the data source is not available or
the Connection object includes incorrect
data.

Note that you cannot cancel tasks that are in the condition "Waiting for continuation of variable
resolving". In this case, verify that the agent is active and that the object settings are correct
(depending on the variable type: Variable, Login and/or Connection object).
Variable resolving continues as soon as the agent is active again. If the problem occurred because
of the Connection object or the database (in Variables that use the source "SQL"), it continues after
the interval that is defined in the setting VARIABLE_SERVICE_CHECK_INTERVAL (UC_
SYSTEM_SETTINGS).

Attributes for predefined variables

The following list shows the object attributes that support the use of placeholders for Variable
objects.
General attributes
[General attributes] [FileTransfer attributes] [Event attributes] [Job-specific attributes]

Attribute

Attribute name

Object
types

Automation Engine

793

ARCHIVE_KEY1

Archive key 1

CALL,
CPIT,
EVNT,
JOBF,
JOBG,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

ARCHIVE_KEY2

Archive key 2

CALL,
CPIT,
EVNT,
JOBF,
JOBG,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

ATTACH_FILE

Attach a file

CALL

ATTACH_REPORTS_RUNID

Attach reports from

CALL

AUTO_DEACT_ERROR_FREE

Error-free status

JOBF,
JOBP,
JOBS

CALL_TEXT

Message

CALL

CO_RISING_NAME

Escalation: Notification

CALL

CODE

Code

JOBS

FSC_HOST

Override host for FileScan (optional) Host

JOBF,
JOBQ,
JOBS

FSC_LOGIN

Override host for FileScan (optional) Login

JOBF,
JOBQ,
JOBS

HOST

Host

EVNT
(FileSyste
m,
Console),
JOBS,
JOBQ

794

Chapter3 Objects

INT_ACCOUNT, INT_ACC, K

Account

CALL,
EVNT,
JOBF,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

LOGIN

Login

JOBS

MAX_RET_EXECUTE

Result evaluation by single task - Else

JOBQ

MAX_RETCODE

Return code

CALL,
CPIT,
EVNT,
JOBF,
JOBG,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

GROUP, S

Group

CALL,
EVNT,
JOBF,
JOBP,
JOBS,
JSCH,
SCRI

SUBJECT

Subject

CALL

TIMEZONE

TimeZone

CALL,
EVNT,
JOBF,
JOBG,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

FileTransfer attributes
[General attributes] [FileTransfer attributes] [Event attributes] [Job-specific attributes]

Attribute

Attribute name

FT_DST_CODE

To - Code

FT_DST_FILE

To - File

FT_DST_FILE_ATTRIBUTES

To - File attributes

FT_DST_HOST

To - Host

FT_DST_LOGIN

To - Login

Automation Engine

FT_SRC_CODE

From - Code

FT_SRC_FILE

From - File

FT_SRC_FILE_ATTRIBUTES

From - File attributes

FT_SRC_HOST

From - Host

FT_SRC_LOGIN

From - Login

Event attributes
[General attributes] [FileTransfer attributes] [Event attributes] [Job-specific attributes]

Attribute

Attribute name

Event type

EVENT_FILE_PATH

Path

FileSystem

EVENT_SOURCE

Source (only
Windows)

Console

OPERAND1_SQL_
AGENT

Value 1 - Host

Database

OPERAND1_SQL_
DATABASE_NAME

Value 1 - Database

Database

OPERAND1_SQL_
LOGIN

Value 1 - Login

Database

OPERAND1_SQL_
QUERY

Value 1 - SQL

Database

OPERAND1_SQL_
SERVER_NAME

Value 1 - Server

Database

OPERAND1_
STATIC_VALUE

Value 1 - static value

Database

OPERAND1_VARA_
KEYWORD

Value 1 - Key

Database

OPERAND1_VARA_
NAME

Value 1 - Variable
object

Database

OPERAND2_SQL_
AGENT

Value 2 - Host

Database

OPERAND2_SQL_
DATABASE_NAME

Value 2 - Database

Database

OPERAND2_SQL_
LOGIN

Value 2 - Login

Database

OPERAND2_SQL_
QUERY

Value 2 - SQL

Database

OPERAND2_SQL_
SERVER_NAME

Value 2 - Server

Database

OPERAND2_
STATIC_VALUE

Value 2 - static value

Database

OPERAND2_VARA_
KEYWORD

Value 2 - Key

Database

795

796

Chapter3 Objects

Job-specific attributes
[General attributes] [FileTransfer attributes] [Event attributes] [Job-specific attributes]

Attribute

Attribute name

Platfor
m

AGENT_ID

MBean Server - Agent ID

JMX

DATA_SOURCE

Connection - File name

Databa
se

DATABASE_NAME

Connection - Database

Databa
se

ENTER_PARAMS, ENTER_
PAR, EP

Runtime options - Enter parameter

BS2000

ENTERPRISE_SERVER

Start parameters - Enterprise Server

Siebel

GATEWAY_SERVER

Start parameter - Enterprise Server

Siebel

GCOS8_IDENT

Start parameter - IDENT

GCOS8

GCOS8_JCLJOB

Start parameter - Include Job

GCOS8

HOME_TERMINAL

Start parameter - Virtual terminal

NSK

INITIAL_CONTEXT_
FACTORY

MBean Server - Initial Context Factory

JMX

JCL_SOURCE

Runtime options - z/OS file name

z/OS

JOB_CLASS, JC

Runtime options - Job class

BS2000

JOB_NAME, JN

Start parameter/Runtime options - Order


name/Job name

BS200
0, MPE,
z/OS,
OS/400,
SAP,
VMS

MPE_OTHER

Runtime options - Else

MPE

MPE_QUEUE

Runtime options - Queue

MPE

MVS_ACCOUNT

Runtime options - Account

z/OS

MVS_JOB_PARAMS

Runtime options - Job parameter

z/OS

MVS_NOTIFY

Runtime options - Notifications

z/OS

MVS_PROG_NAME

Runtime options - Prog. name

z/OS

OA_APPL_NAME

Responsibility (application short name)

Oracle
Applicat
ions

OA_RESP_NAME

Responsibility - Key

Oracle
Applicat
ions

OS400_JOBD

Runtime options - Job description

OS/400

Automation Engine

797

OS400_JOBQ

Runtime options - Job queue

OS/400

OS400_RTGDTA

Runtime options - Routing data

OS/400

SAP_DST_SYSTEM

Start parameter - Destination system

SAP

SAP_RECIPIENT

Spool-list recipient - Address

SAP

SERVER_NAME

Connection - Server

Databa
se

SERVER_URL

MBean Server - Server URL

JMX

SIEBEL_SERVERS

Start parameter - Siebel Servers

Siebel

UNIX_CMD

Start parameter - Command

UNIX

UNIX_SHELL_OPTIONS

Start parameter - Shell options

UNIX

VMS_QUEUE_NAME

Start parameter - Queue name

VMS

WIN_CMD

Start parameter - Command

Window
s

WIN_WORK_DIR

Start parameter - Working directory

Window
s

3.2.32 Workflow
Workflow
A workflow combines individual tasks so that they can be executed in a single process. These
individual tasks are linked to each other through defined conditions and dependencies.
Object class: Executable object
Object type (short name): JOBP
You can create and maintain workflows either in the Workflow tab or the Logic tab. Tasks are
symbolized by boxes that can be distinguished by their object names or aliases.
A workflow's type is defined when it is created.There are three different workflow types that are all
structured differently:
l

Standard: Tasks can be added, ordered and linked as needed. You can define standard-type
workflows in the Workflow tab.
IF: These workflows represent an IF statement: IF workflows contain two different branches
to which you can assign tasks. Depending on the specified condition(s), one of the two
branches will be processed. You can define this workflow type in the Logic tab.
ForEach: These workflows represent a loop: For-Each workflows repeat one or several
tasks several times depending on the defined loop condition. You can define this workflow
type in the Logic tab.

Possible tasks within a workflow:


l
l
l
l
l

Event - Defines conditions and the reaction to an occurred condition.


FileTransfer - Transfers files from one computer to another.
Group - Is used to execute sporadic tasks.
Job - Runs a job on a computer.
Notification - Serves to inform one or several users (operators).

798

Chapter3 Objects
l

Script - Contains processing commands that are not executed on a target system but
exclusively in UC4.
Workflow - Provides for the nesting of workflows.

Creating Workflows
Workflows integrate objects that form a sequence of actions and control their execution.

Procedure

1. Click the button in the toolbar and a window listing all the available object types opens.
Expand the Workflow category (JOBP).
2. Select a Workflow type (STANDARD, IF or FOREACH).
3. Assign a suitable name and open the Workflow object. Then click the Workflow tab
(STANDARD type) or the Logic tab (IF and FOREACHtype).
4. The sequence handled by the Workflow is displayed in these tabs. Objects can be added or
removed using either the drag & drop function or the corresponding command from the
Workflow's context menu. Decide upon the order of object execution. In Standard
Workflows, connect the individual tasks with the Line Tool. The arrows indicate the
processing direction. Standard Workflows can contain serial and parallel execution branches
which means that tasks can be processed one after the other or simultaneously. In IF and
ForEach Workflows, the tasks are automatically linked (only in a serial order).
5. The behavior of IF and ForEach Workflows can be defined through specific conditions /
options in the properties of the START object.
6. Additional settings are available for each object - use the context menu command Properties
for this purpose. The individual tabs offer various ways to configure the task's execution.
Use them in accordance with your requirements.
7. External dependencies are a special feature. You can use them to make the execution of
objects dependent on objects that are not part of the Workflow. Note that external
dependencies can only be used within Standard Workflows.
8. The settings of the Runtime tab are a useful option for monitoring the Workflow's execution.
9. UC4 script elements can be stored in the Process tab.
10. Workflows are executable objects.

Various other settings are available for Workflow objects. Details are found in the documentation
about the individual tabs.
Header tab
The Header tab is a general tab that is available in every UC4 object.

Automation Engine

799

Description

Field/Control

Description

Header
Title

You can define object titles here. This title should include a short and
characteristic description of the corresponding object because it is
shown in all overviews.

Created

Indicates the user who has created this object including the date and
time.

Modified

Indicates the user who has last modified this object including the date
and time. The number of times this object has been modified is
displayed to the right.

Last used

Indicates the user, date and time regarding the most recent object
usage. The number of times that the object has been used is displayed
to the right.

Active

With this option being deactivated, the object will automatically be set
to inactive after its activation and not processed.
Therefore, the tasks obtain the status ENDED_INACTIVE_OBJECT
(return code: 1925).
This setting is available in the Header tab of all executable objects and
is set by default.

800

Chapter3 Objects

Archive keys

Two keywords of your choice can be specified in all executable objects


and the Sync object. These keys are written to the statistical data each
time the object is processed.
Statistical data can be selected using these archive keys. Archive keys
are displayed in the Statistical Overview and can be printed.

Extended Reports

Extended reports can be written for all executable objects. They log the
complete script with all Includes, the generated JCL of Jobs or
accesses to UC4 objects etc.

Default (UC_
CLIENT_SETTINGS)

If you select this option, the reports that the UC4 administrator has
defined in the UC4 Variable UC_CLIENT_SETTINGS using the key
EXT_REPORTS are generated.

All

All extended reports are written for this object.


This option overwrites possible pre-settings of the client.

None

No extended reports are written for this object.


This option overwrites possible pre-settings of the client.

Sync Tab
The Sync tab is object-type specific and is available in all executable UC4 objects.
Sync objects synchronize task on the basis of defined conditions. Enter one or several Sync
objects including the actions that should be taken in this tab if you want to make use of this
possibility.

The Sync objects are checked one after the other when the task starts. The UC4 Automation
Engine tries to use the Sync object of the first line by calling the start action. If this is not possible
because this is not allowed by the Sync object's current condition, the task waits, aborts or is
skipped. The type of reaction depends on the Else condition defined in the tab's last column. If
"wait" has been specified, the task waits until it can use the Sync object with the start action. Then

Automation Engine

801

the UC4 Automation Engine checks the Sync object in the next line etc. The task starts as soon all
Sync objects could successfully be used. Depending on the task's end status, either an abend or
end action is processed.
Up to 500 Sync objects can be specified.
All Sync objects must not include a total of more than 5000 rules. Rules are defined actions
which are directly entered in the Sync object.
Task ends are administered by work processes but only the primary work process releases busy
Syncs. Because of this task allocation, it can take several seconds until a Sync is released after
a task has ended. In this case, the report entry includes a time stamp that shows a later time
than the task has ended. Such delays occur when the primary's work load is high or if it is
processing lots of Syncs.
Note that using many Sync objects and rules can reduce task clarity. UC4 recommends
reducing the number of Sync object to a minimum.

Description

Only actions that have been defined in the Sync object can be selected.
Field/Control

Description

Sync object

Selects the Sync object that should be used to synchronize the task.

Start action

Defines the action that should be taken at task start. If this is not
possible because of the Sync's status, the Else condition becomes
effective.

Abend action

This action is processed if the task aborts.

End action

This action is processed if the task ends successfully.

Else

You can define here what should happen to the task if the start action
cannot be executed:
l

l
l

The task should wait until the start action can be executed
(WAIT).
The task aborts (ABEND).
The task is skipped (SKIP).

See also:
Sync
Attributes Tab
The Attributes tab is object type-specific and is only available in "Workflow" objects. You can
use it to define the relevant settings for the Workflow's execution.
Object: Workflow
Object class: Executable object
Object type (short name): JOBP

802

Chapter3 Objects

Description

Field/Control

Description

Attributes
Group

If the Workflow should be started by a Group, you can select this Group
here. The Workflow is activated immediately if no definition has been
made.
Note that the definition that has been specified here is ignored if the
Workflow starts through a Workflow, a Schedule or as a recurring task.

Queue

Selection of a Queue object in which the FileTransfer should be


processed. The FileTransfer automatically starts in the Client Queue
(object name: CLIENT_QUEUE) if nothing has been specified in this
field.

Children Queue

Queue object that should be used for the Workflow's tasks. The Queue
of the subordinate tasks is replaced by the value that is specified here
while the Workflow is being processed. The settings that are made in
the individual tasks are used if no value has been specified for
"Children Queue".
If you select *OWN, the Workflow's Queue (attribute: Queue) is used
for the subordinate tasks.

Int. Account

Specification of an internal account.


Contents do not affect the UC4 system's internal processing. You can
access the attribute "Int. Account" with script elements and integrate
the values in your processes.

Automation Engine

803

UC4 Priority ... (0-255) Priority that should be used to execute this Workflow in UC4.
Allowed values: 0 to 255
Default: 0
The priority that the UC4 administrator has specified in the UC4
Variable UC_CLIENT_SETTINGS with the key "TASK_
PRIORITY" is used if you select value "0".
TimeZone

TimeZone that should be used.

Generate at runtime

Select this checkbox if the Workflow should not be generated at


activation time but at its runtime.

Re-using AgentGroup
calculation

Select this checkbox if Workflow tasks of the same AgentGroup should


use the same hosts.

Tasks running
parallel
Max ...

Setting that defines the maximum number of parallel executions for this
Workflow.
Allowed values: 0 to 99999
Default: 0 (no limit for parallel-running tasks)
Examples:
Max. "1" - The maximum of one active Workflow executions must not
be exceeded at any time.
Max. "2" - The maximum of two active Workflow executions must not
be exceeded at any time.
etc.

Else: Wait Abort

Instruction for the Workflow whose execution would exceed the


maximum number of parallel-running tasks.
Wait = The Workflow waits until it can be executed.
Abend = The Workflow is canceled.

Deactivate autom.
when finished

The Workflow settings for automatic deactivation apply for tasks


that run in a Workflow.
Workflows do not override the settings of subordinate Workflow. If a
Workflow has been deactivated (manually or automatically), all its subWorkflow's are also removed from the Activity Window.
Attention: Deactivate tasks (automatically or manually) when they
finish because a huge number of tasks in the Activity Window
would negatively affect performance and the activity-refreshing
cycle.
Note that Workflows that end with the status "FAULT_OTHER Start impossible" are always removed from the Activity Window.
Settings that have been made for an automatic deactivation are
ignored in this case.

No

The Workflow and its subordinate tasks are not automatically


deactivated after their execution and remain in the Activity Window.

804

Chapter3 Objects

After error-free
execution

The Workflow and its subordinate tasks are automatically deactivated


after their successful execution. An interrupted Workflow including its
subordinate tasks remain in the Activity Window. They must be
deactivated manually.
You can also set a status for an error-free execution or a time delay for
deactivation. Use the combo boxes "Error-free status" and/or Time
delay ... Minuten for this purpose.

After an error-free
restart

The Workflow and its subordinate tasks are automatically deactivated


after a successful restart. Previously canceled tasks are also
deactivated.
You can also set a status for the error-free execution and a time delay
for deactivation. Use the combo boxes Error-free status and/or Time
delay ... Minutes for this purpose.

Error-free status

Status that confirms the Workflow's successful execution. If no status


has been selected, the system return codes 1900 - 1999 (ANY_OK)
stand for an execution without errors.

Always

The Workflow and its subordinate tasks are always automatically


deactivated after their execution.
You can also specify a time delay for deactivation in the control field of
the same name.

Time delay ... Minutes

The Workflow and its subordinate tasks are automatically deactivated


after a specified number of minutes. You can also deactivate the
Workflow manually before the specified period of time. The time delay
only affects Workflows whose execution includes their automatic
deactivation.

Result evaluation
per single task
OK status

Selection field for the end status that is expected for theWorkflow's
subordinated tasks.

Else ...

Select an object that should be executed if the defined OK status of one


or more subordinated tasks does not occur.

You can read and modify the settings that have been made in this tab at runtime. Script elements
are used to access the object's attributes.

See also:
System Return Codes of Executable Objects
User Return Codes of Executable Objects
Workflow tab

Workflow tab
The Workflow tab is object-type specific and is only available in standard-type Workflow
objects. You can use it to edit the Workflow and to define the dependencies of the individual
tasks to each other.

Automation Engine

805

Object: Workflow
Object class: Executable object
Object type (short name): JOBP

Editing a Workflow
[Editing a Workflow] [Appearance of a Workflow]

Adding Tasks
In the Workflow tab, a newly created workflow only includes the tasks "START" and "END". You
can add additional tasks to this workflow by highlighting one or more objects in the UC4 Explorer
and dragging them to the Workflow tab. When you press and hold the ALT key, the task will be
added as an external dependency.
If specified in your UserInterface settings, the "Add task" dialog opens in which you can also
assign an alias name. By default, this function is deactivated.
Alternately, you can use the context-menu command Add task. A dialog opens in which you can
enter the name of the object that should be inserted or select it directly from a small UC4 Explorer
window by clicking the "..." symbol. You can also assign an alias name that should be used to
display the task in the workflow. If you activate the check box, the object will be inserted as an
external dependency and not as a direct part of the workflow.
You can also set and modify the alias name of Workflow tasks in the workflow's properties.
Predefined variables, placeholders for Variable objects and object variables (of the workflow)
can be used as a part of the alias name. Using invalid variables results in an error when the
workflow starts.
Objects that are not active by definition (Header tab) will be skipped when the workflow is being
processed. A query appears in the UserInterface when you try to insert an object in the
workflow.

806

Chapter3 Objects

Deleting Tasks
You can delete objects that are no longer required in a workflow. Highlight them and use the DEL
key or the Remove command in the context menu.
Copying Tasks
When you want to include a task in a Workflow several times, you can highlight it within the
workflow and drag it (shift key pressed) to an empty position. By doing so, you create a copy of
the task that includes all the specified attributes. Alternately, you can also use the
corresponding context-menu command.
Note that you can copy individual tasks or task sequences and insert them in other workflows.
Replacing Tasks
Tasks of a workflow can be replaced by other tasks. Highlight an object in the UC4 Explorer and
drag it to the workflow task that should be replaced. A query appears which must be confirmed.
"No" means that the new task will be moved to an empty position in the workflow.
Moving Tasks
You can move tasks that are in the Workflow tab by holding the mouse button pressed. If you want
to move several tasks at a time, you can either group them in a frame or use the CTRL key. When
the mouse pointer displays arrow symbols, you can move the selected tasks in blocks through a
non-visible raster. You can also add lines and columns to this raster. Move the mouse pointer to the
position where a row or column should be inserted and select the suitable popup-menu command.
You can also remove lines and columns that do not include tasks in the same way.
Linking Tasks
Workflow tasks usually depend on other tasks and have one or more predecessors and/or
successors. You can define dependencies by linking tasks with the Line Tool (see Settings of the
UserInterface). Use the corresponding context-menu command to call the Line Tool.

Automation Engine

807

The mouse pointer now displays a pen symbol. Press and hold the mouse and move it from a
particular task to the task that should be the successive task. Make sure that you keep the correct
order, especially if the tasks that should be linked are positioned one below the other.
There is a simple method that can be used in order to link tasks to several other tasks. For example,
task A should be linked to the tasks B, D and D:
1. Activate the Line Tool.
2. Draw a line (Shift key pressed) from task A to task B.
3. Keep the Shift key pressed and click the tasks C and D. The line is automatically drawn to
these two tasks.
In order to link objects that are positioned one below the other to one common successor or
predecessor, UC4 recommends applying the following method:
1. Activate the Line Tool.
2. Highlight the tasks by drawing a rectangle around them (Shift key pressed, release the key when
the tasks have been highlighted).
3. Draw a line from one of the highlighted task to a required tasks. By doing so, the lines are
automatically drawn from all highlighted tasks to the required one.
The linking lines to predecessors are displayed in red, the linking lines to successors in green. You
can highlight linking lines between objects by clicking them or by using the line tool. They are
displayed in yellow. You can use the DEL key or the appropriate context-menu command to delete
lines.
Splitting Task Sequences in several Lines
Within a workflow, you can also arrange long task sequences (serial processing) in several rows.
Doing so makes it easier to edit the workflow and as a result, the monitor is more clearly structured.
Tasks in a row (they are positioned one below the other) can easily be linked:
1. Activate the Line Tool.
2. Draw a line (Shift key pressed) from the line's last task to the first task of the following line.
Vice versa, you can also draw a line from a line to a line that is positioned above:

808

Chapter3 Objects
1. Activate the Line Tool.
2. Draw a line (ALT key pressed) from a line's first task to the last task of the line above.

Do not intersect linking lines, especially if you use several lines for the serial processing of tasks.
Arrange individual tasks in a way that the lines do not intersect.
Defining Dependencies
You can access the properties of tasks in the context menu and specify numerous conditions and
dependencies.

Display of the Workflow


[Editing the Workflow] [Appearance of the Workflow]

There is a "classical" and a "default" workflow view. You can specify the view that should be used
to open workflows in the UserInterface's properties . You can always switch between the two
available views by clicking the

symbol in the menu bar.

Size and Appearance of the Workflow


You can change the workflow's size and appearance any time by using the following buttons:
Symbol

Description
Adjusts the layout to fit the size of the workflow.
Enlarges the layout in proportion to the workflow size (scroll bars appear if
necessary).
Reduces the layout in proportion to the workflow (scroll bars appear if necessary).
You can frame and enlarge an area by holding down the left mouse button (the cursor
takes the form of a loupe).

The workflow view can also be maximized or minimized by using the CTRL key in combination
with the scroll wheel. This view is kept until you change it or close the window.

Automation Engine

809

When you enlarge the workflow so that it cannot completely be displayed anymore, it is helpful to
use the Workflow Navigator. It appears automatically and you can select the workflow section that
should be displayed in the tab. Click the required section in the JP Navigator or move and hold the
red frame.

Display of Tasks
The box that symbolizes the task informs about the object type. The symbol that appears in the right
part of the box includes information about stored task properties. No properties are stored in the
following Job:

The following illustration shows the same job as above but now it includes properties.

Click the

or

symbol in order to open the properties windows.

If a job has no agent because is has been imported from a different UC4 system or client, a
question mark displays instead of the platform symbol.
Based on the expected runtime, the workflow's monitorvisualizes the task's progress with a
colored bar.
Information about the properties of a workflow task is provided in the form of tooltip texts. If you
move the mouse over a box, a tooltip window opens. Depending on the UserInterface settings and
the zooming factor, it starts with an illustration of the box followed by a section that provides general
information about the task (for example, the target agent). The tooltip window also includes the
exact information about all the settings that are defined in the properties window. In the
UserInterface settings, you can define the tabs that should be included in the tooltip window.

810

Chapter3 Objects

Note that the task boxes of objects that have been deleted are displayed white.
The "Properties" information that is included in the tooltip is composed of one or several letters and
describe the task's properties:
l
l
l
l
l

P - A time checkpoint has been set.


A - An earliest start time or breakpoint has been defined or the task has been set inactive.
W - One or several conditions to predecessors and/or a latest start time have been defined.
C - A calendar condition has been specified.
S - The task uses a Sync object. Note that a Sync object's dependency is not defined in the
Workflow. It is defined in the Sync tab of the relevant object.
T - Runtime monitoring is set.

Modifications that you make in objects (for example, you use a new host or a Sync object)
immediately appear in the workflow's graphical display.
Printing
You can use the context-menu command Print Chart... in order to print the workflow's graphical
display. Specify the maximum number of pages that should be printed. The optimum size is
automatically calculated.

Note: A printer needs to be installed and connected to the computer. This option is not available if no
printer is installed. Specified print formats are ignored.

Automation Engine

811

See also:
External Workflow Dependencies

Properties of Objects

Object Properties

The Workflow tab can be used to define the processing order of tasks by linking them with lines.
Additionally, you can specify dependencies and conditions for each individual task. Use the
command Properties... in the Workflow's context menu for this purpose.
The following tabs are available:
l
l
l
l
l
l
l
l
l
l

General tab - To set time checkpoints.


Earliest tab - To specify the earliest start time.
Preconditions tab - Conditions that are checked before a task is executed.
Dependencies tab - To define dependencies to other tasks and the latest starting point.
Variables &Prompts tab - To modify object or PromptSet variables.
Calendar tab - To specify Calendar conditions.
Runtime tab - To monitor the minimum and/or maximum runtime.
Postconditions tab -Conditions that are checked after a task has ended.
Solution tab - To overwrite the specific attributes of RA Jobs (only available in RA Jobs.
External Dependency tab - To define dependencies to external tasks.

Note that the tabs are not checked in the order in which they are structured. The first three tabs
are processed in the following order: "Dependencies", "Earliest" and "Preconditions".
In the task properties tabs Preconditions, Postconditions, Variables & Prompts and
General (only the field: Alias), you can also use object variables and PromptSet variables of the
Workflow.Predefined variablesare also supported. Their values also refer to the Workflow.
Exception: &$TASK_NAME refers to the Workflow task and retrieves the actual object name.
This variable can only be used in the field Alias (General tab).
Task variables can only be used in the properties if their values have been overwritten in the
properties (Variables &Prompts tab).
See also:
Workflow Logic

General Tab

You can use the General tab in order to assign an alias name and to set time checkpoints for
workflow tasks. If a task has not started until the specified time, the object that is defined in the
Do section will be activated.
Note that the checkpoint will be verified even when the task is inactive.

812

Chapter3 Objects

For example:
The above task activates the object MM.CALL.DAY if it has not started until 4 am at the next day.

Description
Field/Control

Description

Automation Engine

Alias

813

The name of the workflow task. This name should be displayed instead
of the actual object name.
The alias name is used in the workflow monitor, the Activity Window
and in the statistics. Messages use the actual object name.
The same rules apply for the alias and for an object name. They are
limited to 200 characters and only the following characters are allowed:
A-Z, 0-9, $, @, _, . and #.
You can use the setting ALIAS_SPECIAL_CHARACTERS in the
UC4 Variable UC_CLIENT_SETTINGS in order to allow more
characters in the alias name.
Predefined variables, placeholders for Variable objects, PromptSet
variables and object variables can be used in an alias name. These
variables always refer to the Workflow. The characters &, {and } must
not be used in alias names. Variables are replaced when the workflow
is activated. When you specify an invalid variable, an error will occur
when you start the workflow. Click
dialog.

in order to call the variable

Predefined variables that are used within the Variable object (in SQL
statements), and whose values were accessed through placeholders in
the alias names, refer to the workflow.
In the UserInterface settings, you can determine whether the dialog
in which you can define an alias should open when you add a
workflow task using the drag and drop function, and when.
No alias can be used for the START and END object of workflows.
If you search for object uses of workflow, you must specify the alias
name if there is one. If this alias name includes variables, you must
also specify them in your search.
You cannot change the alias name in the modification mode of
active workflow. The same rule applies for tasks that are newly
added.
Time Checkpoint

Activate this check box in order to set a time checkpoint.


The following settings are available if Time Checkpoint is active:

If start until + ... Day


(s)

The number of days starting on the real date(= top workflow's


generation time).
Examples:
0 days = At the day of the real date.
2 days = Two days after the real date.
Allowed values: 0 - 99

Time: ... not possible

Checkpoint time.
If the task has not started before this time, the object that is specified in
the Execute section will be activated.

TimeZone

The time zone that should be used.

814

Chapter3 Objects

Execute

The object that should start if the checkpoint is exceeded.


Enter the object name or call it directly from a small UC4 Explorer
window (refer to the three dots to call it).

Rollback
Enable Rollback

Activates or deactivates the Rollback function for this task.


A Rollback also requires the settings of the Rollback tab to be
activated and defined.

Deployment

These options are only available when the client's Deployment function
is active (UC_CLIENT_SETTINGS - DEPLOYMENT_CLIENT
setting).

Run per Patch

Only useful when the task is part of a Component Workflow.


Setting this option has the effect that the task will be processed in a
serial order for each patch that is defined in the UC4 Deployment
Manager.

Run per Deployment


Target

Only useful when the task is a Component Workflow.

Task Prompts

For more information about these options, see the description of the
Variables & Prompts tab.

Possible options: "n/a", "serial" and "parallel"


Depending on the option that you select, the Component Workflow will
be processed serially or in parallel order for each Deployment Target.

Note that these settings will also affect whether the parameter
dialog of RA Jobs is displayed or not.
Request task
parameters

Displays the PromptSet dialogs of the workflow task.

Parameter evaluation With this option being activated, the PromptSet dialogs will already be
at workflow generation called and PromptSet values be resolved when the workflow is
generated.

Display in the Workflow and its Monitor


The tooltips (properties) of the workflow tasks display the time checkpoint's usage with a P
character.

Earliest tab

In the Earliest tab you can specify the earliest starting time for a workflow task. All this task's
predecessors are also displayed. Regardless of the specified earliest starting time, you can
mark the task as being active or set a breakpoint.

Automation Engine

815

For example:
The task that is shown above can first begin at 12:00 o'clock on the workflow's activation day. If it is
activated later than 12:00 o'clock, this task starts immediately provided that all other preconditions
have been met.

Description
Field/Control

Description

Earliest start

By activating this check box, you can set an earliest starting time.
For example:
A workflow is activated on 01.03. This workflow contains a task in which
"Current date +1 day at 15:00 has been specified as the earliest start time. For
this task, the date 02.03, 15:00 applies as its earliest start time.

Current date +
... Day(s)

Number of days starting on the real date(= top workflow's generation time).
Examples:
0 days = on the day of the real date
2 days = two days after the real date
Allowed values: 0 - 99

Time

Earliest starting time.


If the task is ready to start but the time that is specified for the earliest start has
not yet been reached, this task goes into a waiting condition. Its status is
"Waiting for start time".
Note that in the workflow monitor, you can start the task immediately. Do so
by using the context-menu command of the same name.

816

Chapter3 Objects

TimeZone

The time zone that should be used.

Table

Lists the predecessors of the task.


Name - The name of the preceding object.
Type - The object type of the preceding object (or START).
Host - The host name(s) of the predecessor(s) in case of a job or a file transfer.

Active

By selecting this check box, the task is set active in the workflow.
The task is inactive if this check box is not selected. It is not executed but is
still part of the workflow. Because the task ends with the status ENDED_
INACTIVE, attention should be paid to succeeding tasks if particular states are
defined in theirDependencies tab.

Set
Breakpoint

If this check box is active, the workflow stops at this task. To continue, the
breakpoint in the Workflow Monitor must be deleted manually.

Display in the Workflow and its Monitor


The tooltips (properties) of the tasks in the workflow display the usage of the Earliest tab with an A
character.

Preconditions Tab

You can use this tab to specify conditions that will be checked before a task runs. If a condition
applies, the corresponding actions are processed.

Automation Engine

817

This tab's structure is similar to that of the Postconditions tab which is also available in the
Workflow properties. However, the available conditions and actions differ from each other, and the
Preconditions tab is processed several times before a task starts. The "Postconditions" are
processed once after the task has ended.

Defining conditions and actions


The Preconditions tab includes two sections:
The right section lists the conditions or actions depending on what has been selected. The left
section is empty at the beginning, but you can select and drag conditions and actions of your choice
and drop them into this section.
This is done as follows:
l
l
l

In the right section, select the condition or action that should be added.
Select the required entry and keep the left mouse button pressed.
Move the mouse pointer to the left section.

You can also create actions without a corresponding condition. In this case, the action is
executed with each evaluation process.
You can copy condition and action blocks, including their sub-blocks and all parameters that
include values, and insert them in the Postconditions tab. Use the shortcuts CTRL + C and
CTRL + V for this purpose.
You can insert any number of conditions and actions within each condition block. The nesting
depth depends on your selections.
Each condition and action block requires particular parameters that must be specified (for example,
the agent that is used or the status that should be checked). In a block, click the parameter name
and enter the required values in the open dialog window.
You can also use predefined variables as parameter values. To open the Variable picker, you click
the element name (= blue text left to the element) in the parameter dialog. The relevant input field
changes to a gray text field and the
open the Variable picker dialog.

button at the lower right edge becomes active. Click it to

You can also use object and PromptSet variables within Preconditions. It is important that the
variables are available when the conditions or actions are called. When you set the variables in
one or several predecessors in the Workflow, note the following:
l

When "Generate at runtime" is not set in the task that includes the Preconditions, you must
not set this option in the predecessors in which you define the variables.
You cannot set the variable in the Post-Process tab (:PSET) of the direct predecessor when
the option "Generate at runtime" is not set in the task that includes the Preconditions.

Note that you should set the value "OWN in the agent conditions only when the agent is not
exclusively set via the Pre-Process tab. Otherwise, the Workflow task stops with the status
"Waiting for Preconditions".

818

Chapter3 Objects

There is a menu for each block that can be opened by clicking the
are available:

symbol. The following options

Always - Checks or executes the condition/action with each evaluation. Blocks are flagged

with a
symbol.
Once - The block is processed once and then ignored in all other evaluation cycles. The

l
l

symbol at the upper right edge changes to .


Deactivate - The block is always skipped and is grayed out. The same is true for all the
block's subordinate actions and conditions.
Cut/Copy/Remove - The block is moved, duplicated or deleted.
Add Else block - Adds an else condition (only for conditions).

Automation Engine

819

Structure of conditions and actions


Conditions and actions are structured as blocks and include a descriptive text and the parameters.
The parameters including their values appear in blue within the descriptive text.
Parameters are values that manipulate the behavior or the conditions and actions (see the above
description).
The descriptive text of conditions and actions starts with a keyword that is written in uppercase
letters. The keyword depends on whether it refers to a condition or an action and where it is located.
Keyword

Conditions or Action

IF

A top-level condition.

AND IF

A condition that is located within another condition.

THEN

The first action of a block.

ANDTHEN

The subsequent actions.

FINALLY

The final action.

The text of actions that are located in an ELSE branch do not start with the keyword THEN.
Final actions appear in green in the selection and the definition areas

Evaluation
The conditions and actions that have been defined in the Preconditions tab are checked and
executed when the predecessors have been processed and the earliest start time has been
reached. The check (evaluation) is repeated in the time interval that has been defined in the UC4
Variable UC_SYSTEM_SETTINGS, setting CONDITION_CHECK_INTERVAL. This process
ends when a final action or the latest start time has been reached. Only then does the task start. For
final actions refer to the table that is shown below.
Note that a task cannot start if the Preconditions tab includes neither a final action nor a latest
start time. In this case, the evaluation cycle is repeated an infinite number of times. The tab is
skipped if it is empty.
The task also starts if you use the functionality "Once" because in this case no additional
conditions and actions are checked or executed.
During the evaluation process, the task obtains the status "Waiting for Preconditions".
The following commands in connection with the Preconditions tab are available in the context
menu of the Workflow monitor and Activity Window:
l

Re-evaluate Preconditions:Only available if the Workflow blocks because of the task's


Preconditions(BLOCK action). Removes the blocking condition and repeats the evaluation
of conditions and actions.
Evaluate Preconditions now: For tasks that are in the status "Waiting for Preconditions".
The effect is that the evaluation cycle starts from the beginning. The counter of one-time
blocks is not reset.
Ignore Preconditions: The Preconditions are not checked.

Conditions like all other properties can be modified at runtime provided that the task has not yet
started.
This tab cannot be modified by using the script element MODIFY_TASK.

820

Chapter3 Objects

The evaluation time is included in the Workflow's ERT and not that of the task.
A separate report is created for the Preconditions tab. It includes evaluation information (latest
evaluation, evaluation duration etc).

Actions
Name of the
action

Description

Parameters

Final
action

BLOCK

Sets task to a blocked


status.

-) The task's status text


(optional).

Yes

The status text is truncated in


the Detail Window if this
parameter exceeds the
maximum number of 32
characters. The report displays
the text in its full length.
CANCEL
PROCESS
FLOW

Cancels the Workflow.

-) The Workflow that should be


canceled. Possible values
"*OWN", "Top" or "Parent."

No

*OWN - Workflow in which the


task runs.
Parent - Superordinate
Workflow of *OWN.
Top - Top Workflow.
-) Also cancel the Workflow's
tasks?
Possible values "including" or
"excluding"
CHANGE
QUEUE

Changes the task's Queue.

-) The name of the Queue


object.

No

CLEAR
VARIABLE

Deletes the entry of a static


Variable object.

-) The name of the Variable


object.

No

-) Key
If the Key begins with the &
character, use this character
twice.

Automation Engine

EXECUTE
OBJECT

Starts any object and does


not check its status.
The UC_CAUSE ReadBuffers include
values and can be read
in this object's script.

-) The object name

No

-) Alias(optional)
The name to be used for the
task that should start instead of
the object name in the Activity
Window and the statistics.
-) Parameter... (optional)
Opens a dialog in which you
can modify the PromptSet
values of the object that should
start. Can only be called if at
least one PromptSet object has
been assigned to the object.
-) Wait until this task ends?
The started object always
inherits all variables of the
Workflow task.

PUBLISH
VALUE

Publishes a value via an


object variable. The
specified object variable is
created if it does not yet
exist. Otherwise, a value is
assigned to it. Then the
value provided to the
subsequent tasks.
This action has the
same function as the
SET VALUE action. The
only difference is that
the object variable is
always passed on to the
Workflow.

-) Value

No

-) The variable name


The Variable name must be
specified without a leading &
character. In the
"Postconditions" report it is
also written in the same way. In
the object, it will be accessed
with an & character.

RE-EVALUATE
AT

Restarts the evaluation


process at a particular point
in time.

-)The point in time in the format


+TT/HH:MM.

Yes

RE-EVALUATE
IN

Processes the evaluation


cycle after a particular
period from the beginning.

-) The time in minutes

Yes

RUN TASK

Starts the task and does not


check any other conditions.

Yes

821

822

Chapter3 Objects

SET VALUE

Defines or assigns values


to an object variable.
The setting "Generate at
runtime" must be
activated in the
particular object in order
to use this object
variable (except for Post
Process) regardless of
the parameter Scope
(task or Workflow).
Otherwise, the system
tries to access a
variable that does not
exist or returns the old
value (if the variable is
already defined in the
object).

SET VARIABLE

Enters the value in a static


Variable object. Existing
values are overwritten.

-) The variable name


Specify the variable name
without a leading &. The
"Preconditions" report also
shows the name without &. If it
is accessed in the object, the &
character is used.

No

-) Value (optional)
-) Does it affect the task or the
Workflow?

-) The name of the Variable


object

No

-) Key
If the Key begins with the &
character, use this character
twice.
-) Column
Possible values: 0 to 5
"0" indicates that the specified
value is written to value column
1 and all other columns are
reset.
-) Value

SKIP TASK

Skips the task without


checking any other
conditions.

-) The task's status text


(optional)
The status text is truncated in
the Detail Window if this
parameter exceeds the
maximum number of 32
characters. The report displays
the text in its full length.

Conditions
Name of the
condition

Description

Parameters

Yes

Automation Engine

CHECK
ACTIVITIES

Checks the number of


times that a task is shown
in the Activity Window with
a particular status or status
area.

823

-) The alias or object name


-) Corresponds to "greater", "less", "equal"
or "not equal"
-) The number of object executions
-) Status
You can only set states in which the task
has not yet ended or aborted (such as
active, blocking, waiting and stop
conditions). End conditions are not
available.
l
l

ANY_ACTIVE - The task is active.


ANY_BLOCKED - The task
blocks.
(System-Rckgabewert: 1560,
1898)
ANY_BLOCKED_OR_STOPPED
- The task has been stopped or it
blocks (system return codes: 1560,
1561, 1562, 1563, 1564, 1898)
ANY_RUNNING - The task is
active and not in a waiting
condition
ANY_STOPPED - The task has
been stopped (system return
codes: 1561, 1562, 1563, 1564)
ANY_WAITING - The task is in a
waiting condition.
WAITING_AGENT - The task is
waiting for an agent (system return
code: 1696)
WAITING_AGENT_OR_
AGENTGROUP - The task is
waiting for an agent or an agent of
an AgentGroup (system return
codes: 1686, 1687, 1688, 1696)
WAITING_AGENTGROUP - The
task is waiting for an agent of an
AgentGroup (system return codes:
1686, 1687, 1688)
WAITING_EXTERNAL - The task
is waiting for an external
dependency (system return code:
1690)
WAITING_GROUP - The task is
waiting for a Group to start (system
return code: 1710)
WAITING_QUEUE - The task is
waiting for a Queu e object (system
return code: 1684)
WAITING_SYNC - The task is in a
waiting condition because of Sync
conditions (system return code:
1697)

824

Chapter3 Objects

CHECK
CONNECTION

Checks whether a certain


agent is available.
In SAP and Database
Agents you can also define
a Connection object.
This condition has the
same function as the
script element SYS_
HOST_ALIVE.

CHECK FILE

Checks whether a
particular file exists.

-) Agent
-) Connection object (optional)
Note that you must select the empty
value in the combo box when you do
not want to define a Connection
object. The default value
<CONNECTION> is not valid.

-) Agent
The value *OWN indicates that the task's
agent is used (the source agent in
FileTransfers). Only supported in Jobs
and FileTransfers.
Attention: Only the OS agent can
make a file check. An error will occur if
the task is a SAP Job and you select
*OWN for the Agent.
-) Path and file name
-)"Exists" or "Does not exist"

CHECK HISTORY

Checks whether an object


ended with a particular
status in a particular time
span.
The time span must be
specified in days, hours and
minutes. It ranges from the
current time to the past.
This action cannot be
used in the statistics of
previous UC4 versions.

-) Alias or object name


-) Status
-) Days
-) The time in the format HH:MM

Automation Engine

CHECK PROCESS

Checks whether a
particular process runs on a
computer.
This is only possible
with Windows and
UNIX platforms.

825

-) Process: PID(process ID) or the name


of the process.
You can also specify a part of the process
name with or without wildcard characters
(*). The system searches within the
process name even if you do not use a
wildcard character within a string.
-) Status
"running" or "not running"
-) Agent
UNIX or Windows Agent
-) Login object
The value *OWN for the agent or the Login
object indicates that the task's attributes
are used (only supported in FileTransfers
and Jobs). In FileTransfers, the source's
values are retrieved.

CURRENT QUEUE

Checks the Queue in which


the task runs.

-) The name of the Queue object

CURRENT TIME

Checks whether a certain


point in time lies before or
after the current (physical)
point in time (converted to
the TimeZone that has been
used to start this task).

-) "Before" or "After"

TIME SINCE
ACTIVATION

Checks the time that has


past since the task has
been activated.

-) "Less than" or "More than"

USER DEFINED

Compares two values of


your choice with each
other.

-) Value 1 (script literal, predefined


variables)

-) Reference time in the format HH:MM

-) Duration in the format HH:MM

-) Operator:'>', '>=', '=', '<','<=' or '<>'


-) Value 2 (script literal, predefined
variables)
Only the predefined variables whose
values are available at the time that
they are accessed are resolved.
Variables can be used for system,
object and Variable object values.

Dependencies tab

The Dependencies tab can be used to set the latest starting or ending time of Workflow tabs.
You can also define dependencies depending on the results of preceding tasks. The Else section
serves to define the action that should take place if one or all required states or the specified
point in time of a task or Workflow could not be met.

826

Chapter3 Objects

For example:
The task that shown above is only executed if the predecessor MM.FILE.INPUT returns the status
OK. Due to the fact that a group is concerned, only the selections that finish before 8:00pm on their
activation day according to their estimated runtimes will start. The defined Workflow order is no
longer kept as registered. Tasks that have not finished by 8:00pm are skipped.

Description
Field/Control

Description

At the latest

By activating this check box you can specify the latest starting time or
the latest ending time of a task.

Start
Current Date + ... Day
(s)

Number of days starting on the real date(= top Workflow's generation


time).
Examples:
0 days = on the day of the real date
2 days = two days after the real date
Allowed values: 0 - 99

Time

Time of the latest starting time.


If a task should be started but the specified latest starting time is
overdue, it is not executed. It ends with the status "ENDED_
TIMEOUT". The handling that is specified in the Else section becomes
effective.

End

Automation Engine

Current Date + ... Day


(s)

827

Number of days starting on the real date.


Examples:
0 days = on the day of the real date
2 days = two days after the real date
Allowed values: 0 - 99

Time

Time for the latest ending time.


If you start a task, the presumed ending time is calculated on the basis
of the estimated runtime (ERT). If this calculated time is later than the
specified latest ending time, the task is not executed. It ends with the
status ENDED_TIMEOUT. The handling as that is specified in the
Else section becomes effective.
There is a special feature for Groups in a Workflow. With a latest
ending time being specified, only those tasks of a Group are started
that are expected to end by the determined ending time. The estimated
runtime of the respective task serves for calculating the ending time.
This can change the order of the Workflow as tasks whose processing
that takes too long are skipped. Shorter tasks of a Group are likely to
run earlier.

TimeZone

TimeZone that should be used.

All states have to


match

The task is only executed if all predecessors end with the determined
status (AND Link).

At least 1 status has


to match

The task is only executed if at least one predecessor ends as defined


(OR Link).

Table

The predecessors of the task are listed with their expected end status.

Name

The name of a predecessor is automatically shown.

Status

Selection list for the expected end status which the specified
predecessor must have reached.
The condition that is specified here is met if the task's predecessor
reaches the specified end status. The conditions are either calculated
by the System Return Codes of Executable Objects or User Return
Codes of Executable Objects.
If the predecessor is an external dependency, the states ENDED_
INACTIVE, ENDED_OK and ENDED_SKIPPED are available for
selection.
Note that the status of an inactive preceding Workflow task is also
analyzed.

Else

In this section you can specify a possible reaction to the case that one
or all of the defined conditions do not occur. This applies to conditions
set for latest starting or ending times as well as to the expected states
of predecessors.

Skip

The task is skipped.


Note that the Execute option (see below) is ignored if the task is
inactive and the setting "Skip" has been selected. No alarm is sent.

828

Chapter3 Objects

Block

The Workflow blocks at the preceding task.


This does not apply to tasks that run parallel within the Workflow, their
processing continues. The Workflow as a whole does not block until
they have been executed. If there are no parallel running tasks, the task
and the Workflow block immediately.

Block + Abort Signal

The Workflow blocks at the preceding task.


This does not apply to tasks that run parallel within the Workflow, their
processing continues. The Workflow as a whole does not block until
they have been executed. If there are no parallel running tasks, the task
and the Workflow block immediately.
If a superordinate Workflow (parent) is available, a signal is sent to it
that indicates an abnormal end. The superordinate Workflow then
considers this blocked Workflow as canceled. Without this signal being
sent, the Workflow (although being blocked) would be considered
active by the superordinate Workflow because processing has not yet
ended. All successors are in the status "Waiting for predecessor" then,
which includes a standstill of this Workflow branch.

Abort

The task and the Workflow itself are canceled.

Execute

Activate this check box if you want to specify an object that should be
executed when a defined condition does not occur.
Enter the name of the object or select it directly from a small Explorer
window (refer to the three dots to call it).

Display in the Workflow and its Monitor


The tooltips (properties) of the tasks in the Workflow display the usage of the Dependencies tab
with a W character.

Variables & Prompts Tab

The Variables & Prompts tab can be used to change the values of object and PromptSet
variables of Workflow tasks. In doing so, you can activate Workflow tasks with particular
values.

Automation Engine

829

This tab is structured in a similar way to the Variables & Prompts tab of objects. PromptSet objects
and object variables that are assigned to the object are listed and their values can be modified as
necessary. Modifications only apply to the Workflow tab and do not affect other executions. To get
the original values back again, remove the object from the Workflow and add it again.
The nodes "Parent PromptSets" and "Parent Values" provide an overview of the Workflow's
PromptSet objects and object variables. These values are displayed but cannot be changed.
To adjust the task's PromptSet values, you directly modify the PromptSet element.
When you want to use variables in the value as well, you click on the blue text that displays next to
the elements. The effect is that the PromptSet elements change into a gray text field that bears the
name of the related PromptSet variable. In this specific text field, you can enter the predefined
variable and the object or PromptSet variables of the Workflow (parent) with a leading &.
You can select predefined variables by using a dialog that opens when you click the
button. Note
that this button is only active when the text cursor is positioned within a gray text field.
To change the PromptSet element back to its original view, you click the blue text again. By doing
so, your entries will be deleted.
For example:
Variable names of one of the Workflow's PromptSet elements include: &PARENT#
Variable name of one of the Workflow task's PromptSet elements: &CHILD#
To pass the Workflow values on to the task, click on the blue text of the PromptSet element with the
variable &CHILD# and enter &PARENT in the text field. Examples include:
- &textfield1#
- text_&textfield1#
- &textfield1#_text
- &date1#_&date2#

830

Chapter3 Objects

To show the Variable names and values of the Workflow's PromptSet elements, select the
menu item "Parent PromptSets" and click on the text next to it. The Variable name is shown on
the left and the corresponding value is shown next to it.
You can also use predefined variables as values for object and PromptSet variables. To use
predefined variables as values of PromptSet elements, click on the element text. You can open
the dialog for Variable selection via the button at the right lower edge.
In this tab, you cannot add new PromptSet elements and object variables.
Note that the prompts of objects that have been activated through the Else conditions in the
Workflow properties are not displayed (for example: Dependencies tab - Else - Execute). The
same applies if EXECUTE OBJECTaction is used in the Preconditions and Postconditions
tab.

General options for the PromptSets of a Workflow task


By default, the PromptSets of Workflow tasks do not appear. When your start a Workflow, only its
own PromptSets will be displayed. The PromptSet values that are specified for the individual tasks
(default values) are used. No user input is required.
To change this behavior, you switch to the General tab. In "Task Prompts", you will see two
different options which you can use to manipulate the PromptSet behavior of the related Workflow
task.
Restarting a Workflow has the effect that the PromptSet dialog of this Workflow displays the
values of its last run. The PromptSet dialogs of the Workflow's tasks display the default values
that have been specified in the properties or the object definitions.
Note that both options are grayed out if no PromptSet objects are assigned to the task.
Option

Description

Show Prompts of task

Calls the PromptSets of the


particular Workflow task.
The point in time depends on
the task's generation time or
the option Resolve Prompt
values on generating
Workflow (see table below).

Resolve Prompt values on generating Workflow

The PromptSets of the


Workflow task are resolved
when the Workflow is
generated. This option
overrides the object setting
"Generate at runtime".

The PromptSet input dialog is called when PromptSets are resolved provided that the option Show
Prompts of task is activated. Otherwise, the PromptSet variables are created by using the
specified values (default values). If predefined variables are used within PromptSet values, they are
replaced by the corresponding value when they are resolved.

Automation Engine

831

Task PromptSets that should be called when the Workflow is generated are displayed after the
Workflow's PromptSets (if available) in the particular order in which the tasks are available in the
Workflow. In this case, you cannot return to previously confirmed Prompt dialogs. Canceling a
PromptSet dialog has the effect that the complete Workflow's generation process is canceled.
The following table lists the various PromptSet behaviors of Workflow tasks depending on the
above options and the setting "Generate at runtime".
Workflow properties
Show Prompts of task

Resolve Prompt values on


generating Workflow

Object - Generate at
runtime

Beha
vior

The
task's
Promp
tSets
are
not
displa
yed.
Promp
tSet
values
are
resolv
ed
when
the
Workfl
ow is
gener
ated.
The
task's
Promp
tSets
are
not
displa
yed.
Promp
tSet
values
are
resolv
ed
when
the
Workfl
ow
starts.

832

Chapter3 Objects

The
task's
Promp
tSets
are
displa
yed
when
the
Workfl
ow is
gener
ated.
Promp
tSets
are
only
displa
yed
when
the
Workfl
ow
task
starts.
The
task's
Promp
tSets
are
not
displa
yed.
Promp
tSet
values
are
resolv
ed
when
the
Workfl
ow is
gener
ated.

Automation Engine

833

The
task's
Promp
tSets
are
not
displa
yed.
Promp
tSet
values
are
resolv
ed
when
the
Workfl
ow is
gener
ated.
The
task's
Promp
tSets
are
displa
yed
when
the
Workfl
ow is
gener
ated.
The
task's
Promp
tSets
are
displa
yed
when
the
Workfl
ow is
gener
ated.

See also:
Variables & Prompts tab

834

Chapter3 Objects

Calendar Tab

The Calendar tab can be used to specify Calendar conditions for a task. This task is only
executed if the specified conditions apply.
This tab is also available for external dependencies.
A task that is not processed because of the specified Calendar conditions obtains the status
ENDED_INACTIVE - Inactive today because of Calendar.

For example:
The task that is shown above is only executed if the Workflow's activation date has been specified
in the Calendar FIRM.CALENDAR using the keyword ULTIMO at the Workflow's activation time.

Description
Field/Control

Description

Calendar

By activating this checkbox, you can assign a Calendar and Calendar


keywords.
The following settings are available if this checkbox is active:

Execute if one
condition matches

The task is executed if the logical date complies with one of the
specified Calendar conditions.

Execute if no condition The task is executed if the logical date does not comply with any of the
matches
specified Calendar conditions.
Execute if all
conditions match

The task is executed if the logical date complies with all specified
Calendar conditions.

Automation Engine

Use calendar
definition of ext.
dependency

835

This option is only available for external dependencies. This selection


field is only displayed if the external dependency refers to a task of a
different Workflow.
With this option being selected, the Calendar settings of the external
task's Workflow properties are used.

Table

In this table, you can select one or more Calendars and Calendar
keywords.

Calendar

Selection field for the Calendar.

Keyword

Selection field for the Calendar keyword. It must be selected from the
Calendar's existing keywords.

Display in the Workflow and its Monitor


The tooltips (properties) of theWorkflow tasks display the usage of the Dependencies tab with a C
character

Runtime tab

The Runtime tab can be used to monitor a task's runtime in a Workflow. You can monitor the
maximum and/or minimum runtime of this task and to react to deviations.
The possible settings largely correspond to those of the object's Runtime tab.

For example:
In the example that is shown above, a maximum runtime of two hours has been set for this
Workflow task. If this time is exceeded, the task is canceled and the task DAYSHIFT is activated.

836

Chapter3 Objects

The minimum runtime is not monitored. Runtime monitoring settings that are defined in the task
itself are ignored.

Description
Field/Control

Description

Use MRT/SRT
settings of the task

Settings for runtime monitoring are taken from the object.


If this check box is not activated, you can define the task's runtimemonitoring settings in this window. The task settings that are specified
in the Workflow override the ones that are defined in the object itself.

Maximum runtime
(MRT)
None

The maximum runtime is not checked.

Fixed value

The maximum runtime is checked.


The time is specified as a fixed value in the format
hours:minutes:seconds. An action can be specified for the case that
the maximum runtime is exceeded (refer to Else section).

ERT

The maximum runtime is monitored.


The task's estimated runtime (ERT) is used as the maximum runtime.
Refer to the Else section in order to specify the action that should be
taken if the maximum runtime is exceeded.

+ ... %

If you select the ERT as the maximum runtime, you can also specify a
correction value in percent. The calculated value is then added to the
estimated runtime.

Curr. date + day(s)

The maximum runtime is monitored.

Time

A time is determined until which the task must have finished. The
number of days start on the real date (= top Workflow's generation
time).
Examples:
0 days = on the day of the real date
2 days = two days after the real date
Allowed values: 0 - 99
Refer to the Else section in order to specify the action that should be
taken if the maximum runtime is exceeded.

TimeZone

TimeZone that should be used.

Minimum Runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The minimum runtime is used as a fixed value in the format
hours:minutes:seconds. Refer to the Else section in order to specify
the action that should be taken if the minimum runtime is exceeded.

Automation Engine

ERT

837

The minimum runtime is monitored.


The estimated runtime of the task is used as its minimum runtime.
Refer to the Else section in order to specify the action that should be
taken if the actual runtime is shorter than the minimum runtime.

- ... %

If you select the ERT as the minimum runtime, you can additionally
specify a correction value in percent. The calculated value is then
deducted from the estimated runtime.

Else
Cancel/Quit

Activating this checkbox has the effect that the task is canceled or
ended if its runtime is above the expected value. Only available if the
maximum runtime is monitored.

Execute

Object that should start if the runtime is above or below the expected
value.
Enter the name of the object or select it directly from a small UC4
Explorer (click the "..." button to call it).

Display in the Workflow and its Monitor


The tooltips (properties) of the Workflow tasks display the usage of the Runtime tab with a T
character.

See also:
Runtime Evaluation
Runtime Monitoring

Postconditions tab

You use this tab to specify conditions that will be checked after a task has been processed.
Whenever a condition applies, the corresponding actions are executed.
As of UC4 version 9.00A, this tab replaces the Result tab, but the functions are still the same.
There are now even more evaluations and actions that you can run after a task has been
processed.
An automatic conversion process takes place when you update the database or load the Transport
Case of a previous version. The conditions and actions of the Post-Conditions tab are set in a way
that they show the same functionality as the Result tab of version 8.00A or earlier versions.
Object imports of previous versions (XML) must be converted manually by starting the utility
UC4.DB Load and selecting the ConvertResult.txt file which is available in the folder
CD:\DB\GENERAL\9.00A.
You cannot modify this tab by using the script element MODIFY_TASK.

838

Chapter3 Objects

This tab is similar to the Preconditions tab which is also available in the workflow properties.
However, the available conditions and actions and the evaluation time differ from each other. The
Postconditions tab is checked after the task has ended.

Defining Conditions and Actions


The window includes two sections. The right section lists the conditions and actions (depending on
the selected category). The left section is empty at the beginning, but you can select and drag
conditions and actions of your choice and drop them into this section.
You can also create actions without a corresponding condition. In this case, the action is always
executed.
You can copy condition and action blocks including their sub-blocks and all parameters that
include values, and insert them in the Preconditions tab. Use the shortcuts CTRL + C, CTRL +
V for this purpose, or click the

button in order to open the corresponding menu.

You can insert any number of conditions and actions within each condition block. The nesting
depth depends on your selections.
After you have added blocks, you can specify the required parameters that determine the behavior
and values of the conditions and actions. Click the corresponding parameter names and complete
the fields in the displayed dialog window.
You can also usepredefined variablesas parameter values. To open the Variable picker, you click
the element name (= blue text left to the element) in the parameter dialog. The relevant input field
changes to a gray text field and the
open the Variable picker dialog.

button at the lower right edge becomes active. Click it to

Automation Engine
There is a menu for each block that can be opened by clicking the
are available:

839

symbol. The following options

Always - Checks or executes the condition/action with each evaluation. Blocks are flagged

with a
symbol.
Once - The block is processed once and then ignored in all other evaluation cycles. The

l
l

symbol at the upper right edge changes to .


Deactivate - The block is always skipped and is grayed out. The same is true for all the
block's subordinate actions and conditions.
Cut/Copy/Remove - The block is moved, duplicated or deleted.
Add Else block - Adds an else condition (only for conditions).

The conditions and actions of the Postconditions tab are only checked once. Therefore, the
Once function is only available if the task is restarted by using the RESTART TASK action.
"Once" blocks are not re-evaluated in restarted tasks.
The predefined variable &$RESTART_COUNT# and the script element SYS_ACT_RESTART_
COUNT retrieve the number of times that a workflow task has already been restarted using the
script statement RESTART TASK. You can use this predefined variable in combination with the
condition USER DEFINED if you want to process a maximum of three restarts.
You can also use object and PromptSet variables within the Postconditions tab. Make sure that
the variables are available when you call the relevant conditions and/or actions. Keep the
following in mind when you set the variables by using one or several predecessors in the
workflow:
l

When "Generate at runtime" is not set in the task that includes the definitions for the
Postconditions tab, "Generate at runtime" must not be set in the predecessors that define the
variable.
You cannot set variables by using the Post-Process tab (:PSET) of the direct predecessor
when the option "Generate at runtime" is not set in the task that includes the definitions for
the Postconditons tab.

Evaluation
This tab's conditions are checked and actions are executed (evaluation process) after the Output
Scan and Post-Process are executed. As opposed to Preconditions, Postconditions take place
once; it is irrelevant whether a final action has been reached. The evaluation ends when a final
action has been reached.
During the evaluation process the task obtains the status "Waiting for Postconditions".
Conditions like all other properties can be modified at runtime provided that the task has not yet
ended.
The time that is required to process the condition blocks does not affect the individual task's
runtime monitoring; it affects the workflow's runtime monitoring.
Note that the workflow's object variables are not passed on to the Post Process tab once more.
This means that the values that were originally passed on to the workflow task are used for the
conditions and actions of the Post Process tab even if the workflow's object variables have been
changed in the meantime.

840

Chapter3 Objects

Actions
Name of the
Action

Description

Parameters

Final
Action

BLOCK

Sets task to a blocked


status.

-) The task's status text


(optional).

Yes

The status text is truncated


in the Detail Window if this
parameter exceeds the
maximum number of 32
characters. The report
displays the text in its full
length.
CANCEL
PROCESS FLOW

Cancels the workflow.

-) The workflow that should


be canceled.
Possible values: "*OWN",
"Top" or "Parent"

No

*OWN - Workflow in which


the task runs.
Parent - Superordinate
workflow of *OWN.
Top - Top workflow.
-) Also cancel workflow's
tasks?
Possible values "including"
or "excluding."
CLEAR
VARIABLE

Deletes the entry of a static


Variable object.

-) The name of the Variable


object.
-) Key
If the Key begins with the &
character, use this
character twice.

No

Automation Engine

EXECUTE
OBJECT

Starts any object and does


not check its status.
The UC_CAUSE ReadBuffers include
values and can be read in
this object's script.

-) The object name

No

-) Alias(optional)
Name to be used for the
task that should start
instead of the object name
in the Activity Window and
the statistics.
-) Parameter... (optional)
Opens a dialog in which you
can modify the PromptSet
values of the object that
should start. Can only be
called if at least one
PromptSet object has been
assigned to the object.
-) Wait for task or not?
The started object always
inherits all variables of the
workflow task.

MODIFY STATUS

Modifies the task's return


code.

-) Return code
-) Status text (optional)
The status text is truncated
in the Detail Window if this
parameter exceeds the
maximum number of 32
characters. The report
displays the text in its full
length.

PUBLISHVALUE

Publishes a value via an


object variable. The
specified object variable is
created if it does not yet
exist. Otherwise, a value is
assigned to it. Then the
value is provided to the
subsequent tasks.
This action has the same
function as the SET
VALUE action. The only
difference is that the
object variable is always
passed on to the
workflow.

-) Value
-) The variable name
The Variable name must be
specified without a leading
& character. In the
"Postconditions" report it is
also written in the same
way. In the object, it will be
accessed with an &
character.

No

841

842

Chapter3 Objects

RESTART TASK

Executes the task's restart.

Yes

Note that the conditions


and actions of the
Preconditions tab will
be skipped if the task is
restarted using this
action.
ROLLBACK

Starts the rollback of the


task, the task's workflow or
the top workflow. This action
affects all subordinate tasks.
You can define the Rollback
object in the Rollback tab .

SET VALUE

Defines or assigns values to


an object variable.
The setting "Generate at
runtime" must be
activated in the particular
object in order to use this
object variable (except
for Post-Process)
regardless of the
parameter Scope (task or
workflow). Otherwise,
the system tries to
access a variable that
does not exist or returns
the old value (if the
variable is already
defined in the object).

SET VARIABLE

Enters the value in a static


Variable object. Existing
values are overwritten.

-) The task that should be


rolled back.
Allowed values: "This task",
"Parent Workflow" or "Top
Workflow"

Yes

-) The Variable name


Specify the variable name
without a leading &. The
Postconditions report also
shows the name without &.
If it is accessed in the
object, the & character is
used.

No

-) Value (optional)
-) Does it affect the task or
the workflow?

-) The name of the Variable


object
-) Key
If the Key begins with the &
character, use this
character twice.
-) Column
Possible values: 0 to 5
"0" indicates that the
specified value is written to
value column 1 and all other
columns are reset.
-) Value

No

Automation Engine

Conditions
Name of the
Condition

Description

Parameters

843

844

Chapter3 Objects

CHECK
ACTIVITIES

Checks the number of times


that a task is shown in the
Activity Window with a
particular status or status area.

-) The alias or object name


-) Corresponds to "greater", "less",
"equal" or "not equal"
-) The number of object executions
-) Status
You can only set states in which the
task has not yet ended or aborted (such
as active, blocking, waiting and stop
conditions). End conditions are not
available.
l

ANY_ACTIVE - The task is


active.
ANY_BLOCKED - The task
blocks.
(System return code: 1560,
1898)
ANY_BLOCKED_OR_
STOPPED - The task has been
stopped or it blocks (system
return codes: 1560, 1561, 1562,
1563, 1564, 1898)
ANY_RUNNING - The task is
active and not in a waiting
condition
ANY_STOPPED - The task has
been stopped (system return
codes: 1561, 1562, 1563, 1564)
ANY_WAITING - The task is in
a waiting condition.
WAITING_AGENT - The task is
waiting for an agent (system
return code: 1696)
WAITING_AGENT_OR_
AGENTGROUP - The task is
waiting for an agent or an agent
of an AgentGroup (system return
codes: 1686, 1687, 1688, 1696)
WAITING_AGENTGROUP The task is waiting for an agent
of an AgentGroup (system return
codes: 1686, 1687, 1688)
WAITING_EXTERNAL - The
task is waiting for an external
dependency (system return
code: 1690)
WAITING_GROUP - The task is
waiting for a Group to start
(system return code: 1710)
WAITING_QUEUE - The task is
waiting for a Queue object
(system return code: 1684)
WAITING_SYNC - The task is
in a waiting condition because of
Sync conditions (system return
code: 1697)

Automation Engine

CHECK
CONNECTION

Checks whether a certain


agent is available.
In SAP and Database Agents
you can also define a
Connection object.
This condition has the
same function as the script
element SYS_HOST_
ALIVE.

CHECK FILE

Checks whether a particular


file exists.

-) Agent
-) Connection object (optional)
Note that you must select the empty
value in the combo box when you do
not want to define a Connection
object. The default value
<CONNECTION> is not valid.

-) Agent
The value *OWN indicates that the
task's agent is used (the source agent
in file transfers). Only supported in jobs
and file transfers.
Attention: Only the OS agent can
make a file check. An error will
occur if the task is a SAP job and
you select *OWN for the sgent.
-) Path and file name
-)"Exists" or "Does not exist"

CHECK HISTORY

Checks whether an object has


ended with a particular status
in a particular time span.
The time span must be
specified in days, hours and
minutes. It ranges from the
current time to the past.
This action cannot be used
in the statistics of previous
UC4 versions.

845

-) The alias or object name


-) Status
-) Days
-) Time in the format HH:MM

846

Chapter3 Objects

CHECK
PROCESS

Checks whether a particular


process runs on a computer.
Only possible with
Windows and UNIX
platforms.

-) Process: PID(process ID) or the


name of the process.
You can also specify a part of the
process name with or without wildcard
characters (*). The system searches
within the process name even if you do
not use a wildcard character within a
string.
-) Status
"running" or "not running"
-) Agent
UNIX or Windows agent
-) Login object
The value *OWN for the agent or the
Login object indicates that the task's
attributes are used (only supported in
file transfers and jobs). In file transfers,
the source's values are retrieved.

CURRENT TIME

RETURNCODE

Checks whether a certain point


in time lies before or after the
current (physical) point in time
(converted to the time zone
that has been used to start this
task).

-) "Before" or "After"

Checks the task's return code.

-) Operator:'>', '>=', '=', '<','<=' or '<>'

-) Time in the format HH:MM:SS

-) Return code for the comparison


STATUS

Checks the task's end status.

-) Status (ENDED* - such as ENDED_


OK)

TIME SINCE
ACTIVATION

Checks the time that has


passed since the task has
been activated.

-) "Less than" or "More than"

USER DEFINED

Compares two values of your


choice with each other.

-) Value 1 (script literal, predefined


variables)

-) Duration in the format HH:MM

-) Operator:'>', '>=', '=', '<','<=' or '<>'


-) Value 2 (script literal, predefined
variables)
Only the predefined variables whose
values are available at the time that
they are accessed are resolved.
Variables can be used for system,
object and Variable object values.

Automation Engine

847

Solution Tab

This tab is only available when the task is an RA job. It has the name of the related RA solution and
can be used to change the specific attributes and parameters.
The name of the tab complies with the name of the solution (such as FTP). Its content complies
with the specific RA tab of the job (for RA FTP Jobs, this will be the FTP tab).
You can use this tab to set or change the specific settings / attributes / parameters of RA jobs
especially for their run within the workflow.
Similar to the tab that is available for the object definition, the workflow properties also include a
traffic-light symbol which indicates whether the job's agent is available. This is required to
retrieve values directly from the RA agent's remote system.
You can change one or several values by using this tab and then store the workflow. Note that
subsequent RA value changes that you might make directly in the Job object will no longer
affect the properties of the task as part of the workflow. This means that the RA values in the
workflow properties overrule the settings in the Job object as long as the task runs within this
workflow. It is irrelevant whether you have only changed one value in the workflow properties or
all of them.
Note that deleting values, entries or parameters in this tab has no effect. Any value that you
delete here will still be used in the execution.

External Dependency Tab

This tab is available for external dependencies and can be used to retrieve the external task's
end status.

848

Chapter3 Objects

For example:
The above example checks whether the external task ended with the status ENDED_OK since the
last time the workflow has been executed. If not, or if it has not been executed in the specified
period of time, a waiting time of 1 hour is defined. The workflow aborts if the expected status could
still not be achieved after this timeout period.

Description
Field/Control element

Description

Ext. task [(Parent)]

The name of the external task. If it runs in a workflow, the Workflow


name is additionally shown in parentheses.

Automation Engine

Alias

849

An alias for the external dependency.


As opposed to other tasks, an alias of an external dependency
serves as a filter. This means that when you assign an alias to an
external dependency, the external task must also show this alias.
Otherwise, the external dependency cannot be fulfilled.
For example:You define the alias ALIAS01 for an external
dependency that points to the task JOB01. Therefore, the external
dependency will only be fulfilled when the task JOB01 starts with
the alias ALIAS01.
Maximum length: 200 characters
Allowed characters: A-Z, 0-9, $, @, _, . and #
Predefined variables, placeholders for Variable objects and
object variables can also be used. The variables always refer to
the workflow that includes the external dependency. Click
order to open the Variable picker dialog.

in

In the UserInterface settings, you can define if and when the


dialog should open in which you define an alias name when you
add a workflow task by using the drag & drop function.
Parent Alias

Alias for the external task's workflow.


This field is only available if the external task stems from a different
workflow. Proceed as follows in order to insert a workflow task into
a different workflow as an external dependency: Drag the relevant
workflow task by keeping the ALT button pressed and drop it in a
different workflow.
The same limitations and rules apply as for the Alias field.
When the external dependency points to a task that runs within a
workflow, the system additionally limits its verification to the
alias and the parent alias (if specified). This means that when an
alias and/or parent alias is defined in the properties of the
external dependency, these fields are compared with the alias of
the external task or the alias of its workflow. The external
dependency can only be fulfilled when they comply with each
other.

850

Chapter3 Objects

Only valid, when...

This setting can be used instead of the lead time satisfaction. It


checks whether the external task has been activated on the same
logical date as the workflow. Executions that have already ended
and executions that are still active are considered. They are
compared with the external task's activation date.
If the logical dates match, the external task's end status is
compared with the expected status and the Else condition is applied
if needed.
The dependency is ignored and obtains the status ENDED_
INACTIVE if the external task has not run or is not running on the
same logical date.
For example:
The workflow "MM.FRIDAY" is processed on March 24. It obtains
an external dependency to the job "GET.FILES". This job has
started a short time before the workflow has started. Therefore, the
external dependency is considered.
The external dependency ends with status ENDED_INACTIVE if
the job's last statistical record has been written on March 23.
The external tasks activation date is only checked if the
external dependency's succeeding task is allowed to start.

Expected status

The status that is expected for the external task's end of execution.
If no status is selected, the system only checks whether the
task has ended within the lead time satisfaction. Its status (such
as ENDED_OK, ENDED_CANCEL) is irrelevant in this case.
The following options are also available for the expected statuses of
external dependencies:
l

ANY_OK_OR_UNBLOCKED - The external task ends


without an error or the blocking condition of the workflow that
includes the external task has been removed.

ENDED_OK_OR_UNBLOCKED - The external task ends


with ENDED_OK(return code 0) or the blocking condition of
the workflow that includes the external task has been
removed.

If one of these special status options is set, the external


dependency will also be fulfilled when the external task runs within a
workflow whose blocking condition is removed subsequently and
manually.
Note that the information about removing a blocking condition
only refers to the workflow of the external task. This condition is
irrelevant if the external task does not run in a workflow.
Lead Time Satisfaction

Details about the lead time satisfaction are available in a separate


document.

Automation Engine

Since last Workflow


execution

851

The lead time commences at the end of the workflow's last


execution. The status of this last execution is irrelevant in this case.
If no previous workflow execution is available, the workflow
uses its own start time as the beginning point of its lead time
satisfaction. This happens in the following situations:
l
l
l

The statistical records have been removed using utilities.


The Workflow object has newly been created.
The Workflow object has been duplicated.

The first item requires that database reorganization intervals are


considered. For example, a workflow that runs once a week
cannot find any statistical records if these records are deleted
every day.
Within ... before
Workflow start

The lead time satisfaction commences before the workflow starts.


The length of this period depends on the value that has been
specified. There is a limit if the end of the last workflow execution
also lies within this period.

After Workflow start

The lead time satisfaction commences when the workflow starts.

Else

This area serves to define a reaction to the external task that has
never achieved the expected status in lead time satisfaction or if it
has not ended.

Wait

The time specified in the area Timeout is the waiting time. After this
period of time, the external task is rechecked.
In the following constellations, the system does not wait for the
timeout:
1) The UC4 Variable UC_SYSTEM_SETTINGS includes the entry
EXTERNAL_CHECK_INTERVAL that the UC4 administrator can
use in order to define an interval in which the status of external
dependencies is checked.
2) An external task can also have several successors. Successor A
could be in a waiting condition and successor B is checking the
external task. If the check result is that the expected status has
been reached, the processing of successor A and B continues
(provided that all other predecessors have also ended).

Skip

The external dependency is skipped.

Workflow cancel

The workflow that contains the external dependency aborts.

Alarm

Activate this checkbox and determine the object that should be


executed in "Alarm object."

Timeout

Settings that are defined here are only considered if "Wait" has been
checked in the Else area.

852

Chapter3 Objects

Timeout after ...

Time span for waiting.


The value of "MIN_EVENT_INTERVAL" which is set by the
UC4 administrator in the UC4 Variable UC_SYSTEM_
SETTINGS also affects the time span. Because it defines the
minimum value, it is used if the timeout value lies below the
value that is specified in MIN_EVENT_INTERVAL.

Wait

The workflow's execution is in a waiting condition without limitation.


Manual action is needed.
Timeout is repeated in the intervals specified in timeout after... If
you have specified an Alarm object, it starts whenever a timeout
occurs.

Skip

The external dependency is skipped.

Workflow cancel

The workflow that contains the external dependency is aborted.

Alarm

Activate this checkbox and determine the object that should be


executed in "Alarm object."

Alarm object

Enter the name of the object that can be called by clicking on the
three dots, or select it in the UC4 Explorer.

Display in the Workflow and its Monitor


The tooltip of the external dependency in the workflow displays the object type "<XTRNL>".

See also:
External Workflow Dependencies
Lead Time Satisfaction for External Dependencies
Logic tab

IF Workflows
The object-specific Logic tab is only available in IF- and FOREACH-type Workflows and its
structure depends on the particular Workflow type. It can be used to define Workflows and the
dependencies and properties of their subordinate tasks.
The following description explains the Logic tab's specific structure in IF-type Workflows and
other specific characteristics of IF Workflows.
You determine the Workflow type when you create the object.
The Logic tab is similar to the Workflow tab which is only available in Standard-type
Workflows. All other tabs are the same for all Workflow types.
The tasks of IF Workflows have the same properties as the tasks of Standard Workflows. For a
more detailed description, see Object Properties.
For information on how to change this tab's view, refer to the description of the Workflow tab.

Automation Engine

853

General Information

IF Workflows process various tasks depending on the conditions that you have specified. The
START object includes the conditions that are defined in its properties. After the START box, you
see two parallel branches in which you can add any executable objects of your choice. These
branches are referred to as a True and False branches. It depends on the condition(s) that should be
fulfilled whether the True or the False branch will be processed. Both branches lead to the END
object.
The Logic tab's structure is predetermined and cannot be changed. This means that objects can
only be added to the True and Else lines and are arranged in series. You cannot create new
branches or draw individual lines. For this purpose and if you need more complex structures, you
can use Sub-Workflows.
IF Workflows can include any executable object except for Schedules and Cockpits and they
can also include other IF Workflows.
You cannot use external dependencies within IF Workflows.
The tasks of the branch that should run (True or False) will only be activated and processed when
the conditions have been evaluated. The tasks of the other branch are not processed. They appear
in white and obtain the status UNPROCESSED within the Workflow. No activities are created and
no RunID is assigned to the tasks that are not processed.

Defining IF Workflows

Defining Conditions
To define one or several conditions for an IF Workflow, open the START object's properties and
switch to the Condition tab. This is a specific tab which is only available in the START object of IF
Workflows.
You can open the properties either using the context menu or via the

symbol within the box.

854

Chapter3 Objects

The Earliest tabs in the START object and in the properties of all Workflow tasks are the same.

The Condition tab can be used to determine the IF Workflow's branch (True or False) that should
run plus the time at which it should run.
You can define various conditions and actions in this tab. They will be processed when the
Workflow starts before the subordinate tasks are processed. Conditions and actions can be
inserted in other condition blocks which allows any nesting depth of your choice.
The Condition tab is similar to the Preconditions and Postconditions tabs which are available in
the properties of all Workflow tasks. Different are the conditions, actions, the result and the
affected tasks.
To create an action or a condition, select it in the right window section and drag and drop it to the left
section. A dialog appears in which you can determine the relevant parameters and accordingly, the
behavior or the action or condition. Some of the parameters are required whereas others are
optional. You can also change them subsequently, just by clicking them.
The final action RUN PATHends the evaluation process and starts the True or False branch
depending on what you have specified.
Note that the Workflow will abort if the Condition tab does not include a final action.
You can even define actions that are not included in a condition which means that they will
always be processed.
This tab's execution process and the result are logged in the Workflow's activation report.
Actions
Name of the
action

Description

Parameters

Final
action

Automation Engine

CANCEL
PROCESS
FLOW

Cancels the Workflow.

-) The Workflow that should be


canceled.
Possible values: *OWN, Top or
Parent

Yes

*OWN - Workflow in which the


task runs.
Parent - Superordinate
ProcessFlow of *OWN.
Top - Top Workflow.
-) Also cancel Workflow tasks?
Possible values: Including or
Excluding
CLEAR
VARIABLE

Deletes the entry of a static


Variable object

-) The name of the Variable object

EXECUTE
OBJECT

Starts any object without


checking its status.

-) Object name

The UC_CAUSE ReadBuffers are


supplied with values and
can be read in this
object's script.

No

-) Key
If the Key starts with a &
character, you must use this
character twice.

-) Alias(optional)
The task's name that should be
used instead of the object name in
the Activity Window and the
Statistics.
Maximum length: 200 characters
Allowed characters: A-Z, 0-9, $,
@, _, . and #.
-) Parameter... (optional)
Opens a dialog in which you can
change the PromptSet values of
the object that should start. This
dialog is only available if at least
one PromptSet object is assigned
to the object.
-) Wait for the task's end?
The Workflow task's variables are
always passed on to the started
object.

No

855

856

Chapter3 Objects

RUNPATH

Starts the tasks of the True


or False branch.
Ends the evaluation process
of this tab's conditions and
actions immediately and
skips the tasks of the other
branch.

-) True / False
The specification of the branch
that should be processed.

Yes

-) Alias
The name that represents the True
branch in the Workflow tab. You
can use any value of your choice.

This action is only available


in the properties of IF
Workflow START objects.
SET VALUE

Defines an object variable or


assigns a value to it.
To use this object
variable, you must have
activated the option
Generate at runtime
(Post Process is
exempted) regardless of
the settings that are
defined in the parameter
scope of the task or the
Workflow.
Otherwise, the system
tries to access a nonexisting variable or
returns the old value (if
the variable is already
defined in the object).

SET
VARIABLE

Enters the value in a static


Variable object. Existing
values are overwritten.

-) Variable name
Indicate the variable name without
a leading & character. The
"Preconditions" report displays
this name without a & character
but in the object, it is accessed
with an & character.
-) Value (optional)
-) Scope: Task or Workflow.

-) The name of the Variable object


-) Key
If the Key starts with an &
character, you must use this
character twice.
-) Column
Possible values: 0 to 5
0 enters the specified value in the
value column 1 and the other
columns are reset.
-) Value

Conditions
Name of the
condition

Description

No

Parameters

No

Automation Engine

CHECK
ACTIVITIES

Checks how often a task is


available in the Activity Window
with a particular status or status
area.

857

-) Alias or object name.


-) Corresponds to "greater", "less",
"equal" or "not equal"
-) Number of object executions
-)Status
Only the states in which the task has
not yet ended or aborted (such as
active, blocking, waiting and stop
conditions.
l

ANY_ACTIVE - The task is


active.
ANY_BLOCKED - The task
blocks.
(System-Rckgabewert:
1560, 1898)
ANY_BLOCKED_OR_
STOPPED - The task has
been stopped or it blocks
(system return codes: 1560,
1561, 1562, 1563, 1564, 1898)
ANY_RUNNING - The task is
active and not in a waiting
condition
ANY_STOPPED - The task
has been stopped (system
return codes: 1561, 1562,
1563, 1564)
ANY_WAITING - The task is
in a waiting condition.
WAITING_AGENT - The task
is waiting for an agent (system
return code: 1696)
WAITING_AGENT_OR_
AGENTGROUP - The task is
waiting for an agent or an
agent of an AgentGroup
(system return codes: 1686,
1687, 1688, 1696)
WAITING_AGENTGROUP The task is waiting for an
agent of an AgentGroup
(system return codes: 1686,
1687, 1688)
WAITING_EXTERNAL - The
task is waiting for an external
dependency (system return
code: 1690)
WAITING_GROUP - The task
is waiting for a Group to start
(system return code: 1710)
WAITING_QUEUE - The task
is waiting for a Queu e object
(system return code: 1684)
WAITING_SYNC - The task
is in a waiting condition
because of Sync conditions
(system return code: 1697)

858

Chapter3 Objects

CHECK
CONNECTION

Checks whether a certain agent is


available.
In SAP and Database Agents you
can also define a Connection
object.
This condition has the same
function as the script element
SYS_HOST_ALIVE.

CHECK FILE

Checks if a particular file exists.

-) Agent
-) Connection object (optional)
Note that you must select the
empty value in the combo box
when you do not want to define a
Connection object. The default
value <CONNECTION> is not
valid.
-) Agent
If *OWN is specified, the task's
agent is used (in FileTransfers, this is
the source Agent). This setting is
only available for Jobs and
FileTransfers.
Note that only the OS agent can
check the file. An error occurs if
the task is an SAP Job and you
select *OWN for the Agent.
-) Path and file name
-)"Exists" or "Does not exist"

CHECK
HISTORY

Checks if an object ended with a


particular status in a particular
timespan.
Specify the timespan in days,
hours and minutes. It ranges from
the current time to the past.
This condition cannot be used
for the statistics of a previous
UC4 version.

-) Alias or object name.


-) Status
-) Days
-) Time in the format HH:MM

Automation Engine

CHECK
PROCESS

Checks whether a particular


process runs on a computer.
This is only possible with
Windows and UNIX platforms.

859

-) Process: PID(process ID) or the


name of the process.
You can also specify a part of the
process name with or without
wildcard characters (*). The system
searches within the process name
even if you do not use a wildcard
character within a string.
-) Status
"running" or "not running"
-) Agent
UNIX or Windows Agent
-) Login object
The value *OWN for the agent or the
Login object indicates that the task's
attributes are used (only supported in
FileTransfers and Jobs). In
FileTransfers, the source's values
are retrieved.
.

CURRENT TIME

USER DEFINED

Checks if a particular time takes


place before or after the current
(physical) time, converted to the
TimeZone that was used to start
this task.

-) "Before" or "After"

Compares two values of your


choice with each other.

-) Value 1 (script literal, predefined


Variables)

-) Reference time in the format


HH:MM

-) Operator:>, >=, =, <,<= or <>


-) Value 2 (script literal, predefined
Variables)
Only the predefined Variables
whose values are available at the
time they are accessed will be
resolved. Variables can be used
for system, object and Variable
object values.

Adding Tasks
To add a task to an IF Workflow, drag and drop one or several objects from the UC4 Explorer to the
relevant branch of the open IF Workflow (True or False).
Note that you cannot link tasks manually. Tasks will automatically be linked to each other when
they are added. Therefore, the Line Tool is not available in the Logic tab.

860

Chapter3 Objects

Deleting Tasks
Select the task that should be deleted in the True or Else branch and either open the context-menu
command Remove or hit the DEL key.
Note that the lines in IF Workflows are predetermined and cannot be deleted.

Moving Tasks
You can change the order in which the tasks are arranged as you like. You can even move tasks to
another branch.
Note that the tasks that are included in a branch can only be arranged in a serial order.

Processing IF Workflows

Modifying Active IF Workflows


The rules of modifying active Workflows also apply to IF- and FOREACH-type Workflows with the
following limitations:
l
l

In modification mode, you cannot add new tasks.


Tasks cannot be deleted or replaced.

Forecast
For Forecast calculations, the system uses the branch with the longer total processing duration.

Restart
In restarts, the system reevaluates the START object's conditions and actions. Therefore, it can
also happen that the other task branch will be processed depending on the conditions and
circumstances that apply. In other words, a restart shows the same behavior as a regular start.

ForEach Workflows
The object-specific Logic tab is only available in IF- and FOREACH-type Workflows and its
structure depends on the Workflow type that is used. It can be used to define Workflows and the
dependencies and properties of their subordinate tasks.
The following description explains the Logic tab's specific structure in ForEach-type Workflows
and other specific characteristics of ForEach Workflows.
You determine the Workflow type when you create the object.
The Logic tab is similar to the Workflow tab which is only available in Standard-type
Workflows. All other tabs are the same for all Workflow types.
The tasks of ForEach Workflows have the same properties as the tasks of Standard Workflows.
For a more detailed description, see Object Properties.
For information on how to adjust this tab's view, refer to the description of the Workflow tab.

Automation Engine

861

General Information

ForEach Workflows process certain tasks several times and therefore, they represent a loop. The
user must specify the number of loop iterations that will take place and the tasks that should be
repeated.
The Logic tab contains a predetermined loop construction to which you can add tasks. This
construction is composed of a START object in which you can define the loop and an END object
which will be processed when the loop has been ended. The tasks that should be repeated must be
assigned to the loop line (this is the line that runs from and to the START object).
ForEach Workflows can include any executable object except for Schedules and Cockpits and
they can also include other ForEach Workflows.
Note that in ForEach Workflows you can add tasks only to the loop line. They will automatically
be linked and arranged in a serial order. This order must be kept and you cannot draw lines
manually. For more complex structures, you can create subordinate Workflows.
You cannot use external dependencies within ForEach Workflows.
The tasks will only be processed when the loop condition has been evaluated. If the loop definition
does not result in a loop cycle, the END object is immediately processed. The tasks are skipped
and obtain the status UNPROCESSED within the Workflow. No activities are created in this case.
The content of the Workflow's Process tab is processed exactly once. The number of loop
iterations is irrelevant.

Defining ForEach Workflows

Defining Loop Conditions


To define loop conditions in ForEach Workflows, open the properties of the START object and
switch to the ForEach tab.
You can open the properties either using the context menu or via the

symbol within the box.

The Earliest tabs in the START object and in the properties of all Workflow tasks are the same.

862

Chapter3 Objects

The following settings and options are available in this tab:


Field / Option

Description

Source

Here you can select the source that should be used


for the number of loop iterations.

Variable object

The VARA object is used as the source.


The ForEach task chain is processed once or each
column entry of a Variable object.
If the column or Variable does not include an entry,
the START object obtains the status EMPTY. The
tasks are skipped and obtain the status
UNPROCESSED within the Workflow. This
includes that neither activities are created nor
RunIDs are assigned.
If the Variable cannot be accessed because its
agent is not available, the Workflow switches to the
status "Waiting for Host".

Name

The name of the Variable object.


You cannot limit the selection to a variable type.

Automation Engine

Column

863

Column of the selected Variable object.


The first value column is used if you do not specify
a value in this field.
Note that you must not use the value 0. Specifying
column 1 has the effect that the Key column (in
static VARA objects) or the Result column (in
dynamic variables) will be used.

Prompt / Script Array

An array is used as the source.


The task is processed once per element (value) of
the specified array.
You can either create arrays using PromptSet
objects (use the elements checkbox and
checklist) or using a script.

Name

Name of the array.


The array must be specified without a leading &
character and you must use empty index brackets
[].

Publish Value

The source's value is published using an object


variable.

Publish value as

The name of the object variable that is used to


provide the source value to the Workflow.
Depending on the source, this will either be the
entry of the Variable object or the value of the array
that is currently used and complies with the loop
cycle.
Because the object variable is passed on the
Workflow, it can be used within the Workflow
tasks. Requirements: The setting "Inherit from
Parent" must be activated in the objects.
The variable name must be specified without a
leading & character. The same rules apply for object
variable names as for script variable names.

Adding Tasks
To add a task to a ForEach Workflow, drag and drop one or several objects from the UC4 Explorer
to the relevant loop line of the open ForEach Workflow.
Note that you cannot link tasks manually. Tasks will automatically be linked to each other when
they are added. Therefore, the Line Tool is not available in the Logic tab.
The length of the loop line is dynamically adjusted to the number of tasks that are included.

864

Chapter3 Objects

Deleting Tasks
Select the tasks that should be deleted using the context-menu command Remove or hit the DEL
key.
Note that the lines in ForEach Workflows are predetermined and cannot be deleted.

Moving Tasks
You can change the order in which the tasks are arranged along the loop line as you like.
Note that the tasks that are included in a branch can only be arranged in a serial order. To create
more complex structures, you can use Sub-Workflows.

Processing IF Workflows

Display in the Activity Window


The Activity Window displays each repeated task.
The hierarchical view of the Activity Window displays each ForEach Workflow as a container that
includes all subordinate tasks that have run. Their order depends on the loop iterations.

Monitor View
The monitor of ForEach Worfklow always displays the current loop cycle.

Modifying Active ForEach Workflows


The rules of modifying active Workflows also apply to IF- and FOREACH-type Workflows with the
following limitations:
l
l

In modification mode, you cannot add new tasks.


Tasks cannot be deleted or replaced.

Forecast
For Forecast calculations of ForEach Workflows, the system uses the task chain's processing
duration without iterations.

Restart
In restarts, the system reevaluates the number of loop cycles from the specified source. Therefore,
the number of iterations can be different in each restart. In other words, a restart of ForEach
Workflows shows the same behavior as a regular start.
Runtime tab
The Runtime tab is object-class specific and is available in every executable object in UC4. It
can be used to specify parameters for a task's runtime behavior.

Automation Engine

865

The Runtime tab is structured as follows:


l
l
l
l
l
l

Return code handling


Forecast setting
Evaluation of estimated runtime (runtime evaluation)
Monitoring of maximum runtime (runtime monitoring)
Monitoring of minimum runtime (runtime monitoring)
Reaction if the runtime is longer or shorter than defined (runtime monitoring)

Description

Field/Control

Description

Definition for
ENDED_OK
Return code <=

The maximum return code for the normal end of a task.


A task ends normally (Status "ENDED_OK") if its return code lies
below or is equal to the specified maximum return code.

Else execute

If the relevant task does not end with a return code that lies within the
ENDED_OK zone, you can define an alternative object tha should be
processed.
Note that this object will not be processed if the task is terminated
by using the script statement :EXIT.

End status for


Forecast
Estimated runtime
(ERT)

A selection list for the end status that this task should return when you
make a Forecast calculation.

866

Chapter3 Objects

Current ERT =

Display of this task's next estimated runtime (ERT).


You can specify an estimated runtime here. This value then applies
until an ERT calculation has been made after the task's next run.
Format: "hours:minutes:seconds".

Use default (UC_


CLIENT_SETTINGS)

Selecting this option has the effect that the calculation method that the
UC4 administrator has specified in the UC4 Variable UC_CLIENT_
SETTINGS using the key "ERT_METHOD" will be used for the
estimated runtime.

Fixed value

Enter a fixed value as the estimated runtime.


Format: "seconds"

Dyn. method

A selection list for the dynamic method that is used to calculate the
estimated runtime from the actual runtime.
Possible selection: average, linear regression, maximal value

from the last ... runs

The number of past runs that are considered for the ERT calculation.
Allowed values: 0 to 25.

+ ... %

The value in percent for an upward ERT correction.

Differences > ... % are You can ignore possible huge deviations for the estimated runtime.
ignored
Upper limit (in percent) until which the real runtime should be used to
calculate the estimated runtime.
but do use ... runs at
least

The number of past runs that should be considered regardless of


deviations. Allowed value: 0 to 25.

Show chart

A button for updating the estimated runtime according to the current


settings. A diagram is displayed in a separate window which represents
the last 25 ERT/RRT runs. An already open window will be updated.

Reset values

A button for deleting the real and estimated runtimes.


After a security query, all stored runtimes will be cleared.

Maximum runtime
(MRT)
None

The maximum runtime is not monitored.

Fixed value

The maximum runtime is monitored.


The allowed time is entered as a fixed value in the format
"hours:minutes:seconds". An action (ELSE condition) must be
specified which reacts when maximum runtime is exceeded.

ERT

The maximum runtime is monitored.


The valid estimated runtime (ERT) at the time of the task's activation is
used as the maximum runtime. An action (ELSE condition) must be
specified which reacts when maximum runtime is exceeded.

+ ... %

A correction in percent can be specified for ERT for the maximum


runtime. The determined value is added to the estimated runtime.

Automation Engine

Curr. date + day(s)


Time

The maximum runtime is monitored.

TimeZone

Selection of a TimeZone object

867

Define a number of days and a particular time until which the task must
be finished. The starting point for the date calculation is the task's real
date. An action (ELSE condition) must be specified which reacts when
maximum runtime has been exceeded.

Minimum runtime
(SRT)
None

The minimum runtime is not monitored.

Fixed value

The minimum runtime is monitored.


The minimum runtime is used as a fixed value in the format
"hours:minutes:seconds". An action (ELSE condition) must be
specified which reacts if the runtime falls below the minimum runtime.

ERT

The minimum runtime is monitored.


The valid estimated runtime at the time of the task's activation is used
as the minimum runtime. An action (ELSE condition) must be specified
which reacts when runtime falls below the minimum runtime.

- ... %

A correction value in percent can be specified for ERT for the minimum
runtime. The determined value is subtracted from the estimated
runtime.

Else
Cancel / Quit

With this checkbox being activated, the task will be canceled or ended
if the runtime has been exceeded. Only available if the maximum
runtime is monitored.

Execute

Selecting this checkbox determines a task's execution. You can


directly select an executable object. This task will be activated if the
runtime is above or below the expected value. Only available when
runtime is monitored.

Comments

A different definition of runtime monitoring can be used for tasks that run in a Workflow or are
activated using a "Schedule" object. You can define this in the properties of the affected objects
(Runtime tab). In doing so, you can implement specific requirements for runtime monitoring which
refer to the special context of Workflows or Schedules. The task settings that are defined in the
Workflow or Schedule override the settings that were made in the task itself.
By default, the settings for runtime monitoring as defined in the task also apply to the Workflow or
Schedule.

See also:
Runtime Evaluation
Runtime Monitoring

868

Chapter3 Objects

Variables & Prompts Tab


The Variables & Prompts tab is object type-specific and is available in almost every
executable object in UC4.
Object: Workflow
Object class: Executable object
Object type (short name): JOBP
This tab has two tasks:
l
l

It stores object variables.


It assigns PromptSet objects.

Object variables

Object variables include values that belong directly to the object and can be read in the Process
tabs. Variable names and values are determined in the table shown below.
In the Value column, you can also enter predefined variables. Do so using the Variables...
button in the object's toolbar.
The same rules apply for object variable names and for script variables. If you omit the preceding
"&", it is automatically added during the storing process and is available the next time the object
opens.
Object variables and PromptSet variables can be inherited from the superordinate object. For
example, a Schedule's tasks can use the object variables of the Schedule object.
Field/Element

Description

Inherit from parent


All variables (default)

The object obtains all object variables and PromptSet variables of


the superordinate task.

Automation Engine

Only defined variables

869

The object only obtains the object variables of the superordinate


task that have been defined in its Variables & Prompts tab.
PromptSet variables are only inherited if the PromptSet object
complies with these values and the value that should be
overwritten has not been changed in the Variables & Prompts
tab.

No variables

The object obtains all object variables and PromptSet variables of


the superordinate task.

Note that inherited variables overwrite existing object variables if they have the same name. In
contrast, PromptSet variables are never overwritten.
The following procedure can be used if you want to overwrite PromptSet variables with the value
of a parent variable:
Open the task's Workflow or Schedule properties and switch to the Variables & Prompts tab.
Select the PromptSet area and use the Workflow's or Schedule's variable name as the value of
the relevant PromptSet element. If the particular PromptSet element is not a text field, click its
labeling.
PromptSet objects

In the Variables & Prompts tab, you can also select one or several PromptSet objects that should
be called during the activation process. In doing so, you can overwrite the default values of
PromptSet elements. These modifications do not affect the PromptSet object itself.
You can use the "+" and "-" buttons to add or remove PromptSet objects. Several PromptSet
objects are called from top to bottom. Use the arrow buttons if you want to change this order.
To adjust the task's PromptSet values, you directly modify the PromptSet elements.
Click on the blue description that displays next to the elements when you also want to use variables
in the default value. The effect is that the PromptSet elements now appear as a gray text field that
has the name of the related PromptSet variable. In this specific text field, you can either manually
enter the predefined variables, or select them in a dialog that you call using the

button.

870

Chapter3 Objects

Clicking the blue description again deletes your previous entries and the PromptSet element
appears in its original view.
Predefined variables are already deleted when the PromptSet input mask is called. Note that the
values of predefined variables can change during the object's execution (for example, with UC4
Script) but the PromptSet variable still stores the old value.
An error occurs when the object should be stored and an element's value does not fulfill the
limitations of the PromptSet properties (min. value, max. value, max. length, value required etc).
The affected fields are highlighted in yellow.
If the values differ from the reference values, an error only occurs when the object starts and an
attempt is made to send the prompt. Ensure that the data type and other limitations (min. value,
max. value, format) of the reference variable are preserved.
Using the same variable names has the effect that the object variable values are overwritten by
the PromptSet variables. The value of the PromptSet object that has last been called is used if
selected PromptSet objects include identical variable names.
Graphical elements that are removed from the PromptSet object are also removed from the
Variables & Prompts tab. Modifications made in the PromptSet object's default values do not
affect the Variables & Prompts tab. The values of the PromptSet object are only available
when the PromptSet object is newly selected.

See also:
Object Variable
Designer tab
Rollback Tab
The Rollback tab is an object-specific tab that is available in every executable object that can be
included in a workflow.
The Rollback tab can be used to define actions that store the task (= Backup) and restore it (=
Rollback). These settings are only useful when the object runs in a workflow because you can only
start a rollback process within a workflow.
The backup and rollback functions are especially designed to undo erroneous installation and
deployment processes that are defined in the UC4 Deployment Manager but are processed by
using the Automation Engine.
Backup actions will always be processed before the object is processed, and rollback actions can
only be started via workflows. For more information, see the related documentation.

Automation Engine

Field/Element

Description

Enable Rollback

Use this to activate or deactivate the rollback settings.

871

When this option is deactivated, all the fields of this tab are
disabled.
Custom Rollback
Backup

Specify an executable object that is responsible for the


backup process.
If you specify a Backup object, it will always automatically
run before the task runs, regardless of how the object is
activated.
The actions and steps that must be defined in the Backup
object depend on the processes and actions of the related
task. Note that you must define them manually. For
example, if you use an object to update your database, it is
useful to include a database using the Backup object.

Rollback

Specify an executable object that is responsible for the


rollback process.
The definition of the Rollback object depends on the
current object or the Backup object and must be made
manually. The Rollback object's basic task is to undo
modifications in the case of an error in order to ensure that
a previous working status will be restored. For example, if
the Backup object creates a database backup, the
Rollback object should be able to restore this backup.
The Rollback object will be processed when the task
starts in Rollback mode which is only possible in a
Workflow.

872

Chapter3 Objects

Deployment Tab
The Deployment tab is an object-specific tab that is only avaialble in Workflows provided that
the client's Deployment function is active.
You activate the client's Deployment function in the setting DEPLOYMENT_CLIENTof the UC4
Variable UC_CLIENT_SETTINGS.
This tab includes the settings that are required for the installation and deployment processes.
Deployment processes and their parameters are defined and activated in the UC4 Deployment
Manager and processed by using Workflows in the UC4 Automation Platform.
You can also define the Workflows using the Enterprise Control Center's "Process Assembly"
perspective.

Field/Element

Description

Deployment

Check this box to activate the Workflow's Deployment


settings.
When you have activated it, you can select whether you
use an Application Workflow or a Component Workflow.
The other fields that display depend on the selection you
have made.

Application Workflow

The Workflow that is responsible for an application's


complete Deployment process.
It includes one or several Component Workflows.

Application Name

The name of the application as defined in the UC4


Deployment Manager.
Examples: ECC, Tomcat, etc.

Automation Engine

Workflow Name

The name of the Workflow.


It is defined for the application in the UC4 Deployment
Manager. This makes it possible to assign several
Application Workflows to an application.
Examples: installation, deinstallation, etc.

Component Workflow

The Workflow that is responsible for a certain step in the


Deployment process (such as the installation of a certain
program or the configuration).
It is part of an Application Workflow.

Application Name

The name of the specified component's application.

Component Name

The name of the specified application's component.


It is defined for the application in the UC4 Deployment
Manager.
Examples: database, configuration, etc.

Process Tab
The Process tab is an object-specific tab where processing instructions are stored in UC4's
scripting language.
Object: Workflow
Object class: Executable object
Object type (short name): JOBP

873

874

Chapter3 Objects

Description

The script is either processed at Workflow activation or start. This point in time depends on the
setting "Generate at runtime" which can be defined in the Attributes tab.
A Workflow's script cannot contain JCL lines.

See also:
Script Editor
About UC4 Scripts
SampleCollection
Documentation Tabs
Documentation tabs are user-defined and client-specific tabs which can be assigned to all UC4
objects.

All Documentation tabs that have been defined by the UC4 administrator in the UC4 variable
UC_OBJECT_DOCU are shown. Note that imported objects have their own documentation
tabs.
The Version Management tab displays the stored object versions if this function has been
activated.

Structured Documentation

Each of these tabs can also be displayed in structured form. Structured Documentation can be used
to split complex object information in well-arranged parts. Each documentation element can be used

Automation Engine

875

to store texts, but also to define attributes.


You can also define links (e.g. to files, folders or to documents in the Intranet and Internet etc.) in
structured documentation. Files are then displayed with the associated program, folders are
opened, URLs call the standard browser etc. The particular actions depend on the installed
programs and the user's PC configuration.

New Documentation tabs initially only include the "Content" folder. This is your starting point for
creating a further structure. To create and edit this structure, you can use the following popup-menu
commands :
Command

Description

Add attribute

Creates a new attribute in the highlighted element.

Add node after

Inserts a new element after the highlighted element.

Add node before

Inserts a new element before the highlighted element.

Add node child

Creates a new element one level below the highlighted element.

Duplicate node

Duplicates the highlighted element and its attributes and contents.

Delete node

Deletes the highlighted element irrevocably.

You can create one or more attributes for each individual element. Basically, there are two different
types: text and enumeration. You can add one or more of these attributes to an element. Determine
the attribute's name and then select whether it is a text or an enumeration. In enumerations, you can
specify the entries that should be included.

876

Chapter3 Objects

Names of elements and attributes should comply with the XML naming convention. Letters,
numbers and the characters "-", ".", "_" can be used. Keep the following rules in mind:
l
l
l
l

The first letter of a name must neither be a number, nor ".", nor "-".
The name must not include blanks.
Do not use colons as they are reserved characters.
Names must not begin with "XML", regardless if uppercase or lowercase letters are used.

Structured documentation can be read with specific script elements (XML_*).

External Workflow Dependencies

External Workflow Dependencies


During the execution process it can become essential to react to the end status of particular
tasks. There are two types of tasks - tasks running inside the Workflow and tasks running
outside.
For the first ones, you can define the status expected from the preceding Workflow task in the
Dependencies tab. For external tasks running outside of the Workflow, you can define external
dependencies.
External dependencies specify the status expected from external tasks in order to continue
successful processing.
Note that external tasks are not part of the Workflow. Thus, they are not processed as part of the
Workflow.
External dependencies can only be defined within Standard Workflows (Workflow tab).

Automation Engine

877

Display
An external dependency is graphically displayed in the form of a dashed box. The following
illustration shows an external dependency to the FileTransfer "MM.GET.FILES". Therefore, the job
"MM.END.PROCESSING" will only start if the file transfer has ended with the defined end status.

Usage
External dependencies refer to tasks. Use one of the following methods to include external
dependencies in Workflows:
l
l
l

Drag tasks (ALT key held down) from one Workflow to the other.
Drag tasks (ALT key held down) from the UC4 Explorer to a Workflow.
Call the command Add Task... from the Workflow's context menu and check the option As
External Dependency.

Use the Line Tool to connect your external dependencies with one or several Workflow tasks.
These tasks are then succeeding the external tasks. External dependencies of Workflows do not
have predecessors.
Once the external dependency has been included, its expected end status must be defined. Rightclick the box; then call the command Properties. The opening dialog shows two tabs in which the
required settings can be specified. The expected end status of the external task can be defined in
the External Dependency tab. You can also indicate the start for the lead time satisfaction. The
lead time satisfaction is the period in which the external task must end on the expected status at
least once. You can also specify the reaction to state other than specified.
"Timeout" is used in combination with the special option "Wait". At the end of this timeout period,
the task's status is re-checked and a reaction can be defined.
The second tab can be used for Calendar conditions which determine the days on which the
external dependency should be considered. It is also possible to use the Calendar conditions of the
external task, if it runs in a Workflow.

878

Chapter3 Objects

Workflow tasks referring to external dependencies (the job "MM.END.PROCESSING" in the above
example) can react to a status via the Dependencies tab. This, however, is not the status of the
external task but the status of the external dependency. Thus, only the following states are
available:
l

ENDED_INACTIVE - the external dependency is inactive due to Calendar conditions or


manual interference.
ENDED_SKIPPED - the expected end status of the external task did not occur within the
defined time span. According to the specification made in the external dependency, it is
skipped.
ENDED_OK - the external task's expected end status occurred. Thus, the external
dependency is fulfilled.

Execution
While the Workflow runs, the external dependency shows varying colors. It is colorless before its
run has reached the task that refers to the external dependency. Dark gray signals that the specified
condition has been met. While waiting for the external task's end status, the box that is displayed in
blue and white symbolizes the states "inactive" and "skipped".
When the external task blocks within a Workflow, the external dependency remains in a waiting
condition (blue). When you remove this blocking condition manually, the external dependency is
only fulfilled when the expected status in its properties is either set to ANY_OK_OR_UNBLOCKED
or ENDED_OK_OR_UNBLOCKED. Otherwise, the external dependency remains in its waiting
condition.

Important notes
The status of an external task is retrieved via its statistical records. No status is available in the
following situations:
l

The external task has not yet been processed.


This situation can occur if the object has just been created, duplicated, imported or

Automation Engine

879

transported.
The statistical records were reorganized using the available utilities.
This situation depends on the frequency with which the database is maintained. Example:
An external dependency refers to a task which always runs at the beginning of a month. A
Workflow which is always processed on the 10th of a month cannot retrieve this task's
status if the statistical records are removed from the database every second day.

In both situations, the lead time satisfaction does not show positive results and the "Else" action
of the External Dependency tab comes into force.
AgentGroups in mode "All"
This setting means that the AgentGroup processes a task on all its agents. The following peculiarity
applies if an external dependency has been set on this task in a Workflow:
The external dependency is fulfilled when one of the tasks has ended. The Workflow does not
wait until the tasks have ended on all agents.

See also:
"External Dependency"
Lead Time Satisfaction for External Dependencies
Workflow tab

Lead Time Satisfaction for External Dependencies


For checking the status of external tasks, the period that should be taken into account must be
specified. The External Dependency tab contains a selection of settings which can be
considered for calculating the lead time satisfaction.

The lead time satisfaction is the particular time span in which the external task ends at least
once or during which a timeout occurs.
The external task's activation of start time is irrelevant. Whats important is its end time. If this end
time does not lie within the satisfaction lead time, further processing depends on the settings made
in the external dependency. You can either wait for the external task to end, skip the external
dependency or cancel the Workflow.

880

Chapter3 Objects

The following intends to illustrate the different durations of lead time satisfaction. The involved
Workflow consists of two tasks and one external dependency.

Since last Workflow execution


The lead time satisfaction commences when the last Workflow execution ends.

Within a time span before Workflow start


The lead time satisfaction commences before the Workflow starts. How far back this time span
dates depends on the specified value.

The lead time satisfaction is limited if the end of the last Workflow execution lies within this time
span.

Automation Engine

881

After Workflow start


The lead time satisfaction commences when the Workflow starts.

See also:
External Workflow Dependencies
"External Dependency"
Re-using AgentGroup Calculation
This Workflow attribute must be set if Workflow tasks that use the same AgentGroup should
also use the same hosts.
Tasks that include an AgentGroup: The system first checks whether the option Re-using
AgentGroup calculation is set for the Workflow of which it is part:
l

If so, the system checks in the top Workflow whether the AgentGroup has been stored
internally. If so, the determined agent is entered in the task. If not, an AgentGroup agent is

882

Chapter3 Objects

selected for this task. The AgentGroup plus the retrieved agent are also internally stored in
the top Workflow.
If not, the system determines an AgentGroup agent and enters it in the task.

Storing the calculated AgentGroups in the top Workflow ensures that all tasks of sub-Workflows
can use the same agent that had to be calculated only once. AgentGroups of Workflow tasks are
only stored if the option Re-using AgentGroup calculation is selected.
Note that AgentGroup calculation takes place when the task starts and not when it is activated.
Therefore, the option Generate at runtime affects this point in time.
Re-using AgentGroup calculation is not possible in:
l
l
l

Tasks that start on behalf of a Group.


Tasks that are defined in a Workflow task's properties.
The script element PREP_PROCESS_AGENTGROUP in the script of a Workflow or the
tasks a Workflow includes.

AgentGroup agents are retrieved for each individual task if this setting is not active. Therefore,
tasks of the same AgentGroup can run on different agents.

Example

This function requires that the setting "Re-using AgentGroup calculation" is activated in both
Workflows (Workflow1 and Workflow2 in the illustration below).
The Workflow's first task (Job1) is processed first. It uses AgentGroup1. Host1 is selected because
there are no internal entries for a former AgentGroup calculation. Subsequently, AgentGroup1 and
the corresponding agent Host1 are stored in the Workflow.

Workflow2 is subordinate to the top Workflow (Workflow1). The subordinate Workflow's task Job3
re-uses AgentGroup1. When task Job3 starts, the agent Host1 that has already been stored in the
top Workflow is selected for the execution.

Automation Engine

883

Therefore, all tasks of the same AgentGroup use the same agent regardless of their subordination
level. Note that this only applies to Workflow tasks in which the option Re-using AgentGroup
calculation has been activated.

See also:
Workflow
Workflow - Attributes tab
AgentGroup
Special Workflow Types
You can define the order in which Workflow tasks should be processed by linking them.
This description only applies to Standard Workflows. Tasks in IF and ForEach Workflows are
automatically linked. Therefore, they always have a predecessor and a successor.
Some specific rules apply if there are tasks that do not have a predecessor and/or successor:
l

The system only waits for a branch without a predecessor and/or successor (open branch) if
the Workflow is not part of another Workflow.
A Workflow can contain a sub-Workflow with an open branch. The processing of the subWorkflow continues and finishes even if its open branch is still processing a task. The
superordinate Workflow continues as soon as this sub-Workflow gets to its END object and
does not block. Please note that the setting "Block and Abort Signal" (Dependencies tab),
which sends messages to the superordinate Workflow becomes obsolete when the
superordinate Workflow continues.
In Workflows, you can also create completely open branches. These branches are then
neither linked to the START object nor to the END object. They start when the Workflow

884

Chapter3 Objects

starts.
Forecast calculations for these special types of Workflows also consider the open branches.

For example, you can use open branches for tasks that run rather long if you do not want to wait until
they have ended.

See also:
Workflow Tab
Workflow - Execution

Object-type-specific Features

When a Workflow is activated, all its objects are activated, including the objects of subWorkflows. The system checks whether object scripts should also be processed. The following
applies to all objects in which the attribute "Generate at Runtime" is NOT activated: Scripts are
processed at the activation time. In all other objects, scripts are processed as soon as the
Workflow reaches the object and starts it.
The impacts of scripting errors depend on their generation time:
l

Workflow generation is canceled if a generation error occurs in one of the involved objects
that are also generated at this point in time.

Automation Engine
l

885

If a generation error occurs in an object in which the option Generate at runtime is activated,
the object itself is canceled; the Workflow still continues.

Workflows can contain objects that should be generated at activation time as well as objects that
should be generated at runtime. If the attribute "Generate at runtime" is set in most of the Workflow
objects, the Workflow is activated faster.
Monitoring or modifying a Workflow
You can view the execution of a Workflow in the monitor. Objects are displayed in different colors
which indicate the status of the Workflow and its individual tasks.
You can also modify a Workflow via the monitor. All your modifications are valid for the ongoing
execution. The general definitions in the Workflow object remains unchanged.
Stopping the Execution
An activated Workflow can be stopped and restarted at any time.
Handling
Right-click in the
Activity Window.

Select Stop or Go in the context menu.

Right-click in the
monitor of a Workflow.

Select Stop or Go in the context menu.

Note for executing Workflows:


Theoretically, starting a Workflow that includes itself results in an infinite nesting. Practically, a
maximum nesting depth of Workflows has been defined which prevents such an error.

Blocking condition
You can define particular dependencies and conditions in the properties of Workflow tasks (such as
an earliest or latest start, or the states of predecessors) so that the relevant task blocks if your
definitions are not met. In this case, the task is only blocked within the Workflow. The Activity
Window displays the task's actual end status.
If a task blocks, the processing of the current branch does not continue as of this objects. Manual
interference is required (for example, unblock task, cancel or start next task). The processing of
other branches continues. If there are no other branches or if they have already been processed, the
Workflow obtains the status "Workflow is blocked."
Workflow - Restart

Object-type-specific Features

By restarting, the script of the Workflow can be only partially processed. However, the job itself
will be completely re-executed.
Workflow Monitor

Display
[Display] [Modifications] [After the Execution]

886

Chapter3 Objects

A monitor can be displayed during the execution of a workflow. You can specify in the settings of
the UserInterface whether it should open automatically when the object is activated. The monitor
displays the current status of the workflow and all its individual tasks. You can follow the entire
course of the execution and also modify defined processes and conditions.
When a job has been started using the option "Wait for manual release", you can release it by using
the workflow monitor's context menu.
The monitor is still available after the run. When the workflow ends, its status and task statistics are
stored. Details, statistics and reports can be used for subsequent analyses. Tasks can also be reexecuted with options in this monitor view.
You can maximize or minimize the workflow by using the CTRL key in combination with the
scroll wheel. This view is then kept until you decide to change it or close the window. Workflow
views can also be changed using the symbols shown in the menu bar or the context-menu
commands.
The title bar of the workflow monitors displays the name of the workflow and the RunID.

Based on the expected runtime, the workflow monitor also shows the progress of running tasks in
the workflow's standard view. The specifications for the expected runtime are made in the object's
corresponding tab.
The following illustration shows a task that has been processed almost half (the calculation is based
on its average runtime).

Automation Engine

887

The time that indicates the end of a task is displayed green if task processing takes longer than
expected (EXT). The task's end time is displayed in red.
Basically, the workflow monitor remains the same during and after an execution. The workflow is
displayed as specified in the Workflow tab. The individual tasks are symbolized as rectangles.
Tasks are processed according to the order that is defined through connection lines and in the
properties. Different colors signal the task states.
Colors in use

Status

Dark gray

The task has ended normally.

Green

The task is running.

Red

The task has aborted or workflow has been canceled.

White

The task is inactive.


It has not been executed or will not be executed.

Yellow

The task is blocked or a manual breakpoint has been set.


The job that causes a task to be blocked is displayed yellow if all its
predecessors are connected with a logical AND (all states have to
match) in the Dependencies tab. The task itself is appears in yellow if
the predecessors are connected with a logical OR (at least 1 status has
to match).

Blue

The task waits for a Sync or that the external dependency is fulfilled.

Transparent

The task is waiting to be executed.

Purple

The task has been started in Rollback mode.

Comments are available in tasks whose RunID show a small red edge.

Modifications
[Display] [Modifications] [After the Execution]

Processes and conditions can be modified during the execution of a workflow. Note that all changes
you make only apply for the current execution (except for Edit).
Significant modifications in active workflows (such as adding or removing tasks and lines) can
only be made in modification mode. To switch to modification mode, open the context menu
from an emtpy monitor position and select the command "Modify Workflow -Switch to
modification mode".
Use the context-menu commands in the workflow monitor to make changes. Depending on the
status of the execution, the content of this menu can vary. Altogether, the following commands are
available:
Context Menu - Modifying a Task
Depending on the task status, the following commands are available if a task's context menu is
called in the monitor:
Command

Description

888

Chapter3 Objects

Cancel

This cancels the particular task and all the


subordinated tasks that have not yet started.

Cancel (recursive)

Cancel (recursive) also includes subordinate


running tasks (in sub-workflows).

Unskip task

Sets a task active again so that is can be


executed within the framework of the particular
workflow (tasks that have been set inactive via
their properties).

Release

You can release a task that is blocked because of


previously-defined dependencies. It will then be
executed despite of this fact.

Unblock task

Sets a blocked task to active so that is can be


processed in the workflow.

Set breakpoint

The workflow's execution stops at the task that


includes a breakpoint.

Delete breakpoint

Removes a previously-set breakpoint.

Skip task

You can set a task inactive if it should not be


considered when the workflow is being executed.
Pay attention to the following tasks if particular
states have been defined in their Dependencies
tabs, as a skipped task ends with the status
ENDED_INACTIVE.

Go immediately

Starts a task immediately without considering


specified dependencies. If you use this command
for a task containing a manual breakpoint, this
breakpoint is deleted.

Ignore Queue limit

Ignores the slot limit of the Queue in which the


task runs.

Ignore Preconditions

Skips the conditions/actions that are defined in


the Preconditions tab (task properties).

Enforce Preconditions evaluation

Restarts the evaluation of the Preconditions tab


in Workflow tasks. The time interval is reset
(CONDITION_CHECK_INTERVAL - UC_
SYSTEM_SETTINGS).
This command is only available for tasks that are
in the status "Waiting for Preconditions".

Ignore SYNC

Sync objects that can have been specified are


ignored in this task.

Restart...

You can restart tasks that have already been


executed, thereby specifying options.

Deactivate

Removes an ended task from the Activity


Window.

Context Menu - Modifying a Workflow

Automation Engine

889

Depending on the workflow's status, the following commands are available if the context menu is
called from an empty position in the monitor:
Command

Description

Stop

Stops the workflow but running tasks and subworkflows are not affected.

Stop (recursive)

Stops the workflow and its sub-workflows.

Go

Continues the workflow. Its sub-workflows


remain stopped.

Go (recursive)

Continues the workflow and its sub-workflows.

Cancel

Cancels the workflow and all its subordinate


tasks that have not yet started.

Cancel (recursive)

Cancel (recursive) also includes running tasks. All


sub-workflows and their tasks are canceled.

Restart

If a workflow has already ended, you can restart


it.

Deactivate

Removes an ended workflow from the Activity


Window.

Context Menu - General Commands


The following commands do not depend on the status or object type of a task. They are always
available:
Command

Description

Modify task
parameters

This command opens the task's PromptSet dialog in which you can
modify the prompt values subsequently.
When the option Request task parameters is activated in RA jobs
(RA tab), you can also modify the RA-specific values by using the
PromptSet dialog.
An error message will appear when no PromptSet objects are assigned
to the task or when the task is not an RA job in which the option
Request task parameters is set.
While the task is being modified, it changes to the status Waiting for
user input.
Modifying values after the task has been generated has no effect.

Edit

Opens the corresponding object for processing. Note that your changes
are valid for all executions (not only for the current one).

Detail

Displays the task's Detail Window .

Properties

Opens the Properties dialog. If the task has not yet been executed, you
can change its dependencies and conditions for the current execution.
Otherwise, the tabs are write protected.

Open Generated Job

Displays the result of a generated Job.

890

Chapter3 Objects

Monitor

Opens the monitor of the task (only notifications, cockpits, groups,


workflows, schedules and syncs).

AgentGroup monitor

Opens the AgentGroup monitor (only in jobs that use an agent group).

Forecast

Creates a new forecast for the task.

Report

Calls the last report for the task.

Statistics

Calls the statistics of the task.

Comment

Opens a task's comment window.

You can also call the above command directly in the Activity Window.

After the Execution


[Display] [Modifications] [After the Execution]

After a workflow has been executed, its monitor is static.


Statistics and reports are available for the workflow and all its individual tasks. Tasks details and
properties are also available.You cannot modify the properties, they are write protected.
You can also start tasks with options by using the context-menu command Restart...

Calling the monitor


Automatically

The workflow can be displayed automatically when the execution


starts. You can select this option in the UserInterface settings.

Automation Engine

Right-click the
workflow in the
Activity Window

Select Monitor in the context menu.

Right-click the
workflow in the
Activity Window

To display the monitor of the super-ordinate workflow, you select the


context-menu command Monitor Parent.

Right-click the line of


the workflow
execution in the
statistics overview

Select Monitor in the context menu.

891

See also:
Workflow
Workflow Attributes
The following overview includes the attributes of a Workflow object and describes their
functions, allowed values and ways of modification.

Tabs

Attribute

Description

Value

Accesses

ARCHIVE_
KEY1

Archive key 1

User-defined,
maximum 60
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

ARCHIVE_
KEY2

Archive key 2

User-defined,
maximum 20
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

892

Chapter3 Objects

AUTO_
DEACT

Deactivate
automatically when
finished

"NEVER" - never
deactivate
automatically
"ENDED_ERROR_
FREE" - in case of
error-free execution,
deactivate
automatically
"RESTART_
ERROR_FREE" - in
case of error-free
restart, deactivate
automatically
"ALWAYS" - always
deactivate
automatically

GET_
ATT,
:PUT_
ATT

AUTO_
DEACT_
DELAY

Deactivate
automatically when
finished - AlwaysTime delay

User-defined,
Value between "0" and
"99"

GET_
ATT,
:PUT_
ATT

AUTO_
DEACT_
ERROR_
FREE

Deactivate
automatically when
finished - After an errorfree restart - Error-free

Task status,
maximum 20
characters

GET_
ATT,
:PUT_
ATT

CHILD_
QUEUE

Children Queue

Name of the Queue


object for the
Workflow's task,
maximum 200
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

DATE_
CREATED

Created on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available: "000000-00 00:00:00"

GET_ATT

DATE_
MODIFIED

Modified on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available: "000000-00 00:00:00"

GET_ATT

DCMODUS

Mode UserInterface

"Y" - UserInterface
active
"N" - No UserInterface
active

GET_ATT

Automation Engine

893

GEN_AT_
RUNTIME

Generate at runtime

"Y" - Generation at
runtime
"N" - Generation at
activation time

GET_ATT

GROUP

Group

Name of a Group,
maximum 200
characters
" " - for immediate
start

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

INT_
ACCOUNT,
INT_ACC, K

Int. Account

User-defined,
maximum 16
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
via script
variable,
predefined
variable

LAST_DATE

Last used on

Time stamp in the


format "YYYY-MMDD HH:MM:SS"
If not available: "000000-00 00:00:00"

GET_
ATT,
predefined
variable

LAST_USER

Last used by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

MAX_
PARALLEL_
ELSE

Parallel running Tasks


- Else

"WAIT" - Workflow
waits until processing
is possible
"ABEND" - Workflow
disrupted

GET_
ATT,
:PUT_
ATT

MAX_
PARALLEL_
TASKS

Parallel running Tasks


- Max.

User-defined,
Value between "0" and
"99999"

GET_
ATT,
:PUT_
ATT,
predefined
variable

MAX_
RETCODE

ENDED_OK until
returncode

User-defined,
maximum 11
characters

GET_
ATT,
:PUT_
ATT

MODIFY_
COUNT

Modified

Number of object
modifications

GET_ATT

894

Chapter3 Objects

OBJECT_
NAME

Object name

User-defined,
maximum 200
characters

Change
Program

OBJECT_
TITLE

Title

user-defined,
maximum 255
characters

GET_
ATT,
:PUT_
ATT,
predefined
variable

QUEUE

Queue

Name of a Queue,
maximum 200
characters

GET_
ATT,
:PUT_
ATT,
Change
Program,
predefined
variable

SCRIPT

String in the script of


the Workflow which
should be changed

SYNC_
OBJECT

Assigned Sync object

Name of a Sync,
maximum 200
characters

Change
Program

TASK_
NAME

Name of the task in the


Workflow which should
be replaced

Name of an object,
maximum 200
characters

Change
Program

TIMEZONE

TimeZone

User-defined
maximum 8
characters

GET_
ATT,
:PUT_
ATT,
predefined
variable

UC4_
PRIORITY

UC4 Priority

User-defined,
Value between "0" and
"255"

GET_
ATT,
:PUT_
ATT,
predefined
variable

USAGE_
COUNT

Last used

Number of object
usages

GET_
ATT,
predefined
variable

USER_
CREATED

Created by

Name of the User


object,
maximum 200
characters

GET_
ATT,
predefined
variable

Change
Program

Automation Engine

USER_
MODIFIED

Changed by

Name of the User


object,
maximum 200
characters

895

GET_
ATT,
predefined
variable

See also:
Workflow
Attributes
:PUT_ATT
GET_ATT function
UC4.DB Change
Modifications to Active Workflows
Active Workflows can be modified. You can add tasks and modify properties.
Note that the modifications that you can make in active IF and ForEach Workflows are limited.
For more detailed information, see the description of the peculiarities of IF and ForEach
Workflows.

General

Modifications that are made in active Workflow objects are also valid for future executions. Active
Workflows can be modified in the corresponding monitors. These modifications only apply to a
particular execution and are not stored in the Workflow object.
Reports include the relevant information about all modifications.

Procedure

Open the monitor of an active Workflow. Use the context menu command "Modify tasks" for minor
changes such as adding a breakpoint or deactivating a task.
Switch to modification mode if you want to add tasks or change their properties. Open the monitor's
context menu commands "Modify Workflow" ->"Switch to modification mode". It is necessary to
stop the Workflow because these modifications change its structure. A query is displayed which
informs you about this fact.
A
symbol is shown at the left upper edge directly next to the pause symbol. It indicates that
you are in modification mode.

896

Chapter3 Objects

The same commands are available as in the Workflow tab. In the non-active Workflow part, you
can add tasks, change their properties and draw new lines.
Modifications in non-active but existing Workflow parts (such as modified lines or properties) are
automatically activated. The system also checks whether these modifications are valid. An error
message is displayed if they are not valid and the particular modification is not made. In this case,
check the error cause and repeat your modifications.
Note that you cannot change the following properties in modification mode (this applies to tasks
that have not yet started and newly added tasks):
l

Modifying / creating / deleting Preconditions and Postconditions (properties: Preconditions /


Postconditions tab)
Calendar options(properties: Calendar tab)

Active tasks and tasks that have already been processed cannot be changed. However, they
can be moved as required.
If you add new Workflow tasks (either from the UC4 Explorer by using the drag and drop function, or
via the context menu -> "Add task..."), you must activate them using the context menu item "Modify
Workflow - > Activate added Task(s)." The same procedure is required for tasks that replace other
tasks. The new task's properties are checked and if they are not valid, the system sends an error
message.
Tasks that are added in the monitor are only listed in the Activity Window after they have
successfully been activated.
You can return to the monitor view by calling the commands "Modify Workflow ->Switch to monitor
mode." This command is only available if you have already activated all the new tasks. Note that
the Workflow is not automatically set to active when you return to the monitor view. You can
manually activate it by using the "Go" command.
You can identify a modified Workflow by the
symbol which is displayed in the Activity
Window's Modification flag column. In the selective statistics, you can also search for
modified Workflows.

Automation Engine

897

Modifying subordinate Workflows does not affect the parent.

Important notes

Deleting tasks:
l

You cannot remove tasks in modification mode. This rule also applies to tasks that are not
yet active or have been added. You can set tasks to inactive if they should not be processed
(Properties -> Earliest tab -> Option: active). The monitor displays the affected tasks in
white.

Replacing tasks:
l

A task that is replaced by another one is not deleted from the Workflow but is moved one line
below and set to inactive. The inserted task takes the place of this task and uses its
Calendar conditions (if available).

Deleting lines:
l

Deleted lines are not removed from the Workflow but are shown as dotted lines.

Restart:
l

The Workflow object is used for the restart. Therefore, modifications that you make during an
execution are not considered.

Script

Active Workflows can be changed by using the script function MODIFY_TASK.

Processing a Rollback
The Rollback tab is available in all executable objects that can be part of a Workflow. On the
Rollback tab you can define the actions that are required to store (by backing up) or restore (by
rolling back) a certain condition. This allows you to undo modifications that you have made in a
task in error.
A rollback process in the Automation Engine can take place only in a Workflow. This document
explains the details of the rollback process.
Backups and rollbacks are available in both custom and file-based form.
A custom rollback process involves two objects, one that is responsible for the backup and another
one that is responsible for the rollback. A file-based rollback backs up a directory or files and then
restores them in a rollback process. Both rollback types will be processed if they have been defined.
File-based backup and rollback processes are available only for Unix/Window Jobs and
FileTransfers.
Rollbacks can also be executed via script function ROLLBACK_UC_OBJECT.

898

Chapter3 Objects

Backup

When backup actions are defined, they will automatically be processed after the object has been
activated but before it runs regardless of how the object was activated. The task will start only if the
backup actions have been successfully completed.
Custom backup processes will be processed before file-based backup processes (if both kinds are
defined).
Note that the backup actions are not processed during restart!
Custom Backup
For a custom backup process, you just start the specified Backup object. While a custom Backup
object is running, it has the status "Custom Backup".
If an error occurs during the run, the task aborts with the status FAULT_CUSTOM_BACKUP. Note
that in this situation the Rollback object cannot start.
File Backup
A file-based backup process copies the directory or the files that are specified in the Rollback tab to
the following directory:
<Backup folder>/<Client>/<Date>/<RunID>/
You define the backup folder in the INI files of the agents (in the [VARIABLES] section) with the
Agent Variable UC_EX_PATH_BACKUP. By default, the system uses "..\BACKUP"
(Windows) or "../backup" (Unix) as its backup folder.
While a file-based Backup object is running, it has the status "File Backup". If an error occurs during
the run, the task aborts with the status FAULT_FILE_BACKUP. Note that in this situation the
Rollback object cannot start.

Rollback

Unlike a backup process, you can start a rollback process only for Workflow tasks that have
already ended. You can start a rollback process in one of the following ways:
l

Manually from the Workflow Monitor, and from the context menu select - Modify task - and
then Rollback.
This menu item only appears if the rollback is activated in the task properties and if the
task has already ended (normally or abnormally).

Manually from the Activity Window, either from the context menu or the Rollback button in
the toolbar

Automatically with a ROLLBACK statement that you can define in the task properties of the
Postconditions tab.

To run a rollback process, you must activate the option "Enable Rollback". This is available in
the properties of Workflow tasks in the General tab. If this option is not active, the context-menu
command does not appear, the Rollback button in the toolbar is disabled and the Post-Condition
ROLLBACK will not be processed. By default, this option is set.
Make sure that the settings are activated and defined in the Rollback tab.

Automation Engine

899

In a rollback process, the system first runs the file-based rollback (if it is available and defined) and
then the custom rollback (if defined).
Tasks that start in rollback mode have an active status and the Workflow Monitor displays them
in purple. When the rollback process is complete, the task also ends.
Starting a rollback for a sub-Workflow includes that all subordinate tasks are affected (see below
Rollback of Workflows).
Tasks without a rollback definition end with the status ENDED_ROLLBACK_EMPTY.
Rollback processes ignore the properties of the Workflow tasks (such as the latest start time).
The logical date is kept.
The Rollback object cannot start when the task has aborted with the status FAULT_CUSTOM_
BACKUP or FAULT_FILE_BACKUP. If this happens, you must resolve the errors and restart
the task.
After a successful rollback process, the task obtains the end status ENDED_ROLLBACKED.
File Rollback
In a file-based rollback process, the system copies the task's files, which are stored in the backup
folder (<Backup folder>/<Client>/<Date>/<RunID>) back to the directory that is specified in the
Rollback tab. If the option "Delete before restore" is active, the content of the destination directory
will be deleted before the rollback process takes place. This prevents copying errors. Subfolders will
be deleted only if the option Include sub-directories is active.
This procedure restores the directory to its previous status before the task has run.
While the file-based rollback process is running, the task has the status "File Rollback". If an error
occurs during the run, the task aborts with the status FAULT_FILE_ROLLBACK.
Custom Rollback

900

Chapter3 Objects

In a custom rollback process, the Rollback object that is responsible for restoring the original
working state starts. The actions of the Backup object depend on the task or the Backup object and
must be defined by the user.
While the Rollback object is running, the task has the status "Custom Rollback". If an error occurs
during the run, the task aborts with the status FAULT_CUSTOM_ROLLBACK.

Rollback of Workflows

When the task is a Workflow, the rollback process takes also place for all its subordinate tasks. The
nesting depth is not limited.
When you start the rollback process for a sub-Workflow, its subordinate tasks switch to the status
"Waiting for rollback". If this sub-Workflow includes active subordinate tasks, their states will only
be changed when the sub-Workflow has ended.
The tasks are rolled back in reversed order which means that the rollback process starts at the
Workflow's end and finishes at the Workflow's start. The same behavior applies to all subordinate
Workflows. The procedure is complete when the rollback actions of the Workflow start.
A rollback process stops when a task has been deactivated and is no longer visible in the
Activity Window. In this case, you must restart the task or skip it in order to continue the rollback
process.
The exact rollback procedure for each individual task is described above in the "Rollback"
section.
When the rollback process of a task fails (FAULT_CUSTOM_ROLLBACK /FAULT_FILE_
ROLLBACK), the rollback procedure stops at the affected branch of the Workflow. You can remove
the error and then restart the rollback process for this task.
Rollback of FOREACH Workflows
In a rollback process of FOREACH Workflows, the tasks are processed in reversed order and then,
the Workflow's rollback actions take place.
Rollback of IFWorkflows

Automation Engine

901

In IF Workflows, a rollback process takes place for the task branch that has been selected during
the last run. The Workflow's rollback actions take place afterwards.

Specific Rollback Commands

Rollback to this Task


This command is available in the context menu that can be called in the monitor of active Workflows
for tasks that have already ended (modify task).
When you use this command, the rollback path is retrieved first. This path includes all direct and
indirect successors of the task within the Workflow. Predecessors and parallel tasks are not
affected.
In a next step, the tasks that are in the rollback path obtain the status "Waiting for rollback". When a
task is active, the system waits until it has ended and only then, its status will change.
Subsequently, the rollback takes place for the relevant tasks in an order that is reversed to their
order in the Workflow. This means that the rollback starts with the last successor and ends with the
selected task.
When an error occurs during the rollback process, the execution stops at the rollback path of the
relevant task. You can now remove the error and restart the rollback process of the affected task.
Workflows that are included in the rollback path including their subordinate tasks will also be
rolled back (see Rollback of Workflows).
The rollback actions of the Workflow itself (if there are any) are not processed if you activate the
option "Rollback to this Task".
Rerun
The command "Rerun" is available in the context menu (Modify Workflow) that opens when you
right-click an empty position in the Workflow monitor. This command is only available in active
Workflows and it is only useful when this Workflow includes at least one task with the status
ENDED_ROLLBACKED.
You use the command "Rerun" in order to start all the relevant Workflow's tasks
l

whose rollback process has been successfully completed (status:ENDED_


ROLLBACKED),
whose rollback process could not take place because of missing definitions
(status:ENDED_ROLLBACK_EMPTY),
or which are waiting for the rollback process to take place (status:Waiting for rollback).

The values of the last run are used for PromptSet variables, the values of the object definition
are used for object variables.
The task properties (such as the latest start time) are considered for the command "Rerun". The
logical date is kept.

3.3 Working with Objects


3.3.1 Executing Activatable Objects
Execution with Options
Various settings are provided that can be used to execute objects manually.

902

Chapter3 Objects

By using these settings, objects can be:


l
l
l
l
l

executed immediately.
executed once at a particular point in time.
scheduled for a recurring execution.
restarted.
activated with test options.

Highlight an object in the UC4 Explorer and open the context menu command "Execute". Three
types of execution are available.
For each execution option, you can specify a particular Queue object in which the task should be
activated. The object's settings are used if no particular Queue object has been specified.

Once
[Once] [Recurring] [Restart]

You can select an immediate execution or a start at a predetermined point in time. A logical date can
be defined for both options. It is then used for Calendar conditions.
The activation time is used as the logical date if you do not specify anything.
As opposed to recurring tasks, objects that are scheduled once show the start type <ONCE>.
The checkbox "Wait for manual release" refers to an immediate execution. Once selected, the task
obtains the status "Waiting for manual release" in the Activity Window. Open the Manually release
command in the Activity Window's context menu or the Workflow monitor in order to process the
object.
If you execute objects once, you can also specify an alias. This name is then used instead of the
object's actual name in the Activity Window and in the Statistics. For an alias, you can only use

Automation Engine

903

characters that are also allowed for object names. The maximum length is 200 characters. You
cannot use predefined variables.
Using the option Manually release indicates that the script is immediately processed.
Therefore, it is only useful for Jobs because the generated JCL can be modified.

You can also select test options. They can be used to specify the way that processes are displayed
in the activation report while the script is generated. The acquired diagnostic information shows
whether a task has been correctly processed. You can compare scripting lines with the generated
JCL, you can view variable and attribute values etc.

904

Chapter3 Objects

Click OK to activate the object and the corresponding protocol opens if at least one test option has
been selected. The illustration below shows an activation report. The attribute dialog is also
displayed if the corresponding option has been checked.
Test options cause the script to be processed. The "Generate at runtime" setting which is
available in the object is irrelevant in this case.

The activation report includes an object's script statements as well as the content of all involved
Include objects (in Jobs also the Job Includes such as Header and Trailer).
A query is displayed in order to verify whether the object should start after the script has been
generated.

Recurring
[Once] [Recurring] [Restart]

Schedule objects start tasks in a defined interval. The minimum period is one day. If objects should
be processed in an interval that is shorter than a day, you can activate them by using the menu item
"Recurring".
Various settings are provided that are shown in several tabs. The time zone is specified once and
applies to all time specifications regardless of the tab. If no time zone has been specified, the
client's time zone is used. UTC is used if no time zone has been specified at all.
You can also assign an alias for tasks that start recurrently. The same limitations apply as for object
names. You cannot use variables within an alias.

Frequency tab

The Frequency tab can be used to select the interval in which the object should be processed.
For example: Every four hours

Automation Engine

Field/Control

Description

Every

Fixed interval in which the task is executed. The maximum value is 504 hours
(21 days).
For example: 0000:30
Executions take place in an interval of 30 minutes.

With a gap of
... to previous
run

Time span between the executions.


Task activation depends on how the last run ended. The last execution's end
time plus the time span add up to the next execution's start time.
The minimum value is one minute. The maximum value is 504 hours (21
days).
For example: 00:15
The last execution ended at 14:00. Therefore, the next execution starts at
14:15.

At time

Time at which the task should be executed every day.


For example: 20:00
The task is processed at 20:00 every day.

905

906

Chapter3 Objects

Allow one
overlap

This setting can be used to permit one overlapping execution.


If you use the settings "Every" and "At time", it can happen that although a task
has not yet ended, the next execution should already start. By default, no
overlapping is allowed because the number of parallel-running tasks would
increase in the course of time if several consecutive executions last longer than
the specified task. Therefore, the task starts at the next possible point in time.
Tasks that are activated using other methods (for example, Workflows) are
not affected. This setting only affects executions that are started with this
option activated.
For example:
A task starts every two hours. The next execution is scheduled for 10:30. The
task that started at 08:30 is still active at this point in time.
Example 1: Allow one overlap
The task can start at 10:30 because one overlap is allowed.
Example 2: No overlap
The execution at 10:30 is skipped because overlaps are not allowed. The next
task starts at 12:30 provided that the task that has started at 08:30 has already
ended.

Time-Frame tab

The Time-frame tab can be used to define a period in which the object should be executed.
This tab is hidden if the setting "At time" or an interval that exceeds 24 hours has been selected
in the Frequency tab.
For example: Between 06:00 and 18:00

Automation Engine

Field/Control

Description

Between ...
and ...

Start and end time during which the task should be executed.
For example: Between 08:00 and 18:00
The task is executed during this period.
For example: Between 00:00 and 23:59
The task starts throughout the day without any limitations.

907

908

Chapter3 Objects

Force
adjustment on
time frame

Execution depends on the time frame.


The task's first execution and all resulting starts can be adjusted to the
specified time frame. In doing so, the execution interval calculation is adjusted
to the time frame's start time.
This setting has the following effect if you execute tasks with a particular gap
between the executions: The task starts at the beginning of the time frame even
if the gap period has not expired.
For example:
A task should be executed in one-hour intervals in a time frame between 09:00
and 12:00. The task is scheduled for 09:20.
Example 1: Without adjustment
The task starts at 09:20, 10:20, and 11:20, and at 09:20, 10:20 and 11:20 on the
following days.
Example 2: With adjustment
The task starts at 10:00, 11:00, and 12:00, and at 09:00, 10:00, 11:00 and 12:00
on the following days.
For example:
A time gap of 30 minutes should be scheduled for two task executions. The
time frame starts at 01:00 and ends at 23:00. The task ends at 00:45.
Example 1: With adjustment
During the day, the task first starts at 01:00.
Example 2: Without adjustment
The task starts at 01:15 when the 30 minutes have expired.

Days tab

The Days tab can be used to select the days on which the object should be executed.
For example: Mondays through Fridays

Automation Engine

Field/Control

Description

Weekdays

Days on which executions are possible.

Calendar

The days on which executions are allowed are based on Calendars and
specified Calendar keywords.

909

Calendars and keywords specified here are not considered in the


search-for-use function because they are part of an activity and not of an
object.
Execute if one
condition
matches

The task is executed if the logical date corresponds to the specified


Calendar conditions.

Execute if no
condition
matches

The task is executed if the logical date does not correspond to the specified
Calendar conditions.

Execute when all


conditions match

The task is executed if the logical date corresponds to all specified Calendar
conditions.

Range tab

The date range in which the object should be executed can be specified in the Range tab.
For example: Execution starts on 29.01.2009, there is no end date.

910

Chapter3 Objects

Field/Control

Description

Start date

Date on which the task should be executed for the first time.

No end date

The task is executed until it is manually ended.

End date

Date on which the task should be executed the last time.


For example: 31.03.2009
The last time the task is executed is 31 March.

End after

Number of executions.
Allowed values: "1" to "9999"

Restart
[Once] [Recurring] [Restart]

Restarts can be used to start tasks again, thereby specifying a reference RunID and/or a restart
point. The advantage of specifying a restart point is that it is not necessary to reprocess the whole
script.
Tasks can be restarted from the Activity Window, Statistical Overview or monitors (Restart
command).

Automation Engine

Field/Control

Description

Reference
RunID

RunID of the execution that should be repeated.

Restart point

A restart point marks a point in the script where the restart should start. The
whole script is processed if no restart point has been defined.

911

Specify "0" if the restart should not refer to a particular execution.

Restart points are set using the script element :RESTART.


Keep start
type

This setting has the effect that the restart runs in the group which has been
specified in the object.
The task is immediately processed if no group has been specified in the
object.

Wait for
manual
release

The restart is not immediately processed if this option is checked. The task
obtains the status "Waiting for manual release" in the Activity window. Open
the command "Manually release" in the Activity Window's context menu or the
Workflow monitor to process the object.
Using the option Manually release has the effect that the script is
immediately processed. Therefore, it is only useful for jobs because the
generated JCL can be modified.

Restart only
aborted
children

This option is only displayed in tasks that have been started via an AgentGroup
in mode "All". Only tasks that have aborted are repeated if this option is
activated.

912

Chapter3 Objects

FileTransfer
options

This option is only available for restarted FileTransfers. Note that the restart
must be called using the object statistics.
These options are grayed out if the FileTransfer object has been changed
since the relevant execution has taken place.
l

From last restart position - The FileTransfer continues from the position
where the last restart point has been created and transfers the files that
have not completely been transferred.
Transfer all new - Number of hits is regenerated and all files are sent
from the beginning.

The test options are the same as for single executions.

See also:
Schedule
Scheduling Recurring Tasks
Restarting Executable Objects
Scheduling Recurring Tasks
The term "recurring tasks" includes all tasks which are processed in recurring periods but are not
scheduled in a Schedule object.
As opposed to Schedules, recurring tasks can be processed in intervals of less than a day. Vice
versa, a Schedule integrates several tasks of the same period in a clear, structured way.
Task periods are best used for defining the appropriate method. Recurring tasks are preferably
used for intervals of less than a day. If longer, Schedule objects should be used.
Schedule recurring tasks in the UC4 Explorer right-clicking the command "Execute with options"
and "Recurring". Three types are available:
l
l
l

Executions in a particular interval


Executions with a particular time gap in between
Executions at a particular time

Display

A period container is displayed in the Activity Window (see illustration below) when a recurring task
has been scheduled. This container controls all executions of this task.
Each recurring task has its own period container.
The period container has the same name as the task, but the object-type symbol includes three blue
dots. The type is "C_PERIOD". Period container and tasks obtain the start type "<PERIOD>".

Automation Engine

913

If a group has been specified as start type in the object itself, the execution ignores this setting.
Thus, the user who schedules a recurring task must have the right to change the object.
The period container starts tasks on the basis of the specified settings. If it has ended, it waits until
all tasks have finished and removes itself from the Activity Window. The Detail Window of its
statistical record shows how the tasks have ended. "0" signals that all tasks have ended
successfully, "1" indicates some of them aborted and "2" signals that no tasks have ended
successfully. This error indicator is reset when the log-file is changed.
The period container's log file changes every day when the time frame starts and when the
settings are changed.

Changing recurring Settings

Period-container settings can be changed at any time. This is done via the Activity Window using
the popup-menu command "Properties".
The following table shows the earliest start time of a task when the settings have been changed.
Calendar definitions, whether overlaps are allowed, possible adjustments to the time frame etc, also
play a role.
Changing to
"Every..."
l

If the last start


plus the new
interval lie in the
future, the task
starts at the
determined
point in time.
If the last start
plus the new
interval lie in the
past, the task
starts
immediately.

Changing to "With a gap of..."

If the task is being processed, the gap is


added to the end of the task which results
in a new start.
If the task is not being processed, the gap
is added to its last end. If the calculated
point in time is in the future, the task is
scheduled. If the calculated point in time
lies in the past, the task starts
immediately.

Procedure

Schedule periodical tasks as described below:


1.
2.
3.
4.

Highlight an object in the UC4 Explorer.


Right-click to open the command "Execute with options" -> "Recurring".
Specify the settings for the periodical execution in the tabs.
Click OK tab.

See also:
Executing with options

Changing to "At
time..."
l

If the time
lies in the
future, the
task starts
at this
point in
time.
If the
specified
time lies in
the past,
the task is
processed
on the
next day.

914

Chapter3 Objects

Restarting Executable Objects


Restarts repeat executions which have already taken place.

There are three main differences between starting and restarting an object:
1. Restarts use the real date and the logical date of the particular reference execution. The real
date has the effect that the task reacts as if it is executed at the real date. The logical date
affects Calendar conditions.
Because the logical date is retrieved from the reference execution, the task checks the
original execution's Calendar conditions.
The real date is also retrieved from the reference execution. Among other things, it is used for
calculating the earliest start time of Workflow tasks. The effect is that restarted Workflows
do not have waiting times because of the specified earliest start time which has already been
met when the original execution has taken place.
2. Restarting an object does not require the whole script to be executed. You can specify a
position within the script from which processing should start. This restart point can be set in
the script using the statement :RESTART. In doing so, processing steps which have already
ended successfully do not have to be repeated.
The script statement :GENERATE handles scripting blocks or individual script lines in
restarts.
3. Objects that are processed by an agent always run on the computer on which the original
execution has been started. The relevant information is retrieved from the statistics and
therefore, it is irrelevant if the object has been modified or if agent groups are used.
Workflows: AgentGroup agents are newly retrieved if the top Workflow is restarted. If you
restart subordinate Workflow, the agents are assumed from the statistics if the option "Reusing AgentGroup calculation" is activated in the Workflow's Attributes tab.
You must not repeat restarted tasks because these activities are difficult to trace.
The original execution's RunID is shown in the Detail Window.
Refer to the Getting Started chapter in the UC4 Documentation. It describes how a restart
works.
Activate the attribute dialog in the Test options tab if attributes such as the agent should be
changed. Changes only apply for restarts.
Inherited object variables that are not defined in the task require the task still to be displayed in
the Activity Window in order to be available for restarts.

Display

Restarts and their original executions have specific status symbols:

Repeated executions
Restarts

Latest restart of an execution

The following illustration shows a task with the RunID 2384085. It has been repeated twice:

Automation Engine

915

Procedure

Tasks can be restarted from the Activity Window, the statistical overview or monitors:
1. Right-click the task and select the Restart command. A dialog opens in which you can make
your specifications.

2. The "Restart"option is automatically checked in the Parameter tab. The Reference RunID is
the running number of the task that should be repeated. By default, the field is completed
with the highlighted task's RunID or with the original execution's RunID if you opted for a
restart.
3. The restart point defines a point in the script from which the restart should start. The whole
script is reprocessed if this field does not include a specification.
4. Select whether the start type should be kept (for example, the restart should run in the group
that is defined in the object).
5. The task is not immediately restarted if you activate the Wait for manual release option.
Tasks that have been started in the mode "All" via an AgentGroup also provide the setting
"Restart only aborted children". Only aborted tasks are repeated if you activate this option.
6. Select a Queue object in which the object should be restarted.

916

Chapter3 Objects

7. Additional options are available for FileTransfers. These options are only available if you
restart the task by using the statistics.
8. Click OK. The task is immediately restarted unless the checkbox "Wait for manual release"
is checked.
The "Execution with Options" command in the UC4 Explorer's context menu also opens this
dialog.
The minimum interval to be scheduled is a day. You can use the "Execution with Options"
command if an object should start more often.

Script

The following script elements facilitate the configuration and automated execution of restarts:
:GENERATE

This controls the processing of scripting lines during the execution


of a script.

:RESTART

This is used to set restart points in an executable object.

RESTART_UC_
OBJECT

Repeats the execution of a task.

SYS_ACT_RESTART

Retrieves whether the object has been activated in restart mode.

SYS_ACT_RESTART_
ME_NR

Returns the run number (RunID) of an object that has been


activated in restart mode.

SYS_LAST_RESTART_
POINT

Supplies the name of the previous restart point in the script.

SYS_LAST_RESTART_
TEXT

Supplies the text of the previous restart point as defined in the


script.

SYS_RESTART_POINT

Supplies the restart point from which the object will be executed.

See also:
Execution with options
Status Symbols of Tasks
Various overviews show task statuses with symbols (such as the Activity Window or statistical
overviews).

Status
Symbol

Description
Task is active.
Task ended normally.
Task ended abnormally or was canceled manually.
Task was halted.
Task is blocked.

Automation Engine

917

Task remained inactive. For example, it was skipped due to a condition which
did not occur.
Task is in status "sleeping" (e.g. Events).
Task is waiting for Sync.
Task is scheduled for a Group.
Task waits for an external task.
Task is in a general waiting condition (e.g. "Waiting for host", "Waiting for start
of parallel task" etc.).
The task is waiting for the start time.
The task waits for the end of one or several parallel task(s).
The task waits to be manually released.
This symbol is used in the statistical overview. It is used for running tasks
which end status is not yet known.
Restarted tasks show an additional symbol.
Archive Keys
Two freely-defined archive keys can be specified in the Header tab of each executable object.
They are displayed in the UC4 Explorer, in the Activity Window and the Statistics in extra columns.
Use the search function to have only particular objects displayed in these windows.
The archive keys themselves do not directly influence UC4. They can be set or read with the script
elements PUT_ATT and GET_ATT and the parameters ARCHIVE_KEY1 and ARCHIVE_KEY2.
By doing so, the archive keys can finally be used for handling further processing.
Examples:
:PUT_ATT ARCHIVE_KEY1 = "MM"
:SET &second_archive_key# = GET_ATT(ARCHIVE_KEY2)

Object Properties
Properties include general information about the object itself and the assignment of
authorizations on object level.

General
[General] [Authorizations]

This tab provides basic information, the content depending on the selected object type and external
circumstances. The corresponding fields are not displayed if the object is not open, has no title or is
not executable.
The properties window shows the button Reset which can be used to reset an open flag if a user
has opened an object for editing purposes.

918

Chapter3 Objects

Authorizations
[General] [Authorizations]

This is a very strong protection which should only be used in exceptional cases. All users with
the relevant authorization profile can access the object unless other access rights have been
defined.
The Administration Guide provides more detailed information about authorizations on object level.

Automation Engine

919

The privilege "Authorizations" is required to assign authorizations on object level.


UC_CAUSE* ReadBuffer Variables
In some situations it is helpful to use the scripts of executable objects to read specific variables
from the read buffer. The supplied values are derived from the activating object.
Values for read buffer variables are only available if the object has been activated via:
l
l

l
l

l
l

An executable object - Runtime tab - Else: Execute


Workflow, RemoteTaskManager, Schedule - Attributes tab - Result evaluation per single
task - Else
Notification - Attributes tab - Escalation - Notification
Workflow - Properties - Tabs: Checkpoint, Dependencies, Runtime, Result, Preconditions,
Postconditions and External dependency
Schedule - Properties - Tabs: Runtime and Result
UC_HOSTCHAR_DEFAULT - EXECUTE_ON*

If the task has been activated in a different way, the variables do not include a value.
The following read buffer variables are available:
l
l

UC_CAUSE_NAME - The name of the causing task (= the task that has started the object).
UC_CAUSE_NR - The RunID of the causing task.

920

Chapter3 Objects
l
l

UC_CAUSE_STATE - The status of the causing task.


UC_CAUSE_RETCODE - The return code of the causing task.

You can retrieve the values using the script statement :READ. The following example reads all
variables and then outputs their values in the report:
:READ
:READ
:READ
:READ

&UC_CAUSE_NAME,,
&UC_CAUSE_NR,,
&UC_CAUSE_STATE,,
&UC_CAUSE_RETCODE,,

:PRINT
:PRINT
:PRINT
:PRINT
:PRINT

"Causing task:"
"Name: &UC_CAUSE_NAME"
"RunID: &UC_CAUSE_NR"
"Status: &UC_CAUSE_STATE"
"Return code: &UC_CAUSE_RETCODE"

Notification objects of type ALARM include a script which can be used to read this data and
write it to the Notification text.

3.3.2 Reading and Modifying Attributes


Attributes
Attributes refer to the specifications and entries that can be made in the tabs of individual
objects.
Some attributes are available in every executable object (such as the attributes for the archive keys
of objects). Jobs contain some platform-independent attributes such as host attributes and login
information, other attributes are object specific or refer to a particular platform (jobs).
You can use the attribute dialog which is available in jobs and file transfers to set specific attributes
only when the object is activated.
Objects
Notification

Cockpit

Event

FileTransfer

Group

AgentGroup

Job

RemoteTaskManager

Schedule

Script

Workflow

Attributes can be read and set at the object's runtime. This is possible in different ways:
1. Some executable objects allow user interaction and when they are activated, you can
access their attributes via an attribute dialog.
2. For executable objects, you can also use script elements to access their attributes. You use
the script function GET_ATT to read attributes and :PUT_ATT to set attributes. The UC4
Documentation provides several documents that describe the attributes that are available.
All of them include an "Access via" column that informs you which script element you can
use.
3. UC4 provides specific variables that also include values of attributes. These predefined
variables can be used in attribute fields or in UC4 Script. To select them, you can use the
Variable Selection dialog. Attributes whose values are accessed by using these
placeholders are flagged with the term "predefined variable" in the "Access via" column.
4. Some attributes can be set directly without using :PUT_ATT. Enter a script variable in the
object's relevant fields. This variable is replaced by the value that has been specified in the

Automation Engine

921

Process or Pre-Process tab or an object variable before the object is processed. The
documents that describe the attributes which can set values in this way show the comment
"via script variable" in the column "Accesses.
For example:
The working directory of a Windows job should be set using the script variable "&directory#".
Enter the script variable in the field working directory of the Windows tab.

The job script fills the variable:


:SET &directory# = "C:\temp"
Alternately, you can specify the object variable "directory#" to set the attribute.
Note that attributes can have different maximum lengths. When replacing the script variable by a
value, the system does not check the value's length but truncates it to the relevant attribute's
maximum length.

UC4.DBChange

Some attributes can also be changed by using the utility UC4.DB Change.
An exception applies for attributes that allow the values "Y" and "N". These two letters cannot
be assigned to the utility UC4.DB Change. In this case, UC4 recommends using the number "1"
instead of "Y" and "20" instead of "N".
You cannot assign abbreviations to UC4.DB Change. Always use complete attribute names
(such as "GROUP" instead of " S").
This utility can also be used to modify object variables. Do so by specifying the name "VALUE"
followed by a colon and the object variable's name.
You can also change folder names by using the utility UC4.DB Change. In this case, the
corresponding attribute is FOLDER_NAME.
Attribute Dialog
When activating an object, you can dynamically determine its attributes for the current run.
For this purpose, you must activate the check box Attribute Dialog in the relevant object's
Attributes tab.

922

Chapter3 Objects

The attribute dialog is provided by specific Include objects that are supplied in the system client
0000. These Includes are called and read in the job's Header.
You can select an attribute dialog in the following objects:
Executable Object

Include

Include Call

FileTransfer

ATTRDIA.FT

Standard program call

BS2000 Job

ATTRDIA.BS2000

HEADER.BS2000

GCOS8 Job

ATTRDIA.GCOS8

HEADER.GCOS8

JMX Job

ATTRDIA.JMX

HEADER.JMX

MPE Job

ATTRDIA.MPE

HEADER.MPE

NSK Job

ATTRDIA.NSK

HEADER.NSK

Oracle Applications Job

ATTRDIA.OA

HEADER.OA

z/OS Job

ATTRDIA.MVS

HEADER.MVS

OS/400 Job

ATTRDIA.OS400

HEADER.OS400

PeopleSoft Job

ATTRDIA.PS

HEADER.PS

RA Job

ATTRDIA.CIT

HEADER.CIT

SAP Job

ATTRDIA.SAP

HEADER.SAP

SAP BW Job

ATTRDIA.SAPBW

HEADER.SAPBW

Siebel Job

ATTRDIA.SIEBEL

HEADER.SIEBEL

SQL Job

ATTRDIA.SQL

HEADER.SQL

UNIX Job

ATTRDIA.UNIX

HEADER.UNIX

VMS Job

ATTRDIA.VMS

HEADER.VMS

Windows Job

ATTRDIA.WINDOWS

HEADER.WINDOWS

You can adjust these Include objects in order to have only particular attributes displayed for
modification. You can do so by opening the relevant Include object in client 0000 and removing the
:READ statements that are not required. Note that you can only store this Include object in your
own client. The result is that there is one Include object in client 0000 and one in your current client.
The system's program logic uses the object of your client even if there is an object of the same
name in client 0000.
An input dialog opens when the object starts (see below job) and prompts you to configure all
attributes:

Automation Engine

923

The following attributes can be changed in every object:


l
l
l
l
l
l
l

Group
TimeZone
UC4 priority
Int. Account
Host (only in jobs)
Login (only in jobs)
Queue

Note that you cannot specify a code table in an attribute dialog.


The attribute dialog is not displayed when "Generate at runtime" is activated in the Attributes
tab.

See also:
Attribute

3.3.3 Reports
About Reports
As long as the UC4 system is active, statistical data is written, and reports are logged. This
information tracks all processes, and allows you to control and monitor UC4 activities. This
ensures the auditing ability of UC4.

924

Chapter3 Objects

Reports are kept until they are explicitly removed by a reorganization run. Reports can be handled
independently of Statistical data. This enables you to erase reports while keeping the statistics
(reports consume a large amount of hard drive space).
Reports are created for the following:
l
l
l

Reports for Executable Objects


Reports for Servers and Agents
Extended Reports

The reports for servers and agents are continuously created and archived. This cannot be avoided.
The reports for executable objects can be customized in order to store external reports in UC4.
External reports in the form of job reports for UNIX, SAP, Windows and so on as well as SYSOUT
and SYSLST for BS2000 are currently only supported by the Job object. They log the execution of a
job in the target system. If selected in the Host Attributes tab, the logs of the execution are stored
in UC4. In a UC4 Variable you can define the number of a job report's lines that are transferred to the
UC4 Automation Engine for each host and host characteristic.
All reports are displayed in tabs. The names of the tabs vary depending on the type of the report.
Some object types can have more than one tab.
When you open huge reports, their contents are split up to several pages. Use the arrows to change
to another page or to view the beginning or end of the report. Such large reports can emerge, for
instance, from long-running UC4 servers or agents. It can be helpful to look at the end of the report.
Note that extra-large reports are truncated when exceeding a certain size. Nevertheless, the last
report block is always transferred so that the end of the report can be seen.

You can print and/or preview reports by using the commands Print and Print Preview from the menu
File of the UserInterface or the button from the tool bar.
You can also store the report in a file. The content of the active tab is used for this purpose. Use the
commands Export to file... in the tab's context menu, or in the menu Edit of the UserInterface. A file
dialog displays in which you can enter the file name and the storage location.

Automation Engine

925

You can search for strings within a report. You can also copy the whole report or parts of it into other
applications by using the Windows Clipboard. These functions are available in the context menu,
the corresponding menus or in the toolbar buttons of the UserInterface.
Report Types
The following table provides an overview of the various available UC4 report types.

Short name

Description

ACT

Activation report

CLNT

Client report

LOG

Runtime report

LST

SYSLST report for BS2000 jobs

OBJ

Object report

OREP

Output-Scan report (Jobs, FileTransfers and


RemoteTaskManager)

PLOG

Agent report

POCO

Report of the Postconditions of Workflow tasks

POST

Post-Process report

PP

Internal report

PRCO

Report of the Preconditions of Workflow tasks

REP

Job report

REV0

Script report

REV1

JCL report

REV2

Object access report

SAPL

Application report for SAP jobs (ABAP jobs)

SJJI

Statistics report for SAP jobs (Java Scheduler Jobs)

SLOG

SAP system log report for SAP jobs

SREP

Structured job report

SSPL

Spool directory for SAP jobs (ABAP jobs)

SSTC

Statistics report for SAP jobs (ABAP jobs)

SSTP

Step list report for SAP jobs (ABAP jobs)

XML
report

Registered Job Output


In Jobs, you can register files that are stored on the agent computer or can be accessed from
there. You can directly open or store these files via the UserInterface after the Job has been
executed. You can access them by using the Directory tab in the report dialog.

926

Chapter3 Objects

Output files can be registered either in the Output tab of Job objects (Windows, UNIX, SAP,
RA, JMX, and SQL)or by using the script element :REGISTER_OUTPUTFILE (only for
Windows and UNIX Jobs). This function is not available for any other Job types.
The Output tab displays all registered output files and the default outputs such as report, script, JCL
etc. The agent can now retrieve them and you can open or store them via the UserInterface. The file
size is decisive for the time that it takes to transfer the files. The "Download..." column displays the
progress. A warning is displayed if a file exceeds 10 MB provided that this type of check-back has
been activated in the UserInterface settings.
The Directory tab is displayed in the Report window of all executable objects. Therefore, you
can retrieve the default outputs of all object types (such as the activation protocol) from the
database and open them with an external program.
Output files can only be opened if the UC4 user has the relevant authorization ("P") to access
the Job and external reports (type: "EXTREP") for the particular file and the Agent.
Files that have been registered by using the option "Requires User's Login" can only be opened
by users that can log on to the agent with their default login.
To open reports and files in this tab, the Job's agent must be of version 9.00A or later.

Column

Description

File

Path and name of the registered output files and


the Job report file (if it exists as a file).
This column is empty if the information is stored in
the UC4 Database (default Job output).

Type

Type of Job output.


Possible values: "Activation", "Script", "Object
access", "External Job output", "JCL", and
"Report"

Automation Engine

927

On Agent

File that is stored on the agent computer or can be


accessed from it.

In UC4 DB

Information is stored in the UC4 Database (only for


the default Job output).

Download status

Bar that displays how the file transfer proceeds.

Requires Users Login

This field indicates whether the Login object that


has been assigned to the user (User tab - default
Login) is used to access the Agent. Only available
for the type "External Job output".
You can set this option either in the Job by using
the Ouput tab or through the script element
:REGISTER_OUPUTFILE.

The following commands are available in the toolbar or the context menu if you select a Job output
line in the table:
Command

Description

Open

Opens the file with the external program that has been
determined on the OS for the particular file extension
(such as *.PDF- Adobe Reader). Job output that is
stored in the UC4 Database (such as JCL) always
opens with the default text editor.

Open as text...

Opens the Job output with the default text editor (for
example, Windows - Notepad).
A dialog is displayed in which you can specify the
maximum number of pages or lines that should be
displayed. Specify the number of pages for default Job
outputs (such as reports, JCL etc.) and the number of
lines for external files (type: External Job output).

Download

Stores the file to a local directory of the computer on


which the UserInterface runs. This directory can be
selected using a separate dialog.

928

Chapter3 Objects

Cancel

Cancels the file transfer.


Files that have not been completely transferred are not
automatically deleted from the hard disk.

Refresh

Refreshes the display.

See also:
Output tab

Report for Executable Objects


The statistical data of executable objects are supplemented by reports. They complete the
auditing ability of UC4.
External and internal reports are available for executable objects.

The external reports give a complete summary of the execution in the target system. External
reports in the form of job reports for UNIX, SAP, Windows etc. as well as SYSOUT and SYSLST
for BS2000, are currently restricted to the Job object. If there are no technical limitations and the
corresponding box in the Host Attributes tab is checked, the logs for the execution are stored in
UC4.
By default, UC4 creates internal reports for all other executable objects, or upon entering particular
conditions. These conditions can be the canceling or the modification of a Job, for example.
Modifying the status (STOP/GO) of a job can result in an entry in the internal report.
Calling the Report

Automation Engine

929

Menu File, Command Last Report of


the UserInterface

The report of the last execution of the object highlighted


in the UC Explorer is displayed.
If there is no report, the most recent report is searched.

Right mouse button on the object in


the UC4 Explorer

Click Last report in the context menu.


If there is no report, the most recent report is searched.

Right mouse button on the object in


the Activity Window

Select the command Report from the context menu.


The report of the object's current execution is displayed.

Right mouse button on the object in


the Statistics Overview

Select the command Report from the context menu.


The report of this object's execution is displayed.
If there is no report, an error message is printed.

Influence of the Authorization System


Authorizations

Right S - Access to the statistics.


Right P - Access to reports.

Privileges

Privilege "Access to selective statistics"

See also:
About Statistics
About Reports
Special Reports for SAP Jobs

UC4 and XBP 2.0

An SAP system log plus is available in addition to the job report if you use the UC4 Interface and
XBP 2.0.
An additional report tab can be displayed for canceled SAP Jobs. It contains current messages of
the SAP system log, which facilitates error analyses as referring to the SAP system which is no
longer necessary.
This report type is called SLOG and can also be used in the script element PREP_PROCESS_
REPORT.
The UC4 administrator can handle this complex tab with the parameters provided in the SAP
agent'sConnection object. For example, the number of current SAP system log messages which
should be output in the report can be reduced.
Deactivate the creation of reports if you do not need abstracts of the SAP system log in UC4 .

XBP 3.0

Further reports are available if XBP 3.0 is used:


l
l

Application logs
Spool directory

930

Chapter3 Objects
l
l

Step lists
Statistics

In the SAP Job, SAP tab, you can select the reports the agent should store in the statistical
record.
The additional reports include data in the form of XMLs which offers two advantages. Firstly, you
can determine the content and the graphical display via stylesheets. Secondly, you can easily read
the individual values using the XML script elements.
Note that report data can be very complex and can have adverse effects on performance. Only
select the report types you really need and reduce their contents via stylesheets.
Report for Servers and Agents
Data that is collected between the start and the end of a UC4 server or agent is stored in reports.
These reports can be used to analyze errors that might occur.
A server or agent report includes:
l
l
l

l
l
l

The INI-file content.


Data that refers to the start of the server processes or agents.
Data about the connection establishment or disconnection between the UC4
AutomationEngine, agents, and UserInterfaces.
Data about the processing of tasks, and task states.
Access administration messages in the context of the authorization system.
Data about the end of a Server process or an agent.

Automation Engine

931

Calling the Report


Menu File, Command Report in the
UserInterface

The current report of a server or agent that is highlighted


in the System Overview displays.

Right-click the Server or Agent in


the System Overview

Select the command Report in the context menu.


The current report displays.

Right-click the Server or Agent in


the Statistics Overview

Select the command Report in the context menu.


The stored report for the server's or agent's current
runtime displays.

Influence of the Authorized Systems


Authorizations

Right S for type SERV - Access to statistics on servers.


Right P for type SERV - Access to reports on servers.
Right S for type HOST - Access to statistics on agents.
Right P for type HOST - Access to reports on agents.

See also:
About Statistics
About Reports
Client Reports
Clients also have reports which include all actions affecting the particular client.
Client reports contain:
l
l
l
l

a client's start and stop times,


tasks that cannot be processed during a client stop
or are released despite of a client stop,
details about import procedures.

932

Chapter3 Objects

Calling the Report


Menu File, command Last Report of the
UserInterface

The current report for a Client object highlighted in the


UC4 Explorer is displayed.

Right mouse button on the object in the


UC4 Explorer

Select the context menu command Last report .

Right mouse button on the client in the


Statistics Overview

Select the context menu command Report.


The current report is displayed.

Right mouse button on the client in the


Statistics Overview

Select the context menu command Report.


The stored report for this client's runtime is displayed.

Influence of the Authorization System


Authorizations

Right S for type CLNT - access to statistics on clients


Right P for type CLNT - access to reports on clients

Privileges

Privilege "Access to selective statistics"

See also:
About Statistics
About Reports
Extended Reports

About Extended Reports


Extended reports can be created for the areas shown below in order to provide substantial
auditing data:
l
l
l

Extended Report for Script


Extended Report for JCL
Extended Report for Object Access

In the UC4 Variable "UC_CLIENT_SETTINGS", the UC4 administrator can make client-wide
specifications if and which extended reports should be created in addition to the standard reports.
Extended reports can be activated or suppressed for all individual tasks. In the Header tab of
executable objects, you can specify whether client-wide settings for tasks apply or if all or no
extended reports should be created. If the option All is selected, extended reports are also created
for tasks even if no entry for extended reports was made in the UC4 Variable.

Extended Report for Script


The extended report contains the task's entire script. This includes the contents of all Includes
(header, trailer, user-defined Includes, etc.), Pre Script, Script and Post Script. Comment lines
are not logged.

Automation Engine

933

The respective segments of the extended report form a block. There is a beginning and end line
which are marked with four asterix. The first line contains information, for example the creation date
of an Include or the client from which the Include is used.
Creating extended reports can be suppressed per script statement for part of the script. All script
lines between :EXT_REPORT_OFF and :EXT_REPORT_ON are not logged. This also affects the
contents of Includes, which are called in the suppressed script lines. A comment line is created
stating the number of suppressed script lines.
For Includes, which are called with the script statement :INC, the creation of extended report can
also be suppressed with the parameter EXT_REPORT_OFF. The contents of the Include is not
logged. A comment will be output in the extended report.

See also:
About Extended Reports

Extended Report for JCL


The extended report contains all job attributes and the generated Job Control Language (JCL).
This extended report is created exclusively for Jobs.

934

Chapter3 Objects

The first segment summarizes all attributes with which the job was executed. The generated JCL is
output to a second segment. It also contains all entries which were queried by the user upon
activation (for example in the attribute dialog or via :READ statement) as comment lines.

See also:
About Extended Reports

Extended Report for Object Access


All accesses to UC4 objects are logged in the extended report.

Automation Engine

935

At the time, only accesses to UC4 Variables with the script statements GET_VAR, :PUT_VAR and
:DELETE_VAR are logged. Each object access is displayed as a line in a table with the following
data:
l
l
l

Action with which the object was accessed


Object accessed
Content of the UC4 Variable, which was read, written or deleted

See also:
About Extended Reports

3.3.4 Return Codes


System Return Codes of Executable Objects
Various return codes are set while executable objects are processed. A value range between
1000 and 2000 is reserved for these system return codes. The system return code is linked to a
specific job status.

System return codes and Assigned Task States in the Workflow / Schedule
[System return codes] [Task Status] [Manual Modification]

In Workflows, a task responds to a preceding one. The condition or task status to which a preceding
task responds can be selected in the properties dialog of the object'sDependencies tab.
Example:
You can define in a Workflow task that it must only run if its preceding task has ended with ANY_
SKIPPED.
ANY_SKIPPED combines conditions that correspond to the return codes 1920, 1922, 1930, 1931
and 1940 (table 1). Accordingly, the task runs if the preceding task ended with one of the following
conditions (table 3): ENDED_INACTIV (1920), ENDED_INACTIVE (1922), ENDED_SKIPPED
(1930), ENDED_SKIPPED (1931) or ENDED_TIMEOUT (1940).
In Workflows, the following states are also possible:
l
l
l

ENDED_INACTIVE_MANUAL (equilvalent to 1922)


ENDED_INACTIV (equilvalent to 1920,1921,1922)
ENDED_OK_OR_INACTIV (equilvalent to 1900,1920,1921,1922)

The following two tables list all available conditions or task states and their meanings.
Task
Status/Condition

Description

System return code

ANY_ABEND

The preceding task ended abnormally.


ANY_ABEND combines all conditions with
return codes between 1800 and 1899.

1800-1899

ANY_ABEND_
EXCEPT_FAULT

Conditions of ANY_ABENDwithout
FAULT*

1800-1815, 1850-1899

ANY_EXCEPT_
FAULT

Conditions of ANY_ABEND and ANY_OK


without FAULT*

1800-1815, 1850-1999

936

Chapter3 Objects

ANY_OK

The preceding task ended without errors.


ANY_OK combines all conditions with
return codes between 1900 and 1999.

1900-1999

ANY_SKIPPED

The preceding task has been skipped.


ANY_SKIPPED is a listing of certain
conditions
(these conditions are also available in ANY_
OK).

1920,1922,1930,1931,1940,
1941, 1942

ENDED_CANCEL The preceding task has been canceled.


The job itself or the whole Workflow can
have been canceled.

1850,1851

ENDED_EMPTY

The preceding task is empty.


The activation has ended without an error
message (STOP NOMSG - script
statement).

1910

ENDED_INACTIV

The preceding task is inactive.

1920, 1912, 1922

ENDED_
INACTIVE_
OBJECT

The task is inactive because of its object


definition.

1925

ENDED_NOT_OK

The preceding task has been aborted (return


code <> 0).

1800

ENDED_OK

The preceding task has ended normally


(return code = 0).

1900

ENDED_OK_OR_
EMPTY

The preceding task has ended normally or is


empty.

1900,1910

ENDED_OK_OR_
INACTIV

The preceding task has ended normally or is


inactive.

1900,1920,1922

ENDED_
ROLLBACK_
EMPTY

No rollback defined.

1913

ENDED_
ROLLBACKED

Task was rolled back successfully.

1904

ENDED_
SKIPPED

The preceding task has been skipped


because of a WHEN clause.

1930

ENDED_
TIMEOUT

The preceding task has not been executed


because of a timeout (WHEN clause).

1940

ENDED_
UNDEFINED

The preceding task has ended in an


undefined manner (the agent has ended
prematurely).

1815

ENDED_
VANISHED

The preceding task has vanished.

1810

ENDED_WF_
ROLLBACKED

Workflow was rolled back successfully.

1905

Automation Engine

FAULT_
ALREADY_
RUNNING

The Groupis already running.

1822

FAULT_
CUSTOM_
BACKUP

Error in custom backup

1825

FAULT_
CUSTOM_
ROLLBACK

Error in custom rollback

1827

FAULT_FILE_
BACKUP

Error in file backup

1826

FAULT_FILE_
ROLLBACK

Error in file rollback

1828

FAULT_
HOSTGROUP_
ROLLBACK

Error in AgentGroup rollback

1829

FAULT_
ROLLBACK

General error in rollback

1830

FAULT_NO_
HOST

The preceding task could not start because


the host is not available.

1821

FAULT_OTHER

The preceding task could not start because


of another error.

1820

937

You can supplement conditions and task states that are predetermined by the system by adding
user-defined ones. The following examples show five conditions that are not based on system
return codes. They use user-defined return codes.
Task
Status/Condition

Description

User return
code

USER_100_200

The preceding task has ended with a user return code


between 100 and 200.

0100-0200

USER_147

The preceding task has ended with the user return code
147.

0147

USER_201_299

The preceding task has ended with a user return code


between 201 and 299.

0201-0299

USER_300

The preceding task has ended with the user return code
300.

0300

USER_500_600

The preceding task has ended with a user return code


between 500 and 600.

0500-0600

System return codes and Assigned Task States During Execution


[System return codes] [Task Status] [Manual Modification]

938

Chapter3 Objects

A task can show various conditions while it is being processed. These conditions correspond to a
specified return code.
System return
code

Task Status/Condition

1300

Preparing

1510

Transferred

1520

Ready for transfer (before Connect)

1521

Ready to be transferred

1529

Ready for generation

1530

Ready for start

1531

To be called

1540

Start initiated

1541

Checking

1542

Calling

1543

Unknown

1544

Inconsistent

1545

Started

1546

Connecting

1547

Inconsistent RemoteTaskManager

1550

Active

1551

Transferring

1552

Called

1553

Accepted

1554

Sampling Files

1556

Escalated

1557

Custom Backup

1558

FileBackup

1560

Workflow is blocked.

1561

STOP - Client-wide stop of automatic processing.

1562

HELD - Manual stop has been set.

1563

STOP - Automatic processing has been stopped.

1564

STOP - Queue processing has been stopped.

1565

Finished sending task

1569

Skipping Sync

1570

Skipping

1571

Canceling

Automation Engine

1572

Generating

1573

Generated

1574

Post processing

1575

Ending

1576

Regenerating

1578

Scanning Files

1579

Scanning Reports

1580

Resolving variables

1581

Checking Postconditions

1582

Checking prompt values

1583

LOOPING

1599

Alive user view

1600

Internal checking

1650

Custom Rollback

1651

File Rollback

1652

AgentGroup Rollback

1653

Workflow Rollback

1655

Waiting for Rollback

1681

Waiting for User

1682

Waiting for continuation of variable resolving

1683

Waiting for user input

1684

Waiting for Queue slot (max. parallel tasks exceeded)

1685

Waiting for post processing host

1686

Waiting for start of AgentGroup container

1687

Waiting for end of parallel AgentGroup tasks

1688

Waiting for the host of an AgentGroup.

1689

Waiting for resource (max. FileTransfers exceeded)

1690

Waiting for external precondition

1691

Waiting for remote system

1692

Waiting for remote SYNC

1693

Waiting for manual release

1694

Waiting for resource (max. Jobs exceeded)

1695

Waiting for restart time

1696

Waiting for host

1697

Waiting for SYNC

939

940

Chapter3 Objects

1698

Waiting for start time

1699

Alive

1700

Waiting for predecessor

1701

Sleeping

1702

Not yet called

1703

Waiting for Preconditions

1705

CHANGING_LOG

1709

Waiting for end of parallel task

1710

Registered

1711

Queued

1800

ENDED_NOT_OK - Aborted

1801

ENDED_NOT_OK - Aborted because of SYNC condition

1802

ENDED_JP_ABEND - Not executed because of abnormal Workflow end.

1810

ENDED_VANISHED - Disappeared

1815

ENDED_LOST - Ended undefined (host terminated prematurely)

1820

FAULT_OTHER - Start impossible. Other error.

1821

FAULT_NO_HOST - Start impossible. Cannot reach host.

1822

FAULT_ALREADY_RUNNING - Task is already running

1823

FAULT_POST_PROCESSING - Error in post processing

1824

FAULT_POST_CONDITION - Error in Post-Condition.

1825

FAULT_CUSTOM_BACKUP - Error in custom backup

1826

FAULT_FILE_BACKUP - Error in file backup

1827

FAULT_CUSTOM_ROLLBACK - Error in custom rollback

1828

FAULT_FILE_ROLLBACK - Error in file rollback

1829

FAULT_HOSTGROUP_ROLLBACK - Error in AgentGroup rollback

1830

FAULT_ROLLBACK - General error in rollback

1850

ENDED_CANCEL - Manually canceled.

1851

ENDED_JP_CANCEL - Workflow canceled manually.

1852

Rejected

1853

ENDED_QUEUE_CANCEL

1854

ENDED_CONTAINER_CANCEL

1856

ENDED_ESCALATED - Aborted due to escalation

1860

Notification failed

1898

Blocked

1899

Status blocked manually removed.

Automation Engine

1900

ENDED_OK - Ended normally

1901

Confirmed

1902

ENDED_QUEUE_END (status for subordinate tasks of an SAP job that


has been ended)

1903

ENDED_CONTAINER_END (status for tasks of an AgentGroup that has


been ended)

1904

ENDED_ROLLBACKED - Task was rolled back successfully

1905

ENDED_WF_ROLLBACKED - The Workflow was rolled back


successfully.

1910

ENDED_EMPTY - Task is empty (STOP NOMSG)

1911

ENDED_TRUNCATE - Transfer incomplete because of the line limit.

1912

ENDED_EMPTY - Nothing found

1913

ENDED_ROLLBACK_EMPTY - No rollback defined.

1919

ENDED_INACTIVE - Inactive due to logical date condition of external


dependency

1920

ENDED_INACTIVE - Inactive today because of the Calendar.

1921

ENDED_INACTIVE - Task is not active because of the definition.

1922

ENDED_INACTIVE - Task has manually been set inactive.

1923

Deleted

1924

UNPROCESSED

1930

ENDED_SKIPPED - Skipped because of WHEN clause.

1931

ENDED_SKIPPED - Skipped because of SYNC condition.

1932

ENDED_SKIPPED - Schedule ended prematurely.

1933

ENDED_SKIPPED - Skipped because of conditions

1940

ENDED_TIMEOUT - Not executed because of timeout (WHEN clause).

1941

ENDED_TIMEOUT - Start time exceeded.

1942

ENDED_TIMEOUT - Ended untimely.

1944

ENDED_TIMEOUT - Period stopped

1960

Benachrichtigung erfolgreich

1970

Operation erfolgreich

1999

SYNC check passed.

Manual Modification of Task States


[System return codes] [Task Status] [Manual Modification]

941

942

Chapter3 Objects

During the execution of tasks, you can also change the task's current status manually. Right-click
the task in the Activity Window and select the popup-menu command Modify state manually. You
can assign a new status to the task in the dialog window.
Use this function only in exceptional cases.

See also:
User return codes of Executable Objects
Activity Window
User Return Codes of Executable Objects
Individually defined return codes can be used in addition to system return codes. The names of
the corresponding states are easily selectable (such as USER_100 with the user return code
100).
These user-defined states can be used in workflows and schedules. They are defined in the Result
tab (Schedule) and Post Conditions tab (Workflow) in the form of expected end states. You can
also define states in the Dependencies tab (Workflow) in order to react to return codes of preceding
tasks.

Defining User Return Codes


User-defined return codes and their status descriptions are stored in the table UC_ZUTYP. Modify
or extend them in this UC4 Database table. The returned code must be below 1000 and have 4
digits with leading zeros. Use alpha-numeric character chains for status descriptions. User return
codes can be selected in all clients.
Examples:

Automation Engine

943

Task
Status/Condition

User Return
Code

Description

USER_100

0100

An individual user return code (100) is assigned to the


task status USER_100.

USER_200_300

0200-0300

A range of user return codes (200-300) is assigned to the


task status USER_200_300.

USER_301_401_
501

0301,0401,0501

A listing of return codes (301, 401 and 501) is assigned to


the task status USER_301_401_501.

Setting User Return Codes

Script

User return codes can be specified using the script statement :EXIT. If the option Generate at
runtime has been activated in the Attributes tab, you can react to user-defined return codes within
a Workflow.
Reacting to conditions that a generated job can encounter in the target system is possible via the
setting and evaluation of user return codes. Job Messenger calls in the Job Trailers depend on
whether a job ended normally or abnormally. If the job was canceled, the Job Messenger assumes
the specified return code.

Windows

You can set a particular return code within a Job. With this return code being specified, the job ends
abnormally. The following syntax applies:
SET RETCODE=nnn
GOTO RETCODE
Instead of a fixed value, the MSDOS error variable "Errorlevel" can also be used. Of course, this
depends on the specifications of the operating system. The following syntax applies:
SET RETCODE=%ERRORLEVEL%
GOTO RETCODE

UNIX

A job in UNIX can be terminated with the statement EXIT nnn at any time.

BS2000

The BS2000 Job Messenger can retrieve the return code from a job variable or with a file command.
The BS2000 Trailer contains two labels where processing is made.
The use of job variables requires the assignment of a job variable of the name *RETCODE. The
following syntax applies:

944

Chapter3 Objects

/DCLJV #RETCODE,LINK=*RETCODE
/SETJV #RETCODE,'421'
/SKIP .RETJV
If the return code should be retrieved with a file command, a file with the link name RETCODE must
be assigned. The string "RETCODE" is searched for in the file name. The user return code has to
follow the string. The following syntax applies:
/FILE #RETCODE421,LINK=RETCODE
/SKIP .RETTFT

See also:
System Return Codes of Executable Objects
Script Statement :EXIT

3.3.5 Statistics
About Statistics
Statistical data, logs and reports are written while the UC4 system is active. This stored
information can be used to trace all UC4 controlled and monitored processes in detail at any
time. This ensures the auditing acceptability of UC4.
Statistical data is kept until it is explicitly removed through a reorganization run. Its reports are also
deleted.
Statistical data is available for:
l
l
l

executable objects
servers and agents
clients and users

The statistics of servers, agents and executable objects are constantly recorded and archived.
There is no way to disable this function. You can specify that the collected data should be stored
permanently. The UC4 administrator can use the UC4 Variable UC_STATISTIC_OPTIONS to
determine whether statistical data should be kept after a user has logged off correctly. All securityrelevant data (e.g. attempts to log on with an invalid password) is stored. By default, the statistics of
user sessions are also stored.
Statistical data can be accessed in the form of an overview which is the first window that is
displayed. It lists the available data records for which various functions are provided in the context
menu (right-click on a statistics file):
l
l
l
l
l
l
l
l

open the Detail Window to the statistical record,


display the monitor view for a Workflow or Schedule,
display the statistics of super-ordinate objects (parent),
display the statistics of super-ordinate objects (activator),
display the statistics of subordinate objects (child),
display the report,
edit the object,
execute the object with options.

The availability of the above functions depends on the particular object. Access to statistics is
protected through UC4's authorization system.

Automation Engine

945

The number of statistical records that should be displayed in the overview can be specified in the
UserInterface's settings. The content of the statistical overview can be stored in a file. Do so using
the popup-menu command Export to file... from within the statistical overview or the UserInterface's
File menu. Right-click without highlighting a statistical record in order to save the whole content.
The size, position and order of the columns shown in the statistics window can now be stored.
You can adjust it according to your requirements and call the command Save window settings
now from the menu Options. The specified settings then apply to all statistics window you open.
Comments are available in tasks whose RunID shows a small red edge.
When activating by script, start type SCR is used in the statistical record.
Statistics of Executable Objects

Statistics Overview
[Statistics Overview] [Statistics ofChild/Parent]

An executable object creates statistical data with each execution. You can view the statistical
data of a single object or any number of objects.
Statistics are displayed in an overview and each line corresponds to a single execution of a task.
For each statistical file, you find more detailed information in the Detail Window.

The statistical overview includes the following entries:


Column

Description

Name

Object name for the statistical record.


If an alias name is available (for Workflow tasks and objects that have been
activated once or recurring), it is shown in this column instead of the actual object
name. The object name is always available in the Detail Window.

Type

Object type for the statistical record.

RunID

RunID of the job that identifies the execution.

Parent

RunID of the superordinate object.

User

Name and department of the user who has activated the object.

Status

Status symbol and task status that show how the object has ended.

Runtime

Time that it took to execute the task.

Activation

Date and time of object activation.

Start time

Date and time of object start.

End

Date and time of object end.

Host

Name of the agent.


FileTransfers show the target agent.

User ID

Signature of the user.

Int. Account

Uses the object's account .

946

Chapter3 Objects

Archive 1

First archive key of the object.

Archive 2

Second archive key of the object.

Return code

Code that has been returned when the object has ended.

Version

Object version.

Modification
flag

For Workflows that have been modified at runtime, this column shows a pencil
symbol and the name of the user who has made the last modifications.

Statistics of Child Objects and Parent Objects


[Statistics Overview] [Statistics of Child/Parent]

If the object is a superordinate object (parent) whose execution leads to the execution of other
objects (child objects), you can also retrieve the statistics of the child objects in the overview or in
detail. Automatic file transfers that store the external reports in UC4 are also child objects.

If the object is a child object, the statistical data of the parent object is also available.
Calling the Statistics
File menu, Statistics
command in the
UserInterface

The executions of the object that are highlighted in the UC4 Explorer
are shown with statistical data. The first entry always shows the last
execution.

Right-click in the UC4


Explorer object

Select the popup-menu command Statistics. Statistical data is


displayed in an overview.

Right-click in the
Activity Window
object

Select the popup-menu command Statistics. Statistical data is


displayed in an overview.

Statistics menu,
Objects, Periods,
RunID, Archive keys
or Host command in
the UserInterface

Calls selective statistics.


The corresponding tab is activated. Statistical data is displayed in an
overview.

Automation Engine

Right-click in the
Statistics Overview
object

947

Various popup-menu commands can be selected, depending on the


particular object.
Detail command: Displays the Statistical Detail Window of the object.
Statistics Parent command: Displays the Statistics Overview of the
superordinate object.
Statistics Activator command: Displays the statistical overview of the
activating object.
Child-task statistics command: Displays the Statistics Overview of
subordinated objects.

See also:
About Statistics
Selective Statistics
About Reports
Statistics for Servers and Agents
A statistical record is created each time a server or agent starts. These records end when the
server or agent are terminated.

A new statistical record is also created when the log file changes. In this case, the column
Message displays the information "Logging was changed".
Column

Description

Name

Name of the agent, work and communication processes for this statistical record.

Type

Object type for this statistical record


SERV ... Server
HOST ... Agent

Start time

Date and start time of the agent, work or communication process

End

Date and end time of the agent, work or communication process

Status

Condition symbol and status of the object

Message

Additional messages: start is rejected due to an invalid license, for example

948

Chapter3 Objects

The statistics can be called as shown below:


Calling the Statistics
Menu File, Command Statistics of the
UserInterface

The statistical data for the server or agent highlighted in


the System Overview are displayed

Right mouse button on the server or


agent in the System Overview

Select Statistics in the context menu


Statistical data is displayed in the overview

Menu Statistics Command Objects

Select the server or agent to have all the corresponding


statistical data displayed in an overview

See also:
About Statistics
Selective Statistics
About Reports
User and Client Statistics
A statistical record is created whenever someone logs on to the UC4 system. Logging off ends
the record.
In the UC variable UC_STATISTIC_OPTIONS you can determine whether the statistics file should
be erased when the user logs of correctly. All data relevant to security - e.g. the login attempt with
invalid passwords remain archived. All of these user session's statistics are kept by default.

Column

Description

Name

Name of the user or client for this statistical record

Type

Object type for this statistical record


USER ... User
CLNT ... Client

RunID

The RunID of the job. This identifies the execution.

Status

Condition symbol and task status ending the object

Runtime

Logon time period

Activation

Logon activation date and time

Start time

UC4 logon date and time

End

UC4 logoff date and time

Return code

Return code ending the object

Automation Engine

949

You can also request statistics about child objects using the context menu in the Statistics
Overview. In doing so, you obtain information about the tasks that have been carried out during this
selected user session.
Displaying Statistics
Menu File, command
Statistics of the
UserInterface

The executions of the object highlighted in the UC4 Explorer, including


statistical data, are displayed. The first entry always refers to the last
execution.

Right mouse button on


the object of the UC4
Explorer

Select the command Statistics in the context menu. The statistical


data is displayed in the overview.

Menu Statistics,
command Objects,
Period, RunID,
Archive key or Host of
the UserInterface

Displays the selective statistics.


The corresponding tab is activated. The statistical data is displayed in
the overview.

See also:
About Statistics
Selective Statistics
About Reports
Selective Statistics
In addition to the statistics of individual objects, you can also request the statistics of any
objects of you choice. Doing so requires the privilege "Access to selective statistics" being
granted.
In order to keep a clear overview, you can limit the retrieval of statistical records by specifying
filters. As opposed to the statistics of an individual object - for which the number of statistical
records that should be read is clear - all existing statistical records are compared against the
predetermined criteria. Doing so can result in a large amount of statistical records that should be
displayed if you use broad selection criteria.
The criteria for selective statistics are specified in a dialog. Open this dialog via the Statistics menu
in the UserInterface. Depending on the selected command (Period..., Objects..., Status/RunID...,
Archive Keys or Host... ), the corresponding tab opens.
Note that in system client 0000, the selective statistics applies across clients.
Click Apply and the search for statistic files is made immediately. The dialog window remains
open. A new overview which is displayed in a new window can be created by applying new
selection criteria. Clicking OK creates an statistical overview but closes the dialog window.
To modify the selection criteria of an open statistics window, you can use the popup-menu
command "Options". It opens the dialog with the current settings. In doing so, the criteria that
should remain the same does not have to be specified again.
The UC4 administrator can use the option GENERIC_STATISTICS_LIMIT in the UC4 Variable
UC_SYSTEM_SETTINGS to specify the maximum number of statistical records that should be
displayed. A message is displayed if a search result exceeds this value.

950

Chapter3 Objects

General
[Client] [Period] [Objects] [Status/RunID] [Archive Keys] [Host] [Remote Context]

The "Client" setting is only available in the system client 0000. You can access the statistics of
your complete UC4 system here. Limiting the selection to a particular client helps to provide a clear
overview.
TheQueue field can be used to select statistical records of objects that have been assigned to a
particular Queue object. In the system client, the selection of Queue objects depends on the
selected client.

Period
[Client] [Period] [Objects] [Status/RunID] [Archive Keys] [Host] [Remote Context]

Automation Engine

951

In the Period tab, you can determine a period (with start and end time) in which tasks have been
executed. The corresponding date is easily selected via a calendar control element. Additionally,
there are option fields in which you can select whether the specified time period should refer to the
activation, start or end of the affected task. The statistics can also be requested without any date
consideration. You can also have only statistical records displayed that include comments or
Workflows that have been modified at runtime.

Objects
[Client] [Period] [Objects] [Status/RunID] [Archive Keys] [Host] [Remote Context]

In the Objects tab, you can select the object types whose statistical records should be searched.
Simply check the corresponding check box.
In addition to regular object types, the list includes:
l
l

API - For scripts that have been activated via a CallAPI.


!EVNT - For !Processes that have been activated by Events that have occurred.

You can also use a filter to have only objects displayed whose names correspond to the defined
filter. By default, all objects are displayed if you use the wildcard character "*". Use "*" and "?" for
your filter specification. "*" refers to any, "?" to exactly one character.
You can also select only tasks that include a particular alias. The same wildcard characters can be
used as for object names (*and ?). Note that alias names can only be assigned to objects that start
once / recurring and for Workflow tasks. If you are not sure, UC4 recommends always using * as a
filter for the alias name.
The fields Object name and Alias are AND combinations. This means that only tasks are
selected to which both filters apply.

952

Chapter3 Objects

Note that selecting for the object types "Agent" and "Server" is only successful in the system
client 0000.

Status/RunID
[Client] [Period] [Objects] [Status/RunID] [Archive Keys] [Host] [Remote Context]

In the Status/RunID tab, you can determine how a task's end should be considered when searching
for statistical records . You can access the statistics of individual tasks by entering their run
numbers (RunID).

Automation Engine

953

Note: With the function for saving jobs and job reports in the file system being activated, the
corresponding file names are then composed of a 7-digit string (letters). In this case, you can also
search for this string instead of the RunID (see also RUNNR2ALPHA).

Archive Keys
[Client] [Period] [Objects] [Status/RunID] [Archive Keys] [Host] [Remote Context]

You can call the statistics of tasks with particular archive keys via the Dialog's tab of the same
name. You can search using the two archive keys and you can also use the wildcard characters "*"
and "?". "?" refers to exactly one, "*" to any characters.The selection also considers whether only
one archive key or both keys have to match.

954

Chapter3 Objects

Host
[Client] [Period] [Objects] [Status/RunID] [Archive Keys] [Host] [Remote Context]

The Host tab displays the statistical records of tasks which are executed on particular hosts.
For FileTransfers, you can use the source and destination host as filters. Note that Jobs are filtered
using the target host. In addition, you can also filter for host types.
You can either specify a particular host or use a filter in order to select several hosts. The wildcard
characters "*" and "?" can be used. The tasks of all active hosts are displayed using the default
value "*".

Automation Engine

955

Host
[Client] [Period] [Objects] [Status/RunID] [Archive Keys] [Host] [Remote Context]

In the fields of the "Remote Context" tab, you can select for specific information about specific jobs.

956

Chapter3 Objects
l
l

RA jobs: The names and values of RA attributes.


SAP jobs that have been started by the SAP Solution Manager: Selection by using the
parameters JOBDOCID and JOBDOCURL
JOBDOCID:A unique ID of the SAP job documentation in which the job has been
scheduled.
JOBDOCURL:The link to the SAP job documentation.
You must enter these parameters in the "Name" field and the value in the related field.

You can use the wildcard characters * and ? in fields. By default, the value "*" is set in both fields
which means that there is no limitation to these parameters.

See also:
About Statistics
About Reports

3.3.6 Pedefined Variables


General Information
In UC4, you can use specific Variables in attributes or in the scripts of executable objects. While
these objects are being executed, the Variables are replaced by the corresponding values. These
values are either system- or object-related values.
Predefined variables are placeholders for values of the object in which they are used, a Variable
object or the UC4 system. You can also retrieve and use these values with script functions (such as
SYS_ACT_ME_NAME). Using Variables, however, simplifies this procedure and reduces the
length of scripts in objects.
They can either be used in attributes or the UC4 Script of executable objects. Predefined variables
can also be used in the following places (they are replaced by the corresponding value at the time
they are accessed):
l
l

Variable objects - Variable tab- within SQL statements (SQL Variables).


Executable objects - "Variables &Prompts":as values for object variables and PromptSet
elements.
Workflow - Object properties - General tab: Alias.
The predefined variable &$TASK_NAME# can only be used in this field.
Workflow - Object properties - Preconditionsand Postconditions tabs: for parameters of
conditions and statements.
Note that predefined variables refer to the Workflow here, and not to the task.
PromptSet - Designer tab - default value for the PromptSet elements.

Predefined variables for Variable objects are not supported in UC4 Script and are therefore not
replaced. Use the script elements GET_VAR / PUT_VAR to access Variable objects.
You can insert predefined variables either manually or by using the Variable picker dialog in the
UserInterface. You can open this dialog using the toolbar of objects.
A list of all predefined variables for system and object values is available here.
Script or object variables can also be used in attributes. More details are provided in the
document "Attributes."

Automation Engine

957

Syntax

Variables that stand for values of the UC4 system or the object in which they are used commence
with &$and end with #. In between is a string that is constant except for the format of date and time
values. These values correspond to the return codes of script functions or object attributes.
A specific variable is required to insert Variable-object values in attributes dynamically and at
runtime. It has the following syntax:
{Variable object [, Key [, Column number ]] }
Key: Key column in static Variable objects or the first value column (first basic column) in dynamic
Variable objects. If neither the Key nor the column is defined, the system uses the value of the first
entry or the Result column /first Value column.
These placeholders are also available in the Variable picker dialog unless it has been called via
script. The document Using Variable objects describes where these placeholders can be used.
These placeholders cannot be used in Forms tabs. Forms only support predefined variables for
system and object values.
In attribute fields and scripts, all predefined variables are highlighted in purple.
You can also use variables in the fields of Form tabs (for example, in SAP Jobs). In this case,
the variables are not highlighted in color.

See also:
Using Variable Objects
List of Predefined Variables for System and Object Values
"Variable Picker" Dialog
Using Predefined Variables
Using Predefined Variables
There are some points that require particular consideration when you use or replace Variables.

Script

Variables that are used in scripts are replaced before the script is processed.
Predefined variables are quite similar to script variables. Their values can be read and used at any
point. Predefined variables, however, are not created and they have a predefined name. Thus, they
cannot be modified in the script and any attempt to do so will result in an error:
:SET&$CLIENT# = 17

958

Chapter3 Objects

As opposed to attributes, UC4 Script does not support the use of Variables for Variable object
values. Therefore, they are not available in the Variable picker. Use the script element GET_
VAR to access Variable objects via script.
Using the script element :PUT_ATT to write a predefined variable to an attribute has the effect that
it will be inserted without any changes and replaced only after the script has been processed. If a
script modifies an attribute that represents a predefined variable used in the object, the new value is
used for the replacement. In the script, the new Variable value is applied starting with the modifying
scripting line.
Example:
Job with the following attributes:
Internal account: Acc1
Archive key 1: &$INT_ACCOUNT#
This scripting line writes the predefined variable for the agent name to the attribute "Internal
account":
:PUT_ATT INT_ACCOUNT =&$HOST#
Variables are replaced after the script has been processed. The internal account and Archive key 1
obtain the Agent's name as their value.
Variables for attributes that are used in the script have no value at the position at which they
include predefined variables themselves.
Using GET_ATT to read an attribute that includes predefined variables has the effect that the
value is returned without any replacements being made.
Variables used within JCL or script literals are not replaced.
The Script Editor's auto-completion function lists the variables that are already in use.
Note that numerical predefined variables are automatically formatted to 16 digits if they have
been enclosed in parentheses () in the script element :SET.
For example: The original 4-digit format of the client is lost. The script variable &CLNTNR# obtains
a value such as "0000000000008100".
:SET &CLNTNR# = (&$CLIENT#)

Attributes

The values of predefined variables that are used in attributes are replaced after the script has been
processed. If the Variable name is invalid it cannot be replaced. UC4 recommends checking the
correct syntax and the object type or using the Variable picker to insert the Variables.
Variables that are used in their own attribute are not replaced. The same is true for two attributes
that refer to each other through Variables.
Any other combination of object attributes is possible.
Example:
Attributes of a Windows Job:
Working directory: C:\temp\work_&$date_yyyymmdd#\
Command:UCYBDBld -B -C0001 -X&$WORK_DIR#\UC_DATA.TXT -EREPLACE
The content of the Command field depends on the working directory which includes a system value
Variable. First, the date is entered in the "working directory" field and then the Variable is replaced
by the corresponding content in the "Command" attribute.

Automation Engine

959

If the replaced attribute value exceeds the defined maximum length, it will be truncated at the
field end.
In attributes, you can also use predefined variables for Variable object values.
Predefined variables for system and object values can also be used as part of a Variable
placeholder. Example: {VARA&$CLIENT#}
This is not possible the other way round because system and object values are inserted before
Variable values.

See also:
About Predefined Variables
"Variable Picker" Dialog
List of Predefined Variables for System and Object Values
Variable Picker
You can use this selection dialog to select predefined variables and insert them in the text fields
of attributes or the scripts of executable objects.
To open this dialog, click the Variables... button which is available in the toolbar of open objects.
Doing so requires the cursor to be positioned either in a text field in which values can be inserted or
in UC4 Script. Otherwise, this button is grayed out.
Note that this dialog does not list all predefined variables. A complete list of Variables for system
and object values is available here.

In the attribute field or script, the Variables are always inserted where the text cursor is positioned.

960

Chapter3 Objects

You can also open the Variable picker by entering { or &$ in a text field and pressing the ENTER
key. Another option is to use the shortcut CTRL + L in the Script Editor.
Field/Element

Description

Filter

Search filter for the selection of entries


Specify a filter and start the search by pressing the ENTER key or the button
on the right side. All Variables are searched if no particular category has been
selected. The search is case-insensitive.
For a wildcard search use the * character.
Regardless of any wildcards, the system always searches for the search
term's occurrence within entries (search scheme: *<term>*). The use of an
individual wildcard character before or after the search text results in a list of
terms which either end or start with the remaining text.
For example:
Searching the category "Object"
Filters

Results

*Date*

Date of script generation


Logical Date
Last Usage (date)

Date

Date of script generation


Logical Date
Last Usage (date)

Date*

Date of script generation


Last Usage (date)

*Date

Logical Date

Date*object

Date of last object usage

*Date*object*

Date of last object usage

Only the first 5000 matches are displayed.

Automation Engine

Category

961

Selection of value origins


The following options are available:
l

UC4 system:
The values refer to the UC4 system and are the same throughout the
system.
Example: Name of the UC4 system.

Object:
Object-related values are either return codes of script elements
(example: RunID of a restart) or the object's attributes (such as the
agent name in jobs).
Only Variables for the attribute of the particular object type are listed.

UC4 Variables:
List of all Variable objects that are used for specifications within the
UC4 system.
For example: UC_CLIENT_SETTINGS
When resolving the values, the system first searches the Variable
object in the current client and then in the system client.

Variables:
List of all the current client's Variable objects.
For example: VARA.DB.1

The categories "UC4 Variables" and "Variables" are not available if the
dialog has been opened in the Script Editor.
Variables

Selection of a Variable
The technical name of the predefined variable is shown in the "Variable name"
field after a selection has been made. Only values are displayed that are
allowed for the object type from which the dialog has been called.
In the categories "UC4 system" and "Object", these entries represent a short
form of the relevant value. The language in which the user logged on to the
UserInterface (German, English or French) is used. If the categories
"Variable" or "UC4 Variable" have been selected, the list displays the names
of the Variable objects.

962

Chapter3 Objects

Formats

Formats for time or date values.


Only relevant for entries of the categories "UC4 system" and "Object".
After a format has been selected, the Variable name is displayed accordingly.
Example: &$DATE_yymmdd#
Important note: Some date and time formats include special characters
which must not be used for Variable names. The '_' character is always
used as a separator in the Variable name (instead of usual separators). At
the end, another '_' plus an additional letter which identifies the original
separator are appended to this format.
l
l
l

p =point
s = slash
d =dash

Example:
Dialog entry

Date
format

Placeholder

Value

&$DATE_
format#

DD/MM/
YYYY

&$DATE_DD_MM_YYYY_
s#

23/04/2010

&$DATE_
format#

DD.MM.
YYYY

&$DATE_DD_MM_YYYY_
p#

23.04.2010

&$DATE_
format#

DD-MMYYYY

&$DATE_DD_MM_YYYY_
d#

23-04-2010

A list of all supported formats is included in the list of Variables referring to


system and object values.
Variable name

Name of the Variable (including format if available) as it should be used in the


attribute field or UC4 Script.
Predefined variables for system and object values always start with &$and
end with #. This character separation is required to distinguish them from
script and object variables.
Example: &$DATE#
The object name enclosed in curly brackets {} serves as a Variable for values
of VARA objects. This syntax is automatically used when a Variable object
has been selected and inserted using this dialog.
Example: {VARA.SYSVAL}
The document Using Variable Objects includes a list of all attributes in
which predefined variables can be used.

Description

Description of the selected entry. This field is read only and cannot be edited.
A description of system and object values is provided in the list of predefined
variables. The title of Variable objects is displayed.

See also:
About Predefined Variables
List of Predefined Variables for System and Object Values
Using Predefined Variables

Automation Engine

963

List of Predefined Variables for System and Object Values


This document includes the names and descriptions of all predefined Variables that can be used
in the attributes or scripts of executable objects.
You can insert the Variables either manually or by using the Variable picker dialog. The predefined
Variables represent values that can also be retrieved by using a script. The substitution takes place
at the object's runtime.
Description of the table columns that list the Variables:
l
l

l
l
l

Name: Description of the Variable in the selection dialog.


Variable name: Technical name of the predefined variable. It will be replaced by the
corresponding value at runtime.
Description: Explanatory text.
Script element / Attribute: Value origin.
Security level: Security level that has been defined using the setting SQL_SECURITY_
LEVEL in the UC4 Variable UC_SYSTEM_SETTINGS. This setting determines whether the
variables of SQL statements are replaced by dynamic Variable objects and, if so, which
ones.

The security level is always "1" if the predefined variable's value refers to a script function. Security
level "1" should also be assigned if the value is derived from an attribute that the user cannot directly
influence using the script element :PUT_ATT.
For example: Attribute: ACCOUNT, Variable: &$ACCOUNT#
Variables for attributes that can be modified at runtime (and therefore pose a security risk)
correspond to security level "2".
For example: Attribute: HOST, variable &AGENT#
Note that the behavior of the variable &$PHYS_TIME_format# differs from the script function
SYS_TIME_PHYSICAL. Calling this script function several times can result in different time
values (depending on the time of the call). The value of the predefined variable is set during its
generation and remains constant for the complete execution.
Below you will find a description of the supported time and date value formats. When handling
formats, make sure you observe the note that is included in the description of the Variable picker
dialog.

UC4 System
[System ] [Object - Script Values ] [Object - Attributes ] [Date and Time Formats ]

The following variables represent values that are consistent throughout the system. They can be
used in any executable object.
Name

Variable
Name:

Description

Script Element

S
e
c
ur
it
y
le
v
el

964

Chapter3 Objects

Client

&$CLIENT#

Returns the number of the current client.

SYS_ACT_
CLIENT

Client
title

&$CLIENT_
DESC#

Returns the text of the current client.

SYS_ACT_
CLIENT_TEXT

User
(departm
ent)

&$DEPART
MENT#

The department of the user who has started


the task.

SYS_USER_
DEP

Current
date

&$PHYS_
DATE_
format#

Retrieves the current date.

SYS_DATE_
PHYSICAL

Current
time

&$PHYS_
TIME_
format#

Determines the current time of day.

SYS_TIME_
PHYSICAL

SNMP
Connecti
on

&$SNMP_
ACTIVE#

Checks whether UC4's SNMP (Simple


Network Management Protocol) connection
is active.

SYS_SNMP_
ACTIVE

UC4
system
(languag
e)

&$SYS_
LANGUAG
E#

Supplies the language in which the Server


generates the log files.

SYS_USER_
LANGUAGE

UC4
system
(name)

&$SYSTE
M#

Retrieves the name of the UC4 system.

GET_UC_
SYSTEM_
NAME

User
&$USER#
(object
activator)

Supplies the name of the user who has


started the task.

SYS_USER_
NAME

User
(first and
last
name)

Supplies the first and last name of the user


who has started the task.

SYS_USER_
LNAME

&$USER_
FL#

The user who is currently logged on is


used for the preview if this variable is
used in the SQL statements of a
Variable object. This behavior also
applies to the variables
&$DEPARTMENT# and &USER_FL#.
Whether the predefined variables are
triggered will depend, however, on the
security settings.

Object

Return codes of script functions


[System ] [Object - Script Values ] [Object - Attributes ] [Date and Time Formats ]

The following variables supply object-related values that can also be retrieved by using the specified
script functions. They can be used in all executable objects. Exception: &$IN_PROCESSFLOW#,

Automation Engine

965

&$TOP_PROCESSFLOW_NAME# and &$TOP_PROCESSFLOW_RUNID# cannot be used in


combination with Schedule objects.
Name

Variable
Name:

Description

Script Element

S
e
c
ur
it
y
le
v
el

Activator
(name)

&$ACTIVAT
OR#

Returns the name of the superordinate task.

SYS_ACT_
PARENT_
NAME

Activator
(RunID)

&$ACTIVAT
OR_
RUNID#

Returns either the RunID of the


superordinate task or the user's session ID
(manual activation).

SYS_ACT_
PARENT_NR

Activator
(object
type)

&$ACTIVAT
OR_TYPE #

Checks whether the task has been started


by a user, a CallAPI or another task.

SYS_ACT_
PARENT_TYPE

"USER" - For manual activation.


"API" - For activation via CallAPI.
Object type of the activating task.
Alias

&$ALIAS#

Retrieves the task's alias name.


If no alias name has been assigned, the
object name is returned. In this case, the
Variable has the same value as &$NAME#.
Alias names can be assigned for
Workflow tasks and objects that are
activated once or recurrently.
There is no script element for this variable.

Date of
script
generatio
n

&$DATE_
format#

Retrieves the current date at the beginning


of script processing.

SYS_DATE

Activatio
n through
a
Workflo
w

&$IN_
PROCESSF
LOW#

Checks whether a task has been activated


by a Workflow.
This Variable cannot be used in Schedule
objects.

SYS_ACT_JP

Logical
date

&$LDATE_
format#

Retrieves the logical date.

SYS_LDATE

Loop
count

&$LOOP_
COUNT#

The number of ForEach Workflow


iterations. This variable can only be used
with ForEach Workflows. There is no script
element for this variable.

966

Chapter3 Objects

Loop
index

&$LOOP_
INDEX#

Current loop count of ForEach-Workflows.


This variable can only be used within
ForEach Workflows. There is no script
element for this variable.

Maximu
m
Runtime

&$MRT#

The object's maximum runtime in seconds.

The value depends on the definition that has


been made in the Runtime tab:
l
l

No definition = 0
A fixed value = The specified value
converted to seconds.
ERT n % =The maximum runtime
calculation is based on the ERT (it is
a negative value when n > 100)
The current date + n days = The
difference of the task's start date and
a predefined time converted to
seconds.

Object
name

&$NAME#

Returns the name of the object in which the


script function is used.

SYS_ACT_ME_
NAME

Object
type

&$OBJECT_
TYPE#

Returns the type of the object in which the


script function is used.

SYS_ACT_ME_
TYPE

Activatio
n type

&$PARTNE
R_TYPE#

Retrieves the task's activation type.

SYS_ACT_
PTTYP

"D" - Activation by the UserInterface.


"C" - Activation by a CallAPI.
"A" - Activation through Java Application
Interface / Deployment Descriptor
Process &$PROCES
or (name) SOR#

Supplies the name of the superordinate


task.

SYS_ACT_
PARENT_
NAME

Process
or
(RunID)

&$PROCES
SOR_
RUNID#

Supplies the run number (RunID) of the


superordinate task.

SYS_ACT_
PARENT_NR

Process
or (object
type)

&$PROCES
SOR_
TYPE#

Returns the object type of the superordinate


task.

SYS_ACT_
PARENT_TYPE

Number
of
previous
restarts

&$RESTAR
T_COUNT#

Supplies the number of restarts that have


been made for a Workflow task using the
Postconditions tab(statement: RESTART
TASK).

SYS_ACT_
RESTART_
COUNT

Restart
point

&$RESTAR
T_POINT#

Supplies the restart point from which the


object will be executed.

SYS_
RESTART_
POINT

RunID of
the
restart

&$RESTAR
T_RUNID#

Returns the run number (RunID) of an


object that has been activated in restart
mode.

SYS_ACT_
RESTART_ME_
NR

Automation Engine

SYS_ACT_
RESTART

967

Activatio
n by
restart

&$RESTAR
TED#

Determines whether the object has been


activated in restart mode.

Return
code

&$RETURN
CODE#

The task's current return code. Can only be


used within the Postconditions tab which
is available in the properties of Workflow
tasks. There is no script element for this
variable.

RunID

&$RUNID#

Returns the run number (RunID) of the


object in which the script function is used.

SYS_ACT_ME_
NR

Run
mode

&$RUNMO
DE#

Retrieves whether the task was started to


run backup or rollback actions.

Possible values:
l

BACKUP - The task was activated


to run the user-defined backup of
another task.
ROLLBACK - The task runs the
user-defined rollback of another task.
NORMAL - The task does not run
backup or rollback actions.
RERUN - The command "Continue"
has been called for the Workflow.

Current
Runtime

&$RUNTIM
E#

The task's current runtime in seconds.

Minimum
Runtime

&$SRT#

The object's minimum runtime in seconds.

This value will always be 0 when you use


the variable in the Pre-Process or Process
tab. This is because the variable will be
resolved at the same time as the script is
being generated.

The value depends on the definition that has


been made in the Runtime tab:
l
l

Status

&$STATUS#

No definition = 0
A fixed value = The specified value
converted to seconds.
ERT n % =The maximum runtime
calculation is based on the ERT (it is
a negative value when n > 100)

The task's current return status. Can only


be used within the Postconditions tab
which is available in the properties of
Workflow tasks. There is no script element
for this variable.

968

Chapter3 Objects

Task
Name

&$TASK_
NAME#

Actual object name of a Workflow task.

SYS_ACT_ME_
NAME

Time of
script
generatio
n

&$TIME_
format#

Determines the current time at the


beginning of script processing.

SYS_TIME

Top
Workflo
w (name)

&$TOP_
PROCESSF
LOW_
NAME#

Supplies the name of the top Workflow.


This Variable cannot be used in Schedule
objects.

SYS_ACT_
TOP_NAME

Top
Workflo
w
(RunID)

&$TOP_
PROCESSF
LOW_
RUNID#

Retrieves the run number (RunID) of the top


Workflow.
This Variable cannot be used in Schedule
objects.

SYS_ACT_
TOP_NR

Can only be used in the properties of


Workflow tasks in the Alias field (General
tab). All other variables that are used here
refer to the Workflow (for example,
&$NAME# returns the Workflow name).

Attributes
[System ] [Object - Script values ] [Object - Attributes ] [Date and Time Formats ]

The variables that are shown in the following tables represent object attributes. The object types in
which you can use them are shown in the Object type column. The name of the corresponding
attribute is also listed.
Name

Variable
Name:

Description

Attribute

Object
type

S
ec
ur
it
y
le
ve
l

Spool-list
recipient
(address
type)

&$ADDR
ESSTYP
E#

The type of address.

SAP_
ADDRESSTYPE

JOBS
(SAP)

Agent

&$AGEN
T#

The name of the agent on


which the task should be
processed.

HOST

EVNT,
JOBQ,
JOBS,

Agent ID

&$AGEN
T_ID#

An agent ID can be specified


if a particular agent should be
used.

AGENT_ID

JOBS
(JMX)

Automation Engine

969

Respons
ibility
(applicati
on short
name)

&$APPL_
NAME#

Profile option for Oracle


users: short name of the
application.

OA_APPL_NAME

JOBS
(OA)

Archive
key 1

&$ARCH
IVE_
KEY1#

Freely definable term that is


used in the statistics.

ARCHIVE_KEY1

All
executabl
e objects

Archive
key 2

&$ARCH
IVE_
KEY2#

Freely definable term that is


used in the statistics.

ARCHIVE_KEY2

All
executabl
e objects

Attach a
file

&$ATTA
CH_
FILE#

The path and the name of the


file that should be included
with the e-mail.

ATTACH_FILE

CALL

Attach
reports
from
Task
(RunID)

&$ATTA
CH_
REPORT
S_
RUNID#

The RunID of the task whose ATTACH_


reports should be attached to REPORTS_RUNID
the e-mail.

CALL

Attach
reports
from task
(RunID)

&$ATTA
CH_
REPORT
S_
SOURC
E#

The report sources that are


attached to the e-mail
(database, external files or
all).

ATTACH_
REPORTS_
SOURCE

CALL

Queue
for child
tasks

&$CHIL
D_
QUEUE#

The name of the Queue


object in which the child
tasks are processed.

CHILD_QUEUE

JOBG,
JOBP,
JSCH

Start
paramete
r
(comman
d)

&$CMD#

The individual shell


command or sequence of
shell commands.

UNIX_CMD

JOBS
(UNIX)

Start
paramete
r
(comman
d)

&$CMD#

The program that should be


executed.

WIN_CMD

JOBS
(WIN)

CodeTab
le

&$COD
E#

The name of the CodeTable


that is used by the task.

CODE

JOBS

Connecti
on (MS
Access
file
name)

&$DAT
A_
SOURC
E#

The path and file name of the


MS Access database.

DATA_SOURCE

JOBS
(SQL)

970

Chapter3 Objects

Connecti
on
(databas
e)

&$DATA
BASE_
NAME#

The name of the database.

DATABASE_NAME

JOBS
(SQL)

Target:
Agent

&$DST_
AGENT#

The name of the destination


Agent.

FT_DST_HOST

JOBF

Target:
&$DST_
Login info CLIENT#
(SAP
client)

The SAP client of the


destination's Login object.

FT_DST_CLIENT

JOBF

Target:
CodeTab
le

&$DST_
CODE#

The name of the


destination's CodeTable.

FT_DST_CODE

JOBF

Target:
File

&$DST_
FILE#

The name of the source file


(using directory, folder or ID
plus wildcard characters in
partially qualified
FileTransfers).

FT_DST_FILE

JOBF

Target:
File
attributes

&$DST_
FILE_
ATTRIB
UTES#

Additional specification of file FT_DST_FILE_


attributes for the destination
ATTRIBUTES
file.

JOBF

Target:
Login

&$DST_
LOGIN#

The name of the Login object


that should be used to log on
to the destination system.

FT_DST_FILE_
LOGIN

JOBF

Start
paramete
r
(destinati
on
system)

&$DST_
SYSTE
M#

The destination system in


SAP.

SAP_DST_SYSTEM

JOBS
(SAP)

Enter
paramete
r

&$ENTE
R_
PARAM
S#

Any parameters that should


be entered.

ENTER_PARAMS,
ENTER_PAR, EP

JOBS
(BS2000)

Start
paramete
r
(Enterpri
se
Server)

&$ENTE
RPRIS
E_
SERVE
R#

The name of the Enterprise


Server.

ENTERPRISE_
SERVER

JOBS
(SIEBEL)

Escalatio
n after n
minutes

&$ESCA
L_TIME#

The time limit in minutes


after which the responsible
recipient must respond.

CO_RISING_TIME

CALL

Automation Engine

971

Escalatio
n
notificati
on

&$ESCA
LATION#

Additional Notification object


that is activated if the
responsible recipient does
not respond.

CO_RISING_NAME

CALL

File
name for
the Job

&$FILEN
AME_
JOB#

Name of the file (without


path) that the agent creates
for the Job that should be
executed.

FILENAME_JOB

JOBS

File
name for
the
system
output
(SYSLS
T)

&$FILEN
AME_
SYSLS
T#

The name of the file (without


path) that the agent creates
for the system output
(SYSLST).

FILENAME_SYSLST

JOBS

File
name for
the
system
output
(report)

&$FILEN
AME_
SYSOU
T#

The name of the file (without


path) that the agent creates
for the system output
(report).

FILENAME_
SYSOUT

JOBS

Agent for
the file
check

&$FSC_
AGENT#

The name of the agent that


FSC_HOST
should be used for the Output
Scan.

JOBF,
JOBQ,
JOBS

Login for
the file
check

&$FSC_
LOGIN#

The name of the Login object


that should be used for the
Output Scan.

FSC_LOGIN

JOBF,
JOBQ,
JOBS

Start
paramete
r
(Gatewa
y Server)

&$GATE
WAY_
SERVE
R#

The network address of the


Siebel Gateway computer.

GATEWAY_
SERVER

JOBS
(SIEBEL)

Report
selection
(messag
e
classes)

&$GET_
MSGCLA
SSES#

The message classes that


should be read and routed.

MVS_
GETMSGCLASSES

JOBS
(ZOS)

Group

&$GROU
P#

The name of the Group in


which the task should be
processed.

GROUP, START_
TYPE, S

CALL,
EVNT,
JOB,
JOBP,
JOBS,
JSCH,
SCRI

Start
paramete
r (virtual
terminal)

&$HOM
E_
TERMIN
AL#

HP NonStop Server device


name.

HOME_TERMINAL

JOBS
(NSK)

972

Chapter3 Objects

Start
paramete
r
(IDENT)

&$IDEN
T#

The name for the statement


$IDENT.

GCOS8_IDENT

JOBS
(GCOS8)

Initial
Context
Factory

&$INITIA
L_
CONTEX
T_
FACTOR
Y#

Indicates the Initial Context


Factory.

INITIAL_CONTEXT_
FACTORY

JOBS
(JMX)

Runtime
options
(input
priority)

&$INPU
TPRIO#

Input priority (INPRI).

MPE_INPUTPRIO

JOBS
(MPE)

Account

&$INT_
ACCOU
NT#

The specification of an
internal account.

INT_ACCOUNT,
INT_ACC, K

CALL,
EVNT,
JOBF,
JOBP,
JOBS,
JSCH,
SCRI

Runtime
options
(OS/390
file
name)

&$JCL_
SOURC
E#

The name of the dataset or


member that includes the
Job's JCL or the Job's JCL
and its job card.

JCL_SOURCE

JOBS
(ZOS)

Start
paramete
r (include
job)

&$JCLJ
OB#

The path and the name of a


file that includes a Job.

GCOS8_JCLJOB

JOBS
(GCOS8)

Job class

&$JOB_
CLASS#

The job class in which the


Job should run.

JOB_CLASS, JC

JOBS
(BS2000,
SAP,
ZOS)

Job
name

&$JOB_
NAME#

The name that should be


used to execute the Job in
the destination system.

JOB_NAME, JN

JOBS
(BS2000,
MPE,
OS400,
SAP,
VMS,
ZOS)

Runtime
option
(Job
paramete
r)

&$JOB_
PARAM
S#

Further Job parameters.

MVS_JOB_
PARAMS

JOBS
(ZOS)

Job type

&$JOB_
TYPE#

Type of z/OS Job (such as


JCL from z/OS).

MVS_JOBTYPE

JOBS
(ZOS)

Automation Engine

973

Job type

&$JOB_
TYPE#

The type of NSK Job (such


as TACL).

NSK_JOB_TYPE

JOBS
(NSK)

Job type

&$JOB_
TYPE#

The type of OS/400 Job


(such as CMD).

OS400_JOBTYPE

JOBS
(OS400)

Job type

&$JOB_
TYPE#

The type of SAP Job (such


as ABAP Engine/Business
Intelligence).

SAP_JOB_TYPE

JOBS
(SAP)

Job type

&$JOB_
TYPE#

The type of Unix Job (such


as Shell).

UNIX_TYPE

JOBS
(UNIX)

Job type

&$JOB_
TYPE#

The type of Windows Job


(such as BAT).

WIN_TYP

JOBS
(WIN)

Runtime
option
(Job
descripti
on)

&$JOB
D#

The name of the Job


OS400_JOBD
description that is used for
this Job in the form library/job
description.

JOBS
(OS400)

Spool

&$JOBL
OG#

Spool extent (for example,


only QPJOBLOG or
everything)

JOBS
(OS400)

Runtime
option
(Job
queue)

&$JOB
Q#

The name of the Job queue in OS400_JOBQ


which the Job should be
queued.

JOBS
(OS400)

Start
paramete
r
(languag
e)

&$LANG
UAGE#

Login language.

LANGUAGE

JOBS
(SIEBEL)

Start
paramete
r
(languag
e)

&$LANG
UAGE#

The language that is used in


SAP.

SAP_LANG

JOBS
(SAP)

Date of
last
object
usage

&$LAST_
DATE#

Last used on.

LAST_DATE

All
executabl
e objects

User
(last
object
usage)

&$LAST_
USER#

Last used by.

LAST_USER

All
executabl
e objects

Login

&$LOGI
N#

The name of the Login object


that should be used to log on
to the destination system.

LOGIN

JOBS

OS400_JOBLOG

974

Chapter3 Objects

Max.
parallelrunning
Jobs

&$MAX_
PARALL
EL_
START#

The maximum number of


Jobs that can run at the
same time.

MAX_PARALLEL_
START

JOBQ

Max.
parallelrunning
executio
ns

&$MAX_
PARALL
EL_
TASKS#

The setting that defines the


maximum number of parallel
executions for this object.

MAX_PARALLEL_
TASKS

CALL,
EVNT,
JOBF,
JOBP,
JOBS,
JSCH,
SCRI

Max.
parallelrunning
file
transfers

&$MAX_
PARALL
EL_
TRANSF
ERS#

The maximum number of


partially-qualified
FileTransfer files that can be
transferred at the same time.

MAX_PARALLEL_
TRANSFERS

JOBF

Runtime
option
(messag
e class)

&$MSG_
CLASS#

The job log assignment to an


output class.

MVS_MSGCLASS

JOBS
(ZOS)

Runtime
option
(messag
e level)

&$MSG_
LEVEL#

The output option (trace


option) for the report.

MVS_MSG_LEVEL

JOBS
(ZOS)

Runtime
option
(notify)

&$NOTIF
Y#

The notification indication on


OS/390.

MVS_NOTIFY

JOBS
(ZOS)

Object
title

&$OBJE
CT_
TITLE#

The title of the object.

OBJECT_TITLE

All
executabl
e objects

Priority

&$PRIO
RITY#

The importance of the


Notification.

CO_PRIORITY

CALL

Priority

&$PRIO
RITY#

The priority that should be


used to run the Job.

PRIORITY, P

JOBS
(BS2000,
NSK,
OS400,
VMS,
ZOS)

Runtime
option
(prog.
name)

&$PRO
G_
NAME#

Identifies the owner or the


Group of the Job.

MVS_PROG_NAME

JOBS
(ZOS)

Automation Engine

975

Queue

&$QUEU
E#

The name of the Queue


object in which the task will
be processed.

QUEUE

CALL,
EVNT,
JOBF,
JOBG,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

Spool-list
recipient
(receipt)

&$RECE
IPT#

Sends a receipt of delivery.

SAP_DELIVER

JOBS
(SAP)

Spool-list
recipient
(address)

&$RECI
PIENT#

Recipient.

SAP_RECIPIENT

JOBS
(SAP)

Report
handling
(release)

&$RELM
SGCLAS
S#

Releases the Job log for


printing.

MVS_
RELMSGCLASS

JOBS
(ZOS)

Resourc
e
consump
tion

&$RESO
URCE_
CONSU
MPTIO
N#

The resources that are


consumed during the
execution.

RESOURCE_
CONSUMPTION

JOBF,
JOBQ,
JOBS

Respons
ibility
(key)

&$RES
P_
NAME#

The profile option for the


Oracle user: Responsibility
key.

OA_RESP_NAME

JOBS
(OA)

Report
handling
(route)

&$ROUT
EMSGCL
ASS#

The message classes that


should be routed.

MVS_
ROUTEMSGCLASS

JOBS
(ZOS)

Runtime
option
(routing
data)

&$RTGD
TA#

The routing data that initiates


the Job's first routing step.

OS400_RTGDTA

JOBS
(OS400)

Login info &$SAP_


(SAP
CLIENT#
client)

The SAP client that is


specified in the Login object.

SAP_CLIENT

JOBS
(SAP)

Connecti
on
(Server)

&$SERV
ER_
NAME#

The name of the computer on


which the database is
available.

SERVER_NAME

JOBS
(SQL)

Server
URL

&$SERV
ER_
URL#

The URL of the computer on


which the MBean Server is
available.

SERVER_URL

JOBS
(JMX)

Start
paramete
r (Shell)

&$SHEL
L#

The Unix Shell that should be UNIX_SHELL


used to run the Job.

JOBS
(UNIX)

976

Chapter3 Objects

Start
paramete
r (Shell
options)

&$SHEL
L_
OPTION
S#

Indication of Shell options.

UNIX_SHELL_
OPTIONS

JOBS
(UNIX)

Start
paramete
r (Siebel
Server)

&$SIEBE
L_
SERVER
S#

The name of the Siebel


Server.

SIEBEL_SERVERS

JOBS
(SIEBEL)

Start
paramete
r
(SNUM
B)

&$SNUM
B#

The Job's sequence number.

GCOS8_SNUMB

JOBS
(GCOS8)

Source:
Agent

&$SRC_
AGENT#

The name of the source


Agent.

FT_SRC_HOST

JOBF

Source:
&$SRC_
Login info CLIENT#
(SAP
client)

The SAP client of the


source's Login object.

FT_SRC_CLIENT

JOBF

Source:
CodeTab
le

&$SRC_
CODE#

The name of the source's


CodeTable.

FT_SRC_CODE

JOBF

Source:
File

&$SRC_
FILE#

The name of the destination


using a file name, directory,
folder or ID.

FT_SRC_FILE

JOBF

Source:
File
attributes

&$SRC_
FILE_
ATTRIB
UTES#

Additional specification of file FT_SRC_FILE_


attributes for the source file.
ATTRIBUTES

JOBF

Source:
Login

&$SRC_
LOGIN#

The name of the Login object


that should be used in order
to log on to the source
system.

FT_SRC_LOGIN

JOBF

Start
paramete
r (start
mode)

&$STAR
TMODE#

The method that should be


used to start the Job (such
as immediately).

SAP_STARTMODE

JOBS
(SAP)

Spool list
recipient
(report
status by
mail)

&$STAT
USBYM
AIL#

Sends a confirmation of
receipt by mail.

SAP_
STATUSBYMAIL

JOBS
(SAP)

Subject

&$SUBJ
ECT#

Subject of the Notification.

SUBJECT

CALL

Automation Engine

977

TimeZon
e

&$TIMEZ
ONE#

The name of a TimeZone


object.

TIMEZONE

CALL,
EVNT,
JOBF,
JOBG,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

Type

&$TYP
E#

Notification types are


request, alert, etc.

CO_TYPE

CALL

Type

&$TYP
E#

The type of Event object.

EVENT_TYPE,
EVENT_TYP

EVNT

UC4
priority

&$UC4_
PRIORIT
Y#

The priority that should be


used in order to execute this
object in UC4.

UC4_PRIORITY

CALL,
EVNT,
JOBF,
JOBP,
JOBQ,
JOBS,
JSCH,
SCRI

Number
of object
usages

&$USAG
E_
COUNT#

The number of times that the


object has been used so far.

USAGE_COUNT

All
executabl
e objects

User
(object
creator)

&$USE
R_
CREATE
D#

The name of the User object.

USAGE_CREATED

All
executabl
e objects

User
(last
object
modificat
ion)

&$USE
R_
MODIFIE
D#

The name of the User object.

USER_MODIFIED

All
executabl
e objects

Start
paramete
r (Queue
name)

&$VMS_
QUEUE#

The VMS queue in which the


Job should be executed.

VMS_QUEUE_
NAME

JOBS
(VMS)

Start
paramete
r (start
directory)

&$WOR
K_DIR#

The working directory in


which the Job should run.

WIN_WORK_DIR

JOBS
(WIN)

Date and Time Formats


[System ] [Object - Script Values ] [Object - Attributes ] [Date and Time Formats ]

978

Chapter3 Objects

You must specify a date and time format within the name of the variables that return a date or a
time. The following table lists the variables that are affected and informs you about the formats that
are supported.
Certain characters that occur in some formats must not be used in variable names. Therefore, you
must specify the formats that include such characters in the variable name as shown below:
l

Time format:
Within a variable name, you must specify time formats that include a ":" character with an
underscore ("_").
For example: &$TIME_HH_MM_SS# returns the time in the format HH:MM:SS
Date format:
The characters "-", "." or "/" may occur in date formats. In this case, you must also use an
underscore instead of these characters in the variable name. Additionally, you must specify
the character that is included in the format at the end of the format: For a point, you append
the string "_p", for a slash, you append "_s" and for a dash, you append "_d".
Examples:
l &$PHYS_DATE_YY_MM_DD_p# supplies the date in the format YY.MM.DD
l &$PHYS_DATE_YY_MM_DD_d# supplies the date in the format YY-MM-DD
l &$PHYS_DATE_MM_DD_YY_s# supplies the date in the format MM/DD/YY.

Date/Time
Time

Format

Variables

Format to be used
within the variable
(format)

Format that will be displayed

HHMMSS

HHMMSS

HH_MM_SS

HH:MM:SS

HHMM

HHMM

HH_MM

HH:MM

HH

HH

MM

MM

SS

SS

&$PHYS_TIME_
format#
&$TIME_format#

Automation Engine

Date

Format to be used
within the variable
(format)

Format that will be displayed

YYMMDD

YYMMDD

YY_MM_DD_p

YY.MM.DD

YY_MM_DD_d

YY-MM-DD

YYYYMMDD

YYYYMMDD

YYYY_MM_DD_p

YYYY.MM.DD

YYYY_MM_DD_d

YYYY-MM-DD

DDMMYY

DDMMYY

DDMMYYYY

DDMMYYYY

DD_MM_YY_p

DD.MM.YY

DD_MM_YY_d

DD-MM-YY

DD_MM_YYYY_p

DD.MM.YYYY

DD_MM_YYYY_d

DD-MM-YYYY

MMDDYY

MMDDYY

MMDDYYYY

MMDDYYYY

MM_DD_YY_s

MM/DD/YY

MM_DD_YYYY_s

MM/DD/YYYY

DD_MON_YYYY_d

DD-MON-YYYY

DD_MON_RR_d

DD-MON-RR

MM_DD_YYYY_d

MM-DD-YYYY

MMDDRR

MMDDRR

DDMMRR

DDMMRR

MM_DD_RR_d

MM-DD-RR

MM_DD_RR_s

MM/DD/RR

Special formats that you must specify as shown below in the


variable name:
l

WEEK_NR
The number of the week to which the date belongs to is
returned (43, for example).

WEEKDAY_NR
The number of the week day (7, for example)

YEAR_9999
The year is shown as a four-digit number (2012, for
example)

WEEKDAY_XX
The variable returns the two-digit abbreviation of the
weekday that belongs to the date.

979

&$DATE_format#
&$LDATE_
format#
&$PHYS_DATE_
format#

980

Chapter3 Objects

See also:
About Predefined Variables
Using Predefined Variables
Variable Picker Dialog

Automation Engine

981

Glossary
This glossary lists all specific technical terms in alphabetical order.
ABCDEFGHIJKLMNOPQRSTUVWXYZ

.1 A
l

Action Definition Editor


An Editor for <Actions>
Action Service
A service which is able to respond (send) information to other systems, in contrast to the
<Response Service>, the service is configured using the incoming <event object>
Activity Window
A UserInterface window that displays all activated tasks.
AgentGroup
An AgentGroup combines agents of the same platform. The agents that shoulg be included in
an AgentGroup are specified by entering the agent name or via filters. A task which runs in an
AgentGroup is processed on one or all of the AgentGroup's agents, depending on the
specified mode.
Auto Forecast
It displays tasks that will run in a predetermined period. Comprehensive forecast for all future
activities.
Automation Engine
This component drives a UC4 system and consists of different types of server processes.
activation
Through activation, tasks obtain a RunID, are displayed in the Activity Window, and are
ready for execution (see also 'Start').
activation log
A report that contains all details about task activation. The details that are included in the log
depend on the settings that have been specified (for example, the generated JCL, modified
Variables).
activity
An activity (or task) is an entity, which can be planned, assigned to a user or a team and
tracked with respect to their plan and state (started, cancelled, suspended, completed).
agent
A program that enables the de-centralized execution of processes (e.g. deployments) on
target systems (computers or business solutions) or a service that provides connectivity to a
target system (e.g. for databases or middleware). A particular UC4 object type.
alias
This refers to the name of workflow tasks or objects that are activated once or recurring. This
name is used instead of the actual object name in the Activity Window, the monitors and the
statistics.

982

Chapter Glossary

.2 B
l

batch mode
This refers to the sequential background processing of tasks.

.3 C
l

Calendar
It consists of days using Calendar keywords. A particular UC4 object type.
Calendar keyword
A part of a Calendar object that is used to define days.
CallAPI
A programming interface that can either be called directly or from a different program. It
processes a script in the UC4 system.
CallOperator
Deprecated Term. Replaced by: Notification
Client Queue
Queue object which is available inside every client.
Cockpit
It visualizes the values and states of UC4 or of the monitored and controlled system. A
particular UC4 object type.
CodeTable
It defines a complete set of characters. A particular UC4 object type.
calendar condition
The criteria for running a task is based on calendar keywords.
child / children
These are objects that are activated by superordinate tasks (parents).
client
This is a closed environment for the execution of tasks within a UC4 system. A particular
UC4 object type.
communication process
A communication process is part of the component Automation Engine. It is responsible for
connecting the UC4 components.

.4 D
l

Deployment
The creation of infrastructure for a specific set of <EventBases> on a <worker>
DevOps
DevOps is the combination of development and operations in a single role.
DialogClient
Deprecated Term. Replaced by: UserInterface
data sequence
An internal listing of Console outputs or lines of Variable objects, etc. The lines of a data

Automation Engine

983

sequence can be accessed by using a PROCESS loop or the script element GET_
PROCESS_LINE. The script elements PREP_PROCESS* generate data sequences.
dialog process
A part of the Automation Engine component and a special form of work process. Is
exclusively responsible for UserInterface messages.
dynamic variables
A Variable object with the attributes "Source" - "SQL", "SQL internal", "Multi" or "Filelist".
Values are directly retrieved from the data source and not stored in the object.

.5 E
l

E-mail connection
This is a functionality of Windows and UNIX Agents that is used to send e-mails.
Enterprise Control Center
A separate UC4 product. Web application that allows access to the functions of various UC4
applications and products in a quick and easy way. Available for download from the UC4
Download Center.
Event
Action that is triggered if particular conditions apply. A particular UC4 object type.
Event ID
First RunID of FileSystem and Console Events. Both Event types require communication
between the component Automation Engine and Agent. They communicate via the first
RunID. Otherwise, Event identification is no longer possible after the first log change.
Event Pattern Editor
An Editor for <Event Patterns>
Event Transformer
A <component> which is able to transform raw data to <event objects>
Exception Events View
View to observe occurred <exception events>
Executor
Deprecated Term. Replaced by: agent
Explorer
UserInterface window in which objects can be created, edited and administered.
external dependency
A task whose end status is considered when a workflow is being processed. The task itself,
however, does not run within the framework of this workflow.

.6 F
l

FileTransfer
Transfers files from one computer to another. A particular UC4 object type (FileTransfer
object).
Forecast
Estimates a task's runtime on the basis of previous executions.

984

Chapter Glossary
l

fully qualified FileTransfer


File transfers without wildcard characters. One particular file is transferred (as opposed to
partially qualified file transfers).

.7 G
l

Generic Socket
A <Socket> which both senses (receives) events from its predecessors as well as responds
(sends) evens to its successors
Graphical Workload Analyzer
Deprecated Term. Replaced by: UC4 ClearView
Group
Integrates tasks so that they can be processed together. A particular UC4 object type.
Group Monitor
Window that shows the state of tasks assigned to a group object.

.8 H
l

HTML Help
Microsoft help format for manuals. These help files have the ending .CHM (see also
'WebHelp').
host
Computer, target system.
host attributes
Platform-independent attributes of the Job object.

.9 I
l

Include
A script that is often used in several objects. A particular UC4 object type.

.10 J
l

Job
Processing on a target system. A particular UC4 object type.
Job Control Language
Short form of "Job Control Language". It refers to applications that are processing steps
executed on computers.

Automation Engine
l

985

JobPlan
Deprecated Term. Replaced by: Workflow

.11 K
l

Key column
Column in static Variable objects that can be used to access values of a particular line.

.12 L
l

Login
Login Objects store account credentials used by agents on target systems. A particular UC4
object type.
logical date
The logical date is used as a comparison date for checking Calendar conditions.

.13 M
l

Message Window
UserInterface window that displays warnings, information and error messages.
Modelling Studio
An application which allows modeling of <EventBases> and managing the infrastructure of
the UC4 Policy Orchestrator and the associated <EventBases>
main types
Release, Package, Package Dependency, Applications, Applications Versions, Host, Host
Role, Component, Activity, Environment, Reservation and Workflow.

.14 N
l

Node Registration View


View to manage <nodes> available in Decision
Notification
Sends messages to individual Users and UserGroups of the UC4 system. A particular UC4
object type.
Notification Monitor
Window of the Notification that is sent to one or severeal users at runtime.

986

Chapter Glossary
l

nonstop process
Part of the component Automation Engine. Nonstop processes assume processing if the
computer with the active server processes fails.

.15 O
l

Orchestration Editor
Editor to orchestrate EventBase components such as Maps and Sockets
object
UC4-controlled activities and processes are structured in the form of objects (see also
'Task').
object class
There are four classes of objects: executable, active, passive and system objects.
object type
An individual object is provided for the individual activities: User, UserGroup, Notification,
Cockpit, CodeTable, Documentation, Event, Agent, FileTransfer, Group, Include, Job,
Workflow, Calendar, Login, Client, RemoteTaskManager, Schedule, Script, Server, Sync,
Variable and TimeZone.
object variables
Placeholder for values that are stored in an object's "Variables & Prompts" tab.

.16 P
l

Predictive Analytics
A separate UC4 product. It is a complex graphical analysis tool that produces various
interactive graphical representations, called visualizations, of a data set. The visualizations
can show both individual data values or aggregations, depending on which functions and
features that you use. If the special eventBase for SLA results data is implemented in your
company, you can retrieve and view advanced analytics that show you patterns and trends
in SLA historical performance. Available for download from the UC4 Download Center.
Process Assembly
A perspective of the Enterprise Control Center. You use it to create, define and modify
workflows.
Process Automation
The old name of the Service Catalog perspective.
Process Monitoring
A perspective of the Enterprise Control Center. It lists the activities of all users and provides
the opportunity to manipulate them (you can cancel or deactivate them).
ProcessFlow
Deprecated Term. Replaced by: Workflow
PromptSet
A user-defined input mask for executable objects. A UC4 object type.
PromptSet element
Fields/control elements that are used to query User values. They are the content of a
PromptSet input mask.

Automation Engine
l

987

PromptSet variable
It stores the value of a PromptSet element. Depending on the situation, a value can be userdefined or a default value. PromptSet variables show the same behavior as object variables.
package content
A package may reference applications, components and related packages.
package dependency
A package milestone may depend upon another package to have passed a specific
milestone.
package milestone
Since packages define a state machine, they need some sort of timely order. Milestones are
used for this.
packages
Delivery package, a bundle of functionality.
parent
There are different ways of activating objects. The originator of an activation is referred to as
the superordinate task (parent). (See also 'Child', 'Children')
partially qualified FileTransfer
File transfers that use wildcard characters in order to transfer several files (as opposed to
fully qualified file transfers)..
period container
Controls the execution of periodical tasks.
perspective
Separate functional area of the Enterprise Control Center's (ECC) web interface. The
perspectives Process Automation and Process Monitoring provide functionalities of the UC4
Automation Platform.
predefined variables
Fixed variables that can be used in the attributes or the script of executable objects. The
values refer to the object or the system.
primary work process
It is responsible for the execution of UC4-internal tasks and work processes.

.17 Q
l

Queue
A particular UC4 object type. In AE, a Queue determines the maximum number of concurrent
tasks, their priorities and the order in which tasks should be executed. In ARA, queues are
containers for workflow executions. Queues are intended to run repeatedly within a planned
timeframe. The assigned workflow executions are grouped together and are processed when
the current queue run starts.
QueueManager
Deprecated Term. Replaced by: RemoteTaskManager

.18 R
l

RA Agent
A UC4 Agent that can be connected to a particular RA Solution and thus provide this

988

Chapter Glossary

solution's functionalities to a UC4 system. It is the interface between an external system /


application / platform and a UC4 system.
RA Solution
A solution that is based on the Rapid Automation Technology that allows UC4 to access an
external system / application / platform. The RA Solution is supplied as a JAR file that must
be loaded to the UC4 Database and connected with an RA Agent. The specific RA objects
(such as Jobs, Connections, Agent) are available in the UC4 system as soon as the solution
has been loaded.
Rapid Automation
A generic technology that can include various solutions. Is composed of an RA Agent and an
RA Solution.
Release Notes
UC4 Release Notes contain information about highlights, new functions, improvements, and
corrections for various versions and releases of the UC4 procuct family.
RemoteTaskManager
It monitors and controls external Jobs that were not started by UC4. A particular UC4 object
type.
Response Service
A service which is able to respond (send) information back to other systems, in contrast to
the Action service, most of its configuration has to be done manually in advance.
Rule Editor
An editor for <Rules>
Rule Space Editor
An editor for <Rule Spaces>
RunID
Short for "run number". It is a number that provides unique information about a task's
execution. The RunID can include 7 to 10 digits. It is assigned by the Automation Engine
component .
real date
The date that is used for checking runtime monitoring or time conditions in the properties of
workflow tasks is referred to as the real date. It complies with the top workflow's activation
time. It is passed on to all subordinate tasks.
recurring tasks
These tasks are scheduled without using a Schedule object and mostly consist of a period
that is less than a day.
registered
This is the status of a task that runs within a group and is waiting for its start.
report
A report provides more detailed information about a task's execution or a UC4 component.
restart
A restart refers to the repetition of an object's execution. This action differs from a new start
in some parts.
result column
The first column of dynamic Variable objects with the sources "SQL", "SQL-internal" and
"Multi". The content of this column can be defined with Result format.
return code
The value that represents the result of tasks and script functions.
runtime
The duration of a task's execution. It refers to the period between a task's start and end. It
does not include its activation period (see also: activation and start).

Automation Engine

989

.19 S
l

Schedule
It starts executable objects periodically. A particular UC4 object type.
Schedule Monitor
Graphical view of the execution of Schedule objects.
Scheduler
A <component> which is able to send events in regular fashion or at specific points in time
Script
A script processes statements in UC4's script language. A particular UC4 object type.
Service Catalog
A perspective of the Enterprise Control Center. It allows users to start the objects in their
Favorites folder and generally monitor their execution.
ServiceManager
A program that facilitates the starts and stops of UC4 components.
Sync
It synchronizes executable objects based on defined states and actions. A particular UC4
object type.
Sync Monitor
Window which contains the state of a Sync object and the assigned tasks.
System Overview
The UserInterface window that contains information about the UC4 system.
script variable
A placeholder for a value within a script.
server process
The core of the component Automation Engine. Different types are available:
communication, work and dialog processes, as well as nonstop processes.
static variables
A Variable object with the setting "Source" - "Static": Variable values are entered by a User
or with a script and remain stored in the object.
statistics
This is a list of a task's previous runs.
status
This represents the condition of a task (such as active, blocked, generating).
sub-workflow
A workflow that is part of a different workflow.
superordinate task
There are various ways of activating objects. The originator of the activation is referred to as
the superordinate task (parent).

.20 T
l

TimeZone
It defines a local time. A particular UC4 object type.
task
An executable object that is running. Tasks are also referred to as activities.

990

Chapter Glossary

.21 U
l

UC4 Automation Engine


A separate UC4 product that can be used to control, administer and operate a UC4 system.
You can define and schedule objects that run processes and activities on different hosts.
UC4 Automation Engine
A separate UC4 product which includes the individual components that are required to
operate a UC4 system (such as the component of the same name -the Automation Enginewhich consists of server processes, the UserInterface, the agents, the WebInterface etc.).
Available for download from the UC4 Download Center.
UC4 Automation Platform
Deprecated Term. Replaced by: UC4 Automation Engine
UC4 ClearView
A separate UC4 product. Graphical analysis tool: Displays the activities, statistical and
forecast data per UC4 system client in a bar diagram and can be used to calculate the critical
path. Available for download from the UC4 Download Center.
UC4 Database
A relational database management system (RDMS) that administers all scheduling data
from a central point. It contains object definitions, system specifications, statistical data, job
reports, etc.
UC4 Decision
Deprecated Term. Replaced by: UC4 Policy Orchestrator
UC4 Insight
Deprecated Term. Replaced by: Predictive Analytics
UC4 ONE Automation 2013
The name of the UC4 product family.
UC4 Operations Manager
Deprecated Term. Replaced by: UC4 Automation Platform
UC4 Policy Orchestrator
A separate UC4 product. It is an application for managing events within the UC4 system.
This application is the backend for Policy Orchestrator. First, UC4 Policy Orchestrator
provides the building blocks for defining the business rules. Then, it monitors the UC4
eventBases for occurrences of the situations that are described in the business rule
conditions and exceptions, and then triggers the actions prescribed in the business rules.
Available for download from the UC4 Download Center.
UC4 Release Manager
Deprecated Term. Replaced by: Application Release Automation
UC4 Release Orchestrator
The UC4 Application Release Automation is split into the two products UC4 Release
Orchestrator and UC4 Deployment Manager. The UC4 Release Orchestrator can be used to
manage release plans and release content for single or multiple application releases etc.
UC4 Script
UC4's scripting language.
UC4 Server
Old term for the component Automation Engine (v8 or lower).
UC4 Service Orchestrator
A UC4 product. The Service Orchestrator is a perspective of the UC4 Enterprise Control
Centers (ECC) and it is used to handle, monitor and analyze the performance of SLAs
(Service Level Agreements).
UC4 Variables
These are Variable objects that include the UC4 system's specifications.

Automation Engine
l

991

UC4 component
Refers to UC4 programs such as UserInterfaces, the Automation Engine, Agents,
ServiceManagers, utilities etc.
UC4 priority
Affects the order of task execution within a UC4 system.
UC4 system
An environment that is managed by UC4 components.
UC4.DB Archive
The utility UC4.DB Archive can be used to remove the increasing amounts of data from the
UC4 Database
UC4.DB Change
Utility for changing transport case exports.
UC4.DB Client Copy
Utility for copying and deleting clients
UC4.DB Load
The utility UC4.DB Load can be used to load data into the UC4 Database.
UC4.DB Reorg
Data can be reorganized by using the utility UC4.DB Reorg. It marks data records with a
deletion flag in accordance with the settings that have been specified.
UC4.DB Reporting Tool
The utility UC4.DB Reporting Tool can be used to query tasks in your UC4 system.
UC4.DB Revision Report
Utility unloading modification reports from the UC4 Database. Modification reports include
detailed information about object modifications and accesses.
UC4.DB Unload
Utility for unloading the UC4 Database.
UC4.Log Mix
The utility UC4.LogMix supports the generation of one common file from several report, log
or trace files.
Universal Time Coordinated
Internally, UC4 uses UTC (Universal Time Coordinated) because UTC is the international
time standard and is always precise. Nevertheless, TimeZone objects are available that can
be used to show local times in tasks and script elements.
User
A person who uses a UC4 system. A particular UC4 object type.
User Management View
View to manage users and <authentication methods>
UserGroup
A group of users who have a common profile of rights. A particular UC4 object type in the
UC4 Automation Engine.User groups are an organizing construct to help you better manage
users because you can grant user groups access rights the same way that you grant various
access rights to a single user. All users in the user group are automatically given those
access rights. This makes managing users not only more efficient but also more secure
because working with user groups gives you a better overview of what rights are assigned.
UserInterface
This is UC4's graphical user interface.
utilities
Utilities support the execution of administrative tasks in a UC4 system (such as reorganizing
and archiving the UC4 Database).

992

Chapter Glossary

.22 V
l

Variable
It stores or retrieves values dynamically at runtime. An individual UC4 object type.
Version Management
This refers to an object version that is stored when you have modified the object.

.23 W
l

WebHelp
One of the help formats that are provided for manuals. You open it with a Web browser (see
also 'HTML Help').
WebInterface
A UC4 user interface that can be called via a Web browser.
Workflow
It refers to the execution of processes. A particular UC4 object type.
wildcard characters
These are placeholders for characters when you specify filters. ? stands for exactly one
character, * for any number of characters.
work process
A part of the component Automation Engine. It is responsible for a UC4 system's processes
(see also 'Primary work process').
workflow monitor
Graphical view of a workflow's execution. It shows the workflow structure and the progress
of the child tasks.

.24 X
l

XML file
A format for imports and exports. An XML file contains object structures.

Vous aimerez peut-être aussi