Vous êtes sur la page 1sur 122

Automation Engine 11

ONE Automation Platform

Automation Engine and


SAP

Version: 11.2.2
Publication Date: 2016-10
Automic Software GmbH
ii     Copyright

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 SAP Solutions and Job Scheduling with the Automation Engine 1

2 SAP NetWeaver 2

2.1 Automation Platform and SAP NetWeaver 2

2.2 People Integration 4

2.2.1 Integration in SAP Enterprise Portal (iViews) 4

Introduction 4

Starting Tasks 4

Monitoring Activities 5

2.3 Information Integration 7

2.3.1 Scheduling Data-Loading Processes 7

2.3.2 Scheduling Process Chains 7

2.3.3 Scheduling Queries in Batch Mode 9

2.3.4 Business Objects XI R2 (Crystal Reports) 10

Support of Business Objects (Crystal Reports) 10

Using the MBeans Crystal Reports 11

Procedure 12

Example 12

Parameters 13

Return Codes 13

2.4 Process Integration 14

2.4.1 Monitoring SAP XI Communication Channels 14

2.5 Application Platform 15

2.5.1 ABAP 15

Variant Management 15

AE JCL for SAP 15

BDC Management 15

AE JCL for SAP 16

Spool Management 16

AE JCL for SAP 17

Event Management 17

SAP Event 17

Automic Support 18
iv Contents

AE JCL for SAP 18

Criteria Manager 18

AE JCL for SAP 19

Transferring SAP Jobs 19

Assuming SAP Calendar Definitions 21

2.5.2 Job Management 23

Executing Jobs in ABAP Stack (CCMS) 23

AE JCL for SAP 25

Child Processes (JOBD) 25

AE JCL for SAP 27

Intercepted Jobs 27

AE JCL for SAP 27

Evaluating the Application Return Code of SAP Steps 28

Via a Script Element 28

Via the Step List Report 28

Via the Report 28

2.5.3 JAVA 29

J2EE/JMX Agent for SAP NetWeaver 29

JMX in SAP NetWeaver 30

Monitoring the J2EE Engine 30

Starting and Stopping a Service 31

Executing Jobs in Java Stack (JXBP) 33

Report for Java Statistics 33

Installation 33

Special Cases 34

Return Codes 34

2.6 Lifecycle Management 34

2.6.1 Monitoring SAP NetWeavers 34

Monitoring Monitors 34

AE JCL for SAP 35

Monitoring SAP Events 35

Procedure 36

Notes 36

2.6.2 Analyzing System and Application Logs 37


Automation Engine v

2.6.3 Integrating the Automation Engine with the SAP Solution Manager 38

2.6.4 Registering to System Landscape Directory 40

2.6.5 Switching Operation Modes 41

3 SAP Banking 42

3.1 Process Management and SAP for Banking 42

4 SAP Financial Closing Cockpit 45

4.1 Integrating the Automation Engine in SAP Closing Cockpit 45

4.2 Integrating the Automation Engine in SAP Closing Cockpit with FCC 2.0 Add-on 50

Create a BAdI implementation 56

4.3 Activating Objects with SAP Closing Cockpit 57

5 SAP Solution Manager 61

5.1 SAP Solution Manager Integration 61

5.2 SAP Solution Manager - Use Cases 64

5.3 Setting Up the UserInterface Integration 69

6 Custom Solutions 72

6.1 Archiving Data in SAP Systems 72

6.2 Monitoring SAP Programs Update Requests 75

6.3 Compare Values in SAP Spool Lists 76

Comments 82

6.4 Mass Processing 82

6.5 SAP R/3 Client Copies 83

6.6 SAP Dialog for Automation Engine 85

6.7 Automated System Copy for SAP 85

7 Technical Connection 86

7.1 Automation Engine and SAP 86

7.2 Multiple SAP Systems 86

7.3 SAP Security Objects 87

7.4 Consideration of Job Attributes 91

7.5 Interfaces 92

7.5.1 Interfaces 92

7.5.2 Functional Differences 92

7.5.3 Transporting the Automation Engine Interface 95

File Names 95

Requirements: 95
vi Contents

Procedure: 96

7.5.4 Testing the Automation Engine Interface with ABAP Workbench 97

7.6 Agent for SAP BW 101

7.7 Archive Parameters with R3_ACTIVATE_REPORT 103

7.8 ERROR/ERRORLEVEL with R3_ACTIVATE_SESSIONS 104

7.9 Troubleshooting 105

7.9.1 Checking Errors 105

7.9.2 Problems by Importing Function Modules 106

7.9.3 SAP Jobs End with ARCHIVE_INFO_NOT_FOUND 107

7.9.4 Stability Problems with SAP Instances Occurred When Many SAP Agents (RFC
Connection) Were Used On One Server 108

7.9.5 Problem with Password Assignment to SAP 109

8 Certificates 111

8.1 Overview 112

Glossary 114

A 114

C 114

D 114

G 114

I 115

J 115

P 115

R 115

S 116

T 116

U 116

V 116

W 116
Chapter1 SAP Solutions and Job Scheduling with the Automation Engine | 1

1 SAP Solutions and Job Scheduling


with the Automation Engine

If you are running SAP solutions and need an effective job scheduling solution, consider the Automation
Engine. Enabling the fast, seamless integration of SAP applications into enterprise scheduling, the
Automation Engine supports all SAP applications, including SAP R/3, mySAP Business Suite, and SAP
NetWeaver, as well as industry-specific solutions for telecommunications, banking and more. As a result,
IT processes in any SAP application can be centrally managed and monitored seamlessly alongside the
rest of your global operation.

Because it is specially designed as an Enterprise Scheduler, AE does not require middleware components
such as a JAVA Application Server and provides top scheduling functionality for your whole IT
infrastructure. The system is directly linked to the SAP NetWeaver component SAP Web Application
Server, accelerating the design and implementation of jobs for SAP applications. Reports, variables, and
other necessary parameters are made available via the Automation Engine's easy-to-use, intuitive
graphical user interface (GUI). Problems resulting from manual errors, typos, or outdated report lists are
effectively eliminated. Jobs are created using a simple drag & drop functionality, and visualized graphically
to ensure clarity and simplify management and control.

In addition to offering SAP users total job scheduling automation, the Automation Engine further increases
the productivity of SAP business solutions. By centrally tracking and automating background jobs and
processes of SAP solutions, the Automation Engine ensures that performance is improved by optimizing
background processing and reducing system interruptions and errors.

See also:

Automation Engine and SAP NetWeaver


2 | Chapter 2 SAP NetWeaver

2 SAP NetWeaver

2.1 Automation Platform and SAP NetWeaver


This documentation follows the SAP NetWeaver architecture and explains AE functions based on it.
Functions for business and custom solutions are also explained.

People Integration

This section about SAP NetWeaver is meant to support end users. This is done via user-friendly interfaces
which move responsibilities for process starts with correct parameters to the particular operating
departments.

AE functions
Integration in SAP Enterprise Portal (iViews)

Information Integration

Warehouse Management is the core of this section. Data loading processes and process chains are under
AE control and are even integrated in other platforms using superordinate processes. Automatic analysis
and display of the individual processes of a chain to the lowest level are taken for granted.

AE functions
Scheduling Data Loading Processes
Scheduling Process Chains
Scheduling Queries in Batch Mode
Chapter2 SAP NetWeaver | 3

Process Integration

This section is about integrating business processes in the SAP Exchange Infrastructure (SAP XI). Being
the Integration Broker, messages can release and re-release processes directly via the SAP XI Standard
Adapter.

AE functions
Monitoring SAP XI Communication Channels

Application Platform

The application platform is the basis of all SAP applications. AE uses ABAP and Java in order to provide
useful functions.

AE functions
ABAP:
Executing Jobs in ABAP Stack (CCMS)
Child Processes
Intercepted Jobs
Evaluating the Application Return Code of SAP Steps
Variant Management
BDC Management
Spool Management
Handling Events
Transferring SAP Jobs
Transferring SAP Calendar Definitions
JAVA:
J2EE/JMX Agent for SAP NetWeaver
JMX in SAP NetWeaver
Executing Jobs in Java Stack (JXBP)

Lifecycle Management

This section provides the means for controlling and monitoring all solutions on the basis of the SAP
NetWeaver technology. AE can access all monitored data while also supplying it own data.

AE functions
Monitoring Monitors
Monitoring SAP NetWeaver
Integrating AE in the SAP Solution Manager
4 | Chapter 2 SAP NetWeaver

Registering to System Landscape Directory


Switching Operation Modes
Viewing System Log and View Application Log

Application Development

AE also supports the development of applications in various ways.

AE functions
ABAP:
CallAPI for SAP
JAVA:
AE.ApplicationInterface

2.2 People Integration

2.2.1 Integration in SAP Enterprise Portal (iViews)


Introduction
The AE iViews for job scheduling supply current information about job scheduling to the SAP Enterprise
Portal component of the SAP NetWeaver so that critical business processes can be started by end users.

Tasks can be started and monitored directly from the SAP Enterprise Portal. End users can start important
processes and set the corresponding parameters if necessary. No knowledge about job scheduling is
required. Each user can monitor the current status of the background processing via the SAP Enterprise
Portal. Started processes are then managed and monitored by the Automation Engine. The current status
is made available to the user via the iView technology.

See also:

Starting Tasks
Monitoring Activities

Starting Tasks
With the iView "ActivateObject", users can start executable objects in AE. For that purpose, the name of
the object and the description of the task need to be specified in the personalization settings. It is also
important to indicate the system alias which must comply with the term the administrator defined in the
system settings.

Different AE systems can be accessed via system aliases.


Chapter2 SAP NetWeaver | 5

The object can now be activated with the Start button. The iView shows the run number (RunID) of the
current or last execution. Follow the link "Detail" and the Detail Window provides further information upon
start time and return code, similar to the UserInterface.

The iView generates an input mask if user input is required for the execution of an object (e.g. if the script
element :READ is used). Red stars "*" symbolize mandatory fields.

See also:

Monitoring Activities

Monitoring Activities
The iView "Activities" shows the activities of the AE system that were started by the particular user. As in
the UserInterface are task priorities, start times and states available.

Information about the activities can only be read. Changes such as canceling or editing tasks are not
possible via iView.
6 | Chapter 2 SAP NetWeaver

It is possible to adjust the view to your personal requirements by hiding some of the columns, for example.
Do so in the personalization settings and note that it is important to indicate the system alias. It must
comply with the term the administrator specified in the system settings.

See also:

Starting Tasks
Chapter2 SAP NetWeaver | 7

2.3 Information Integration

2.3.1 Scheduling Data-Loading Processes


An InfoPackage is an object which describes the selection conditions for requesting data from a source
system. This object can be scheduled and then controls the data-loading process from the source system.
InfoPackages can be externally controlled using a standard interface. AE uses this interface.

AE-JCL for SAP

Script Element Description


BW_ACTIVATE_ Schedules one or more InfoPackages for immediate start.
INFOPACKAGE
BW_GET_ Reads InfoPackages from the BW system. Available InfoPackages are
INFOPACKAGES stored in the activation report or a file.
BW_SET_ Sets selection parameters which are used for reading the InfoPackages
INFOPACKAGE_ from the BW system.
SELECTION

2.3.2 Scheduling Process Chains


Operations can be displayed in your BW system via process chains. A chain includes a start process,
individual application processes and collected processes. Including InfoPackages is also possible.

AE can be used to start and monitor process chains. The individual processes are then displayed in the
UserInterface's Activity Window. Process logs are stored in the report of the AE Job object.
8 | Chapter 2 SAP NetWeaver

AE JCL for SAP

Script Element Description


BW_ACTIVATE_ Starts a process chain, monitors its execution and stores the corresponding logs in
CHAIN the activation report.
BW_GET_ Reads process chains from the BW system. Available process chains are stored in
CHAINS the activation report or a file.
BW_RESTART_ Continues an aborted process chain.
CHAIN
Chapter2 SAP NetWeaver | 9

2.3.3 Scheduling Queries in Batch Mode


The transaction RSCRM_BAPI can be used to create queries for your BW system. The result is stored
either in a table or a file. Use AE to make queries either regularly or upon request.

In the first step, log on to the BW system and call the transaction RSCRM_BAPI. Schedule the query to
be automated with AE once. Each query has its own batch ID. Open the batch monitor and copy this
number.

Now create a SAP job in your AE system. Use the Form tab or write the following function directly into the
Process tab:
R3_ACTIVATE_REPORT REP='RSCRMREPORT_BAPI'
Now change to the SAP tab and enter the copied BatchID in the field Job name.
10 | Chapter 2 SAP NetWeaver

This Job object can now be integrated in your processing (e.g. in a Schedule object) and will process the
query at the point in time you define.

It is a SAP peculiarity that the batch monitor does not display all query executions but only the last one.

2.3.4 Business Objects XI R2 (Crystal Reports)


Support of Business Objects (Crystal Reports)
Business Objects can be used to create reports of any kind from your data. Parameters are used to define
the contents of these reports. With AE, you can create automated reports, send them by e-mail or store
them as files. This function is provided by an MBean which is called by the AE agent for J2EE/JMX.

A stand-alone installation (without application server) is required for the agent.


Chapter2 SAP NetWeaver | 11

Functions of the MBean "CrystalReports":

l Assigning parameters to the report


l Storing the report output as a file (Crystal Report, Excel, Word, PDF, RTF, text file)
l Sending the report output to e-mail receivers

Log on to Business Objects with the user specified in the job's Login object. The login type to be used
is "Enterprise".

See also:

Using the MBean CrystalReports

Using the MBeans Crystal Reports


The MBean "CrystalReports" is supplied with the JMX agent and must be installed.

MBean Description
Name UC4:name=CrystalReports
Attribute "StatusCheckInterval" - Interval in which the report status is checked

Default value: 3 seconds


12 | Chapter 2 SAP NetWeaver

Operations "executeAndMail" - Executes a report and sends its output file by mail

Parameter: Report details, report attributes, email receiver

"executeAndSave" - Executes a report and sends its output file

Parameter: Report details, report attributes

Procedure

Two steps are required to execute a report:

1. Set the parameter for the operation to be called. Use the function JMX_COMPOSITE_ADD
because a list of values is expected. The parameter for report specifications contains values such
as the Web Service's address and the report name.
2. Now call the required operation using the function JMX_INVOKE.

The MBean "CrystalReports" is automatically registered by the JMX agent. It is not necessary to call
the function JMX_CREATE_MBEAN.

Example

The "Smith" company processes a report about orders made by customer number 55355. The result (Excel
sheet) is sent to Mr. Black by e-mail.

The function JMX_COMPOSITE_ADD creates the three parameters "report", "settings" and "mail".
Several values are assigned to each of these parameters and subsequently they are assigned to the
operation "executeAndMail".
! Report details
JMX_COMPOSITE_ADD
NAME="report",KEY="URL",VALUE="http://localhost:5555/dswsbobje2/services"
JMX_COMPOSITE_ADD NAME="report",KEY="REPORT",VALUE="Main_Folder/Customer_
List/3000 - SMITH - Sales_Orders"
JMX_COMPOSITE_ADD NAME="report",KEY="FORMAT",VALUE="EXCEL"
JMX_COMPOSITE_ADD NAME="report",KEY="MAIL_SUBJECT",VALUE="Customer Number
55355"
JMX_COMPOSITE_ADD NAME="report",KEY="MAIL_BODY",VALUE="Dear Mr. Black,
Please find enclosed the report for customer number 55355.
It contains all orders made in December.

Best regards
Jack White

JMX_COMPOSITE_ADD NAME="report",KEY="MAIL_FROM",VALUE="white@smith.com"
! Report attributes
JMX_COMPOSITE_ADD NAME="settings",KEY="Customer_number",VALUE="55355"
JMX_COMPOSITE_ADD NAME="settings",KEY="Date_area",VALUE="20061201;20061231"
! Email receiver
JMX_COMPOSITE_ADD NAME="mail",KEY="black@smith.com",VALUE="TO"
! Calling the MBean
JMX_INVOKE
OPERATIONNAME="executeAndMail",MBEAN="UC4:name=CrystalReports",PARAMS="repo
rt,settings,mail"
Chapter2 SAP NetWeaver | 13

Parameters

As the above example shows, values are allocated to a keyword and then assigned to the relevant
parameter. In doing so, the JMX agent can distinguish report settings.

