You are on page 1of 55

Getting Started With Approvals

Management Engine

John Peters
JRPJR, Inc.
john.peters@jrpjr.com

01/17/07 NorCal OAUG Training John Peters, JRPJR, Inc. 1


Day, Paper 3.9
Before We Start A Quick
Audience Survey
• How many of you have used approvals
in Workflow?
• How many of you have had to
customize the Workflow to accomplish
the required approvals?
• How many of you have tried Approvals
Management Engine?

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 2


Day, Paper 3.9
What we are going to cover
• E-Business Suite Modules that currently utilize
Approvals Management Engine
• Technically where is AME
• Where does Approvals Management Engine fit
into the Workflow approvals processing
• System Administration steps to enable
Approvals Management Engine (briefly)
• Definition of AME processes
• Testing AME processing
• Quick Demo of AME (time permitting)
01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 3
Day, Paper 3.9
Modules that currently utilize AME
Applications Module Transaction Types
Advanced Benefits 2
Bills of Material 4
Cash Management 1
E-Records 13
Engineering 9
Enterprise Performance Foundation 1
Human Resources 2
Internal Controls Manager 3
Inventory 11
Labor Distribution 1
Learning Management 1
Lease Management 8
Partner Management 4
Payables 2
Process Manufacturing Inventory 13
Process Manufacturing Logistics 2
Process Manufacturing Process Execution 14
Process Manufacturing Product Development 44
Public Sector HR 1
Purchasing 8
Quality 23
Quoting 1
Receivables 4
Sourcing 1
Trade Management 2
Work in Process 3
iAssets 2

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 4


Day, Paper 3.9
Many OraApps Modules Have Restrictions

• Requisition Approvals can not be


forwarded to other approvers

• Quote Approvals can not process


approvals in parallel

• Please review the restrictions for your


OraApps Module on Metalink
01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 5
Day, Paper 3.9
Technically Where is AME
• Tables exist in HR schema

• Tables begin with AME_%

• This tells us that Oracle views this as a


component of HR

• This is very important to realize since the


functionality is HR centric in the approval list
building process

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 6


Day, Paper 3.9
How does AME fit in?
• AME builds approval lists.
• AME uses the logic you setup to control
the building of the approval list.
• AME does not send notifications or
handle any of the other required “glue”
in an approval process.
• Typically AME is just a few new
processes/functions on an existing
approval process defined in Workflow.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 7


Day, Paper 3.9
Using the Requisition Approval process as an example

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 8


Day, Paper 3.9
Using the Requisition Approval process as an example (cont.)

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 9


Day, Paper 3.9
Using the Requisition Approval process as an example (cont.)

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 10


Day, Paper 3.9
Sysadmin steps to enable AME
1. Assign responsibilities/roles to your system
administrators
2. Setup AME System Wide Configuration
3. Setup module specific Profile Options
4. Assign responsibilities/roles to your
functional users who will be setting up AME
5. Setup AME functionality for module

• Steps 1-4 are only covered briefly here and


are quite involved, we are going to instead
concentrate on step 5

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 11


Day, Paper 3.9
Assign resp/roles to Sys. Admins
• AME uses the new User Management
functionality
• You must assign the responsibility ‘User
Management’ to the people who will
assign AME responsibilities to others
• Have to do this assignment as the
SYSADMIN OraApps user
• The role to be assign is ‘Security
Administrator’

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 12


Day, Paper 3.9
Setup AME Configuration Parameters
• Using the responsibility ‘Approvals
Management Administrator’ the
SysAdmin’s can assign setup the AME
Configuration Parameters.
• For the most part these parameters can
remain with their default values.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 13


Day, Paper 3.9
Assign resp/roles to functional super users
• The SysAdmin’s must assign AME
functional roles to the required OraApps
user accounts using the User
Management
• The responsibility ‘Approvals
Management Business Analyst’ is
assigned along with the required roles,
viewable in the Indirect Responsibilities
tab of the Define Users form.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 14


