Pages

Jul 20, 2011

How to design Approval Workflow based on Approval List generated in Oracle Approval Management (AME).

How to design Approval Workflow based on Approval List generated in Oracle Approval Management (AME).

Recently I was working on requirement to design custom approval workflow  based approval list generated by Oracle Approval Management (AME) module.

Approval List was based on 
1. Job level 
2. Approval Group
3. post-chain-of-authority approvals

To fulfill the requirement, I have designed a workflow Approval Sub-process to send notification to the approvers, generated by Oracle Approval Management (AME) module and then plug that sub-process in the existing customer’s workflow process.

Below is sample workflow to implement AME (Oracle Approval Management) based approval list 

1.Please make sure that you have required setup in approval management before you start working on your workflow (please refer my previous post on how to do the setup).Make sure that AME is integrated with calling Application ( application where you have your workflow).
2.Design your workflow Process and call AME APIs 
Ame_Api2.Getnextapprovers1
AME_API.updateApprovalStatus2
There are many other APIS available to generate approval list , above 2 works well for me , you can pick any of those based on your requirement.




In my Workflow I have activity



·         Start – to start the workflow.

·         Initial Approval – this activity will determine if approval is required or not .If it is required it then it call api Ame_Api2.Getnextapprovers1 to get the approval list from AME based on our setup and send the Approval Notification to the First approver in the list by calling Notify approver.

·         Notify Approver - if approver approve the Notification , this process send a FYI type of notification to the Requestor and execute the next activity ‘Get Next Approval’.


·         Get Next Approval  - this activity on execution first  update the status of the Approver (whom we send the notification) by mean of API  AME_API.updateApprovalStatus2 (please note that this status will be updated in the AME and not in your calling applications) and then call Ame_Api2.Getnextapprovers1 to get the next approver .If Ame_Api2.Getnextapprovers1 return any further approver , then as shown in workflow  we loop back to notification activity and perform same action , but in case there are no more approver , execute the End activity  and complete the sub process.