Parameter Description
Report Available keywords:
details
l "URL" - Address of the Web service
l "REPORT" - Name and path of the report
l "FORMAT" - File format for the report output ("CRYSTAL_REPORT", "EXCEL",
"WORD", "PDF", "RTF", "TEXT_PLAIN", "TEXT_PAGINATED", "TEXT_TAB_
SEPARATED", "TEXT_CHARACTER_SEPARATED", "EXCEL_DATA_ONLY",
"TEXT_TAB_SEPARATED_TEXT", "RTF_EDITABLE", "USER_DEFINED")
Specifically for the operation "executeAndMail":

l "MAIL_SUBJECT" - E-mail subject


l "MAIL_BODY" - E-mail message
l "MAIL_FROM" - Sender's e-mail address
Specifically for the operation "executeAndSave":

l "FILE" - Path and name of the output file


Report Specify the attributes which should be considered in the report.
attributes
Keywords depend on the report.
Email Indicate the e-mail address as the keyword. The value is either "TO" for the receiver or
receiver "CC" for the receiver who should be copied.

Return Codes

After having successfully processed the Crystal Report, the JMX job returns code "0". In the case of an
error, it supplies either "1" if an error occurs when calling the operation or "3" if an MBean program error
occurs. The report shows detailed information about the cause of the error.

The job status is also output in the report:

l "0" - Active
l "9" - Pending (the job has not yet started)
l "1" - Successfully ended
l "3" - Canceled
l "8" - Job execution has been stopped

Report execution is continuously monitored if the status is either "0" or "9".

See also:

Support of Business Objects (Crystal Reports)


14 | Chapter 2 SAP NetWeaver

2.4 Process Integration

2.4.1 Monitoring SAP XI Communication Channels


SAP XI adapters are used to exchange data with the SAP Exchange Infrastructure. They transform
messages so that they can be forwarded via communication channels.

The SAP agent provides functions which can be used to handle adapters:

l Starting communication channels


l Stopping communication channels
l Querying information about communication channels

The functions XI_GET_CHANNEL and XI_SET_CHANNEL can be used in SAP jobs. Information about
communication channels is stored as an XML document in the job report. The script elements for XML
format this data.

Communication channels can also be monitored via Event objects of type "Console". An event is triggered
whenever the status changes.

Activate the XI interface with the SAP Executor's INI-file parameters in the section [SAP_XI].

A Login object with valid login data is required for accessing the XI system. The XI user must be
authorized to control the XI communication channels. We recommend using different Login objects for
SAP and XI system if both are installed on the same host. Otherwise, the login entry is not unique.

AE JCL for XI

Script elements Description


XI_GET_CHANNEL Lists communication channels
XI_SET_CHANNEL Starts and stops communication channels
Chapter2 SAP NetWeaver | 15

2.5 Application Platform

2.5.1 ABAP
Variant Management
Variants facilitate processing in SAP as jobs can be processed with ready-set input values. Automic
Supports the use of variants by offering various functions for reading, copying or modifying variants.
Deleting and listing them are also possible.

It is important that variants are checked and set just before an ABAP program is processed in order to
exclude error sources.

AE JCL for SAP

Script Element Description


R3_ACTIVATE_REPORT Executes a report with a specified variant
R3_COPY_VARIANT Copies a report variant
R3_CREATE_VARIANT Creates a new variant
R3_DELETE_VARIANT Deletes a report variant
R3_GET_VARIANT_CONTENTS Shows the content of a variant
R3_GET_VARIANTS Lists all available variants in the activation log
R3_MODIFY_VARIANT Modifies a variant entry

BDC Management
Batch input is a proven technique for transferring mass data from external systems to the SAP system.

The batch input sessions used contain one or several transaction calls including transaction data. AE can
read, process and monitor these sessions until they end. AE can also directly call transactions whose data
has been defined in an AE job (call transaction).
16 | Chapter 2 SAP NetWeaver

AE JCL for SAP

Script Element Description


R3_ACTIVATE_ Processes batch input sessions
SESSIONS
R3_CALL_ Calls a SAP transaction
TRANSACTION
R3_GET_SESSIONS Selects batch input sessions and lists the result in the activation report or
a file
R3_SET_BDCDATA Defines BDC data

Spool Management
AE is able to handle and process job outputs. This is done via Job object specifications and script
elements.

The SAP tab in SAP jobs can be used to enter spool list recipients. All spool requests created by the job
are sent to the recipients specified in this tab.
Chapter2 SAP NetWeaver | 17

AE JCL for SAP

Many script elements have parameters which can be used to handle job outputs. The following functions
serve to handle spool requests:

Script Element Description


R3_CREATE_OUTPUT_REQUEST Creates a new output request for an existing spool request
R3_GET_JOB_SPOOL Reads the spool list of a step of type "ABAP program".

Filter specifications are possible.


R3_GET_SPOOL_REQUESTS Selects spool requests with predefined filters
R3_SEND_SPOOL_REQUEST Sends an existing spool request

Event Management
Modern business applications demand that process management is event aware. Traditional predefined
and time-based process control systems do not meet the requirements of modern complex application and
system environments and their ever-increasing interdependencies.

With AE.Event, AE offers a sophisticated solution for event-aware process management. Processing can
be performed depending on a variety of real-time system conditions and events. AE.Event offers this
functionality for a variety of OS and application platforms. Definition and modification of events takes
place centrally and is platform-independent, ensuring ease of use by the authorized user.

The SAP background control also provides event control. Events can trigger appropriate SAP background
processes. SAP events are enhanced with an AE implementation, enabling maximum business process
flexibility and extended management functionality.

SAP Event

A SAP event is a flag that is defined in transaction SM62. A defined event can be triggered (manually, with
an OS job or an ABAP program), causing the execution of a background process.

There are two types of SAP events:

l System events
Defined by SAP and automatically triggered if system events occur such as the activation of a new
18 | Chapter 2 SAP NetWeaver

operation mode. System events cannot be modified.


l User events
Defined by users. These events must be triggered by ABAP or external programs. For example, an
external program can signal to the SAP background processing that external data is ready to be
imported to the SAP system.

Automic Support

Automic Supports SAP events and integrates them into its centralized process management. This solution
can be helpful if the SAP background control works with a large number of defined events and a conversion
to an AE implementation with workflows and AE.Event would be too complex and time-consuming.

For most applications it makes sense to replace SAP events with the AE solution.

AE can use SAP events for its process management. The execution of objects can depend on the
occurrence of a SAP event. For example, particular processes can depend on a successful data import.

AE can trigger SAP-defined events. The full AE functionality is available for defining trigger conditions and
points in time for a SAP event. Upon the occurrence of such an event the appropriate processes in the
SAP system are started.

It is also possible to use an Event object of type "Console". The agent monitors the triggered SAP events
and forwards the information to the Console events. Filters can be used to specify SAP events which
should trigger subsequent processing or an information message.

AE JCL for SAP

Script Element Description


R3_GET_EVENT Waits for a SAP-triggered event
R3_RAISE_EVENT Triggers a SAP-defined event

See also:

Monitoring SAP Events

Criteria Manager
The SAP Criteria Manager can be used to define conditions for the Event History, Event History Reorg and
job interception in the form of profiles.

You can directly access the Criteria Manager in the SAP job.

Functions: 

l Creating and deleting profiles


l Activating and deactivating profiles
l Adding, modifying and removing conditions

In the Form tab, click on the button to open the Criteria Administrator.

XBP 3.0 is required to access the SAP Criteria Manager.


Chapter2 SAP NetWeaver | 19

AE JCL for SAP

Script element Description


R3_ACTIVATE_CM_ Activates a profile in the SAP Criteria Manager
PROFILE
R3_DEACTIVATE_ Deactivates a profile in the SAP Criteria Manager
CM_PROFILE

Transferring SAP Jobs


AE Job objects can be used to define new SAP jobs and also to transfer existing SAP jobs to AE. The
advantage is clear: The job must only be created once.

Jobs can only be transferred if there is a UserInterface connection to the SAP system.

Open a Job object and select the Form tab. The upper left edge shows several buttons. Click the symbol
. A window opens in which you can enter filters for SAP jobs such as name or job number etc.
20 | Chapter 2 SAP NetWeaver

Now click on the button Find. All SAP jobs that correspond to the specified filter criteria are listed.
Highlight the job to be transferred to AE and Click OK tab.

The Job object adopts the statements the job contains. Parameters such as the variant or output device
are automatically added as shown below:
Chapter2 SAP NetWeaver | 21

If jobs are transferred to AE, they are not removed from the SAP system. Job settings are read and
copied to the AE Job object.

This method of transferring jobs is very useful if only a few jobs are affected. If many jobs are to be
transferred, Automic recommends using the AE.ApplicationInterface.

If you plan to transfer masses of jobs, do so carefully and get a general idea first. In most cases, the
number of jobs has increased in the course of time; they can often be reworked, simplified or even
replaced.

See also:

Transferring SAP Calendar Definitions

Assuming SAP Calendar Definitions


SAP provides the transaction SCAL for defining factory calendars. The AE interface contains an ABAP
program which can be used to export these calendars as XML files. These files can then be transferred to
your AE system. Special calendar definitions are considered.

The ABAP program "/SBB/UC4_CALE_GET" can be opened as soon as the AE interface has been
imported (refer to the installation guide for SAP agents). Enter the factory calendar's ID and information
concerning your AE system as shown below:
22 | Chapter 2 SAP NetWeaver

The two checkboxes on bottom of the above form serve to determine whether the calendar definition
should be generated as a spool list or XML file. ln the latter case, a dialog opens in which the folder the can
be selected to which the XML file should be stored.

Import the XML file to your AE system. The factory calendar is now provided in the form of a Calendar
object.
Chapter2 SAP NetWeaver | 23

Script elements can also be used to assume calendars automatically.

See also:

Calendar
Importing and Exporting Objects
AE JCL for SAP

2.5.2 Job Management


Executing Jobs in ABAP Stack (CCMS)
AE and its functions can be used in various ways in order to support processing in SAP. Job objects are
the basis for defining statements which should be processed in the SAP system.

The Form tab is the graphical interface that is connected to the SAP system and facilitates the definition
of processing statements through the direct selection of data (e.g. variants).
24 | Chapter 2 SAP NetWeaver

AE facilitates the execution of:

l Jobs
l Reports
l External commands
l External programs
l Intercepted jobs
l etc.

The Activity Window in the UserInterface shows task states. Tasks can be restarted or canceled if
requested. Child processes are also displayed. When a task has ended in AE, you can access its report
which also includes SAP system messages.

It is not only the Job object which facilitates processing in the SAP system. The object type
"RemoteTaskManager" can also be used to monitor and start jobs in SAP. It is especially useful for
intercepted jobs.
Chapter2 SAP NetWeaver | 25

AE JCL for SAP

Script Element Description


R3_ACTIVATE_EXT_COMMAND Executes an external command
R3_ACTIVATE_EXT_PROGRAM Executes an external program
R3_ACTIVATE_INTERCEPTED_ Executes intercepted jobs under AE control
JOBS
R3_ACTIVATE_JOBS Executes SAP-scheduled jobs under AE control
R3_ACTIVATE_REPORT Executes the specified report
R3_GET_JOBS Selects SAP jobs and lists the result in the activation report or
a file
R3_MODIFY_JOB Modifies an ABAP step
R3_SCHEDULE_JOB_CANCEL Resets a released SAP job to the status "Planned"

See also:

Child Processes
Intercepted Jobs
RemoteTaskManager

Child Processes (JOBD)


SAP jobs can contain one or several subjobs (e.g. in process chains). AE can display these child
processes in its Activity Window. They have their own statistical records and reports.

The parent-child function can be activated in the transaction "SE38" using the program INITXBP2.
26 | Chapter 2 SAP NetWeaver

The object type of child processes is JOBD.

Set the parameter REPLICATE=YES in the relevant script elements to have the child processes
replicated in your AE system.

Note that child processes can also have child processes. These can be seen in the Parent column of
the Activity Window and the statistical overview.

The illustration below shows the execution of a process chain:

The item "Status text" in the Detail Window of child processes shows the SAP system's instance number.

Deactivating child processes is possible in the corresponding parent processes.

SAP jobs have a special tab called Child Post Process. It is processed when an individual child process
ends. In doing so, the result can immediately be analyzed.

A statistical record and a report are created for each child process. Both can be called via the statistical
overview of the parent process.

The report is structured in the same way as the report of the top parent process but it contains only
information about the particular process step.
Chapter2 SAP NetWeaver | 27

The job report settings are also valid for the top parent process (database, file, on error only). Additionally,
the report length can be specified using the parameters JOBLOG=, PROCESSLOG= and LONGTEXT= of
the script elements BW_ACTIVATE_CHAIN and BW_RESTART_CHAIN.

AE JCL for SAP

Script Element Description


BW_ACTIVATE_CHAIN Starts a process chain
BW_RESTART_CHAIN Continues an aborted process chain
R3_ACTIVATE_INTERCEPTED_JOBS Executes intercepted jobs under AE control
R3_ACTIVATE_JOBS Executes SAP-scheduled jobs under AE control
R3_ACTIVATE_REPORT Executes the specified report

See also:

Child Post-Process Tab

Intercepted Jobs
Filter criteria can be defined in the table TBCICPT1 of SAP jobs. These criteria include the specification of
a client, job name and user. If a user indicated in this table starts a job which meets the specified filter
criteria, the job status changes to "Scheduled" regardless of the defined start mode (e.g. "Immediately").

The Intercept function can be activated in the transaction "SE38" using the program INITXBP2.

Click the  symbol in the "Form" tab of SAP jobs to access the table and maintain its entries (XBP 2.0)or
use the Criteria Manager (XBP 3.0).

Table entries can also be changed dynamically using the script element R3_MODIFY_
INTERCEPTION.

There are two ways of executing intercepted jobs:

1. Use the RemoteTaskManager to control and monitor intercepted jobs


2. Use R3_ACTIVATE_INTERCEPTED_JOBS
3. Use R3_GET_INTERCEPTION to read the table. The result is stored to a file which can be
accessed with PREP_PROCESS_FILE.

You can specify the maximum number of jobs which can run parallel when you start intercepted jobs
individually with a group being indicated as start type.

AE JCL for SAP

Script Element Description


R3_ACTIVATE_ Executes Intercepted jobs under AE control
INTERCEPTED_JOBS
R3_GET_INTERCEPTION Reads the filter table for intercepted jobs and stores them in the
activation log or a file
R3_MODIFY_INTERCEPTION Modifies the filter table for intercepted jobs
28 | Chapter 2 SAP NetWeaver

See also:

Form tab

Evaluating the Application Return Code of SAP Steps


A SAP job step can also have an application return code.

You can access it as described below:

Via a Script Element

R3_GET_APPLICATION_RC can be used to check the application return code of one or several job steps
and cancel the AE job if required.

Via the Step List Report

This specific report type contains information about the steps plus the application return code. The return
code can be read using the XML script elements.

Example:
:SET &xmlreport# = XML_OPEN(REPORT,,SSTP)
! Reading the first element
:SET &job# = XML_GET_FIRST_CHILD(&xmlreport#)
:SET &name# = XML_GET_NODE_NAME(&job#)
:PRINT "First element: &name#"
! Reading the second element
:SET &child# = XML_GET_FIRST_CHILD(&step#)
! Reading the step's children
:WHILE &child# <> ""
:SET &name# = XML_GET_NODE_NAME(&child#)
! Reading the application return code
:IF &name# = "RC"
: SET &applrc# = XML_GET_NODE_TEXT(&child#)
: PRINT "Applicationreturncode: &applrc#"
:ENDIF
:SET &child# = XML_GET_NEXTSIBLING(&child#)
:ENDWHILE
:XML_CLOSE

Via the Report

Information about SAP job steps is logged in the job report. This report also informs about the application
return code if you use the AE interface.

"Appl-RC n/a" is written to the job report if a step has no application return code.

Use the script function PREP_PROCESS_REPORT to read and further process application return
codes.

In the following example, the ABAP ZZ_TEST_APPL_RC is called in a job once. Its application return
code should be read.
Chapter2 SAP NetWeaver | 29

! Select the line containing ABAP and the application return code.
:SET &HND# = PREP_PROCESS_REPORT(,,REP,"*ZZ_TEST_APPL_RC*Appl-RC*")
:PROCESS &HND#
: SET &ZEILE# = GET_PROCESS_LINE(&HND#)
! Find the exact position in a line where the "Appl RC" starts.
: SET &POS_STR# = STR_FIND(&ZEILE#,"Appl-RC")
! The application return code is located after 8 characters.
: SET &POS_ARC# = ADD(&POS_STR#,8)
! Read the application return code.
: SET &ARC# = STR_CUT(&ZEILE#,&POS_ARC#)
! Check if the step really supplies an application return code.
: IF &ARC# <> "n/a"
! The read value is a string and must therefore be converted to a
number.
: SET &ARC# = CINT(&ARC#)
! Beyond this point there are any script statements which further
process the application return code.
: PRINT &ARC#
: ENDIF
:ENDPROCESS
The application return code is not available with the XBP interface.

