Universal Automation Centre (UAC) by Stonebranch

Universal Automation Centre (UAC) is a business process automation platform offered by Stonebranch. UAC integrates disparate systems and applications to automate business processes, creating a consistent environment managed with automation using a scripting language. It allows to move files, run tasks, generate reports, send notifications and conduct many other automated processes.

Universal Controller is a Java web application running in a Tomcat container that acts as both a task scheduler and a load automation broker within the Universal Automation Centre platform. This application provides a user interface for creating, monitoring and configuring controller information and is responsible for the scheduling logic and synchronisation of most High Availability operations within a cluster that consists of two or more controller instances in a redundant system.

UAC interface

  1. Universal Automation Centre banner.
  2. Navigation.
  3. User taskbar.
  4. Taskbar List of records.
  5. List of records for the record type selected in the Navigator.
  6. Details for a record selected from the list of records.
  7. Scroll bars for scrolling in the Navigator, in the record list or in the Record Details.


Workflow in Stonebranch’s Universal Automation Centre (UAC) is a flexible and dynamic set of one or more task types, including other workflows, which are organised in an intuitive editor. Creating a workflow involves entering the details of the task and designing a diagram in a graphic editor.

Once the workflow has been started, the user is able to track the status and results using the Monitor and Details of the task instance. The workflow itself can consist of different groups of tasks or individual tasks that are linked together in a logical chain. It is also possible to combine multiple tasks, and each task can be combined with one or more other tasks, providing great flexibility in the configuration of workflows.

An important element of workflows in UAC is variables. Workflows can use both local and global variables, which can be passed on by other parent workflows. These variables can be used directly in individual tasks or workflows, enabling automation of the assignment of start-up or configuration data. They can also act as flags that are monitored by special monitors (Variable Monitor).

With such flexibility and the ability to use variables, workflows in UAC become a powerful tool for automating complex business processes. They enable complex task sequences, dependencies between tasks and dynamic data manipulation, ensuring efficient and consistent workflows within an organisation.

An example of Workflow in UAC:

Creation of the SAP Workflow Task

Before you start To run an SAP task, you must first perform the following steps:

  • Identify the Tool Agent: In order to integrate with SAP in Stonebranch’s Universal Automation Centre (UAC), the relevant Tool Agent must be identified. This can be a Universal Agent for Linux/Unix or a Universal Agent for Windows. This Agent will act as an interface between the UAC and the SAP system.
  • Install and configure the Universal Connector for SAP: Once the Utility Agent has been identified, install and configure the Universal Connector for SAP on this Agent. This Connector provides direct communication between the UAC and the SAP system, enabling SAP-related tasks to be performed.
  • Define the SAP connection in the Controller database: In UAC, it is possible to define the SAP connection in the Controller database. This configuration enables UAC to establish a connection to the SAP system. Set up the SAP connection by entering the necessary details such as the SAP server address, client number, user and password.

When creating a Sap Task calling task/program in the Sap system, we have 2 different approaches:

  • Creation of a Task based on a task defined in the SAP Background Jobs system.
  • Creating a Task that creates a given job on the fly in SAP Background Jobs.

We will start with approach one which is the default way.
Below is the main tab for creating Sap Tasks in UAC:

The most important things when setting up SAP Tasks are:

SAP Connection:
SAP connection name. The SAP connection specifies the SAP server information. Select an existing SAP connection from the drop-down list or click the icon to create a new SAP connection.
SAP Credentials:
Login credentials to be used by the controller to access the SAP system. The credentials are stored in the Universal Controller’s credentials table.
SAP Job Name:
SAP task name. Supported variables.
SAP task identifier. Supported variables. Required for Wait, Abort, Purge Job and Display commands.
SAP Command Options:
This field is used to specify additional command options supported by the Universal Connector (USAP).

It is of course also possible to define the above parameters as local/global variables. This gives us quicker access to change the SAP than a manual change in Task.

The second approach is to use a prepared script that contains the variables needed to create a task in Sap. The script can be found in this tab:

The use of Universal_ABAP_Script allows tasks to be created in Sap on 'the fly’. When a workflow containing several Sap Tasks is called up, jobs are created in Sap Background Jobs with specific parameters instead of creating manual tasks in the Sap system and defining Tasks on the basis of the manual task created.

The script view is as follows:

And here is an example of the completed script:

The most important variables include V03_ABAP_PROGRAM_NAME which contains the name of the programme/report in SAP. V04_SAP_USER_NAME holds the name of the Sap User through whom the report is to be run. V05_LANGUAGE holds the abbreviation of the environment language. A V06_VARIANT_NAME defines the name of the variant that the report has (if the report does not have any variant, this variable does not need to be defined).

Such a created task can be started manually using this button:

Active instances of Workflows or Tasks can be viewed in the „Task Instances” tab or general in the „Dashboard” main view. In these views, we can see the active status of our respective task. We distinguish between several states:

  • Defined: A status indicating that the Task has been defined and configured, but not yet started.
  • Waiting: A status indicating that the Task is waiting to be launched. This may be due to scheduling settings or dependencies between Tasks.
  • Held: A status indicating that the Task has been stopped and is not currently being executed. This may be due to the user manually pausing the Task, or other factors.
  • Queued: A status indicating that a Task has been added to the queue and is waiting for available resources to execute it.
  • Running: A status indicating that the Task is currently being executed. The task is in the active execution phase of the operation.
  • Running/Problems: A state indicating that the Task is in the process of being executed, but has encountered some problems or errors during its execution. This requires attention and intervention to solve the problems.
  • Start Failure: A status indicating that the Task could not be started due to an error or problem in the task start process.
  • In Doubt: A status indicating that unexpected conditions or ambiguities have occurred during the execution of the Tasks. This requires attention and analysis to determine the way forward.
  • Failed: A status indicating that the Task has failed. The task failed due to an error or other factors.
  • Skipped: A status indicating that the Task has been skipped. This may be due to configuration, dependencies or other factors that rendered the Task obsolete.
  • Finished: A status indicating that the Task was successfully completed, regardless of whether the outcome was expected or not.
  • Success: A status indicating that the Task has been successfully completed and has achieved the expected results.

With these different states of Tasks in the UAC, it is possible to monitor progress, identify potential problems and track the results of Task execution as part of the automation processes.

In Stonebranch’s Universal Automation Centre (UAC), there are additional several ways to automatically start SAP Tasks within Workflows. Here are some examples of ways to automatically trigger SAP Tasks:

Time schedules: UAC allows the definition of time schedules, which determine when a Workflow is to be automatically started. Schedules can be configured based on dates, hours, days of the week or other time parameters. For example, Workflow can be scheduled to run on specific days of the week at a specific time.

Event triggers: UAC supports event triggers that automatically trigger Workflow in response to specific system events or user actions. For example, an event trigger can be configured to trigger Workflow when a new record is created in SAP or when a specific external signal is received.

Relationships between Workflows: UAC allows dependencies to be defined between Workflows, meaning that running one Workflow can automatically trigger other related Workflows. For example, a Workflow can be configured so that launching a certain Task will automatically launch another Workflow.

SAP system events: UAC can monitor SAP system events and automatically trigger the appropriate Workflows in response to these events. For example, Workflow can be set up to be automatically triggered when a failure is detected or certain parameters are exceeded in the SAP system.
Example: The SAP system creates a file that must be passed on to another system. A File Monitor is set up in UAC which, at start-up time, tracks whether a particular file is in a particular directory. In addition, it is possible to verify with a positive (File has been created, another workflow/task/script is started) or negative (File is not in the given directory, an error notification/mail is sent) result of the file tracking.

Activity Monitor

From the Automation Centre navigation panel, select Task Instances > Activity. The Activity Monitor displays task status information based on the settings in the Activity Monitor Selections taskbar.

When you log in to the controller for the first time, the Activity Monitor does not automatically monitor controller activity, as the default value of the user preference “Activity Monitor” is automatically set to “No”. This value can be changed at any time.

A sample Activity Monitor is shown below:

You can additionally see the status of each task in the individual workflow by double-clicking on the name. This is useful for detailed monitoring of the progress and results of each individual task within the workflow. In this way, it is possible to quickly check whether the task was successfully executed, whether it encountered problems or whether any errors occurred.

In addition, the Workflow Monitor in the Universal Automation Centre (UAC) also allows manual management of the workflow to verify correct operation or to restart a task that reports start-up problems, or when there are major start-up issues. The user can take corrective action, such as restarting the task, changing the configuration or intervening to resolve technical issues that may affect workflow execution.

Interesting? Share the article with your friends!
Avatar photo
Florian Kowol
SAP ABAP Developer