Implementing Business Rules in BPM Processes
(JDeveloper 11.1.1.7, WLS 10.3.6, SOA/BPM 11.1.1.7)
In this post I would like to show how to implement Business Rules in Oracle BPM Processes.
Let us assume a scenario where an employee wants to travel on business and it needs manager’s approval on certain scenarios as the following table. All other cases it is automatically approved.
Destination Type
|
Duration (Days)
|
Business Class
|
Amount ($)
|
International
| |||
Domestic
|
> 30
| ||
Domestic
|
Y
| ||
Domestic
|
> 1000
|
- Create a BPM Application with a manual process
- Define a business object with the following attributes
- Modify the process as follows and create Human tasks and Business rule
- Create Business Rules as follows
- Open the Business Rules editor and select Rulesets and change the Ruleset name to “Manual Approval Ruleset” and create a Decision table for the View property and name it as “Approval Decision Table”.
- Build Decision table as follows according to the above table
- You can create LOVs dynamically as follows which will create the Bucketsets
- Similarly you can create ranges for duration and expense amounts also
- You can select the values from the LOVs as shown below from all the bucketsets for destination types, duration and amounts
- Fill the Actions section for all the Rules for the manualApprovalRequired, reviewOutcome attributes selecting ‘modify’ as the action
- Validate the Business Rules as shown below and make sure there are no warnings or errors
- Set the condition for the conditional flow for ‘Is Auto Approved’ exclusive gate as follows
- Assign the output data mapping for Review Travel Expense task as follows
- Build the project and build the ADF UI project for the Human Tasks UI. For more detailed steps follow my previous blog here.
- Assign users to the roles in Organization file.
- Deploy the application and test
- Login as the employee and request the travel expense approval, with auto approval condition
- The travel request is auto approved.
- Request another travel expense with any of the approval required conditions
- The request will go for managers approval
hi this is nice example project,
ReplyDeletecan you possible to send mail to this project,
my mail id: nrajakumaranster@gmail.com
Hi Sameer,
ReplyDeletescreenshot is not visible.
Please check now
Delete