2.5.3 JAVA
J2EE/JMX Agent for SAP NetWeaver
Java Management Extensions (JMX) is a technology that provides a series of instruments for handling and
monitoring applications, devices and networks.

The Automation Engine provides a JMX agent that can be used to integrate Java applications into
enterprise-wide processes. Connections are established via an MBean Server and several functions
provide access to these MBeans.

SAP NetWeaver's standard supply contains more than 1600 MBeans that can directly be handled. Java
does not require predefined proprietary "jobs". No Scheduler is required within Java because AE takes
over this function. Due to this standard, this function is also executable on Java sources of other vendors.
A Requirements Checklist in the documentation provides information about all supported application
servers.

AE Script elements can be used to register, list and remove MBeans. MBean functions can be called, and
attributes and information can be read and set.

The Job object's Form tabprovides a graphical interface in which all functions are available.

See also:

Form (JMX) tab


About the JMX JCL
30 | Chapter 2 SAP NetWeaver

JMX in SAP NetWeaver


The AE JMX agent facilitates using MBeans in SAP NetWeaver.

Monitoring the J2EE Engine

The status of the J2EE Engine can be queried via JMX. The output information is also displayed in the
Visual Administrator under Server -> Services -> Monitoring.

All the Visual Administrator's functions are provided via MBeans and can also be used in AE.

Limitation: AE cannot use JMX operations or attributes that use SAP-specific classes (for example,
com.sapmarkets.bam.application.User) or complex data structures such as lists, maps, or arrays.

The AE MBean Browser in the JXM job displays a maximum of 300 MBeans. A search filter facilitates the
search for particular MBeans (right-click the tree structure -> apply filter...).

For example: The number of unsuccessful login attempt should be queried. The first illustration shows this
value below the node Security -> Aggregated Data. Therefore, you can filter for "*Security/Aggregated
Data/UnsuccessfulLogonAttemptsCount*" in the MBean Browser. Exactly one MBean is returned in the
AE environment.

Here you can select one of the following attributes: "Value", "MaxValue" or "MinValue". An AE job can be
scheduled that queries the number of error messages periodically.
Chapter2 SAP NetWeaver | 31

Starting and Stopping a Service

The Visual Administrator also configures, starts and stops services. As it also uses JMX MBeans, this
function is available via the agent.

Services are listed in the Visual Administrator under Server -> Services:

For example: The Telnet service should be started or stopped.

You can filter "*SAP_J2EEServicePerNode*" in order to have all services displayed in the MBean
Browser. The returned MBeans correspond to the corresponding services.

All services have a "start" and "stop" method. Select the entry "telnet" from the tree structure. Then select
the method "stop". Click OK to generate an AE job that stops the Telnet service:
32 | Chapter 2 SAP NetWeaver

The modification is immediately visible in the Visual Administrator:


Chapter2 SAP NetWeaver | 33

Executing Jobs in Java Stack (JXBP)


AE provides the following opportunities for the handling of jobs in the SAP Java Scheduler:

l Start jobs using parameters


l Cancel jobs
l Include the logs in the job reports
l Monitor jobs via filter using the RemoteTaskManager

First, the Java job definition must be deployed in the Java Schedule to make it visible to the SAP agent.
Subsequently, you can use a Job object to create an instance from an existing job definition.

A SAP Job object always belongs to exactly one Java job definition.

Create a SAP Job object for Java Scheduler jobs and select a SAP agent plus a Login object. Use the
Form tab to select the job definitions to be applied. The lower part of the tab automatically displays the
corresponding parameters.

 The Job log tab contains the following options:

l Delete after x days - The job log is deleted from the Java Scheduler after x days.
l Do not remove - The job log is not removed from the Java Scheduler.
l Use default settings - The period after which the job log is deleted from the Java Scheduler depends
on the settings made in the job definition.

The job log is always deleted together with the job instance.

Report for Java Statistics

A processed SAP Job object can also contain a report (SJJI) which includes information about the Java
job. Activate this function by checking the relevant checkbox in the area Optional reports in the Job
object's SAP tab.

Installation

Creating the external Schedulers in SAP:

1. Use the WebInterface to log on to the SAP NetWeaver Administrator.


2. Select the Job tab.
3. Click the link "Java Scheduler" -> "External Scheduler".
4. Insert a new entry in the list of registered external Java Schedulers ("Add").
5. Complete the fields. Specify "Automation Engine" for the name and the description.
6. Click on Add.

Creating a Connection object in AE:

1. Log on to system client 0000.


2. Create a new Connection object for SAP.
3. Open the Connection object and select the connection type "Internet" in the Attributes tab.
4. Switch to the Internet tab and specify the connection data for the SAP Java Scheduler. Indicate the
user that was used to add AE as an external Scheduler.
5. Store and close the Connection object.
6. Switch to the folder HOST and open the SAP Agent's object.
7. Select the Connection object in the Agent tab in the field Java Basis.
34 | Chapter 2 SAP NetWeaver

8. Store and close the Agent object.


9. Restart the SAP agent if it is currently running.

Special Cases

In an environment of several nodes, the Java Scheduler jobs are processed on the node on which the
Scheduler Service is active. If this node is deactivated or fails, job processing continues on a different
node. 

The agent periodically attempts to re-establish the connection to the Java Scheduler if it has been lost
during job execution. The job remains active in the AE system and obtains the status "Waiting for remote
system".

The job aborts if calling the Java Scheduler results in an error. In this case, there is no report about the
Java job's statistics. The error is logged in the Job object's report "Agent Log" and in the SAP agent's log
file. The job aborts with return code 403.

Restarts are not possible. The complete job starts in the Java Scheduler because there is no AE JCL.

Return Codes

SAP status Job return code in AE


COMPLETED 0
HOLD
RUNNING
SCHEDULED
STARTING
UNKNOWN
ERROR 501
CANCELED 502

2.6 Lifecycle Management

2.6.1 Monitoring SAP NetWeavers


Monitoring Monitors
SAP offers various monitors that can be used to monitor the SAP environment including corresponding
components. The function R3_GET_MONITOR reads the provided information and makes it available for
further processing.

The following example reads the monitor "All Monitoring Contexts" and stores its content to a text file:
R3_GET_MONITOR MONITOR_SET="SAP CCMS Technical Expert Monitors",
MONITOR="All Monitoring Contexts", FILE="C:\UC4_and_
SAP\AllMonitoringContexts.txt"
Chapter2 SAP NetWeaver | 35

Use the script function PREP_PROCESS if only parts of the monitored information should be filtered.
Based on these filter specifications, the script function supplies a data sequence which can then be
processed. The SAP agent lists the monitor's information in columns. The following example filters lines
with the content "Enqueue". Four columns are used for further processing:
:SET &HND# = PREP_PROCESS("SAP01","R3MONITOR","*Enqueue*","MONSET=SAP CCMS
Technical Expert Monitors","MONNAM=All Monitoring Contexts","COL=FILE","UC_
LOGIN=LOGIN.SAP")
:PROCESS &HND#
: SET &Context# = GET_PROCESS_LINE(&HND#, CONTEXT)
: SET &Name# = GET_PROCESS_LINE(&HND#, NAME)
: SET &Value# = GET_PROCESS_LINE(&HND#, VALUE)
: SET &Status# = GET_PROCESS_LINE(&HND#, STATUS)
: PRINT "&Context# --- &Name#"
: PRINT "Value: &Value#"
: PRINT "Status: &Status#"
: PRINT ""
:ENDPROCESS
The above example calls the function R3_GET_MONITOR in the background. Refer to the document that
describes the script function PREP_PROCESS for more detailed information.

The RemoteTaskManager object also provides monitoring functions in the SAP system. Depending on
the specified filter criteria, it displays jobs triggered by SAP.

AE JCL for SAP

Script Element Description


R3_GET_MONITOR Reads the data of a SAP monitor

Monitoring SAP Events


Events are significant in SAP's background processing. Event objects of type "Console" can be used to
monitor SAP events.

The agent periodically polls the SAP system for occurred SAP events and reports them to the active
Console events in an interval the administrator has defined in the variable UC_HOSTCHAR_
DEFAULT, key JOB_CHECKINTERVAL.

Filters are available which serve to define the SAP events to be monitored. The statements defined in the
!Process tab initiate further processing steps as they are processed when an agent reports a SAP event.

Use the function GET_EVENT_INFO in the !Process tab. It supplies details about the SAP event that
has occurred.
36 | Chapter 2 SAP NetWeaver

Several filter lines can be specified in the table in the tab's lower area. !Process is processed if a SAP
event is triggered which meets at least one filter specification. !Process is NOT processed several times if
several filter specifications are met.

Overlapping filters can occur if several Console events are used. The agent would then notify all Console
events about the relevant SAP event.

AE does not only provide Console events but also functions which can be used to handle SAP events
via Job objects. R3_GET_EVENT waits for a SAP-triggered event and R3_RAISE_EVENT can be
used to trigger a SAP-defined event.

Procedure

1. Create an Event object of type "Console".


2. Open it and switch to the Console tab. Specify the agent that is connected to the SAP system and
the filter criteria for the SAP events.
3. In the !Process tab, enter the script statement to be processed if a SAP event occurs which meets
the specified filter criteria. The script function GET_EVENT_INFO supplies details about the SAP
event.
4. If required, fill in the other tabs of the Console event and store the object.
5. Now activate the Console event in order to include SAP events in your processing.

Notes

XBP 3.0 is required in order to monitor SAP events of event type "Console". The administrator can
specify the XBP 3.0 interface in the SAP agent's INI file.
Chapter2 SAP NetWeaver | 37

If the agent loses its connection to the SAP system, SAP events can accumulate as the agent is not able
to forward them to the Console events. As soon as the connection has been re-established, the agent
checks if there are SAP events and reports them to the affected Console events.

Due to the fact that huge data amounts can be involved, the agent does not read all SAP events at
once. The administrator can define the required handling in the agent's INI-file parameter
maxEventTimeSpan= .

The agent cannot monitor SAP events if it is terminated. After a restart, it retrieves the point in time when it
last monitored SAP events and also reports SAP events that occurred during its termination.

All agents connected to the SAP system poll SAP events. This means that each agent reports all SAP
events which occurred to the Console events.

If the SAP system's time runs behind AE's system time, the first SAP events cannot be received if
they occur in the gap between the two different times.

See also:

Event Management
Sample Collection - Reaction to External Events

2.6.2 Analyzing System and Application Logs


AE can be used to read SAP application logs as well as the system log.

Both log types supply information about processing in general and possible error situations. AE provides
functions which serve to read the corresponding entries using filters, and store them in a report or file. The
result can be analyzed using PREP_PROCESS and PREP_PROCESS_FILE.

A particularity that applies to the system log is that aborted jobs can store their last system log lines in the
special SLOG report. This makes error analyses much easier. The number of lines to be kept as well as
other settings are defined in the SAP agent's Connection object.

AE JCL for SAP

Script Element Description


R3_GET_ Retrieves messages from the application log and prints them in report or
APPLICATIONLOG file form
R3_GET_SYSTEMLOG Reads the system log of a SAP system during a defined period of time
38 | Chapter 2 SAP NetWeaver

2.6.3 Integrating the Automation Engine with the SAP


Solution Manager
The SAP Solution Manager is supplied with all SAP systems starting from the Web Application Server
(WAS) 6.10. It is meant to become the central monitoring software for SAP systems, but also for external
applications. This should provide for the centralization of all services within a SAP environment.

With the SAP agent, AE integrates the entire enterprise-wide process management in the SAP Solution
Manager.

Monitoring

The essential functionality of the SAP Solution Manager is centralized monitoring. The monitoring part
again distinguishes two main areas:

l Operations
l Business Process Monitoring

While the first one primarily deals with technical processes and system status, the area of business
Process Monitoring helps to design and monitor logical business processes in and around SAP systems.

Operations Monitoring

In the area of operations monitoring the SAP Solution Manager uses the existing monitoring infrastructure
within the CCMS (Computing Center Management Systems). The states of systems and processes are
displayed in a tree structure.

So far these monitors have been limited to SAP systems. Now SAP provides interfaces for external
applications for reporting status data to the Solution Manager and for displaying them in the monitoring
tree.

The SAP agent uses such an interface in order to access the monitor structure in the CCMS. It uses a
Connection object for ABAP Basis. Several script elements can be used to create and modify attributes or
delete nodes:

Script Element Description


R3_DELETE_NODE Deletes a node
R3_SET_LOG_ATTR Sets a log attribute
R3_SET_PERF_ATTR Sets a performance attribute
R3_SET_STATUS_ Sets a status attribute
ATTR
R3_SET_TEXT_ATTR Sets a text attribute

The Form tab of SAP jobs can be used to access nodes. A separate browser displays the monitor "All
Monitoring Contexts" of the monitor set "SAP CCMS Technical Expert Monitors". The node colors
represent the current alarm status.
Chapter2 SAP NetWeaver | 39

Business Process Monitoring

Business processes are based on individual IT processes and systems. Interdependencies can be defined
and graphically represented with the SAP Solution Manager. All data which is available in operations
monitoring can be used to model business processes.

AE centrally controls processes on all of an enterprise's systems and applications. The integration of AE in
the SAP Solution Manager provides the opportunity to represent and monitor enterprise-wide business
processes in a SAP system.
40 | Chapter 2 SAP NetWeaver

If an error occurs in a business process, the reason can be found immediately. The time for troubleshooting
is minimized, the business process can be restarted as quickly as possible.

Process Management

The Solution Manager will also be able to manage background processes. Currently, this function is
available using the transactions SM36 and SM37.

AE comprehensively supports this function. AE centrally manages and monitors the entire SAP
background processing. AE also combines these SAP processes with processes of all the enterprise's
other systems and applications.

2.6.4 Registering to System Landscape Directory


SAP's System Landscape Directory (SLD) supplies an overview of installed software components. You
can configure the SAP agent in a way that it registers at the SLD whenever it starts.

The following steps are required:

1. Log on to system client 0000.


2. Create a new Connection object for SAP.
3. Open the Connection object, click theAttributes tab and select the connection type "Internet".
4. Switch to the Internet tab and specify the SLD connection data.
5. Store and close the Connection object.
6. Switch to the folder HOST and open the SAP agent's object.
Chapter2 SAP NetWeaver | 41

7. Select the Connection object in the agent tab, field System Landscape Directory.
8. Store and close the Agent object.

The SAP agent now tries to register at the SLD whenever it starts. It can successfully start even if a
registration is not possible (e.g. due to incorrect connection parameters).

The SAP agent's log file contains a message which indicates whether the registration to the SLD was
successful.

2.6.5 Switching Operation Modes


SAP's operation modes support the optimal use of available system resources. Various specifications can
be defined for dialog and background processing, according to the time of day. No R/3 system restart is
required for this method of resource allocation.

AE also supports this SAP function. Use the script element R3_SWITCH_OPMODE to switch operation
modes for individual or all SAP application servers.

AE JCL for SAP

Script Element Description


R3_SWITCH_OPMODE Switches the operation mode in SAP
42 | Chapter 3 SAP Banking

3 SAP Banking

3.1 Process Management and SAP for Banking


In cooperation with major European banks, SAP has developed an account management solution with
SAP for Banking. AE developers have been working on integrating this new SAP solution into the well-
proven Process Management.

The result is the AE agent for SAP AM/BCA which provides comprehensive process management power
for banking transactions. AE integrates the new SAP solution into its centralized process management
and secures business processes at enterprise-wide level and across all platforms.

Processes in SAP for Banking


A particular feature of SAP Transaction Banking is that entire processes can be stored in the Customizing.
The process definition corresponds to a kind of JobPlan (tabular maintenance). These processes are
mainly called end-of-day processes.

When controlling these processes you must consider the following factors:

Process network

A process network is created and monitored via a menu function from within a process definition in
Customizing. It has a unique ID which must be specified for each run. A process network contains a set of
processes. A process is an application function which technically is always processed in two steps:

1. The actual application function


2. The application's monitoring part. The monitoring part is only executed if the process has been
initiated via a process network.

The entire application (including the monitoring part) can be processed synchronously or asynchronously.

Synchronous processing

The application function including monitoring is processed synchronously from within a function module
i.e. the function module ends synchronously with the application function.

Asynchronous processing

The application function and the monitoring are both started as background jobs with the monitoring job
always following the application job.

Processes with parallelization

