Workflow Channel

A business workflow is an executable process embedded in SAP applications that you use to automate business processes. These processes may be simple release or approval procedures, or more complex business processes such as creating a material master and the associated coordination of the departments involved. SAP Business Workflow is particularly suitable for situations in which processes have to be run through repeatedly, or situations in which the business process requires the involvement of a large number of users in a specific sequence. You can also use SAP Business Workflow to respond to errors and exceptions in other, existing business processes. It considers SAP data as business objects (e.g. a material or a sales order can be an object in a workflow).

A workflow can be started when predefined events occur, for example an event triggered if particular errors are found during an automatic check. Each workflow is made up of steps that control the workflow or refer to tasks to be executed. Tasks describe elementary business activities and always refer to a method of a (business) object type. These methods can be automatically executable methods (background tasks) or can require a user to execute them (dialog tasks). For each task possible agents (i.e. persons who start workflows and processes work items) are defined.

A task within a workflow can either be a single-step task or a multistep task. At the technical level, the main difference between single-step tasks and multistep tasks is that while each single-step task references an object method, each multistep task references a workflow definition comprising a sequence of different steps. The prefix for SAP standard tasks (single step task) always starts with TS<8 digit number>, while the prefix for a Workflow (multi step task) always starts with WS<8 digit number>.

As core business processes can be realized using SAP Business Workflow, the successful execution of workflows can be crucial for the smooth and reliable processing of the business processes. Thus, monitoring of workflows is essential for ensuring the uninterrupted processing of these processes. Typical error scenarios are:

  • Events which start a workflow may run into an error or backlog situation. Such situations can be found in transaction SWEQADM.
  • The processing of the workflow itself may stop due to various reasons. These include problems with the system (system crashes, short dumps etc.) and errors in the logic of the workflow (steps configured incorrectly, dialog user not existent etc.). Workflows in such an erroneous state can be found (and restarted) in transactions SWPC and SWPR.

The processing of a workflow or task can be delayed or stopped due to other reasons like unavailable agents or a task being in status “WAIT”. Such situations can be detected in transaction SWI1.

Technical Prerequisites

The following technical requirements have to be met in order to use the monitoring template “Workflow”:

  • Basis release ≥ 7.00 on the managed systems
  • ST-A/PI 01R is implemented on the managed systems

Available Monitoring Content

Monitoring Template: Workflow

Metric Name Description MAI Category Since SP

Number of work items in critical status

This metric counts the number of work items in critical status.

Exceptions

7.1 SP12

Number of work items in uncritical status

This metric counts the number of work items in uncritical status.

Performance

7.1 SP12

Number of unprocessed events

This metric counts the number of events in the event queue which still have to be delivered or which ran into an error status. The events in error status can also be monitored via transaction SWEQADM on the managed system.

Exceptions

7.1 SP12

Age of oldest incomplete work item

This metric monitors the age of the oldest incomplete work item (status is not 'COMPLETED') according to the selection criteria.

Exceptions

7.1 SP12

Average age of incomplete work items

This metric calculates the average age of all work items. It is intended to be used for measuring work items in an incomplete status.

Exceptions

7.1 SP12

Average age of completed work items

This metric calculates the average age of all work items. It is intended to be used for measuring work items in a completed status.

Performance

7.1 SP12

Number of work items in critical status (combination with Average Age) 1)

This metric counts the number of work items in a specific status. It shares a common event with metric “Average Age of work items in critical status (combination with Number)”.

Exceptions

7.1 SP12

Average Age of work items in critical status (combination with Number) 1)

This metric monitors the average age of work items in a critical status. It shares a common event with metric “Number of work items in critical status (combination with Average Age)”.

Exceptions

7.1 SP12

Number of work items in uncritical status (combination with Average Age) 1)

This metric monitors the number of work items in a uncritical status. It shares a common event with metric “Average Age of work items in uncritical status (combination with Number)”.

Performance

7.1 SP12

Average Age of work items in uncritical status (combination with Number) 1)

This metric monitors the average age of work items in an uncritical status. It shares a common event with metric “Number of work items in uncritical status (combination with Average Age)”.

Performance

7.1 SP12

Note: Key figures with combined rating strategy (number & age)

1) In classic BPMon you had the possibility to use key figures that had a combined rating for number of work items and age of work items for critical and uncritical state.

To model this behavior in ICMon these key figures are presented by two metrics that are correlated on alert level.

From a functional point of view these metrics behave in the same way as the single metrics “Number of work items in critical status” and “Average Age of work items in critical status”. However, they share a common event, which means an alert is only raised if both metrics exceed their threshold values. If you do not configure one of the metrics the system behaves as if only the single metric has been configured. E.g. not configuring the “Average Age of work items in critical status (combination with Number)” metric means that alerts are created based on the output of metric “Number of work items in critical status (combination with Average Age)” solely.

