Previous  Next          Contents  Index  Glossary  Library

Process Window

The Process window in Oracle Workflow Builder graphically represents the activities (icons) and transitions (arrows) for a particular process. Each activity is a node, a logical step that contributes toward the completion of a process.

You can drag and drop activities from the navigator tree into the Process window. The properties for an activity node may be viewed or edited by double clicking on the node in the Process window with the select mouse button. You define transitions between activities by drawing arrows from one activity to the next using the secondary mouse button.

Notification, function, and process activities make up the nodes of a process. If a process contains a process activity in its diagram, that process activity is known as a subprocess. There is no restriction on the depth of this hierarchy. To display the subprocess diagram in a Process window, double-click on the subprocess activity node in the parent Process window.

Transitions

Transitions appear as arrows in your diagram and represent the completion of one activity and the activation of another. For an activity that completes with a result type of <None>, any transition that you draw from it simply appears as an arrow to the next activity, indicating that as long as the originating activity completes, the process transitions to the next activity.

For an activity that has a defined result type, you must associate the transition arrow that you create with one of the activity's possible results. The result that the activity returns when it completes then determines what the next eligible activity is, as defined by the results-based transitions that originate from the completed activity. For example, "Notify Approver" with a result of 'REJECTED' transitions to "Reject Requisition." See: Requisition Approval Process Activities.

You can also create a <Default> or <Timeout> transition for an activity that has a defined result type. The Workflow Engine follows a <Default> transition if no other transition matching the completion result exists. The Workflow Engine follows a <Timeout> transition if the notification activity times out before completion. See: Setting Up Background Workflow Engines.

Activities can also have multiple transitions for a single result, creating parallel branches.

Timeout Transitions

Draw a <Timeout> transition from one activity to another to force the process to perform another activity if the original notification activity is not completed by a specified period of time. See: To Define Optional Activity Details.

When an activity times out, Oracle Workflow marks the activity as timed out and then cancels any notification associated with the timed out activity. The Notification System sends a cancellation message to the performer only if the cancelled notification was expecting a response and the performer normally gets notifications via E-mail.

Processing then continues along the <Timeout> transition as indicated by your process definition. If a timed out activity does not have a <Timeout> transition originating from it, Oracle Workflow executes instead, the error process associated with the timed out activity or its parent process(es).

Note: You must have a background engine set up to process timed out activities. See: Setting Up Background Workflow Engines.

Creating Multiple Transitions to a Single Activity

You can create multiple transitions to a single activity in a process diagram. Sometimes these multiple transitions indicate that there are multiple ways that the process can transition to this one node, especially if there are results-based or parallel branches occurring further upstream from this node. In these cases, you want the activity to execute just once.

In other cases, the multiple transitions may indicate that the activity may be transitioned to multiple times because it is the starting point of a loop. In these cases, you want the activity to be reexecuted each time it is revisited.

The Loop Reset flag for an activity determines whether the activity (a function, notification or process) reexecutes when it is revisited more than once. Loop Reset is set in an activity's Details property page.

If Loop Reset is unchecked, the activity runs once and only once. If it is transitioned to a second time, the workflow engine ignores this activity. If Loop Reset is checked, the activity executes every time it is visited, however, with every visit, this activity as well as all other activities that are a part of this loop are reset. You can also use the standard Loop Counter activity as the initial activity in a loop to control how many times a process can transition through a loop. See: Looping and Loop Counter Activity.

Suggestion: If you have multiple incoming transitions from parallel branches, you should always use an AND, OR, or custom join activity to merge those branches. This is especially true if after merging the parallel branches, you want to create a loop in your process. By using a joining activity to merge parallel branches and designating the following activity as the start of the loop, you create a less complicated process for the engine to execute. See: Standard Activities.

Designating Start and End Activities

Each process has to have a Start activity that identifies the beginning point of the process. You may designate any node from which it is logical to begin the process as a Start activity. When initiating a process, the Workflow engine begins at the Start activity with no IN transitions (no arrows pointing to the activity). If more than one Start activity qualifies, the engine runs each possible Start activity and transitions through the process until an End result is reached. The engine may execute acceptable Start activities in any order. Processes may contain multiple branches that each have an End activity. When the Workflow Engine reaches an End activity, the entire process ends even if there are parallel branches still in progress.

An End activity should return a result that represents the completion result of the process. The result is one of the possible values from that process activity's result type.

Start activities are marked with a small green arrow, and End activities by a red arrow that appear in the lower right of the activity node's icon in the Process window.

Initiating a Process

A workflow process begins when an application calls the Workflow Engine CreateProcess( ) and StartProcess( ) APIs. A subprocess is started when the Workflow Engine transitions to a process activity that represents the subprocess. See: Workflow Engine APIs.

Diagramming a Process

This section discusses how to draw and define a workflow process in the Process window:


         Previous  Next          Contents  Index  Glossary  Library