Event
An event represents something that happens or may happen during the course of a process.
Menu
> Event Trigger - Trigger Type(Message/Timer/Error/Escalation/None) and Trigger name
> Timer Configuration - Waiting time
> Output Mapping - Start Event Output message to Process Context(Data Objects)
> Input Mapping - Process Context(Data Objects) to End Event Input message
> Start/Correlation Condition
- Message Start Event
- It indicates that the process start is triggered upon a receipt of a WSDL message.
- Message trigger is assigned based on service interface/operation.
- Intermediate Message Event
- It shows where the process waits for a WSDL message from outside the process before resuming.
- You cannot use intermediate message events in embedded sub-processes.
- Intermediate Timer Event
- It shows where the process pauses and waits for a certain time to pass before resuming.
- Intermediate Boundary Event
- It is a specific intermediate event that you place on the boundary of an activity/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.
- Message End Event
- It 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.
- Error End Event
- It is used to model an error that occurs in a sub-process, but can't be used in embedded sub-processes.
- It triggers a WSDL fault, defined in the service interface of the message trigger assigned to a message start event.
- Multiple error end events is allowed in a process
- Synchronous process ending with an error end event for root process is not allowed since WSDL fault response is not supported.
- The error/fault in sub-process propagates to the parent process and it can be consumed by the parent process.
- Escalation End Event
- Represents an exception that occurs inside the process, eg. 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.
- Multiple escalation end events is allowed in a process.
- You need to set an escalation type and criticality.
- The escalation/exception is thrown from inner sub-process to next outer process until it is handled by a handler.
- If no exception handling is possible for a critical escalation, the process is suspended.
Activity
An activity is kind of work that is performed within a business process.
Menu
> Looping : No Looping / Parallel For Each, Data Objects - numberOfCompletedIterations and currentCollectionItem are available in loop.
> Task : Applicable only for Human Activity
> Interface : Automated Outbound Service Interface + Operation + Service Reference(endpoint)
> Mapping : Process Context(Data Object) to Process Context(Data Object)
> Input Mapping : Process Context(Data Objects) to Input of Activity
> Output Mapping : Output of Activity to Process Context(Data Objects)
> Boundary Events : Deadline(Start/Completion) Exception(Critical/Non-Critical) Handling
- Human Activity
- It is used to represent activity performed by a user. A task needs to be assigned to it.
- At execution, the assigned task is shown in the universal worklist/BPMInbox.
- UWL Task : http://tpcpid:50000/webdynpro/dispatcher/sap.com/tc~bpem~wdui~taskinstance/ATaskExecution?taskId=6c965d65959511e4c70400000076d806
- BPM Task :
- http://tpcpid:50000/webdynpro/dispatcher/sap.com/tc~bpem~wdui~taskinstance/ATaskExecution?taskId=6c965d65959511e4c70400000076d806&sap-cssurl=http://tpcpid:50000/com.sap.ui.lightspeed/themes/sap_corbu
- Automated Activity
- It is work that is performed by a system.
- A service interface definition and an operation need to be assigned to it.
- Referenced Sub-Process
- It is an activity in the process that is a graphical representation of another independent process.
- At execution, the other independent process is called.
- Embedded Sub-Process
- It is a compound activity that cannot be executed standalone like the referenced sub-process.
- It has a local process context, which is not visible for the parent process.
- Mapping Activity
- It can be used to transform complex data from data objects in the process context into more simple data.
- Rules set can be used as a transform in a mapping activity.
- Reporting Activity
- It is used to collect data from the process context, and can perform process analytics on this data.
- It references a reporting data source and indicates where in the process data is gathered for reporting.
- Notification
- It is used to send e-mail notifications from the process.
- You need to specify the recipients and you can parameterize the subject and message texts.
Gateway
It is used to control the divergence and convergence of sequence flow in a process. It indicates that a decision must be made, or that the process flow must be split or merged depending on the given conditions.
Menu
> Condition Evaluation : Condition with Context fields and Rules and Functions
- Exclusive Choice(Data Based)
- It controls the sequence flow between activities. It is like a question that is asked at that point in the process.
- You define for each answer/gate a condition based on a Boolean exp.
- Event-Based Choice
- It controls the sequence flow by choosing an outgoing gate based on events that occur at that point in the process.
- It is always followed by catching/receiving events eg. an intermediate event(message/time).
- Parallel Split(Fork)/ Join
- A parallel gateway is used to visualize concurrent execution of activities.
- If you use the parallel split gateway you have to catch all tokens with a parallel join gateway in the process.
- Uncontrolled Merge
- The uncontrolled merge gateway is an exclusive gateway used as a merge for alternative sequence flows.
Links:
bpmn-gateways
Exception Handling
Integration Centric Process - Exception Handling in BPM