Key Figure Alert Metric
Number of work items in status Critical combination of high number & average age of work items in critical state
  • Average Age of work items in critical status (combination with Number)
  • Number of work items in critical status (combination with Average Age)
Critical combination of high number & average age of work items in uncritical state
  • Average Age of work items in uncritical status (combination with Number)
  • Number of work items in uncritical status (combination with Average Age)

The monitoring template “Workflow” can be used to feed the reporting tools Business Process Operations offers. This includes the Business Process Analytics tool and the Business Process Operations Dashboards.

Configuration

The Interface and Connection Monitoring setup can be accessed via SAP Solution Manager Configuration (SOLMAN_SETUP). 

To access the Integration Monitoring setup please go to SAP Solution Manager Configuration (SOLMAN_SETUP) → Application Operations → Integration Monitoring → Interface and Connections.

Note: If you didn't perform the infrastructure configuration yet, please follow the Interface and Connection Monitoring Setup with SAP Solution Manager 7.2.

Monitoring Template: Workflow

Navigate to the step 'Define Scope'. You can create a new scenario or use an existing one. Make sure the sender and the receiver system are part of the Interface and Connection Monitoring scenario.

Create the Interface Channel:

  1. Select the scenario and click 'Next'
  2. In step 'Preparation' perform all relevant manual activities and run all automatic activities.
  3. In step 'Configuration' click the 'Add' button.
    • Channel Name: Enter a meaning full name (max. 30 characters)
    • Type: Select 'Workflow'
    • Monitoring Template: Select 'Workflow'
    • Description: Enter a description for the chann
    •  
    •  
    • el
  4. Click Next.
  5. Source type:
    • Select 'Technical System'
    • If the source system is not on-premise please select 'External Service' if it is a cloud service or 'Unspecified Managed Object'.
  6. Source: Select the on premise system from the drop-down list
  7. Target Type:
    • Select 'Technical System'
    • If the target system is not on-premise please select 'External Service' if it is a cloud service or 'Unspecified Managed Object'.
  8. Target: Select the on system from the drop-down list or enter the name for the unspecified managed object
  9. The measuring point is selected automatically. Please note that for this template either the target or the source system must be an ABAP system! If both source and target are ABAP systems you can select the measuring point as necessary.
  10. If more than one client are connected for the on premise system please select the correct client for the monitoring
  11. Click Next.
  12. Click Finish.

This interface can only be created between an ABAP system and any other system. You need an ABAP system in this channel because this is where the data collector is running.

Maintain the Interface:

  1. The interface channel type does not have any configurable parameters on interface level. Move directly to the metric configuration.

Select Metrics:

  1. On the tab 'Metrics' select the metrics you want to monitor. Please note that the selected metrics are collected for each interface entered above.

  2. Enter Metric Parameters:

    • Metrics: Number or work items in critical/uncritical Status

      • Parameter set name: You can enter a name for the parameter set to distinguish it if you have more than one.
      • Task/Workflow (no wildcards): Provide the ID of the workflow or task. You can find this information in transaction SWI1 in the managed system.
      • Status (no wildcards): You can provide a status, if you don't the statuses considered as critical/non-critical will be considered.
      • Agent assigned: You have to decide if you want to consider work items without (<blank>) or with (X) an agent
      • Max. Age (in hours): Specify the maximum age (in hours) until which workflows or work items should be considered by data collection. Workflows or work items older than the maximum age are ignored during the data collection.
      • Total/Delta mode: The mode determines if all (TOTAL) events that meet the age criteria are considered or only the ones added between the last and current execution (DELTA).
    • Metric: Number of unprocessed events
      • Object type (no wildcards): For this metric you can specify the type of the business object to be monitored
      • Event (no wildcards): the event you would like to monitor
      • Max. Age (in hours): Specify the maximum age (in hours) until which workflows or work items should be considered by data collection. Workflows or work items older than the maximum age are ignored during the data collection.
      • Total/Delta mode: The mode determines if all (TOTAL) events that meet the age criteria are considered or only the ones added between the last and current execution (DELTA).
    • Metric: Age of oldest incomplete work item
      • Task/Workflow (no wildcards): Provide the ID of the workflow or task. You can find this information in transaction SWI1 in the managed system.
      • Max. Age (in hours): Specify the maximum age (in hours) until which workflows or work items should be considered by data collection. Workflows or work items older than the maximum age are ignored during the data collection.
      • Total/Delta mode: The mode determines if all (TOTAL) events that meet the age criteria are considered or only the ones added between the last and current execution (DELTA).
    • Metrics: Average age of incomplete/completed work items
      • Task/Workflow (no wildcards): Provide the ID of the workflow or task. You can find this information in transaction SWI1 in the managed system.
      • Status (no wildcards): You can optionally provide a status, if you don't the statuses considered an critical/non-critical will be considered.
      • Agent assigned: You have to decide if you want to consider work items without (<blank>) or with (X) an agent
      • Max. Age (in hours): Specify the maximum age (in hours) until which workflows or work items should be considered by data collection. Workflows or work items older than the maximum age are ignored during the data collection.
      • Total/Delta mode: The mode determines if all (TOTAL) events that meet the age criteria are considered or only the ones added between the last and current execution (DELT
      • A
      •  
      • ).
    • Metrics: Number of work items in critical/uncritical status (combination with Average Age) and Average Age of work items in critical/uncritical status (combination with Number)
      • Task/Workflow (no wildcards): Provide the ID of the workflow or task. You can find this information in transaction SWI1 in the managed system.
      • Status (no wildcards): You can optionally provide a status, if you don't the statuses considered an critical/non-critical will be considered.
      • Agent assigned: You have to decide if you want to consider work items without (<blank>) or with (X) an agent
      • Max. Age (in hours): Specify the maximum age (in hours) until which workflows or work items should be considered by data collection. Workflows or work items older than the maximum age are ignored during the data collection.
      • Total/Delta mode: The mode determines if all (TOTAL) events that meet the age criteria are considered or only the ones added between the last and current execution (DELTA).