Paralleled processing (similar to IS-U/IS-T) is provided for particular processes (with mass data).
Unfortunately there is no basic functionality for this kind of request.

A process with parallelization creates parallel background jobs i.e. a parallel background job and a
subsequent monitoring job. If the process starts asynchronously, an additional parent job is created
(followed by a monitoring job) which is active for the entire runtime of the process.

Application Return Code and Application Log


Processes have an application return code. A normal technical status (e.g. Job ended) cannot sufficiently
ensure successful processing. The individual components of a process (function module, ABAP,
Chapter3 SAP Banking | 43

monitoring ABAP, etc.) are also written to an application log.

Starting Process Networks and Processes


Process networks are integrated in dialog functions and initiated by them. Depending on the individual
application, processes are initiated synchronously or asynchronously (jobs running a long time are always
asynchronous).

Requirements for AE
An AE workflow corresponds to the processing definition in SAP's Customizing. Workflow tasks represent
processes.

SAP's basic job control does not provide the appropriate means to control processes in AM/BCA.
Standard background jobs are not suitable for controlling individual processes as the application function's
monitoring part would not start. Thus, no application return code would be created.

Adjusting all application programs in a way that the monitoring function could run implicitly would have
been counterproductive. It would have resulted in many programs and the application return code would
have been communicated via the job log.

The alternative was to create a process network with an individual ID for each task in the SAP system
from within an AE workflow. This process network always contains only one process. If this process
starts via the process network, two asynchronous batch jobs are created in the SAP system, the
application function and the monitoring function.

New script elements are available in AE for controlling such processes (BCA_ACTIVATE_PROCESS).

In order to enable AE monitoring (status checks), SAP has extended its interface by a corresponding
function.

AE Functional Description
Starting and monitoring processes

This function uses a single process in a process network, while also starting and monitoring it. When the
process ends, the process network also ends because it only contains this single process.

Analyzing application return codes

Single processes supply application return codes. AE can analyze them (e.g. in post script) and react to
them.

Analyzing application logs

Processes of a process network write to application logs. Unfortunately, there is no 1:1 relation between a
process or process network and an application log.
Thus, the AE analysis of application logs provides different information.

This AE function can be used to select application logs according to particular criteria (the results are log
numbers). Application log messages and texts can then be read using these log numbers. Text outputs are
written to a text file or report.

Integration into job networks

AE integrates processes in SAP AM/BCA into enterprise-wide JobPlans. Interdependencies with


processing in other SAP or non-SAP systems can easily be implemented and monitored.

Comprehensive statistics
44 | Chapter 3 SAP Banking

Comprehensive statistics are provided for all AE-controlled processes. They can be used for later
analyses and future planning. This also applies to processes in SAP for Banking.

AE JCL for SAP


Script Element Description
BCA_ACTIVATE_ Starts and monitors a process which runs in a separate process
PROCESS network.
Chapter4 SAP Financial Closing Cockpit | 45

4 SAP Financial Closing Cockpit

4.1 Integrating the Automation Engine in SAP


Closing Cockpit
The SAP Financial Closing Cockpit can be used to schedule several tasks that should be executed in a
particular order and at a particular point in time. Through the integration of AE, you can activate objects of
an AE system via Closing Cockpit tasks.

In order to use the SAP Closing Cockpit with FCC 2.0 Add-on, refer to the alternative installation
description.

Requirements:
AE Internal Webservice
The AE Internal Webservice can be used with the following application servers:

l Sun Glassfish
l JBoss
l IBM WAS CE
l SAP Netweaver CE

Use the installation guide to set up the required application server. Make sure to use the current version
of the AE Internal Webservice.
SAP version
SAP Basis requires a particular or a later support package version depending on the SAP release
version which is used.

Release Package name


700 SABKB70017
701 SABKB70101
710 SABKB71007

Another requirement is SAP ERP version 6.00.

Supplied Files 
Refer to the file SAP_CloCo.zip.ucc in the directory IMAGE:FRAMEWORK\SAPCLOSINGCOCKPIT
which contains the supplied files in encoded form.

Installation
1. Decoding the supplied file

l Use the program UCYBCRYP.EXE for decrypting the file SAP_CloCo.zip.ucc. It is stored in the
folder IMAGE:\TOOLS\ENCRYPT of the AE CD. Now call the program via the command line using
the following parameters:
46 | Chapter 4 SAP Financial Closing Cockpit

UCYBCRYP.EXE -d -f SAP_CloCo.zip.ucc -lLicense file

The license file was supplied by our support team (customer number.TXT).

l The result is the packed file SAP_CloCo.ZIP.


l Unpack the file SAP_CloCo.ZIP.

2. Loading SAP transports

Specific ABAP programs are required for the integration process. Load them to the SAP system by means
of an import. The archive SAP_CloCo.ZIP includes two corresponding files.

l KNNNNNN.SID - Information file


l KNNNNNN.SID - Data file

Copy these files to the transport directory of SAP (e.g.: /usr/sap/trans/). Copy the K file to the subfolder
"cofiles" and the R file to "data".

Log on to the SAP system and import the relevant request using the transaction STMS. Open and check
the request's transport protocol after the import process: all steps have to show the return code 0
(successfully ended) or 4 (ended with warning).

3. Configuring the HTTP RFC connection

Call the transaction SM59 and select "HTTP connections to the external server". Now create a new
connection.

Enter a name for the RFC destination (e.g.: AE_WEBSERVICE) and a description.

Tab: Technical settings:


In the field Target host, enter the host name of the application server where the AE Internal Webservice
runs. Enter the port number in the field Service number.

Tab: Logon and Security:


Select the option Basic authentication. Specify the data for accessing the AE system: in the field User,
enter the AE client, user name and the department (separated by a slash). Now enter the password and
store the RFC connection.
Chapter4 SAP Financial Closing Cockpit | 47

4. Defining the logical port

Start the transaction SOAMANAGER

1. Select the link "Web Service Configuration" ("Service Administration" tab)


2. Search for the object type "Consumer Proxy" which includes *UC4* as the name.
48 | Chapter 4 SAP Financial Closing Cockpit

3. Create a new logical port with the name UC4.


4. In the "Consumer Security" tab fields "User" and "Password", enter the login data for the
Automation Engine system:
Use the following syntax for the user name: <client>/<user>/<department>. For example:
0001/USER/DEV
As the password, use the password of the defined Automation Engine user.

5. In the "Messaging" tab, set the "Message ID protocol" field to the value "Suppress ID Transfer".
Chapter4 SAP Financial Closing Cockpit | 49

6. "Transport Settings" tab: In the field "URL Access Path", enter the value ""/uc4ws/uc4ws?wsdl".
Also set the computer name and the port of the Webservice's Application Server.
Use SOAP 1.1 as the "Transport Binding Type"

Store and activate the logical port.

5. Registering the ABAP report for the Closing Cockpit

Call the transaction SM30 and open the table SCMAPROGRAMS for modifications ("Maintain"). Add a
new entry with the following values:

Column Value
Program /UC4/CC_
REPORT
Application CUSTOMER

Store this new entry.


50 | Chapter 4 SAP Financial Closing Cockpit

6. Testing the connection

Start the program UC4/CC_REPORT via the transaction SE38 to test the connection from ABAP to the
AE system.

See also:

AE Internal Webservices
Integrating the Automation Engine in SAP Closing Cockpit with FCC 2.0 Add-on

4.2 Integrating the Automation Engine in SAP


Closing Cockpit with FCC 2.0 Add-on
The SAP Financial Closing Cockpit can be used to schedule several tasks that should be executed in a
particular order and at a particular point in time. Through the integration of AE, you can activate objects of
an AE system via Closing Cockpit tasks.

You may use an alternative integration method from SAP. You may find the respective SAP website
pages at: Creating External Jobs

As of version 11, SAP Closing Cockpit may also be used with the FCC 2.0 Add-on. Below you find the
installation steps for SAP Closing Cockpit with this Add-on.

Requirements:
AE Internal Webservice
The AE Internal Webservice can be used with the following application servers:

l Sun Glassfish
l JBoss
l IBM WAS CE
l SAP Netweaver CE

Use the installation guide to set up the required application server. Make sure to use the current version
of the AE Internal Webservice.
SAP version
SAP Basis requires a particular or a later support package version depending on the SAP release
version which is used.

Release Package name


700 SABKB70017
701 SABKB70101
710 SABKB71007

Another requirement is SAP ERP version 6.00.


Chapter4 SAP Financial Closing Cockpit | 51

Supplied Files 
Refer to the file SAP_CloCo.zip.ucc in the directory IMAGE:FRAMEWORK\SAPCLOSINGCOCKPIT
which contains the supplied files in encoded form.

Installation
1. Decoding the supplied file

l Use the program UCYBCRYP.EXE for decrypting the file SAP_CloCo.zip.ucc. It is stored in the
folder IMAGE:\TOOLS\ENCRYPT of the AE CD. Now call the program via the command line using
the following parameters:

UCYBCRYP.EXE -d -f SAP_CloCo.zip.ucc -lLicense file

The license file was supplied by our support team (customer number.TXT).

l The result is the packed file SAP_CloCo.ZIP.


l Unpack the file SAP_CloCo.ZIP.

2. Loading SAP transports

Specific ABAP programs are required for the integration process. Load them to the SAP system by means
of an import. The archive SAP_CloCo.ZIP includes two corresponding files.

l KNNNNNN.SID - Information file


l KNNNNNN.SID - Data file
l Copy these files to the transport directory of SAP (e.g.: /usr/sap/trans/). Copy the K file to the
subfolder "cofiles" and the R file to "data".
l Log on to the SAP system and import the relevant request using the transaction STMS. Select the
import option "Ignore Invalid Component Version".

The transport request is based on SAP Closing Cockpit 7.00. Therefore the component would not
match, as the FCC 2.0 Add-on might run on 7.40.

l Open and check the request's transport protocol after the import process: all steps have to show
the return code 0 (successfully ended) or 4 (ended with warning).

3. Configuring the HTTP RFC connection

Call the transaction SM59 and select "HTTP connections to the external server". Now create a new
connection.

Enter a name for the RFC destination (e.g.: AE_WEBSERVICE) and a description.

Tab: Technical settings:


In the field Target host, enter the host name of the application server where the AE Internal Webservice
runs. Enter the port number in the field Service number.

Tab: Logon and Security:


Select the option Basic authentication. Specify the data for accessing the AE system: in the field User,
enter the AE client, user name and the department (separated by a slash). Now enter the password and
store the RFC connection.
52 | Chapter 4 SAP Financial Closing Cockpit

4. Defining the logical port

Start the transaction SOAMANAGER

1. Select the link "Web Service Configuration" ("Service Administration" tab)


2. Search for the object type "Consumer Proxy" which is named /UC4/CO_UC4PORT_TYPE and
select it.
Chapter4 SAP Financial Closing Cockpit | 53

3. After selecting the object, the following window will open. Click on "Create - Manual Configuration":

4. In the following dialog, enter "UC4" as "Logical Port Name" and activate the "Logical port is
Default" checkbox:

Click "Next" to continue.

5. Select "User ID / Password" in the authentication settings.


Enter a user name using the format <AE Client>/<USER>/<DEPARTMENT>
Enter the password for this AE user and click "Next" to continue.

6. Enter "/uc4ws/uc4ws" in the "URL Access Path" field.


Enter the host name where the web service is deployed and its port in the fields "Computer Name of
54 | Chapter 4 SAP Financial Closing Cockpit

Access URL" and "Port Number of Access URL" as shown below:

Click "Next" to continue.

7. Select "Suppress ID Transfer" in the Message ID (Synchronous) section:

Click "Next" to continue.


Chapter4 SAP Financial Closing Cockpit | 55

8. Activate "Suppress sending of IBC Identifier" and click "Finish":

5. Registering the ABAP report for the FCC 2.0 Add-on

1. Execute the program RDDKOR54


2. Enter SCMAPROGRAMS as table name and select "Execute" (F8).
3. Click on the "Create Reservation" (F5) button.
4. Enter "/UC4/*" as namespace and save the changes. The result will look as follows:

5. Call transaction sm30 and enter the table name SCMAPROGRAMS.


6. Add a new entry with the program /UC4/CC_REPORT and application CUSTOMER
7. Save this entry.

6. Testing the connection


56 | Chapter 4 SAP Financial Closing Cockpit

Start the program UC4/CC_REPORT via the transaction SE38 to test the connection from ABAP to the
AE system.

Add customer exits in /UC4/CC_REPORT program

Business Add Ins (BAdI) are special extensions for SAP. Detailed information is available on the SAP
website.
Below you find a description how to use a BAdI with the /UC4/CC_REPORT program.

A BAdI will be added to the /UC4/CC_REPORT program. The default implementation does nothing and
the program continues.
You may create another implementation which performs some checks based on the Automic object name
and user (SY-UNAME)

Create a BAdI implementation

The enhancement spot is called /UC4/AUTH_CHECK:

l Select "Create BAdI Implementation" from the context menu.


l The implementation class must implement the /UC4/IF_CC_START_ALLOWED interface.
l This interface has one method called "CHECK" and a parameter UC4OBJECT.

Example

This BAdI can be used to implement a permission check based on a table with user names and job names.
Chapter4 SAP Financial Closing Cockpit | 57

If the user is 'ANG' and the object name is JOBP.TEST1, the program will show a message box with user
and object name and exit.

See also:

SAP - Custom Solutions

4.3 Activating Objects with SAP Closing


Cockpit
The integration of AE in the Closing Cockpit is the key to the activation of executable objects via tasks in
the SAP Financial Closing Cockpit. The corresponding installation guide is provided in the chapter
Installing the SAP Financial Closing Cockpit Integration. This document describes the general mode of
operation and use.

After a successful AE Internal Webservice installation and Closing Cockpit integration, you can assign
executable objects to the Closing Cockpit templates. The required steps and the execution behavior are
described below.

Configuration
Log on to the SAP system and call the transaction CLOCOC. Open a template (Edit) and select the
command "Add task" via the context menu from any location in the organization structure. Specify all
required values in the displayed dialog. Select "Program" for the option Type of task and enter /UC4/CC_
REPORT in the corresponding field. Now select or create an appropriate variant.
58 | Chapter 4 SAP Financial Closing Cockpit

This variant stores the name of the object to be executed. All other fields are optional and will be passed on
to the activated object as additional values via the read buffer.

Call the input assistance (F4) for the field Name of a object to display all executable objects of the client
that was specified in the particular RFC connection. Name, type, title and path of the objects are
displayed.
Chapter4 SAP Financial Closing Cockpit | 59

The additional fields in the variant dialog can be used to pass additional values on to the activated object.
The names of the script variables that are provided for the object in the input buffer are listed below:

Parameter/Field Name of the AE Script variable


Controlling area KOKRS
Period PERIO
Fiscal year GJAHR

The additional parameters can be used to write self-defined values to the read buffer. The column variable
defines the name of the read buffer variable.

The values of this script variable can be read using the script element :READ in the script.

Example:
:READ&KOKRS#,,'KOKRS',
Store the variant and the task. Now create a task list from the template.

Execution
Use the transaction CLOCO to execute task lists of the Closing Cockpit. Open a task list that includes
object activating tasks. Include these tasks and check their states.
60 | Chapter 4 SAP Financial Closing Cockpit

If a task has been executed and its status is shown in SAP as "Completed", then it ended with the status
ENDED_OK in the AE system. Every other AE status causes the output "Error" in the Closing Cockpit.

To display the AE job report, open the spool of the relevant task in the Closing Cockpit. This spool includes
all AE report types (ACT, REP, LOG,...) and the RunID of the executed AE task.

In the configuration of the Closing Cockpit (CLOCOC), you can also define dependencies for tasks that
start programs or transactions. Do so by opening a template or task list and calling the view
"Dependencies". Tasks can be inserted in this Dependency area via drag and drop. This function is also
supported in tasks that call objects. A dependency can be used to determine that a task can only start
when a particular task has ended.

See also:

AE Integration in SAP Closing Cockpit


Chapter5 SAP Solution Manager | 61

5 SAP Solution Manager

5.1 SAP Solution Manager Integration


You can use the SAP agent to access an AE system with the SAP Solution Manager and read various
information or manage processes in the AE system. This document explains the configuration process and
the details of this integration.

Some functions are not directly available in the Solution Manager but by setting up a specific
integration, you can call the UserInterface directly from the Solution Manager and quickly access these
functions. For further details about the affected functions and how to configure the integration, see
Setting up the UserInterface Integration.

Configuration
To use the SAP Solution Manager for AE, you must define the settings for the SMSE (Solution Manager
Scheduling Enabler) inferface in the agent's Connection object. Then restart your SAP agent.

