Show TOC

EventsLocate this document in the navigation structure

Definition

An event affects the flow of the process and has a cause or an impact.

Depending on their place in the process flow, the following event types are available in the process composer :

  • Start events

    You use them to indicate where a process starts and what triggers a process. Start events do not have any incoming sequence flow. Each process has one start event.

  • Intermediate events

    Intermediate events occur after a process has been started. They affect the flow of the process, but do not start or terminate the process. You use them to indicate where the process pauses and waits for a certain event to happen or for a certain time to pass before resuming.

  • End events

    You use them to indicate where the process ends. End events do not have any outgoing sequence flow. An end event in the process composer can have a specific result, for example a message.

Events belonging to start, intermediate, and end event types are differentiated also by their triggers. The following tables contain all the events available in the process composer:

Start Events

Name

Trigger Type

Description

Start Event

None

A start event is an event that has no specific trigger. You can use it when the exact trigger of a start event is not important, for example when designing a draft of a process model. Later, you can set a message trigger to the start event.

You also use a start event without a trigger in an embedded sub-process.

Message Start Event

Message

A message start event indicates that the process start is triggered upon a receipt of a Web Services Description Language (WSDL) message. You assign a message trigger that is created from a service interface and an operation to the message start event.

Intermediate Events

Name

Trigger Type

Description

Intermediate Event

None

An intermediate event pauses the process and has no specific trigger to continue. You can use it when the exact trigger of an intermediate event is not important, for example when designing a draft of a process model. You can set a trigger, for example a message or timer, to an intermediate event later on.

Intermediate Message Event

Message

An intermediate message event shows where the process pauses and waits for a WSDL message from outside the process before resuming.

You cannot use intermediate message events in embedded sub-processes.

Intermediate Timer Event

Timer

An intermediate timer event shows where the process pauses and waits for a certain time to pass before resuming.

Boundary Event

Error or Escalation

A boundary event is a specific intermediate event that you place on the boundary of an activity (automated activity, human activity or sub-process) but not in the process flow. You use boundary events for exception handling and thus they are triggered by an error or escalation. The boundary event handles an exception that has occurred while the activity has been performed. Depending on the activity type, the following exception types may occur:

  • Escalations in human activities

  • Errors which trigger WSDL faults in automated activities

  • Escalations which you model, errors and all the exceptions that activities may throw in sub-processes.

A sequence flow connection starting from the boundary event shows the branch to be executed in case of an exception.

End Events

Name

Trigger Type

Description

End Event

None

An end event is an event that has no specific result. You can use it when the exact result of an end event is not important, for example when designing a draft of a process model. You can set a result, for example a message or error, to an end event later on.

You also use an end event without a trigger in an embedded sub-process.

Message End Event

Message

A message end event ends a process and sends a WSDL message as a result. A process can have only one end event whose result is a message. You assign a message trigger that is created from a service interface and an operation to the message end event. You assign the same message trigger created from a WSDL file with a request and response to the message start and end event to model a synchronous process.

Error End Event

Error

You use error end events to model an error that occurs in the process. This error triggers a WSDL fault which can be defined in the service interface of the message trigger you assign to a message start event. As the error is defined in the service interface, it is visible outside the BPM system and can be used for communication with other systems.

There can be as many error end events in a process as the number of faults defined, but you cannot model a synchronous process ending with an error end event because WSDL fault response is not supported.

You cannot use error end events in embedded sub-processes.

An error that occurs in a referenced sub-process can be handled by a boundary event, which is placed on the boundary of the sub-process flow object in your process. Boundary events can also be placed on the boundary of a human or automated activity to handle escalations in tasks or faults in automated activities.

Escalation End Event

Escalation

The escalation end event represents an exception that occurs inside the process, for example when a task is not completed until the defined deadline. The escalation is internal for the BPM system and is not visible for other systems. There can be more than one escalation end events in a process. You need to set an escalation type for the escalation end event and you have the option of making an escalation critical.

The escalation is thrown from an inner sub-process to the next outer process until the exception can be handled by an exception handler. If no exception handling is possible for a critical escalation, the process is suspended. You can analyze the exception in the SAP NetWeaver Administrator.

Termination Event

Message by default, but can be any of the above

The termination event ends the process flow in a regular way. If a branch in the process reaches a termination event, all parallel flows in the process are also terminated. You can set all end events as terminating and make them behave as a termination event.