Day, Paper 3.9
Setup AME Profile Options
• 'AME:Installed' at the Application Levels
– Oracle Quoting = Yes
• For quoting there are several others to
setup, these are module specific
– 'ASO : Enable Approvals' = Yes
– 'ASO : Allow Skip Approvers' = No

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 15


Day, Paper 3.9
AME Approvers

• AME Approvers must be setup as


FND_USER’s

• AME Approvers must be setup as


Employees

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 16


Day, Paper 3.9
Setup AME Module Functionality

• The responsibility to be used is:


‘Approvals Management Business Analyst’

• Each OraApps module has different


specific values, but the same general
setup process holds true for each.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 17


Day, Paper 3.9
AME Allows For Very Complex Approval Rules
An example of Quote Approval Requirements:
– Discounts have different approval limits by product line by
operating unit
– Terms non-standard (non-default)
– If the Sales Person is New
– Sales Person Technical Review Required
– Total Quote Price is $0
– Verify quote total is not less than GSA total
– Remove Service Agreement items from quote/discount totals
– Quote approvals go no higher than the VP of Sales

All of these were implemented through customized of


AME Attributes

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 18


Day, Paper 3.9
Definition of the AME Process
1. Define Attributes
2. Define Conditions
3. Define Action Types
4. Define Approval Groups
5. Define Rules
6. Test Process

All of this takes place on the AME


Business Analyst Dashboard

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 19


Day, Paper 3.9
Example of Approval Rules

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 20


Day, Paper 3.9
AME Dashboard

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 21


Day, Paper 3.9
AME Attributes
• AME Attributes are the variables which are evaluated by
your AME Process as it runs

• AME Attributes can be Header or Line Item

• Dynamic Attributes are filled in at run time by an SQL


query

• AME Attribute values are all stored internally as string


values limited to a length of 100 characters

• Most customization activity is around Attributes

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 22


Day, Paper 3.9
AME Attributes – Data Types
• Boolean
– True or False
• Currency
– (amount,denomination,conversion method)
• Date
– ’YYYY:MON:DD:HH24:MI:SS’
• Number
– Integer or decimal
(using user’s character set decimal point)
• String
– Up to 100 characters in length

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 23


Day, Paper 3.9
Currency Attributes
• An SQL routine which populates a
Currency Attribute must return three
columns:
– Amount = decimal value
– Denomination = 3 Char Currency Code
– Conversion Method = ‘Corporate’

• Static definitions are like the following:


‘5000.00,USD,Corporate’

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 24


Day, Paper 3.9
Number Attributes

• SQL routines should run the numeric


values through the PL/SQL function:
fnd_number.number_to_canonical

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 25


Day, Paper 3.9
Date Attributes
• Stored as a string

• There is a PL/SQL date format mask


you can use to format dates:
ame_util.versionDateFormatModel

– ’YYYY:MON:DD:HH24:MI:SS’

• Notice there are no spaces.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 26


Day, Paper 3.9
Dynamic Attributes
• Dynamic attributes can be populated by an
SQL expression.
Select to_char(sysdate, ame_util.versionDateFormatModel) from
dual;

• All Attributes are stored internally as strings.


• Must return one row.
• The :transactionid is passed as a bind
variable to the query. This is the key for the
AME processes execution.
• Limitation on SQL of 2000 characters

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 27


Day, Paper 3.9
PL/SQL Usage
• It is often advantageous to call a
PL/SQL function rather than embed an
SQL script in the attribute definition.
• This has the added benefit of
preventing functional users who can
setup AME from modifying the
underlying SQL.
• Drawback is that Currency values require
three PL/SQL function calls.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 28


Day, Paper 3.9
PL/SQL Example

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 29


Day, Paper 3.9
PL/SQL Currency Example

You end up with Currency PL/SQL calls like the following.

select MY_PACKAGE.GET_MY_AMOUNT(:transactionId),
MY_PACKAGE.GET_MY_CURRENCY(:transactionId),
MY_PACKAGE.GET_MY_CONVERSION_TYPE(:transactionId)
from dual

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 30


Day, Paper 3.9
Conditions
There are two types of conditions:
• Regular Conditions
Simple logic statements
– Technical Review Required = ‘Y’
– Discount is greater than -12 and less than or
equal to -7.23