Note that you need a separate SAP agent for the SAP Solution Manager Integration.

In the Connection object of the SAP agent that should be used for the integration, start off by configuring a
connection to the SAP system (CONN object: General -> Connection Parameter). Then complete all fields
in the CONN object's Interfaces -> SMSE section:

l Click Activate to enable the fields that should be edited.


l In AE User, specify the client, name, department and the password of an existing AE User object.
You can also define the AE client in the SAP Solution Manager. Note that in this case the user who
is specified in the Connection object must also exist in this client.
l In RFC Server, you define the SAP Gateway and the RFC connection. The RFC destination will
automatically be created when the SAP agent starts. The program ID and the name of the RFC
connection are freely selectable.
62 | Chapter 5 SAP Solution Manager

Restart the agent and call the transaction EXTSDL in your SAP system. The RFC connection that you
have defined in the Connection object should be listed and marked as the default connection. By clicking
Connection Test, you can test whether you can successfully establish a connection to the Automation
Engine.

Functionality
When you have successfully completed the configuration process, you can run the following AE functions
with the SAP Solution Manager:

Function Description
Reading clients This provides a list of all an AE system's clients and their
descriptions.
Canceling tasks The available commands are cancel, stop, stop (recursive), go,
go (recursive).
Retrieving the states of tasks This queries the status of a certain activity.
Reading folders This supplies a list that includes the ID, the folder name, the
folder title and the name of the superordinate folder.

If the name of the folder or the parent folder exceed a length of


80 characters, they will be truncated. The title has a maximum
length of 255 characters. Special folders such as the Recycle
Bin, Transport Case, <No Folder> etc. are not part of the list.
Retrieving a list of SAP systems This retrieves the name and the description of a certain client's
SAP agents. The additional description contains the basic SAP
version and the agent's Automation Engine version.
Querying a list of queues This queries the object name, the title and the max. slots of the
queues.
Chapter5 SAP Solution Manager | 63

Retrieving the executable object This retrieves a list that includes the types and a description of
types the executable objects (such as CALL - notification).
Retrieving the executable objects This retrieves a list that includes the names and the object types
of the executable objects.

You can specify a certain folder whose objects should be listed.


You can also filter for the name or the object type.
Retrieving the status filter This retrieves a list of status groups that are used to filter
activities (such as ANY_OK or ANY_ABEND).
Querying a list of activities This queries the content of the Activity Window of the particular
client.

You can define a status filter and a sorting order (ascending or


descending) in order to limit the results.

The time and date fields (such as the start time) are converted to
UTC and displayed. The system assumes that the actual time
zone in AE complies with the local time zone.
Retrieving a task's list of reports This provides a list that includes all a task's reports and outputs.

This lists contains the report type (such as REP or ACT) and the
output type ("L" = job log, "S" = spool list, "A" = application log,
"O" = other).
Reading a report content This retrieves the report content of a task.
Retrieving the user of a task This retrieves the name and the department of the user who has
started the task.

It is read from the statistical details. If the name exceeds a


length of 40 characters, it will be truncated.
Reading the prompt parameters of an The following parameters can be read:
object definition
-) The name of the PromptSet object
-) The reference variable
-) The type of the PromptSet element ("N" = number, "D"
= timestamp, "S" = all other types)
-) The value of the PromptSet element
-) The property "Value required" ("X" = the option is set, " " = the
option is not set or not known)
-) Whether an input assistant is available ("X" = yes, " " = no or
not known)
Reading the parameters of a task This reads the name and the value of an activity's object and
PromptSet variables (detail - object variables).
Creating or delete BAE events in AE This creates or deletes BAE events as AE Sync objects.

The AE Sync objects that represent BAE events have the value
"SMSE" as their archive key 1. This includes that you can
search and filter for these specific objects. The Sync objects
have only two states: CLEARED (initial state) and RAISED.
Reading BAE events from AE This retrieves the Sync objects that represent BAE events
(object type = SYNC, archive key 1 = SMSE).

You can filter for the object name.


64 | Chapter 5 SAP Solution Manager

Retrieving the status of BAE events This is the current status of a Sync object that represents a BAE
event. The Sync Monitor is read for this purpose. The object title
is returned as a description.

Possible values: R (RAISED) or C (CLEARED)


Querying BAE event instances This is a list of the tasks that wait for a Sync object that
represent a BAE event. It is also read from the Sync Monitor.
Reading notifications This reads the monitor of active or ended Notification objects.

The following details will be returned:


-) Subject
-) Possible answers
-) Message text
-) Activator (RunID)
-) Start time
-) Status (depending on the notification type. Alarm or request:
"Q" = active, "R" = ended. message: "N" = active, "R" = ended)
-) Object type of the triggering object.
Reading the message text of This retrieves the message text of an active notification.
notifications
Input parameter: The RunID of the notification.
Confirming a notification You can accept or reject an active notification.

Input parameter: The RunID of the notification.


Scheduling, changing and starting The following actions are possible:
tasks
-) to activate the task once or recurrently
-) to restart a task
-) to restart a task from its last restart point
-) to reschedule the task. If you change the activation of a task
from recurrently to once, it will be rescheduled (new RunID).

These functions (except for "Reading clients") refer to the AE client that has been specified for the
SMSE interface in the Connection object.

5.2 SAP Solution Manager - Use Cases


This document describes typical use cases for the SAP Solution Manager Integration.

SAP Solution Manager integration allows you to access functions of the Automation Engine. You can even
schedule AE tasks from the job scheduling workcenter in the SAP Solution Manager.
You can either schedule them directly or out of a SAP job documentation. In doing so, you can integrate
the Automation Engine in the SAP Change Management or the Service Desk.

For information about configuring and testing the integration, see the chapter SAP Solution Manager
Integration.

For the following use cases, start the job scheduling workcenter (SOLMAN_WORKCENTER transaction)
of the SAP Solution Manager.
Chapter5 SAP Solution Manager | 65

Use Case 1: Searching an AE Job Out of the Solution Manager


1. In the SAP Solution Manager Workcenter, Job Monitoring section, select the entry External Job
Scheduler.
2. You can now define filters according to criteria that should be used for searching AE jobs. The
Isolation group stands for the AE client.
3. Click Apply to have the jobs that were found listed in a table.

Use case 2: Scheduling Tasks from a Job Documentation


The following steps are required in order to schedule objects in the Automation Engine out of a SAP job
documentation:

1. Open a SAP job documentation and select a system in the Systems tab.
2. Click the Scheduling tab to see the interface in which you can schedule your tasks.
3. Set the required parameters such as the AE client (Separation Group field), the RFC connection,
Queue object, priority and the name of the object that should start (Job Definition field).
66 | Chapter 5 SAP Solution Manager

An input assistant is available for selecting the object that should start (Job Definition). All
executable objects of the specified AE client will be listed. You can filter for the folder (ID of an
application), the object type (Definition Type) or the object name (Job Definition).
Chapter5 SAP Solution Manager | 67

4. Click Schedule/Change Externally in order to schedule the task in the Automation Engine. The
AE RunID of the activated task will then appear in the upper window area.

5. By clicking External Notes, you can add comments to an execution.


68 | Chapter 5 SAP Solution Manager

6. External Logs will show the task's AE reports. Note that no external reports are available.

Use case 3: Directly Scheduling Tasks


When you open the Job Scheduling Workcenter, you can use the menu item Schedule Jobs in order to
schedule objects directly in the Automation Engine.

1. In the Scheduler section, select the entry SMSE for the Automation Engine.
2. Now select the RFC connection with the corresponding AE client. Note that the AE client is shown
in the Separation Group section. This means that when you directly schedule tasks for AE, the
Separation Group must always be a number (such as 1010). You can ignore the RFC entry for
Separation Group GLOBAL.

3. Set the required parameter for the object that should start (RFC connection, Separation Group,
queue, priority and object name). Specify the name of the object that should start in the Job
Definition field (you can also use the input assistant for this purpose).
As in use case 2, you can now schedule this task in the Automation Engine by clicking
Schedule/Change Externally.

For the start conditions, the Automation Enginegenerates temporary Calendar objects.
Chapter5 SAP Solution Manager | 69

Setting the option Schedule Stopped has the effect that the scheduled task will remain in the
Automation Engine with the status "Waiting for manual release" until it is manually released.
You can also change existing schedules subsequently by adjusting them to your requirements
and clicking Reschedule in order to update your Automation Engine

5.3 Setting Up the UserInterface Integration


Some AE functions are not directly available in the SAP Solution Manager but by using a specific
configuration, you can open the UserInterface directly from the Solution Manager at the required position.
By doing so, you can quickly access these functions.

The following functions are not directly available in the SAP Solution Manager:

l Creating and editing Job objects


l Listing the existing Job objects
l Creating and editing workflows

To set up the UserInterface integration, follow the steps below. For a general description of the
configuration process, see SAP Solution Manager Integration.
70 | Chapter 5 SAP Solution Manager

Supplied Files
The UserInterface is supplied as a Web application that must be integrated in a Tomcat Application
Server. A Tomcat Application Server of version 7 is required for the installation process.

The Web application is supplied in the following directory: IMAGE:\AGENTS\SAP\_SOLMAN\

Procedure
1. Setting up the UI Web application

l Host
l Copy the file UC4WEBSTART.WAR to the "webapps" folder that is stored in the program directory
of the Tomcat Application Server.
l Restart the Application Server.
l The new sub-folder UC4WEBSTART will be created in the webapps directory.

Do not delete the WAR file because if you do so, Tomcat will also remove the folder UC4WEBSTART.

2. Adjusting the configuration file

l Host
l This step determines the AE system to which the UserInterface should connect.
l Note that you can configure only one connection for the UserInterface.
l Open the configuration file:
<Tomcat directory>/webapps/uc4webstart/WEB-INF/web.xml
l Adjust the following parameters to your system environment:
l Server name: The name or the IP address of the computer on which the AE system runs.
l System name: The name of the AE system.
l Port number: The port number of the CP to which you want to establish a connection.

An example of the relevant part of the file web.xml that must be adjusted:
<init-param>
<param-name>Server name</param-name>
<param-value>SAPHOST01</param-value>
</init-param>
<init-param>
<param-name>SystemName</param-name>
<param-value>UC4</param-value>
</init-param>
<init-param>
<param-name>Portnr</param-name>
<param-value>2217</param-value>
</init-param>
3. Configuring the Agent

l Agent computer
l Open the INI file of the SAP agent for which you have configured the SAP Solution Manager
Integration.
l Enter the URL of the UI Web application as the value for the parameter WebStartURL= ([SMSE]
section).
l Save the INI file and restart the agent.
Chapter5 SAP Solution Manager | 71

For example:
[SMSE]
webStartURL=http://saphost01:8080/uc4webstart
4. Calling the UserInterface

The URL that you have specified in the agent's INI file opens when you call one of the described functions
in the Solution Manager.

The Web browser displays a page that includes the link "Start AE UserInterface". Click it to open the
UserInterface's login dialog. Log on to run the selected function in the UserInterface.

For example: When you create a new job in the SAP Solution Manager, the UserInterface and the dialog
open that request you to enter a name for the new Job object.
72 | Chapter 6 Custom Solutions

6 Custom Solutions

6.1 Archiving Data in SAP Systems


Data archiving in SAP systems removes mass data from the database that is no longer required in the
system but should remain available for future analyses. The Automation Engine provides for centrally
controlled data archiving.

Data to be archived is pooled in "archiving objects" (e.g. the archiving object SD_VBAK contains all data
concerning sales records). Archiving runs are integrated using the Archive Development Kit (ADK). ADK
provides the technical basis for the archiving transaction (SARA).

Usually, a separate program flags data to be archived based on configurable residence periods. Flags are
often used in two steps: After the end of residence period 1 (e.g. 6 months), a deletion annotation is set and
after the end of residence period 2, the deletion annotation becomes a deletion flag. Now the object can be
archived.

The archiving process is basically divided into four steps:

1. Pre-run (deletion annotation):


Flags data that should be archived. A pre-run can also be performed regardless of the time frame
specified for the archiving run.
2. Creating archive files:
During the archiving process, the data to be archived is sequentially written into newly created
archive files.
3. Starting the deletion program:
Based on the generated archive files, the deletion program removes the archived data from the
database.
4. Storing the archived files:
The newly created archive files can finally be stored in a filing system or manually stored on tape.
The storing process can be initiated automatically or manually.

Transaction SARA provides for a manual or a semi-automatic (deletion, storage) archiving process. AE
fully automates archiving runs in all SAP releases.

For archiving data outside transaction SARA please adhere to the following notes:

l 458670 Data archiving with an external job scheduler


l 133707 Data archiving outside transaction SARA

Controlling with AE
From the technical point of view and regardless of the object to be archived, archiving runs in SAP
systems always consist of four steps:

1. Writing program (WRI)


The write program deals with pre-runs and the creation of archive files. It is capable of running in the
background, parameters can be set using a variant.
2. Deletion program (DEL)
The writing program automatically creates a deletion (DEL) job for each archiving file, if this has
been specified in the relevant archiving object's customizing. The DEL job contains the deletion
program.
Chapter6 Custom Solutions | 73

3. Storing the archived files (STO)


The deletion program creates a storing (STO) job. The STO job contains the storing program.
4. Possible post processing (END)
Post processing jobs are also automatically created. They are not available for all archiving objects.

Requirements in the SAP System


1. Automatic deletion program
Specify in the archiving object's customizing that the deletion program starts automatically.

2. DEL, STO and END jobs must not start automatically in SAP.
For controlling these jobs with AE, their automatic start in the SAP system must be prevented. The
function "Job Interception" serves this purpose as of release 4.6C. Activate it with the ABAP
program INITXBP2. The interception table must contain the job names of the DEL, STO and END
jobs of all archiving runs.

Objects
The entire process is handled with a workflow which contains 3 steps:

1. Starting and monitoring the writing program


The AE function "Submit ABAP program" creates a WRI job in SAP and monitors it until it ends.
2. Starting and monitoring deletion jobs
The AE function "Select and start intercepted jobs" starts and monitors DEL jobs created by the
WRI job.
3. Starting and monitoring storing jobs
The AE function "Select and start intercepted jobs" also starts and monitors storing jobs created by
the DEL jobs.
74 | Chapter 6 Custom Solutions

Procedure
1. Workflow activation
Use the :READ mask to query the name of the archiving object.
2. Workflow Monitor
Select or specify the archiving object and the workflow automatically starts and is displayed in the
monitor. It only ends when all processing steps ended successfully.
3. Monitoring and control
The entire procedure can be traced within Automation Engine and SAP. AE provides all logs for
automatic analyses. In SAP, the procedure can also be traced in the administration function of the
relevant archiving object (transaction SARA).

Conclusion
SAP data archiving is easily implemented using AE's standard functions and offers various advantages:

l Complete automation
The entire SAP system management can be automated using the Automation Engine for controlling
the data archiving processes. Manual interference is not necessary. Mutual dependencies to other
processes are easily implemented.
l Cost reduction
Archiving data on a regular basis provides for optimized database dimensions, improves
performance and saves memory. With AE, these advantages are centrally controlled and
automatically processed without the accumulation of additional costs.
l Optimum resource balance
Resources can optimally be used due to the central and automated control, thereby avoiding
conflicts and shortfalls. Smooth SAP operation is guaranteed.
l High reliability
Automation considering all system parameters significantly reduces the number of possible error
sources.
l Work relief for staff
SAP experts are relieved from cumbersome manual tasks and can apply their expertise in areas of
significant benefit: in improving systems and service levels.
l Central control and overview
All processes in the SAP system are centrally monitored and controlled. Potential problems are
immediately noticed which reduces troubleshooting times to an absolute minimum.
Chapter6 Custom Solutions | 75

6.2 Monitoring SAP Programs Update Requests


SAP programs may request asynchronous updates that are executed in different processes and
transactions. Details you may find on SAPs website. With the following workflow solution you may
monitor these requests.

Monitoring Workflow

Create a workflow containing two SAP Job objects. The first Job shall schedule update requests and the
second one shall wait until all update requests have been executed.

The status of the workflow will be ENDED_OK, if all update requests have finished without errors.

Below you see a possible version of such a workflow.

The second SAP job contains only one command:


R3_ACTIVATE_REPORT REPORT="Z_WAIT_FOR_UPDATE"
The example program Z_WAIT_FOR_UPDATE uses the function module UPD_CHECK_LOCAL_
QUEUE to periodically get the status of update requests. It completes, if no update requests are
active.

Workflow status example: The first Job is executed, while the second Job waits until all update requests
have been processed:

For this information in FCC 2.0 you may use external Jobs. Details on external Jobs may be found on
SAPs website.
76 | Chapter 6 Custom Solutions

See also:

Integrating the Automation Engine in SAP Closing Cockpit with FCC 2.0 Add-on
Compare Values in SAP Spool Lists

6.3 Compare Values in SAP Spool Lists


SAP Spool lists show print jobs that have not yet been transferred to a device. The data needed for printing
or output on a device is temporarily saved to an intermediate format until they will be called. The values for
such spool requests in the respective lists may be compared by using Automation Engine SAP jobs.

Comparing Spool Request Values - Workflow

Create a workflow with two SAP Job objects. Each Job produces a spool list. A third Job object will be
used to compare the numbers of the spool list values.

When both Jobs have been finished, the values will be extracted from the spool lists and be passed to the
third Job in the workflow.

The status of the workflow is set according to the comparison:

Numbers are equal ==> ENDED_OK

Numbers are unequal ==> ENDED_NOT_OK


Chapter6 Custom Solutions | 77

Transferring Spool List Content to Job Report

Below you find an example of one of the two SAP Jobs in the workflow, each of them consisting of two
steps:

In the first step the program is executed and in the second step the content of the spool list is added to the
report.

The report of this job look like this:

It contains the Job log from SAP followed by the spool list.

Extracting Values

Job 1:

To extract the value from the spool list the following UC4 Script is used in the post process tab of the Job.

This script is executed after the Job has finished. It processes the report and extracts the values:
78 | Chapter 6 Custom Solutions

The PREP_PROCESS_REPORT function filters all rows which contain a "|" character.

This returns these values only:

| USD 123.456.789,01 1.234.567,89 |


| BEF 12.345.678.901 123.456.789 |
| KUD 123.456.789,01 365.413.243,87 |

l The last row then is stored in the variable &RET#


l STR_LNG is used to get the length of the row. The function SUBSTR is then used to remove the
trailing "|" character. With STR_TRIM the trailing spaces are removed.
l The result is stored in the variable &RET# and is now:

| KUD 123.456.789,01 365.413.243,87

l The STR_FIND_REVERSE function is used to get the position of the last space character in this
row.
l Finally the function SUBSTR is used to get "365.413.243,87" and store it in the variable &RET#

With PSET the object variable &JOB1_SUMME# of the Workflow is updated.

The workflow also contains a second variable &JOB2_SUMME# which is set by the second SAP Job.
Chapter6 Custom Solutions | 79

Job 2:

The report of the second Job looks like this:

UC4 Script is also used in this case to get the value:


80 | Chapter 6 Custom Solutions

This script filters for all rows containing the word "SQ".The result is one row:
|SQ| 26|28.02.1995|365.413.243,86 | |DC-10-10| 380 | 2 |1.684,00 | 0 | 0 |
0 | 0 |
The character "|" is defined as separator of columns. Therefore the value 5 (variable &column#) can be
used directly get 365.413.243,86 from the report.

STR_TRIM is used to remove spaces. The result is published as &JOB2_SUMME#

Compare Jobs

Both Jobs must have finished before the compare job may be started:

It has access to the variables &JOB1_SUMME# and &JOB2_SUMME#.

This Job has the setting "Generate at runtime" activated on the "Attributes" tab.

In this example it starts an SAP program with parameters that depend on the result of the comparison.
Chapter6 Custom Solutions | 81

The simple program Z_INFO uses MESSAGE of the I or type E depending on the SUCCESS parameter:
REPORT Z_INFO.
parameter text1 type string.
parameter text2 type string.
parameter text3 type string.
parameter success type c.
if success is initial.
MESSAGE I002(SY) WITH text1.
MESSAGE I002(SY) WITH text2.
MESSAGE E002(SY) WITH text3.
else.
MESSAGE I002(SY) WITH text1.
endif.

The workflow can be set to ENDED_NOT_OK when the compare jobs fails:
82 | Chapter 6 Custom Solutions

Comments

The special parameter value (REPORT,REP) for the FILE parameter in the R3_GET_JOB_SPOOL
command is not documented, but exists since v9.
Normally the R3_GET_JOB_SPOOL command can only write files. However the SAP Agent cannot
read them. An OS Agent would be required to extract the values with PREP_PROCESS_FILE and
delete the old files when they are not needed anymore. This would also be a possible solution, but more
complex than the one described here.

See also:

SAP - Custom Solutions

6.4 Mass Processing


IS-U is SAP's business solution for the utility industry.

IS-U's accounting system for utility and service industries has been specially designed for the specific
requirements of these sectors. By integrating IS-U utility industry with the neutral R/3 standard
components and interfaces to external systems, SAP offers an integrated enterprise-wide solution for the
utility industry's operational data processing.

The transaction volume of utilities with several million customers, various types of utilities and perhaps
billing on a monthly basis is mainly handled in background operation.

Examples:
Chapter6 Custom Solutions | 83

l Creating reading records


l Requests for advance payment
l Accounting/billing
l Dunning runs
l Payment runs
l etc.

Definition
AE is able to automate these background requirements. We developed a special type of background
"mass processing" in order to optimally deal with huge data amounts.

Characteristics of mass processing:

l A master job splits into a dynamic number of partial jobs.


l Each mass processing run requires a parameter set which is identified by date and RunID.

One specific requirement is that a particular order must be kept (e.g. accounting must be finished before
billing starts; both are mass processing runs).

Technique
Mass processing includes a dispatcher which generates parallel split jobs through the definition of
parameters.

When scheduling mass processing, the dispatcher forms the master job of background processing. When
it is processed, it generates a dynamic number of split jobs (the number depends on the defined parameter
settings).

Controlling is handled by AE. Scheduling can be handled by AE or SAP.

6.5 SAP R/3 Client Copies


Like the Automation Engine, SAP R/3 is a client-capable application. The individual clients are completely
separate units. In some cases, periodical data exchange between clients is necessary. AE can be used to
automate these processes.

The "client" is the top-level hierarchy in R/3 applications. Settings on client level apply to all structures in
the R/3 enterprise organization. The client is a self-contained unit in technical, economical and
organizational terms.

This client concept can be used for:

l Managing many data center customers in one R/3 system.


l Setting up several clients with different tasks on one R/3 System. For example:
l Standard client (client 000)
l Customizing client (001)
l Test client
l Quality assurance client
l Production client

In such an environment it is often required to supply a QA or test client with consistent data. The most
suitable way to obtain this data is copying the production client. Regularly copy this client in order to
establish a realistic test environment.
84 | Chapter 6 Custom Solutions

Client Copies in SAP R/3


Copying clients in SAP R/3 involves some effort, especially the creation of periodical copies for supplying
test systems with current data.

SAP R/3 supports the online copying and transportation of clients. These transactions are not suitable for
periodical execution (SAP Release 4.0 to 4.6D).

The R/3 background job control cannot perform such periodical transactions because dynamic variants are
used.

Problem Definition
Huge amounts of data are transferred when a client is copied. A client without application data allocates
about 500 MB database memory. The copying process can therefore take several hours with one or more
dialog processes being busy during this process.

Users should not use the source and target client during the copying process. Active users in other clients
consume additional resources and extend the time required for copying.

A test run should be performed before starting the copying process. In doing so, you can determine which
tables need to be modified and the available database memory is also checked.

The target client is often deleted before a client is copied, thus deleting all master user data. Therefore,
only the user SAP* can log on to the target client.

R/3 Client Copies with AE


Using AE for the periodical creation of client copies makes this process easier and more secure. Test run
and copying process can be automated and the normal operation is not interrupted.

The copying process starts depending on test results and resource availability. AE informs the operator
immediately if an error occurs.

The SAP system must meet the following requirements before AE can create client copies:

l Master user data must not be deleted before the copying process
AE uses a normal user account for logging on to SAP. It cannot use the SAP* user. In SAP, it is not
possible to delete the target client before copying it. Alternately, you can use custom ABAPs in
order to delete large tables (see SAP Service Marketplace, note no. 365304).
l The report RSCLXCOP must be modified in order to enable the maintaining of report
variants.
A job for copying clients obtains its information from a variant. This variant is overwritten with data
from the source client or deleted during the copy process. During a client export the number of the
copy is entered in the variant, thus causing problems with periodical scheduling. Identical variants
(using identical names) for the report RSCLXCOP must therefore be created in source and target
client. Detailed information is provided in note no. 303007 of the SAP Service Marketplace.

If all the above requirements are met, you can create an AE job for copying clients. Dependencies can be
represented within a workflow. Test run and the actual copy process can run in automated form. AE
ensures sufficient system resources. Periodical client copies can so be created in an easy and secure
way.
Chapter6 Custom Solutions | 85

6.6 SAP Dialog for Automation Engine


The SAP Dialog for AE is a graphical interface for SAP R/3 users and serves to trigger processing in the
AE system. SAP-defined tasks are transferred to the AE system via the CallAPI for SAP.

The transaction "/sbb/uc4dc" shows the end user's interface. It contains an overview of tasks. Users see
only tasks for which they have authorizations. Tasks can be grouped in classes and named accordingly.
Click the list to select them. Depending on the specified settings, you can query variables and attributes or
maintain variants. Each task activation is logged in the statistics.

l Activation by entering freely definable attributes


Attributes are freely definable and can be transferred to AE using :PUT_READ_BUFFER .

l Direct connection to standard variant maintenance


A direct connection to SAP's variant maintenance is provided if standard ABAPs are used. Only
predefined variants can be maintained.

l Mapping Workflows
Workflows can be mapped using variables. In doing so, you can decide which components of a
predefined procedure should be processed. Communication to the AE workflow is exclusively
made by setting variables.

l Statistics and status tracing


Users have statistics in which all activations can be traced. Tasks can explicitly be canceled or
current states be adjusted.

The SAP Dialog for AE cannot completely replace the UserInterface. It supports users who exclusively
work with the SAP GUI and whose background tasks (jobs, JobPlans) should be controlled by AE from
within SAP.

The SAP Dialog for AE is a consultant solution and not part of the product. Thus, it is not maintained.

6.7 Automated System Copy for SAP


This AE solution allows you to create a SAP system copy by fully automated means. You can adjust all
the individual steps according to your requirements.

AE Automated SystemCopy for SAP is a consulting solution and is not subject to maintenance.
Documentation is available in the form of an external document.
86 | Chapter 7 Technical Connection

7 Technical Connection

7.1 Automation Engine and SAP


An agent serves to establish a connection between Automation Engine and SAP. Its INI file contains the
connection data to a particular AE system. Connection data to an SAP system is stored in Connection
objects. The agent requires at least one Connection object which contains the CPIC user including his or
her login data.

AE jobs require the indication of an agent and a Login object with the login information determining the SAP
client in which the job will be processed.

The Form tab is very useful for creating AE jobs. It provides a graphical interface in which you can easily
enter scripting lines. You can also retrieve particular data from the SAP system (such as the available
variants) with the SAP agent establishing the required connection to the SAP system. User name,
password and client are taken from the Connection object for "ABAP Basis".

See also:

Form tab

7.2 Multiple SAP Systems


The following description explains the appropriate configuration of several SAP agents which run on
different SAP systems.

Other SAP Agents


 1.  Edit ServiceManager Definition File AE.SMD. 

Enter the additional agents in the ServiceManager Definition file according to the following example.
Ensure that the name of the *.INI file is separated by a blank and specified after the start path of the agent.
! Comment lines begin with an exclamation mark
!
! Now, sub-services are defined
!DEFINE Automation Engine;*OWN\UCServer.exe;*OWN
DEFINE UC4 C11-Agent;*OWN\C11\UCXJR3X.exe -i*OWN\UCXJC11.INI;*OWN
DEFINE UC4 XYZ-Agent;c:\uc4global\bin\XYZ\UCXJRX3.exe -
ic:\uc4global\bin\XYZ\UCXJXYZ.INI;*OWN\XYZ

Alternately, these entries in the file AE.SMD can also be duplicated and adjusted with the ServiceManager
Dialog.

 2. Creating *.INI files

Create a UCXJ*.INI file with the name you have specified in AE.SMD for every additional agent.  Automic
recommends copying the file of an already existing agent (such as UCXJR3X.INI to UCXJC11.INI).
Chapter7 Technical Connection | 87

Check or edit the created UCXJ*.INI files.

 3.  Editing SAPRFC.INI (only when using the SAPRFC.INI)

Add the additional chapters in the SAPRFC.INI (so far SIDEINFO) as specified in the UCXJ*.INI files in
accordance with the following example:
DEST=UC_C11
LU=R33
TP=sapdp00
GWHOST=R33
GWSERV=sapgw00
PROTOCOL=I
DEST=UC_XYZ
LU=R33
TP=sapdp01
GWHOST=R33
GWSERV=sapgw01
PROTOCOL=I
 4.  Opening and closing the ServiceManager.

Close the ServiceManager and restart it. After that, the additional agents should be available. Create the
user for the RFCLOGIN in the relevant SAP system.

7.3 SAP Security Objects


SAP authorizations required for AE jobs depend on the particular installation and on the range of functions
used in AE. What is shown below are authorization objects which are necessary for the CPIC user in order
to provide maximum functionality.

For understanding the following table, knowledge of SAP authorization concepts is assumed.

Authorization Object Connection to AE Field name Values


S_RFC When the Profile Parameter ACTVT RFC_ *
auth/rfc_authority_check is NAME RFC_ *
set, SAP checks if the RFC TYPE *
user is allowed to call the given
function group.
S_BTCH_JOB AE creates SAP jobs JOBACTION *
Batch Processing: dynamically and needs the JOBGROUP *
Operations on batch authorization to plan, monitor
jobs and release jobs. In addition,
AE creates jobs in order to
process BDC sessions,
thereby using the standard
ABAP program RSBDCBTC.
88 | Chapter 7 Technical Connection

Authorization Object Connection to AE Field name Values


S_BTCH_ADM In order to run existing SAP BTCADMIN Y
Background jobs, AE must change the
Processing: respectiveJo bs. The AE and
Background standard interfaces use the
Administrator standard function module BP_
JOB_MODIFY to run jobs.
This requires batch-
administrator authorization.
This type of authorization is
also required for retrieving the
Spool List of a job in case the
CPIC user is not the job
creator.

Attention: S_BTCH_ADM
allows the client-independent
selection of existing jobs. If the
AE JCL statement R3_
ACTIVATE_JOBS is
processed with a CPIC user
having this authorization, AE
possibly starts jobs in several
SAP clients, depending on the
specified selection criteria
(such as the same job name in
2 SAP clients)
S_BTCH_NAM In order to create and run jobs BTCUNAME *
for any other SAP user, the
CPIC user must be authorized
to specify the user name.
S_SPO_DEV In order to specify the printing SPODEVICE *
Spooler: Device parameter 'print immediately'
Authorization within a job step, the CPIC
user must be authorized to
access the corresponding
printing device.
S_TMS_ACT In order to transfer the cover STMSACTION *
page of a Spool List back to STMSOBJECT *
AE, it is helpful to see the STMSOWNER *
parameters of the variant
which was used to run the
ABAP. This information is part
of the cover page.
S_XMI_PROD This object is used to log on to EXTCOMPANY *
the Standard Interface. Before EXTPRODUCT *
Calling functions of an INTERFACE *
External Interface, the
External Application has to Log
on to the Interface.
Chapter7 Technical Connection | 89

Authorization Object Connection to AE Field name Values


S_XMI_LOG Not necessary for AE, but - -
when using the standard
interface, entries into the XMI
log are created (Online
Transaction Code RZ15). This
authorization is required to
view them or to clear the log.
S_WFAR_OBJ AE allows the specification of ACTVT *
ArchiveLink Archive Parameters (object OAARCHIV *
Authorizations for type, document type...). This OADOCUMENT *
accessing Documents includes that the printing list of OAOBJEKTE *
an ABAP program can be
transferred to an optical
archive immediately. This only
makes sense if an optical
archive system is installed for
the SAP system.
S_WFAR_PRI In order to create printing lists ACTVT *
ArchiveLink within an optical archive, the OAARCHIV *
Authorizations for CPIC user must have the OADOKUMENT *
accessing Print Lists corresponding authorization. OAOBJEKTE *
PROGRAM *
S_PROGRAM AE needs this authorization P_ACTION BTCSUBMIT,VARIANT
ABAP: Program run object to schedule ABAP P_GROUP *
checks programs that are assigned to
authorization groups
(Authorization field P_ACTION
= BTCSUBMIT) and to
manage variants
(Authorization field P_ACTION
= VARIANT).
S_SPO_ACT In order to transfer Spool Lists SPOACTION BASE,DISP
Spool: Actions not created from the CPIC SPOAUTH *
user, the field SPOACTION
has to allow the actions BASE
and DISP for the
corresponding users.
S_ADMI_FCD In order to transfer Spool Lists S_ADMI_FCD SP0R
System Authorizations not created from the CPIC
user, the field S_ADMI_FCD
has to allow the actions at
least the action SP0R.
S_RS_ISRCM Only needed if the Business RSAPPLNM *
Warehouse Function BW_ RSOSOURCE *
ACTIVATE_CHAIN is used. RSISRCOBJ *
ACTVT *
90 | Chapter 7 Technical Connection

Authorization Object Connection to AE Field name Values


S_RS_ISOUR Only needed if the Business ACTVT *
Administrator Warehouse Function BW_ RSAPPLNM *
Workbench - ACTIVATE_INFOPACKAGE RSISOURCE *
InfoSource (Flexible is used and Flexible Update is RSISRCOBJ *
Update) used.
S_RS_ISOUR Only needed if the Business ACTVT *
Administrator Warehouse Function BW_ RSAPPLNM *
Workbench - ACTIVATE_INFOPACKAGE RSISOURCE *
InfoSource (Direct is used and Direct Update is RSISRCOBJ *
Update) used.
S_DEVELOP ABAP Only needed if the Business ACTVT *
Workbench Warehouse Function BW_ DEVCLASS *
ACTIVATE_CHAIN is used. OBJNAME *
OBJTYPE P_ *
GROUP *
S_RS_ICUBE Only needed if the Business ACTVT *
Administrator Warehouse Function BW_ RSICUBEOBJ *
Workbench - InfoCube ACTIVATE_CHAIN is used. RSINFOAREA *
RSINFOCUBE *
S_RS_ADMWB Only needed if the Business ACTVT *
Administrator Warehouse Functions are RSADMWBOBJ *
Workbench - Objects used.
S_RS_DS Only needed if the Business
Warehouse Functions are
used.
S_RS_DTP Only needed if the Business
Warehouse Functions are
used.
S_RS_ODSO Only needed if the Business
Warehouse Functions are
used.
S_RS_PC Only needed if the Business
Warehouse Functions are
used.
S_RZL_ADM Releasing intercepted jobs ACTVT 01
(RemoteTaskManager, R3_
activate_intercepted_jobs)
S_TABU_DIS For using SAP Forms ACTVT 03
DICBERCLS SPFL
- No specific SAP
authorizations are necessary
for additional AE functions, as
there is no security risk.

*) Automic recommends creating your authorizations in accordance with your naming conventions.
Chapter7 Technical Connection | 91

