Setting Up Oracle Approvals Management (AME) for Supervisory and CEO Approvals An Oracle White Paper May 2006
OIE Integration with AME
Page 1 of 34
1. 2. 3. 4.
EXECUTIVE OVERVIEW.....................................................................................3 REFERENCE ..........................................................................................................3 SCOPE ....................................................................................................................3 SETUP ....................................................................................................................3 a) HRMS .................................................................................................................3 b) SYSADMIN ........................................................................................................5 c) ORACLE APPROVALS MANAGEMENT (AME).............................................7 1. Attribute ..............................................................................................................7 2. Condition.............................................................................................................8 3. Actions ................................................................................................................9 4. Rules ...................................................................................................................9 5. SETTING UP RULES FOR SUPERVISORY APPROVALS ..................................9 a) Create Attributes..................................................................................................9 b) Create Conditions ..............................................................................................12 c) Create Actions ...................................................................................................13 d) Set up Simple Rules...........................................................................................15 e) Test....................................................................................................................23 f) Simulation .........................................................................................................27 6. SETTING UP RULES FOR CEO EXPENSE REPORT APPROVALS .................30 7. CONCLUSION .....................................................................................................34
OIE Integration with AME
Page 2 of 34
1. EXECUTIVE OVERVIEW Your enterprise employs thousands of people in many departments around the world. Naturally, you require your Human Resources business processes to be conducted as efficiently as possible so that employees and managers are free to focus on their primary tasks. However, you also need assurance that all transactions are subject to effective controls. This paper describes how, within the Oracle e-Business Suite, you can exploit the flexibility of Oracle Approvals Management (AME) across the breadth of Oracle Internet Expenses to establish and enforce appropriate approval rules for any kind of transaction.
2. REFERENCE This paper is intended to supplement the following reference materials, which should also be studied for a full understanding of the topic. Implementing Oracle Approvals Management Oracle Internet Expenses Implementation and Administration Guide
3. SCOPE The scope of this document is to define List creation rule of type chain of authority based on number of supervisory levels. We would also cover the basic setup involved to accomplish the same.
4. SETUP a) HRMS In HRMS we need to create employees, assign supervisors, associate set of books and default accounts. The Test case explained here uses the following supervisory hierarchy with each Employee reporting to the top level: Mike Edwards (CEO) Russ Mitchell Stock Patt Rob Alan We associate Set of books and Default Expense account in Purchase Order Information tab of the Assignment Window. Set of Books and Default Expense
OIE Integration with AME
Page 3 of 34
account attached to all these employees are Vision Operations and 01-110-61000000-000. Below is the screenshot of Mr. Russ Mitchell Employee Setup showing the supervisor assigned.
OIE Integration with AME
Page 4 of 34
Below is the screenshot of Russ Mitchell showing the Set of books and the default expense account assignment.
Similar setup is done for the remaining Employees. .Please note that no Supervisor is selected for Mike Edwards who is the CEO of the Virtual Organization. b) SYSADMIN We need to create users in sysadmin and attached these Employees. We also need to attach some responsibilities required for the testing: a) Internet Expense Responsibility b) Workflow User Web Applications Below is the user defined for employee Mike Edwards.
OIE Integration with AME
Page 5 of 34
Similar setup is done for the remaining Employees. Profile options to be setup: We need to set the profile option AME: Installed to Yes for Application Payables.
OIE Integration with AME
Page 6 of 34
c) ORACLE APPROVALS MANAGEMENT (AME) We wish to use AME for approving Expense reports submitted by employees. Our objective in the test case is to setup a simple rule, for example: •
Rule 1: All expense reports submitted in set of books 1 having an expense total of less than 5000 USD would require approval of at least 2 supervisors.
•
Rule 2 All expense reports submitted in set of books 1 having an expense total of greater than 5000 USD would require approval of at least 3 supervisors
Before we go on to create the rule, we should understand some basic terms in AME. 1. Attribute An attribute is a variable that has exactly one value per item, for a given transaction. Common attributes are things like a transaction’s total amount, a percent discount, an item’s category, a person’s salary, and so on. In AME, attribute names always appear uppercased, for example EXPENSE_REPORT_TOTAL. Attributes are classified as Mandatory attributes and Non Mandatory attributes. A mandatory attribute must have a usage in all transaction types. Mandatory attributes determine various facets of AME runtime behavior. The mandatory attributes are listed at the top of the attributes tab's attributes list, which appears as soon as you select the attributes tab. Non-mandatory attributes that are not required attributes represent business variables used in approval rules. An attribute item class determines what class of items has a value for the attribute. For a given transaction, each of the items in an attribute's item class has its own value for the attribute. An attribute always has the same item class, regardless of the transaction type. Attributes belonging to the header item class are sometimes termed header-level attributes. Attributes belonging to subordinate item classes are sometimes termed line-item-level attributes, cost-center-level attributes, etc. EXPENSE_REPORT_TOTAL is a Header level attribute and EXPENSE_LINE_AMOUNT is a line level attribute. AME distinguishes five attribute types: • Number • Date • String • Boolean • Currency OIE Integration with AME
Page 7 of 34
Please review the AME implementation guide for more details on these attribute types. Attribute Usages: There are two kinds of attribute usages: static and dynamic. •
A static attribute usage assigns a constant value to an attribute, for a given transaction type.
•
A dynamic attribute usage assigns an SQL query to an attribute, for a given transaction type.
For example Attribute EXPENSE_REPORT_TOTAL has a dynamic usage and the SQL query is select fnd_number.number_to_canonical(erh.total), nvl(erh.default_currency_code,asp.invoice_currency_code), nvl(erh.default_exchange_rate_type,asp.default_exchange_rate_type) from ap_expense_report_headers_all erh, ap_system_parameters_all asp where erh.report_header_id = :transactionId and erh.org_id = asp.org_id Please review the syntax rules for Dynamic usage queries in the AME implementation guide. This is very important while you design your query. Further the execution of dynamic attribute usages’ queries represents the majority of AME’s runtime overhead. Therefore, optimizing your dynamic–usage queries can have a big impact on AME’s performance. Make sure you optimize these queries thoroughly, especially if the transaction type that owns them processes a high volume of transactions. 2. Condition An approval rule’s “if” part consists of one or more conditions, each of which is either true or false. For the rule to apply to a transaction, all of its conditions must be true for the transaction. The “if” part of an approval rule is the condition. It may consist of one or more conditions each of which is either true or false. For a rule to apply to a transaction, all the condition must be true for the transaction. We can create conditions based on the attributes. Ordinary header conditions are based on columns of the Expense report Header i.e, AP_EXPENSE_REPORT_HEADERS_ALL table. An example is if the EXPENSE_REPORT_TOTAL <= 5000 US Dollars OIE Integration with AME
Page 8 of 34
Ordinary line item conditions are based on columns found in the Expense report lines i.e, AP_EXPENSE_REPORT_LINES_ALL table Examples are EXPENSE_LINE_AMOUNT, EXPENSE_TYPE etc., Example are if the EXPENSE_LINE_AMOUNT <= 5000 US Dollars 3. Actions An Action is an instruction to AME to modify a transaction's approval process in some fashion. An approval rule's "then" part (its "consequent") consists of one or more actions. Actions that modify a transaction's approver list are approval actions or simply approvals. Actions that generate a production (a variable-name/value pair) are production actions. The supervisory–level approval type ascends the same supervisory hierarchy as assigned in the employee supervisor assignment. The parameters of supervisory– level approvals are positive integers indicating the number of supervisors to ascend. 4. Rules Creating rules and rule usages is the main step in the AME implementation process. Rarely will an organization’s business rules match any rules that are seeded with a transaction type. Instead, you must translate the business rules you documented into AME rules yourself. Rule associate one or more conditions with an approval in an “if-then” statement. Before you can create rules, you must create conditions for the rules to use. You may need to create (or have a system administrator create) some custom attributes and/or approvals. Thus, while creating rules is your ultimate goal, it is also the last thing you do when you set up AME.
5. SETTING UP RULES FOR SUPERVISORY APPROVALS Please note that AME Patchset used for this setup is AME.A (Patch #3962268). If you are using higher version of AME Patchset level, the User Interface may change slightly. a) Create Attributes Using Responsibility: AME Application Administrator N >Approvals > Attributes
OIE Integration with AME
Page 9 of 34
1. Change the transaction type to OIE Expense Report from the list of values and select the continue button. 2. Check if required attribute exists. If not add one by scrolling to the end of the attributes page and select the Add Attribute button. 3. Choose the attributes Item Class i.e. header/line attribute and click on continue (header in our case) 4. Check for existing shareable attribute names. If nothing suites your need, click on Create New Name 5. Enter EXPENSE REPORT TOTAL in the name field and select the continue button. 6. Select an Attribute type. It would be “currency” in this case 7. Enter Total reimbursable amount for the expense report in the description field. 8. Select static usage as “no”. Attribute usages define how the value is determined at the run time. If it is a static usage, then you can define a constant value for the transaction type. If it is a dynamic usage, then you need to define a SQL query for the transaction type that uses the attribute. In our case, it is a dynamic usage and the following SQL query is used select fnd_number.number_to_canonical(erh.total), nvl(erh.default_currency_code,asp.invoice_currency_code), nvl(erh.default_exchange_rate_type,asp.default_exchange_rate_type) from ap_expense_report_headers_all erh, ap_system_parameters_all asp where erh.report_header_id = :transactionId and erh.org_id = asp.org_id 9. Select the Continue button. Note: AME will confirm the creation of the attribute for you. 10. Select the Quit button to return back to the main menu page. Below is the screenshot of Attribute EXPENSE_REPORT_TOTAL
OIE Integration with AME
Page 10 of 34
Similarly we have another seeded Attribute TRANSACTION_SET_OF_BOOKS_ID
OIE Integration with AME
Page 11 of 34
Below is the screenshot of Attribute TRANSACTION_SET_OF_BOOKS_ID
b) Create Conditions Create Conditions using Responsibility: AME Application Administrator N > Approvals > Conditions 1. Check if required conditions exist. If not add one by scrolling to the end of the conditions page and select Add a Condition button. 2. Select an ordinary header/line condition type (in our case header). 3. Select the continue button. 4. In the attribute field select EXPENSE_REPORT_TOTAL from the list of values. 5. Select the continue button. 6. Select the Currency code say USD 7. Enter 0 in the lower limit field. 8. Enter 5000 in the upper limit field. 9. Select “yes” for include lower limit. 10. Select “yes” for include upper limit 11. Select the Create Condition button. 12. AME will confirm the condition being added successfully.
OIE Integration with AME
Page 12 of 34
Below is the screenshot of the condition EXPENSE REPORT TOTAL <= 5000 USD
Similar condition created for condition EXPENSE REPORT TOTAL >= 5001 USD Below is the screenshot of the condition EXPENSE REPORT TOTAL >= 5001 USD
c) Create Actions Create Actions using Responsibility: AME Application Administrator, N > Approvals > Actions In the actions types page view scroll down to view the supervisory level chain of authority. OIE Integration with AME
Page 13 of 34
Note that it has the following required attributes • SUPERVISORY_NON_DEFAULT_STARTING_POINT_PERSON_ID • TOP_SUPERVISOR_PERSON_ID • TRANSACTION_REQUESTOR_PERSON_ID Verify that these attributes have been defined for OIE Expense Report transaction type. N > Approvals > Attributes 1. Select the OIE Expense Report transaction type from the list of values. 2. Select the continue button. 3. Scroll down and check the non-mandatory attributes list to see if the following attributes appear and proper usage is setup • SUPERVISORY_NON_DEFAULT_STARTING_POINT_PERS ON_ID • TOP_SUPERVISOR_PERSON_ID • TRANSACTION_REQUESTOR_PERSON_ID 4. Add these attributes if they are missing. Below is the screenshot of attribute SUPERVISORY_NON_DEFAULT_STARTING_POINT_PERSON_ID
Below is the screenshot of attribute TOP_SUPERVISOR_PERSON_ID. In our test case, Mike Edwards is the Top supervisor and so his person_id is given as a static usage. Supervisory level chain of authority action will consider TOP_SUPERVISOR_PERSON_ID only when the action is of type ‘ATMOST’
OIE Integration with AME
Page 14 of 34
Below is the screenshot of attribute TRANSACTION_REQUESTOR_PERSON_ID
d) Set up Simple Rules Our objective in the test case is to setup simple rules such as:
OIE Integration with AME
Page 15 of 34
1. All expense reports submitted in set of books 1 having an expense total of less than 5000 USD would require approval of at least 2 supervisors. 2. All expense reports submitted in set of books 1 having an expense total of greater than 5000 USD would require approval of at least 3 supervisors Set up a rule as above using Responsibility: AME Application Administrator N > Approvals > Rules 1. Press on Rule tab 2. Click on the ‘Add Rule and Usage’ tab 3. Give the name of the Rule say “Chain of Authority base on Supervisory level (ER less than 5000 requires 2 Supervisors Approvals)” in the Description. Rule Key will be automatically displayed. 4. Select Rule type as list-creation and Give appropriate Start and End date for the rule and then press continue button 5. Select the appropriate Action Types (in our case chains of authority based on number of supervisory levels) and press continue. 6. Select the appropriate supervisory level actions ( in our case Require approvals up to the first two supervisors) and press continue 7. Select the appropriate Subordinate item class as none for header attribute and line for line attribute (in our case none) and press continue 8. Select the appropriate Header Attributes (in our case EXPENSE_REPORT_TOTAL) and press continue 9. Select the appropriate condition. In our case EXPENSE_REPORT_TOTAL <= 5000 USD and press continue. 10. This will create the rule 11. Click on the rule created and Add Condition related to TRANSACTION_SET_OF_BOOKS (in our case TRANSACTION_SET_OF_BOOKS=1) Below is the Rule defined where by all expense reports submitted in set of books 1 having an expense total of less than 5000 USD would require approval of at least 2 supervisors Below is the screenshot of step 3 and 4
OIE Integration with AME
Page 16 of 34
Below is the screenshot for step 5
Below is the screenshot for step 6
OIE Integration with AME
Page 17 of 34
Below is the screenshot for step 7
Below is screenshot of step 8 OIE Integration with AME
Page 18 of 34
Below is screenshot of step 9
Below is the Rule defined where by all expense reports submitted in set of books 1 having an expense total of less than 5000 USD would require approval of at least 2 supervisors
OIE Integration with AME
Page 19 of 34
To setup rule as in 2 Responsibility: AME Application Administrator N > Approvals > Rules 1. Press on Rule tab 2. Click on the ‘Add Rule and Usage’ tab 3. Give the name of the Rule say “OIE: Chain of Authority base on Supervisory level (ER greater than 5000 > 3 Supervisors)” in the Description. Rule Key will be automatically displayed. 4. Give appropriate Start and End date for the rule and then press continue button 5. Select the appropriate Action Types (in our case chains of authority based on number of supervisory levels) and press continue. 6. Select the appropriate supervisory level actions ( in our case Require approvals up to the first three supervisors) and press continue 7. Select the appropriate Subordinate item class as none for header attribute and line for line attribute (in our case none) and press continue 8. Select the appropriate Header Attributes (in our case EXPENSE_REPORT_TOTAL) and press continue 9. Select the appropriate condition. In our case EXPENSE_REPORT_TOTAL >= 5000 USD and press continue. 10. This will create the rule 11. Click on the rule created and Add Condition related to TRANSACTION_SET_OF_BOOKS (in our case TRANSACTION_SET_OF_BOOKS=1)
OIE Integration with AME
Page 20 of 34
Below is the Rule defined where by all expense reports submitted in set of books 1 having an expense total of greater than 5000 USD would require approval of at least 3 supervisors
With these two list creation rule of type chain of authority based on number of supervisory levels in place all Expense reports submitted in set of books ID 1 would be subject to approval through AME. The approver list would contain 2 supervisors if the expense report amount is <=5000 USD and 3 supervisors if the expense report amount is >=5000 USD Below is the screenshot showing the 2 rules created
OIE Integration with AME
Page 21 of 34
OIE Integration with AME
Page 22 of 34
e) Test Approval Management allows users to test the approval process independent of the Oracle Internet Expenses. This will help determine where the problem is occurring, either in AME or the Internet Expenses Workflow. Test case 1: Rob Alan will submit expense report of 1000 USD from set of books ID 1. This should be routed for approval to 2 supervisors up the chain i.e. Stock Patt and Russ Mitchell How to test a rule in AME: Responsibility: AME Application Administrator N > Approvals > Test 1. Go to Test Tab 2. Select a Test Type a. To test a real transaction’s approval process, you need to give the item key which will be the report_header_id. In this case check the View a real transactions approval process check box b. To test the rule created in AME in order to check the approval process, you can select create a test transaction 3. Click on Change a Header Approver Attribute value 4. Click on TRANSACTION_REQUESTOR_PERSON_ID. Search for the person, Rob Alan 5. Enter the transaction attribute values i.e EXPENSE REPORT TOTAL Amount as 1000, TRANSACTION SET OF BOOKS ID as 1, EXPENSE_REPORT_TOTAL Currency as USD 6. Press View approval process button to view the approval process. This will list all rules that have been satisfied by this transaction. 7. Press View Transaction Productions; continue to get the Final List of approvers which is Stock Patt and Russ Mitchell in this case. Below is the Test Tab
OIE Integration with AME
Page 23 of 34
Below are the Attributes that are being tested
Below is the list of applicable rules
OIE Integration with AME
Page 24 of 34
Below is Final Approver List
Test case 2: Rob Alan will submit expense report of 6000 USD from set of books ID 1. This should be routed for approval to 3 supervisors up the chain i.e. Stock Patt, Russ Mitchell and Mike Edwards. Click on Change attributes and change EXPENSE REPORT TOTAL Amount to 6000.
OIE Integration with AME
Page 25 of 34
Click on View Approval process > Below is the list of Applicable rules
Click on View Transaction Productions > Continue > View Final Approver List
OIE Integration with AME
Page 26 of 34
Below is the list of final approvers
These tests results are as desired. So AME Rule is setup correctly. f) Simulation Now create Expense reports in application and check the results. Login as RALAN (Rob Alan) Enter Expense report for 100 USD and find that the report goes for approval to 2 supervisors up the chain. Once approved by the supervisors, you find the details in Approval Note section as under in the expense report history
OIE Integration with AME
Page 27 of 34
Enter Expense report for 6000 USD and find that the report goes for approval to 3 supervisors up the chain. Once approved by the supervisors, you find the details in Approval Note (3) as under in the expense report history
OIE Integration with AME
Page 28 of 34
OIE Integration with AME
Page 29 of 34
6.
SETTING UP RULES FOR CEO EXPENSE REPORT APPROVALS After patch 4466884, CEO expense reports would be auto approved, provided you have the following setup.. a) Enable AME by setting profile option AME:Installed to Yes for Application Payables.
b) CEO employee (Mike Edwards in our case) has no supervisor attached
OIE Integration with AME
Page 30 of 34
c) Set TOP_SUPERVISOR_PERSON_ID as the person_id of the CEO Employee In our test case, Mike Edwards is the Top supervisor and so his person_id is given as a static usage. Supervisory level chain of authority action will consider TOP_SUPERVISOR_PERSON_ID only when the action is of type ‘ATMOST’ Below is the screenshot of Attribute TOP_SUPERVISOR_PERSON_ID
d) Set ALLOW_REQUESTOR_APPROVAL attribute as True
OIE Integration with AME
Page 31 of 34
e) Set the profile option OIE: Enable Approver to “No” for the CEO FND user
OIE Integration with AME
Page 32 of 34
f) Create List Creation Rule based on chain of authority based on the number of supervisory levels with an action type of ATMOST.
With the above setup, when CEO creates Expense reports, the report is AUTO APPROVED.
OIE Integration with AME
Page 33 of 34
7.
CONCLUSION The goal of this document is to help you learn and understand the setup related to List creation rule of type chain of authority based on number of supervisory levels. For a more detailed explanation, please refer to Implementing Oracle Approvals Management and Oracle Internet Expenses Implementation and Administration Guide.
Oracle Corporation Author and Date Sriram Ramanujam, Nivas Ramanathan May 2006 Copyright Information Copyright © 2006 All rights reserved. Disclaimer This document in any form, software or printed matter, contains proprietary information that is the exclusive property of Oracle. Your access to and use of this confidential material is subject to the terms and conditions of your Oracle Software License and Service Agreement, which has been executed and with which you agree to comply. This document and information contained herein may not be disclosed, copied, reproduced or distributed to anyone outside Oracle without prior written consent of Oracle. This document is not part of your license agreement nor can it be incorporated into any contractual agreement with Oracle or its subsidiaries or affiliates. This document is for informational purposes only and is intended solely to assist you in planning for the implementation and upgrade of the product features described. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described in this document remains at the sole discretion of Oracle. Due to the nature of the product architecture, it may not be possible to safely include all features described in this document without risking significant destabilization of the code. Trademark Information Oracle, JD Edwards, and PeopleSoft are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
OIE Integration with AME
Page 34 of 34