• List Modifier Conditions


– Any approver is ‘Adams, John’

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 31


Day, Paper 3.9
Regular Conditions

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 32


Day, Paper 3.9
Regular Conditions

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 33


Day, Paper 3.9
List Modifier Conditions

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 34


Day, Paper 3.9
Action Types
• Action Types are groups of similar actions
that build your approval list for you.

• Common Predefined Action Rule Types are:


– Chain of authority action types
– List Modification action types
– Post List Approval Group
– Pre List Approval Group

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 35


Day, Paper 3.9
Some of the Chain of Authority Action Types
Job Level
• absolute job level
– chains of authority based on absolute job level
• relative job level
– chains of authority based on relative job level
• final approver only
– chains of authority containing only the final job-level approver
Position
• hr position
– chains of authority based on a particular HR position
• hr position level
– chains of authority based on HR positions
Hierarchy
• manager then final approver
– chain of authority includes requestor's manager and then the final approver
• supervisory level
– chains of authority based on number of supervisory levels

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 36


Day, Paper 3.9
Job Level

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 37


Day, Paper 3.9
Chain of authority action types

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 38


Day, Paper 3.9
Absolute Job Level
Actions:
• Require approvals up to at most level 2
• Require approvals up to at most level 3
or
• Require approvals up to at least level 2
• Require approvals up to at least level 3

Whats the difference:


– Chain of approvers have levels 1,2,3,5 (4 is missing)
– Requires Level 4 approval
– At most => 1,2,3
– At least => 1,2,3,5

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 39


Day, Paper 3.9
List Modification Action Types
• final authority
– grant final authority to an approver
• nonfinal authority
– extend the chain of authority past an
approver

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 40


Day, Paper 3.9
List modification action types

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 41


Day, Paper 3.9
Pre or Post List Approval Groups

• These actions add a list of approvers


either before or after the approval is
built.

• Approvals in group can be serial or


parallel.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 42


Day, Paper 3.9
Pre or Post List Approval Groups

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 43


Day, Paper 3.9
Approval Groups
• Either static or dynamic lists of
approvers
• Approvals can be:
– Serial Voting (one after another, all for approval)
– Consensus Voting (majority wins)
– First-Responder-Wins Voting (parallel voting)
– Order-Number Voting
(one after another, all for approval)
(allows for parallel voting)

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 44


Day, Paper 3.9
Approval Groups

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 45


Day, Paper 3.9
Rules
• Rules are where one or more conditions result in an action.
• This is what everyone has been waiting for.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 46


Day, Paper 3.9
Rules – Level 2 Approval
• Actual Definition form

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 47


Day, Paper 3.9
Rules – List Modification
• Actual Definition form

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 48


Day, Paper 3.9
Testing the Process
• AME has an excellent Test Workbench for seeing how
all these rules will actually work in real life.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 49


Day, Paper 3.9
Testing the Process
• Put in Transaction ID. For Quoting that is the Quote Header ID.
• Historical transactions are required.

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 50


Day, Paper 3.9
Testing the Process
• This dumps the attribute values

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 51


Day, Paper 3.9
Testing the Process
• This dumps rules and final approver list

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 52


Day, Paper 3.9
My Suggestion
• AME is complex, don’t try to understand
it all at once
• Put in some OraApps Module
Transactions
• Dive into AME and just try some simple
test cases
• You will end up making changes
• With the Test Workbench you can easily
see how your setups are working
01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 53
Day, Paper 3.9
Summary
• Approvals Management Engine allows
for complex approval processes
• Customizations are primarily
accomplished with minimal code to pull
in new Attribute values
• This product is complex and the
documentation is very difficult to
understand, hopefully this presentation
has given you a brief introduction to
Approvals Management Engine

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 54


Day, Paper 3.9
• My contact information:
John Peters
john.peters@jrpjr.com
http://www.jrpjr.com

• Additional reference papers can be


found at:
http://www.norcaloaug.org
http://www.jrpjr.com

01/24/06 NorCal OAUG Training John Peters, JRPJR, Inc. 55


Day, Paper 3.9

You might also like