For using minimum AE functionality, it is necessary to provide the RFC user with a user profile that
contains the authorization object S_BTCH_JOB. It must contain the standard authorization S_BTCH_ALL
or an authorization where the fields are filled in as follows:

Activities in jobs: DELE, PLAN, PROT, RELE, SHOW


Summarizing jobs for a group: *

7.4 Consideration of Job Attributes


The host-specific tab in SAP jobs contains some attributes that affect several script elements. The table
shown below lists them all. Those SAP-specific script elements that are not included in this list do not use
attributes.

Script element Login language Job Job Target Start Delete in Spool list
name class system type CCMS recipient
BCA_ACTIVATE_
PROCESS
R3_ACTIVATE_EXT_
COMMAND
R3_ACTIVATE_EXT_
PROGRAM
R3_ACTIVATE_
INTERCEPTED_JOBS
R3_ACTIVATE_JOBS

R3_ACTIVATE_
REPORT
R3_ACTIVATE_
SESSIONS
R3_CALL_
TRANSACTION
R3_GET_EVENT

R3_GET_JOB_SPOOL

R3_MODIFY_JOB

R3_RAISE_EVENT

See also:

SAP tab in SAP jobs


92 | Chapter 7 Technical Connection

7.5 Interfaces

7.5.1 Interfaces
General Information
Agents communicate with the SAP system via SAP's RFC (Remote Function Call). Functional modules
are called in this process. The agent can use the standar interfaces but also the AE interfaces which
allows using additional functionalities.

This documentation addresses the two types of interfaces as shown below:

l The AE interface
is based on functional modules that have been developed by AE.
l The standard interfaces are based upon functional modules that are provided by SAP. AE uses
several of these interfaces for various purposes. The interfaces are subdivided:
l XMB (eXternal Monitoring Basics)
l XAL (eXternal ALerting)
l XBP (eXternal Batch Processing) *)
l XMW (eXternal Monitoring Write)
l BW-STA (Business Warehouse - data STAging)

*) The XBP 2.0 interface must be activated using the program INITXBP2. This is part of the XBP
2.0 installation. Otherwise, you cannot use parent-child relations and intercepted job functions.

In order to be able to us all SAP functions it is required you use XBP 3.0.

The Automation Engine supports the SAP NetWeaver XBP 2.0 and XBP 3.0 interface. Therefore, you
can use SAP modules that use this interface (such as SAP 4.7, NetWeaver Stack 2004s, ECC5,
ECC6).

The XBP interface version is not relevant for the Kernel version. SAP ensures compatibility by
supporting a particular number of new Kernel versions that still support the old interface when a new
interface version is released.

The AE interface requires BABP XBP V2.0. Check the version in your SAP system and install an up-
to-date support package.

7.5.2 Functional Differences


The following table provides an overview of SAP script elements which require the AE interface (script
element). Script elements which have specific parameters which require the AE interface are also checked
(Parameter).

Script Elements and Corresponding Interfaces

AE Interface required
Chapter7 Technical Connection | 93

Script Statements Description Script Parameter


Element
R3_ACTIVATE_ Activates a profile in the SAP Criteria
CM_PROFILE Manager
R3_ACTIVATE_ Execution of an external command
EXT_COMMAND
R3_ACTIVATE_ Execution of an external program
EXT_PROGRAM
R3_ACTIVATE_ Carries out intercepted jobs
INTERCEPTED_
JOBS
R3_ACTIVATE_ Executes already planned jobs
JOBS
R3_ACTIVATE_ Executes an ABAP program
REPORT
R3_ACTIVATE_ Processes Batch Input Sessions
SESSIONS
R3_CALL_ Calls an SAP transaction
TRANSACTION
R3_COPY_ Copies the variant of a report
VARIANT
R3_CREATE_ Creates a new output request to an existing
OUTPUT_ spool request
REQUEST
R3_CREATE_ Creates a new variant
VARIANT
R3_DEACTIVATE_ Deactivates a profile in the SAP Criteria
CM_PROFILE Manager
R3_DELETE_ Deletes a node in the SAP monitor
NODE architecture.
R3_DELETE_ Deletes the variant of a report
VARIANT
R3_GET_ Checks the application return code of one or
APPLICATION_RC several job steps.
R3_GET_ Retrieves messages of the application log
APPLICATIONLOG and writes them into report or file
R3_GET_EVENT Waits for an event to be triggered in SAP
R3_GET_ Reads the filter table for intercepted jobs and
INTERCEPTION saves them in the activation report or a file
R3_GET_JOB_ Reads the spool list of an "ABAP program"
SPOOL step
R3_GET_JOBLOG Retrieves the job log of an SAP job from SAP
and writes it to the report
R3_GET_JOBS Selects SAP jobs and lists the result in the
activation report
94 | Chapter 7 Technical Connection

R3_GET_ Reads data from an SAP monitor


MONITOR
R3_GET_ Selects batch input sessions and lists the
SESSIONS result in the activation report or in a file
R3_GET_ Selects spool requests with pre-defined filters
SPOOLREQUESTS
R3_GET_ Reads the system log of an SAP system over
SYSTEMLOG a specified period of time
R3_GET_ Reads the variant catalog
VARIANTS
R3_GET_ Shows the content of a variant
VARIANT_
CONTENTS
R3_MODIFY_ Modifies the filter table for intercepted jobs
INTERCEPTION
R3_MODIFY_JOB Modifies an ABAP Step
R3_MODIFY_ Modifies a value in a variant
VARIANT
R3_RAISE_EVENT Triggers an event defined in SAP

R3_SCHEDULE_ Resets an already released SAP job to the


JOB_CANCEL status "Scheduled"
R3_SEND_ Sends an existing spool request
SPOOL_REQUEST
R3_SET_ Defines BDC data
BDCDATA
R3_SET_FREE_ Defines a free selection
SELECTION
R3_SET_LOG_ Sets a log attribute in the SAP monitor
ATTR architecture
R3_SET_PERF_ Sets a performance attribute in the SAP
ATTR monitor architecture
R3_SET_PRINT_ Sets default values for print parameters
DEFAULTS which are used when executing reports
R3_SET_SELECT_ Defines a selection criterion
OPTION
R3_SET_STATUS_ Sets a status attribute in the SAP monitor
ATTR architecture
R3_SET_TEXT_ Sets a text attribute in the SAP monitor
ATTR architecture
R3_SWITCH_ Switches the operation mode in SAP
OPMODE

See also:

About AE JCL for Applications


Chapter7 Technical Connection | 95

7.5.3 Transporting the Automation Engine Interface


General
In order to take advantage of the functionality of the AE interface, function modules must be transported to
the SAP system.

Function modules are developed as ABAP development objects. These components are supplied with the
"Correction & Transport System " package of the SAP System:

l KNNNNNN.SID information file, for example K000046.T45


l RNNNNNN.SID data file, for example R000046.T45
l ENNNNNN.txt export protocol, for example E000046.txt

Name ranges are transported along with function modules in separate transport requests. A list of all
currently valid transport requests is found in the file TRANSPRT.TXT. All transports must take place when
a new installation is made. With an update installation, it is only the function modules (AE interface)
because there is no change of the name ranges.

The names of the development objects are described in Terminology.

Throughout this document, the following codes are used:

l NNNNNN for the transport job number of the delivery system and
l SID for the system names of the delivery system.
l TID is used for the system name of the target system (to which the function modules are imported).

File Names

SAP can be installed in various environments (UNIX, Windows...). Therefore, it is important to consider
the specific features of the system when you name the files.

In this document, the file names that refer to a SAP environment are written in UNIX language ("/"). For
Windows environments, the names are the same with the exception that thy use a "\" character.

Importing Function Modules in SAP

If the functionality of the AE interface is used, function modules must be transported to the SAP system.

Requirements:

All activities that concern the transport system must be made by a SAP administrator (SIDadm).

The transport system must be properly installed and set. This takes place during the installation of the
SAP system.

In this case, importing requires that at least 2 batch work processes (BTC) are running.
Control: Tools - Administration - Monitor - System Control - System Overview (Transaction SM50).

To import development objects, the Transport demon must be planned for in client 000 (background job
"RDDIMPDP") and cleared for the SAP system. Control: see below

The functionality can be checked as follows:


cd usr/sap/trans/bin........ Change to the SAP transport directory.
96 | Chapter 7 Technical Connection

tp checkimpdp TID........... Verify that the Transport demon RDDIMDP is active in SAP.
tp connect TID.............. Test the connection to the SAP system.

The transport system is described in the SAP online documentation in the chapter BASIS - TRANSPORT
CONTROL.

Note that the import process requires the option "Ignore Non-Matching Component Versions" to be set.

Procedure:

Import the supplied transport files to the SAP transport environment:

l On the SAP computer:


l Change to the appropriate subdirectory (for the SAP version) in IMAGE:AGENTS\SAP\_TRANS:
l Copy the files from there to the following directory:

KNNNNNN.SID by /usr/sap/trans/cofiles
RNNNNNN.SID by /usr/sap/trans/data

If SAP is installed under UNIX, the files are usually transferred via FTP. Be sure to enter "bin" for
binary transfers.

l The file ENNNNNN.TXT on the CD contains the complete export log and can be used for analysis.

Importing the delivery into the SAP system:

l On the SAP computer (use the SAP administrator (SIDadm) to register).


l  The imported transport files (RNNNNNN.SID and KNNNNNN.SID) must not be write protected
(be careful when you copy them from the CD).
l If needed, you can create a directory that includes all objects of the transport job:

cd usr/sap/trans/data....... Change to SAP transport directory.


r3trans -l RNNNNNN.SID...... Create a file trans.log (List of transported objects).

l Create a buffer entry for the target system.

cd usr/sap/trans/bin........ Change to SAP transport directory.


tp addtobuffer SIDkNNNNNN TID [pf=<Profile name, Default TPPARAM>

l If needed, you can check the buffer entry:

tp showbuffer TID [pf=<Profile name, Default TPPARAM>

l Before you start to import, decide upon the unconditional modes (u) that should be used:
l 4....valid only for SAP Release 3.x: guarantees that the target system name (TID) that is
used for the export does not correspond to the actual target system name. This mode must
be used because the actual target system is not known.
l 1....must be entered when the import should be repeated.

l Start the import using one of the following commands:

tp import SIDkNNNNNN TID u4 client123] [pf=<Profile name, default TPPARAM>] or


tp import SIDkNNNNNN TID u14 client123] [pf=<Profile name, default TPPARAM>]

The unconditional modes are distinguished by TP version and can be checked in the SAP
Documentation if needed.

l  Note for the import process:


Chapter7 Technical Connection | 97

l This process requires that at least 2 batch tasks are running.


l Although the transport job does not include client-specific data, it can happen that a client is
required. In this case, enter a valid client=nnn (client 010 is used for the export).
l The import can take a few minutes, especially if the Transport demon RDDIMPDP is
planned not to be event-triggered but rather time-controlled.
l Message "no profile used ":

No profile is specified if you call an internal program on "sapevt". That is the reason why this
message occurs with any call on sapevt. Usually, it can be ignored.

l Other messages can occur. Only the return code is crucial (see below - Control).

Control:

l Because of the SAP transport system's and the SAP environment's complexity, thorough error
diagnosis and correction can only be handled by an expert who is familiar with installation
environments.
l A general assessment as to whether the import was successful should be possible for a non-expert
with the following tips:
l Importing creates logging files.
l These are in the directory /usr/sap/trans/log and are called SIDsNNNNNN.TID
l s means transport step:

G... Report and screen generation


H... R3TRANS import Dictionary
I... R3TRANS main import
l In these three log files the exit code (=return code) has to be checked (it always occurs at
the end of the file). It cannot exceed "4"!

l The expert can also check the log files in the SAP system.

7.5.4 Testing the Automation Engine Interface with ABAP


Workbench
1. Starting the development environment and opening the function modules

Start the development environment (ABAP/4 Workbench) and open the function modules to the function
group /SBB/UC4_JOB with the object browser:

Tools > ABAP/4 Workbench >Overview > Object Navigator, select Function Group /SBB/UC4_JOB,
select Function Modules, position the cursor on the object and click Test in the context menu.

The name of the function modules always has the prefix AE.

2. Testing the function module UC4_JOB_OPEN

Parameters that must be specified:

JOB NAME - Any name (such as TEST).


JOBCLASS - A, B or C
98 | Chapter 7 Technical Connection

The parameter JOBCOUNT is supplied. This value must be noted or copied to the clipboard.

3. Testing the function module UC4_JOB_SUBMIT

Parameters that must be specified:

JOBCOUNT - Enter the value or import from the clipboard.


JOBNAME - As with function module UC4_JOB_OPEN,
REPORT_ID - 'RSM04000' or 'RSM04000_ALV'.
Chapter7 Technical Connection | 99

Make sure after the execution that no exception has occurred. Although parameters are supplied, they
are not necessarily required for testing.

4. Testing the function module UC4_JOB_CLOSE


100 | Chapter 7 Technical Connection

Parameter to be specified:

JOBCOUNT - enter value or import from the clipboard,


JOBNAME - as with function module UC4_JOB_OPEN.

After the execution, verify that no exception has occurred.

The job has now been started and can be displayed by using a standard transaction SM37 (System
>Services > Jobs > Job Overview). When the job has ended okay, this indicates that the function modules
within the SAP system work properly.
Chapter7 Technical Connection | 101

7.6 Agent for SAP BW


General
The Automation Engine supports the components SAP Business Information Warehouse (SAP BW) in the
same way that it supports an operating system. Technically, this cooperation is set up so that function
modules are called via SAP's RFC (Remote Function Call) within the SAP system. The communication
for the SAP system is carried out exclusively via RFC and is therefore independent of the environment
where SAP BW is installed.

The setting of the connection parameter is carried out in the Connection object of the agent. Furthermore,
this agent can be set for all AE-supported SAP BW versions.

The agent for SAP BW can also process jobs in the SAP basis system (regular background jobs).

The following table shows which SAP Version and SAP Basis correspond to an agent for SAP BW.

BW Release SAP Basis Agent for SAP BW


