Wednesday, December 16, 2009

Oracle Workflow Services Dispatching Functions

Features of Oracle workflow services include built-in dispatching functions:
round-robin, least-busy and most-productive

Oracle BPEL Worklist Round Robin Functionality
The term 'Round Robin' used to refer to things that operate in a rotational manner, like tournaments where each player plays every other, circular letters etc.
Automatic Assignment and Delegation
A user may decide to have another user perform tasks on their behalf. Tasks can be explicitly delegated from the Oracle BPEL Worklist Application or can be automatically delegated. An example of automatic routing is to allocate tasks among multiple individuals belonging to a group. For example, a help desk
supervisor decides to allocate all tasks for the western region based on a round robin basis

Dynamic Assignment Functions
Dynamic assignment functions select a particular user or group from either a group or from a list of users or groups included with Oracle BPEL Process Manager. The three Dynamic Assignment Functions included with Oracle BPEL Process Manager are round-robin, least-busy, and most-productive.
Round Robin: picks each user or group in turn
These dynamic assignment functions can be called using the custom XPath functions in a BPEL process or task definition.
WfDynamicUserAssign
WfDynamicGroupAssign

wfDynamicUserAssign
This function returns the name of an identity service user, selected according to the specified assignment pattern. The user is selected from either the subordinate users of the specified group (if a single group name is supplied), or from the list of users (if a list of user names is supplied). If the identity service is configured with multiple realms, the realm name for the group and users must also be supplied. Additional assignment pattern specific parameters can be supplied. These additional parameters are optional, depending on the details of the specific assignment pattern used.
There are two signatures of this function.
Signature 1:
hwf::wfDynamicUserAssign (’patternName’,’groupName’,’realmName’?,’
patternParam1’?,....,’patternParam2’?,...,’patternParamN’?)
Signature 2:
hwf::wfDynamicUserAssign (patternName, userList, realmName?,patternP
aram1?,patternParam2?,...,patternParamN?)

wfDynamicGroupAssign
This function gets the name of an identity service group, selected according to the specified assignment pattern. The group is selected from either the subordinate groups of the specified group (if a single group name is supplied), or from the list of groups (if a list of user names is supplied). If the identity service is configured with multiple realms, the realm name for the group and groups must also be supplied. Additional assignment pattern specific parameters can be supplied. These additional parameters
are optional, depending on the details of the specific assignment pattern used.
There are two signatures of this function.
Signature 1:
hwf::wfDynamicGroupAssign(’patternName’,’groupName’,’realmName’?,
’patternParam1’?,’patternParam2’?,...,’patternParamN’?)
Signature 2:
hwf::wfDynamicGroupAssign(’patternName’,’groupList’,’realmName’?,
’patternParam1’?,’patternParam2’?,...,’patternParamN’?)
Arguments:
■ PatternName - The name of the assignment pattern (for example, ROUND_
ROBIN).
■ groupList - The list of groups from which to select a group.
■ realmName - The name of the identity service realm to which the groups belong.
■ patternParam1...patternParamN - Any additional parameters required by
the assignment pattern implementation (may be optional, depending on the
pattern)

No comments:

Post a Comment