Siebel 8.
0 Essentials
Executing Workflow Processes 1 of 25
Module 36: Executing Workflow Processes
Module Objectives
• To Describe the workflow execution architecture
• To List several ways to invoke workflow
• To Invoke a workflow process using a run-time event
• To Invoke a workflow process using a custom control
Executing Workflow Processes 3 of 25
Executing Workflow Processes
• Workflow processes are executed either in
– The user’s application object manager
• Supports synchronous processing
– A separate server component known as the Workflow Process
Manager component
• Supports asynchronous processing
– Another separate server component known as the Workflow Process
Batch Manager component
• Enables workflow processes to be run in batch mode
• In both cases workflow processes are executed using the
Workflow Process Manager business service
• Is often referred to as the Workflow Engine
Executing Workflow Processes 4 of 25
Synchronous Workflow Processing
• Is typically executed in the user’s application object manager
– User is forced to wait until the workflow completes (or pauses)
–Hourglass icon appears
• Can be triggered by an action on the part of the user:
– Directly by clicking a button or menu item
– Indirectly by performing a record or applet operation
• Is used to execute specific business logic that:
– Is triggered by the user’s activity
– Should be completed before the user continues activity
Executing Workflow Processes 5 of 25
Asynchronous Workflow Processing
• Is executed in the Workflow Process Manager server
component
– User (if any) is not prevented from continuing activity
• Is typically triggered by a change in the value of some column in
a database table
– Can respond to changes not associated with user activity
• For example: updates resulting from Enterprise Integration Manager
imports
– Can respond to conditions that exist for some threshold period of
time
• Is used to execute specific business logic when a specified
condition is satisfied
Executing Workflow Processes 6 of 25
Invoking Workflow Processes
• A workflow process can be invoked by a variety of mechanisms
– Run-time events
– Custom buttons and menu items
– Workflow policies
– Programmatically (that is as part of script)
Executing Workflow Processes 7 of 25
Run-Time Events
• Are a mechanism that allows customer-configured processing
to be triggered by user activity
• Consist of:
– A specification of some user activity such as:
• Record being updated
• Navigating to/from an applet
– The resultant processing
• Workflow
• One or more calls to business services
• Known as an action set
Executing Workflow Processes 8 of 25
Run-Time Events…
• Can be defined for three types of objects:
– Application
• Examples: logging in, logging out
– Applet
• Examples: displaying an applet, displaying a record
– Business component
• Examples: Querying, deleting a record, setting a field value
• Are fired when a user performs the corresponding activity
Executing Workflow Processes 9 of 25
Business Component Events
• Business component events often come in pairs such as:
– PreDelete/Delete
– PreSetField/SetField
– PreWriteRecord/WriteRecord
• The Pre- event is fired immediately prior to object manager
executing the operation
– Example: PreWriteRecord executes customer processing before
the record is saved
• Allows for possible verification of field values
• The other event is fired immediately after the object manager
executes the action
– Example: WriteRecord executes customer processing after the
record is written
• Allows for follow-on processing after a record is saved
Executing Workflow Processes 10 of 25
Adding a Run-Time Event to a Workflow Process
• A run-time event can be added to a workflow process as a
condition on the connector out of a:
• Start step
– Used to invoke the workflow
• Wait step Add Runtime
– Used to resume the workflow event here
• User interact step
– Used to resume the workflow
Add Runtime
event here
Executing Workflow Processes 11 of 25
Invoking a Workflow Using a Run-Time Event
1. Add the Run-Time Event
2. Deploy and Activate the Workflow
3. Reload the Run-Time Events
Executing Workflow Processes 12 of 25
1. Add the Run-Time Event
• Create the workflow process as usual
• Select the connector to attach a run-time event
– Must be a start, wait, or user interact step
• In the properties window, specify the triggering event
• Caution: A workflow with a run-time event on the start step
cannot be tested with the workflow simulator
Select
Specify the event Connector
type, business
component and event
to monitor
Executing Workflow Processes 13 of 25
2. Deploy and Activate the Workflow
• In Siebel Tools, deploy the workflow
• In the Siebel client, activate the workflow
Executing Workflow Processes 14 of 25
2. Deploy and Activate the Workflow…
Check for the Activated Workflow process in Active Workflow Processes View
Executing Workflow Processes 15 of 25
2. Deploy and Activate the Workflow…
• Activating the workflow automatically registers the run-time
event and associated workflow with the Siebel run-time event
engine
– Creates an action set that invokes the Workflow Process Manager
Row ID of Activated
Workflow
Business Service,
method to invoke
Executing Workflow Processes 16 of 25
3. Reload the Run-Time Events
• Navigate to Administration - Runtime Events > Events
• Select Menu > Reload Runtime Events
– Updates the run-time event engine with the new run-time event
– Not necessary to query for the specific run-time event
Run- Time event created by
activating the workflow
process
Executing Workflow Processes 17 of 25
Invoking Workflows Using a Custom Control
• User explicitly clicks a custom button or menu item to invoke
the workflow
• Configuration involves applet user properties
Executing Workflow Processes 18 of 25
Invoking a Workflow Using a Custom Menu Item
• Create a command object
– Specify a value for the Method property
• Add an applet method menu item to reference the command
Executing Workflow Processes 19 of 25
Invoking a Workflow Using a Custom Menu Item…
• Add a new Applet User property that associates the workflow to
be invoked with the new named method
Executing Workflow Processes 20 of 25
Invoking a Workflow Using a Custom Button
• Create a custom control for the button
– Specify a value for the Method Invoked property
• Add a new Applet User property that associates the workflow to
be invoked with the new named method
Executing Workflow Processes 21 of 25
Invoking a Workflow Process Explicitly
• The Workflow Process Manager business service can be
referenced explicitly:
– In a script
– As parameters in declarative configuration
• Developers must specify:
– The name of the business service and method
– The name of the workflow process and other parameters as input
arguments
• Often the RowId parameter must be passed in
Executing Workflow Processes 22 of 25
Invoking a Workflow Process Explicitly…
• A workflow process can also be executed using the business
service simulator
– Is an alternative way of testing new workflows
Business Service that executes
workflow processes
Provide name of workflow
process as input argument
Executing Workflow Processes 23 of 25
Module Highlights
• Workflow processes are executed in the Workflow Process
manager in either the application object manager or in a server
component
– Can be executed either synchronously or asynchronously
• A workflow process can be invoked by a variety of mechanisms
– Run-time events
– Custom buttons and menu items
– Workflow policies
• Run-time events are a mechanism that allows customer
configured processing to be triggered by user activity
Executing Workflow Processes 24 of 25
Lab
• In the lab you will:
– Invoke a workflow from a custom menu item
– Invoke a workflow using a run-time event
Executing Workflow Processes 25 of 25