For some metrics you can aggregate over some parameters by selecting the "Group-by" flag (the checkbox next to the parameter input field). If this flag is set one metric variant will be created for each distinct parameter value.

Note: Performance Warning

Consider the additional workload on the managed system when maintaining the data collection frequency. This applies especially in case a large number of work items / workflows (transaction SWI1) in the managed system are present. Avoid running the data collection with a high monitoring frequency and avoid complex definitions of selection criteria, especially with patterns, ranges, and exclusions. In case of doubt execute transaction SWI1 with your intended selection criteria to get an idea about the possible runtime of the data collection.

You can maintain attributes as described in the Interface and Connection Monitoring Setup with SAP Solution Manager 7.2 on the tab 'Attributes'.

Thresholds and the collection schedule are maintained in the next step of the guided procedure. Once you have maintained all your channels, click 'Next' in the main guided procedure to move to the step 'Activation'.

Maintain Thresholds and Schedule:

  1. Select the Alert for the channel (the alert is the line with the red flash icon next to it)
    • On alert level you can maintain notification and incident message creation
  2. Select the Metrics
    • You can adjust the thresholds on the tab Thresholds. The recommended rating strategies for this metric are “Info Only” and “Numeric Threshold (Green/Yellow/Red)”. 
    • Do not change the data collector type or data collector name on the tab 'Data Collection' as the monitor will not work anymore if this is changed.
    • Only change the collection interval if you know what you do or if advised to do this by SAP.
  3. Click 'Apply and Activate' → <Choose one option> to activate the monitoring 

Further Information

Workflow Status Codes

The following statuses are considered during monitoring:

Severity SAP Workflow Status Code
Critical CANCELLED (Logically deleted), ERROR (Error), EXCPCAUGHT (Exception Caught), EXCPHANDLR (Exception Being Handled)
Uncritical CHECKED (In Preparation), COMMITTED (Executed (Only If explicit end confirmation is expected)), COMPLETED (Completed), READY (Ready), SELECTED (Reserved), STARTED (In Process), WAITING (Waiting (Also: Work items in resubmission))
Incomplete Everything that is NOT COMPLETED

Identifying Relevant Task IDs on Managed System via Transaction SWI1

  1. Execute transaction SWI1, specifying only the time period in the selection screen.
  2. Choose a time frame large enough to get business relevant data.
  3. Check if there are entries with status e.g. ERROR, CANCELED or one that is relevant for monitoring from business perspective.
  4. The column 'Task' contains the identifier you can use for parameter Task/Workflow

Identifying Events via the Event Queue Administration (Transaction SWEQADM)

  1. Call transaction SWEQADM.
  2. In tab “Overview” →  “Content of event queue”, you can check if there are events still to be delivered or events with errors.
  3. The sum of 'events still to be delivered' + 'events with errors' is monitored with metric “Number of unprocessed events”.

Identifying Task IDs via Transaction SWPR

  1. Call transaction SWPR for a time frame large enough to get business relevant data (without further selection criteria)
  2. Choose the workflows you are interested in.
  3. To determine the task ID for an entry, select the line, and press button 'Choose'.
  4. The task will be displayed in the 'Details' screen

Always remember that not only those entries which are currently in status ERROR should be monitored, but also those which are business critical in general, as they might run into error situations as well.

Identifying Task IDs via Transaction SWPC

  1. Call transaction SWPC for a time frame large enough to get business relevant data (without further selection criteria)
  2. Choose the workflows you are interested in.
  3. To determine the task ID for an entry, select the line, and press button 'Choose'.
  4. The task will be displayed in the 'Details' screen