Siebel Business Process Framework: Workflow Guide > About Workflow Process Design Options > About Handling Errors >

Using an Error Workflow Process to Handle Errors


You can use an error workflow process to handle errors. An error workflow process is a standard workflow process that becomes an error process when you associate it to another, main workflow process. The association is created by specifying the Error Process Name property in the Workflow Processes OBLE for the main workflow. When an error occurs in the main workflow, the exception branch calls the error workflow process.

The process defined in the Error Process Name property is called when the main process reaches an error state. Execution of the main process stops, the main workflow process passes system defined process properties to the error workflow process, then the error process commences.

Restrictions when using an error workflow process include:

  • An error workflow process does not return values back to the originating workflow that failed. If you require that the state of the main workflow be changed by the error handling actions, use an exception branch.
  • An error process can be associated with a workflow process that is a subprocess. However, an error process cannot itself contain a subprocess.
Benefits of Using an Error Workflow Process

An error workflow process that is used when you need to handle errors across multiple steps in a workflow process or across multiple workflows is called a universal exception handler. This type of exception handling can be used to reduce clutter on the workflow flowchart, and to reduce the need to create a large number of error workflow processes by reusing a single or a small set of error workflow processes.

How Errors Are Handled

This topic describes how error handling varies for a workflow process and how errors are handled for a sub process.

How Errors Are Handled for a Workflow Process

If an error is encountered in a workflow process that does not have an error process defined in the Error Process Name property, the workflow process remains in the In Error state. The original error code is returned to the caller of the process.

If the main workflow process encounters an error and there is an error workflow process defined for the main workflow process in the Error Process Name property, the error workflow process finishes with one of the outcomes described in Table 29.

Table 29. Description of Error Handling When an Error Process is Defined for a Workflow Process
Condition
Error Process State
Error Code
Result

The error process handles the error successfully.

Completed

No error code is returned to the caller of the workflow process.

Error handling is considered successful if the error process arrives at an End step.

The error workflow process terminates immediately with a Completed state.

The error process tries to handle the error, but fails with a different error.

Error

A new error code, which you have defined in the Stop step, is returned to the caller of the error workflow process.

Error handling is considered failed if the error process arrives at a Stop step.

The workflow process remains in the In Error state.

The error process cannot handle the error.

Error

The original error code is returned to the caller of the workflow process.

If no Start conditions are satisfied, the error process ends immediately.

The workflow process remains in the In Error state.

How Errors Are Handled for a Sub Process

If a sub process encounters an error and there is an error workflow process defined for the sub process in the Error Process Name property, the error workflow process finishes with one of the outcomes described in Table 30.

Table 30. Description of Error Handling When an Error Process is Defined for a Sub Process
Condition
Error Process State
Error Code
Result

The error process handles the error successfully.

Completed

(This cell is intentionally empty.)

Error handling is considered successful if the error process arrives at an End step.

The subprocess also terminates with a Completed state, then control returns to the main process instance.

The main process instance continues to execute from the next step.

The error process tries to handle the error, but fails with a different error.

In Error

The new error code, which you have defined in the Stop step, is returned to the subprocess.

Error handling is considered failed if the error process arrives at a Stop step.

Both the error workflow process and the main process terminate with the In Error state.

Siebel Business Process Framework: Workflow Guide Copyright © 2008, Oracle. All rights reserved.