1.2B 4.5A Not supported
2.0B 4.6C Available first with Automation Engine version 2.63C
2.1C 4.6D Available first with Automation Engine version 2.63C
3.0B 6.10 Available first with Automation Engine version 2.63D
>3.0B 6.x Available first with Automation Engine version 2.63D

Support Packages for SAP BW

For the operational use of the agent, Automic recommends installation of the following support packages
from SAP BW.

SAP BW Release Support Package Level


2.0B 32
2.1C 24
3.0B 14
3.1C 08
>3.1C Support Package Level unknown
102 | Chapter 7 Technical Connection

If the agent is used with a lower support package level, the following messages can appear. Further
information is found in the given SAP notes.

SAP Note Number Message


488588 short dump "DYNPRO_SEND_IN_BACKGROUND"
426047 Message E089(RSM1) "Job not (yet ?) started"
488808 BAPI_IPAK_CHANGE ignores InfoPackage Parameter

Status Check
The Automation Engine presumes that the technical status that is submitted when the function status
check is called is a "final status". The Interface Repository gives the following description:

The parameter TECHSTATUS is the request's technical status. It always contains one of the following
values:

l G - green (request handling successful)


l Y - yellow (request is being processed)
l R - red (request incorrect or canceled)

Obviously, these states are not "final states". A status can change to "red" for a short time and then to
"yellow" or "green" after a while. AE accounts for this fact. For status checks, a time delay can be
activated so that it can be checked n times if the status "red" actually remains in this status, for example.
The INI file of the SAP agent contains the parameters maxruntime= and repeat_check= [SAP_BW]) for
this.

Another function is available which checks the states of process chains. It supplies the following values:

l "R" - cancel
l "G" - normal end
l "F" - normal end
l "A" - continue checking
l "X" - cancel
l "P" - continue checking
l "S" - cancel (but only after the process chain has been restarted)
l "Q" - continue checking
l "Y" - continue checking
l " " - continue checking

AE then converts these states into return codes:

Return code Status SAP status


0 ENDED_OK G or F
4 ENDED_NOT_OK R
8 ENDED_NOT_OK X
12 ENDED_NOT_OK S
Chapter7 Technical Connection | 103

7.7 Archive Parameters with R3_ACTIVATE_


REPORT
The archive parameters which can be specified by a user in R3_ACTIVATE_REPORT correspond to the
entry fields displayed in the figure below. The dialog field is displayed in the SAP System if "Archive" has
been selected as the mode in the printing parameters.

Parameters in SAP Parameters for R3_ACTIVATE_REPORT


Obj. type ARCHIVE_SAPOBJECT
Doc. type ARCHIVE_OBJECT
Information ARCHIVE_INFO
Text ARCHIVE_TEXT

See also:

R3_ACTIVATE_REPORT
104 | Chapter 7 Technical Connection

7.8 ERROR/ERRORLEVEL with R3_ACTIVATE_


SESSIONS
When processing R3_ACTIVATE_SESSIONS, AE first retrieves a list of sessions which should be
processed from the SAP system. Each of these sessions will be processed with an individual SAP job. In
this document, these jobs are referred to as Replayers. A Replayer uses the ABAP program
"RSBDCBTC" to process sessions.

ERROR
Refers to the result (status) of the Replayer. The status can be "A" for abend or "F" for finished
successfully.

ERROR=IGNORE
The next session of the list will be processed in any case. The result of the previous Replayer is
ignored.

ERROR=ABEND
Processing of sessions stops immediately if a Replayer ends with status "A". The AE job abends.

ERRORLEVEL
Always refers to the session itself and is checked when the Replayer has ended. ERRORLEVEL
defines the number of incorrectly processed transactions in % within a session. If the session value
has been exceeded, the processing of the AE job is canceled. No further sessions of the session
list are executed. No check is made for successfully processed transactions if no ERRORLEVEL
has been specified.
Chapter7 Technical Connection | 105

7.9 Troubleshooting

7.9.1 Checking Errors


This document contains information that will support you in recognizing the source of errors which cause
the agent to function improperly or individual tasks to be executed incorrectly.

Job Report
The first source to be checked is the activation log of the AE job for SAP. It provides information about the
actions the agent has taken in connection with the SAP system and how the particular actions ended.

Attributes of Executable Objects


Sometimes the error cause is easily found in the attributes of an executable object (such as a wrong client
or user). Check the attributes of the particular object.
106 | Chapter 7 Technical Connection

CPIC User
An SAP user (client, name or passport) must be defined in a Login object to be able to establish a
connection to the SAP System. This user must also be available with the same password in all an SAP
system's clients in which tasks are executed. Check the Login object and the users in the SAP system.

Within the SAP system, the agent is represented by the CPIC user. This user requires the appropriate
rights such as operator rights for background processing, for example. Check the rights of the SAP
system's CPIC user.

Helpful Transactions
Through job logs and spool lists, the transaction "SM37" provides information about job executions. The
XMI log which can be called using "RZ15" also supplies helpful records.

Log Files
Agent and Server log files provide exact information about the relevant point in time when the error
occurred. These files' contents are also provided in the System Overview. The initial section shows the
complete INI file including the parameters which have been specified for the agent and server. This section
is followed by a chronological list of all executed actions.

SAP's System Log


Error situations occurring in the SAP system are logged in SAP's system log. Use the SAP transaction
"SM21" to view the system log. In particular cases (such as when the agent fails to schedule a job step),
the SAP system log is automatically copied to an own tab in the AE report.

Traces
Traces provide even more detailed information than log files. They contain all messages which were sent
from and to agent and server or agent and SAP system (RFC trace). Traces can be activated in the agent's
INI file or the System Overview. Trace contents are stored in files in the agent's working directory or an
individually defined directory.

Traces are required for the support or development team's analysis process. Always include this
information in your support message.

An activated RFC trace create files on agent side but also on SAP's application server computer.
Automic recommends activating traces only for a short period of time in order to reduce the hard disk's
memory consumption. Set gw/accept_remote_trace_level to 0 if no trace files should be created in the
SAP system.

Further information about RFC trace is available in the SAP note number 532918.

7.9.2 Problems by Importing Function Modules


Program Tp Does Not Terminate

Symptom

While importing the development objects, the program tp does not terminate (normally it runs a few
minutes). After canceling with (Ctrl-C), the following message is displayed in the SLOG file.
Chapter7 Technical Connection | 107

Background job RDDIMPDP could not be started or terminated abnormally

Cause

The import of development objects is executed by job RDDIMPDP. This is usually event-controlled and
triggered by the event "SAP_TRIGGER_RDDIMPDP" of the program tp. In this case, starting the job with
the event does not work - tp consequently waits infinitely.

Solution

Verify that the event "SAP_TRIGGER_RDDIMPDP" has been defined (SM64).

Verify that the entries for the event control are correctly set in TPPARAM.

Search for possible information in the SAP Service Portal with the headword "SAP_TRIGGER_
RDDIMPDP"

If necessary, use  the 5-minute RDDIMPDP, which can be scheduled with SE38 via ABAP RDDPUTPP.

7.9.3 SAP Jobs End with ARCHIVE_INFO_NOT_FOUND

Symptom

SAP jobs canceled with the following message:


U2004001 RFC Return code: ARCHIVE_INFO_NOT_FOUND

Cause

ARCHIVE_INFO_NOT_FOUND is an exception of the function module "GET_PRINT_PARAMETERS".


This function module is a standard function module of the SAP System.

ARCHIVE_INFO_NOT_FOUND does not necessarily refer to the info field of the archive parameters.
ARCHIVE_INFO_NOT_FOUND refers to the entire archive parameters. These are currently:

l ARCHIVE_O[BJECT]= Document type


l ARCHIVE_S[APOBJECT]= Object type
l ARCHIVE_T[EXT]= Text
l ARCHIVE_I[NFO]= Info field

ARCHIVE_INFO_NOT_FOUND can have various reasons such as:

l The specified document type or object type has not been defined in SAP.
l The document type is assigned to a non-existing archive in SAP (Content Repository).
l The user has no access (see authorization object S_WFAR_PRI in SAP).

Provided that the parameters are correctly transferred from AE to the function modules, the reason for an
exception is mostly found in SAP.
108 | Chapter 7 Technical Connection

Solution

Use RFC Trace to check whether the AE parameters are correctly transferred to the function module.
Check your customized settings "Business Documents" and "ArchiveLink" and the authorizations of the
CPIC user in the SAP system.

See also:

R3_ACTIVATE_REPORT
Archive Parameter with R3_ACTIVATE_REPORT

7.9.4 Stability Problems with SAP Instances Occurred


When Many SAP Agents (RFC Connection) Were Used On
One Server

Symptom

The external RFC/CPIC server cannot open additional connections.

The system issues the error message:


LOCATION CPIC (TCP/IP) on local host ERROR max no. of 100 conversations
exceeded

Reason

The number of parallel connections that can be kept in the library is set to 100.

Solution

By setting the environment variables CPIC_MAX_CONV, the library can handle multiple connections at
the same time.

Windows: set CPIC_MAX_CONV=<n>


For example, set CPIC_MAX_CONV=500 (for 500 connections)

Unix: setenv CPIC_MAX_CONV <n> ( csh )


For example, setenv CPIC_MAX_CONV 500 (for 500 connections)

Unix: export CPIC_MAX_CONV=<n> ( ksh )


For example, export CPIC_MAX_CONV=500 (for 500 connections)

iSeries: ADDENVVAR ENVVAR(CPIC_MAX_CONV) VALUE(<n>)


For example, ADDENVVAR ENVVAR(CPIC_MAX_CONV) VALUE(500) (for 500 connections)
Chapter7 Technical Connection | 109

7.9.5 Problem with Password Assignment to SAP


After Updating to SAP NetWeaver 2004s and Later, CPIC User Could
No Longer Log On

Symptom

Password-based logon attempts (to ABAP systems as of Release 7.00 / NetWeaver 2004s / SAP ERP
2005) fail, although the user has entered a supposedly correct password in a front-end component or in a
destination (of another system). However, a (direct) SAPGUI logon with the same password is
successful.

Reason

ABAP systems as of NetWeaver 2004s (7.00) support passwords of up to 40 characters and differentiate
between uppercase and lowercase. In earlier ABAP Releases (prior to 7.00), passwords could only be
comprised of a maximum of 8 characters, whereby lowercase letters that were entered were automatically
changed to uppercase letters.

If, in a newer ABAP system (as of Release 7.00), a downwardly incompatible password is unknowingly
granted (see below), and if the front-end or middleware components are not able to process such
passwords correctly, logon problems inevitably occur.

This is usually due to the (invisible) automatic conversion from lowercase to uppercase letters. The
problem is that the password entered by the user does not arrive at the server in the same form, but is
changed either during input or during the transmission (in which many components are involved).

Term definitions

l Password: downwardly compatible / downwardly incompatible

A (plain text) password is downwardly compatible if it consists of a maximum of 8 characters and


contains no lowercase letters.

A (plain text) password is downwardly incompatible if it consists of more than 8 characters or


contains at least one lowercase letter.

Older ABAP systems support downwardly compatible passwords only. In newer ABAP systems
(as of Release 7.00), downwardly incompatible as well as downwardly compatible passwords can
be granted. Since lowercase letters that you enter are now no longer changed to uppercase letters,
the passwords granted in newer ABAP systems are normally downwardly incompatible.

l Hash password procedure / Code versions

ABAP systems do not save passwords in plain text, but instead calculate a hash value and save
this together with the meta information using the hash password procedure ("code version"). This
information is stored in the user master record and is analyzed during the password check: A hash
value is determined, using the code version specification (from the user master record), from the
110 | Chapter 7 Technical Connection

plain text password to be checked and is compared with the reference hash value (from the user
master record).

The quantity of the hash password procedure supported is release-dependent, whereby newer
releases always support all procedures of preceding releases. This ensures that a password logon
is also possible after a release upgrade.

Only the hash password procedures available as of Release 7.00 also support the processing of
downwardly incompatible passwords. Older hash password procedures support downwardly
compatible passwords only.

Whether downwardly incompatible passwords are supported or expected during a password logon
depends primarily on the specifications (code version) saved in the user maser record.

Solution

l When using the technical user (in RFC destinations):

We strongly recommend that you use the SYSTEM user type on the server (or also SERVICE,
provided a SAPGUI capability is required), since the password has unlimited validity only for these
user types (see SAP note 622464). If the password should be entered in an RFC destination of an
older system (= RFC client), it must be granted as a downwardly compatible password on the
server. For users of the SYSTEM or SERVICE type, this is always possible, even if the password
rules of the system normally compel the use of downwardly incompatible passwords (for example,
by login/min_password_lng > 8 or login/min_password_lowercase > 0).

l When using older front-end or middleware components and password logon of "normal"
users (DIALOG type):

In this case, it is not practical to change the passwords of the (numerous) users affected (as in the
above case with technical users). Instead you must replace the obsolete front-end or middleware
components. SAP note 792850 describes as of which version level certain front-end or middleware
components support the interaction with downwardly incompatible passwords. In addition, you may
need to update other software components (attached to these components), as well as those of
external providers. This is particularly the case if these components have their own password input
dialog and are not able to support downwardly incompatible passwords (according to the above
definition of the term).

For the moment, you can set the profile parameter login/password_downwards_compatibility on the
server to the value 2 or 3 for test purposes. In this case, the server checks if the client has sent a
matching downwardly compatible password for the expected downwardly incompatible password
(that is, a password that is 8 characters long and converted to uppercase). If this is the case, it is
logged in the sys log (for error analysis purposes), and the logon is assessed as successful (for
value 3). Using transaction RZ11, you can change the profile parameter dynamically, that is,
without restarting the system.
Chapter8 Certificates | 111

8 Certificates
112 | Chapter 8 Certificates

8.1 Overview
All functions we provide for SAP are certified.
Chapter8 Certificates | 113

The following table lists all certifications:

Solution Interface Software SAP Interface


AE.agent for SAP BC-XBP 6.10 - Background Processing, Job Scheduling 6.10 (Vers.
2.0)
BC-XBP 7.0 - Background Processing, Job Scheduling 7.0 (Vers. 3.0)
JAVA-JXBP 7.1
AE.agent for SAP BW BW-SCH 3.0 - Scheduling for SAP BW 3.0
AE.agent for J2EE/JMX JAVA-EE-STD 7.1

See also:

SAP Partner
SAP Developer Network (SDN)
114 | Chapter Glossary

Glossary
This glossary lists all specific technical terms in alphabetical order.

ABCDEFGHIJKLMNOPQRSTUVWXYZ

A
l ARA Client
Refers to a computer on which a ARA/Deployment Manager/Automation Engine user works.
l admin computer
Admin computer refers to the computer that is used by an administrator for e.g. Automation Engine
or database administration purposes.

C
l configuration
A set of constituent components that make up a system. This includes information on how the
components are connected including the settings applied.

D
l Download Center
The Download Center (http://downloads.automic.com/) is the place where you find everything you
need to know about your Automic solution to make sure you are using our products to their fullest
potential.
l database
A database is an organized collection of data including relevant data structures.
l department
Department name to which the Automation Engine user belongs.

G
l graphical user interface
A graphical user interface (GUI) is a human to machine interface based on windows, icons and
Chapter Glossary | 115

menus which can be operated by a computer mouse in addition to a keyboard. In contrast to


command line interface (CLI).

I
l ILM
Stands for Information Lifecycle Management, which refers to a wide-ranging set of strategies for
administering storage systems on computing devices.

J
l Java work process
The Java work process, implemented in Java, is used to host special services, which have been
developed in Java.

P
l package module
A package module is a group of related package types, e.g. Feature, Change Request, or Bug. It
defines how the packages are displayed in the GUI and the features enabled for each package type.
l password
A secret combination of characters for a Automation Engine user.

R
l RichClient
Deprecated Term. Replaced by: UserInterface
l rollback scope
The scope of a workflow to roll back. For a rollback on a job the scope is this single task while for a
rollback on a workflow the scope is this workflow and all sub-workflows in arbitrary depth.
116 | Chapter Glossary

S
l Service Manager
The Service Manager serves to start, stop and access components such as the Automation Engine
processes or agents from a central point.

T
l token
A token is used for authentication within a session between a client and a server. A (soft) token is a
unique identifier which is generated and sent from a central server to a client software. The client
uses the token to authenticate each request.

U
l user name
Name of the Automation Engine user.

V
l vSphere
vSphere is a virtualization platform for building cloud infrastructures by VMware.

W
l web application
A web application is an application that is accessible over a network (Internet or intranet) and is
typically coded in a programming language like Java or JavaScript, combined with a markup
language like HTML. Web applications are provided on web servers and web browsers are used as
GUI on client computers.