Oracle SOA 12c- IDAM 12c Group based task assignment


In this post I'll describe about the business scenario where following requirements came for human task assignment in SOA suite 12c-

Environment
Oracle EISS (Enterprise Identity Services Suite) consists of a bundle that contains SOA suite with IDAM for workflows management.

Scenario
The current scenario involves 2 level approval of a task where approval request was processed in serial mode i.e. participants of task were in serial mode. Users at level 1 & 2 were identified dynamically and business rule was enforced for task assignment.

Business Requirement
Human task approval level 1 should be assigned to a single user and approval level 2 shoud go to a group rather than a single user. Once approved from level 1 the task should be assigned to a group of N members where each member can see the task in their inbox (in worklist app). Now if any participant has claimed the task and approved/rejected, the task should be marked as complete and should be removed from group.

Solution/Approach identified (Changes in business rules where task assignment was done)
Solution up to assignment of approver level 1 will remain same. Now when try to assign for level 2 inside business rule, there is a provision to specify GROUP rather than single user. So keep value of users as blank and specify the group name for groups section as shown below

call CreateResourceList(users:"",groups:"GROUP_NAME",approles:Task.ownerRole,ResponseType:ResponseType.REQUIRED,ruleName:"RULE_NAME",lists:Lists)

Just do the changes, save the project, deploy it and test the same. It should now work as expected.

Note
In case the group name is required to be dynamic so the parameterized variable should be placed insted of hard coded value in double quotes.

Comments

Popular posts from this blog

Oracle SOA Suite- Implementing Email Notification

Oracle SOA Suite 12c- PKIX path building failed & unable to find valid certification path to requested target

Migration of Oracle SOA Suite Composite from 11g to 12c