Вы находитесь на странице: 1из 55

Getting Started With

Approvals Management
Engine
John Peters
JRPJR, Inc.
john.peters@jrpjr.com

01/17/07 NorCa

John Peters, JRPJR, I

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 NorCa

John Peters, JRPJR, I

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 NorCa

John Peters, JRPJR, I

Modules that currently utilize


AME

01/24/06 NorCa

John Peters, JRPJR, I

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 NorCa

John Peters, JRPJR, I

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 NorCa

John Peters, JRPJR, I

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 NorCa

John Peters, JRPJR, I

Using the Requisition Approval process as an example

01/24/06 NorCa

John Peters, JRPJR, I

Using the Requisition Approval process as an example


(cont.)

01/24/06 NorCa

John Peters, JRPJR, I

Using the Requisition Approval process as an example


(cont.)

01/24/06 NorCa

John Peters, JRPJR, I

10

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 NorCa

John Peters, JRPJR, I

11

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 NorCa

John Peters, JRPJR, I

12

Setup AME Configuration Parameters


Using the responsibility Approvals
Management Administrator the
SysAdmins can assign setup the
AME Configuration Parameters.
For the most part these
parameters can remain with their
default values.

01/24/06 NorCa

John Peters, JRPJR, I

13

Assign resp/roles to functional super users


The SysAdmins 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 NorCa

John Peters, JRPJR, I

14

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 NorCa

John Peters, JRPJR, I

15

AME Approvers
AME Approvers must be setup as
FND_USERs
AME Approvers must be setup as
Employees

01/24/06 NorCa

John Peters, JRPJR, I

16

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 NorCa

John Peters, JRPJR, I

17

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 NorCa

John Peters, JRPJR, I

18

Definition of the AME Process


1.
2.
3.
4.
5.
6.

Define Attributes
Define Conditions
Define Action Types
Define Approval Groups
Define Rules
Test Process
All of this takes place on the AME
Business Analyst Dashboard

01/24/06 NorCa

John Peters, JRPJR, I

19

Example of Approval Rules

01/24/06 NorCa

John Peters, JRPJR, I

20

AME Dashboard

01/24/06 NorCa

John Peters, JRPJR, I

21

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 NorCa

John Peters, JRPJR, I

22

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 users character set decimal point)

String
Up to 100 characters in length

01/24/06 NorCa

John Peters, JRPJR, I

23

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 NorCa

John Peters, JRPJR, I

24

Number Attributes
SQL routines should run the
numeric values through the
PL/SQL function:
fnd_number.number_to_canonical

01/24/06 NorCa

John Peters, JRPJR, I

25

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 NorCa

John Peters, JRPJR, I

26

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 NorCa

John Peters, JRPJR, I

27

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 NorCa

John Peters, JRPJR, I

28

PL/SQL Example

01/24/06 NorCa

John Peters, JRPJR, I

29

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 NorCa

John Peters, JRPJR, I

30

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 NorCa

John Peters, JRPJR, I

31

Regular Conditions

01/24/06 NorCa

John Peters, JRPJR, I

32

Regular Conditions

01/24/06 NorCa

John Peters, JRPJR, I

33

List Modifier Conditions

01/24/06 NorCa

John Peters, JRPJR, I

34

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 NorCa

John Peters, JRPJR, I

35

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 NorCa

John Peters, JRPJR, I

36

Job Level

01/24/06 NorCa

John Peters, JRPJR, I

37

Chain of authority action


types

01/24/06 NorCa

John Peters, JRPJR, I

38

Absolute Job Level


Actions:
Require
Require
or
Require
Require

approvals up to at most level 2


approvals up to at most level 3
approvals up to at least level 2
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 NorCa

John Peters, JRPJR, I

39

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 NorCa

John Peters, JRPJR, I

40

List modification action


types

01/24/06 NorCa

John Peters, JRPJR, I

41

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 NorCa

John Peters, JRPJR, I

42

Pre or Post List Approval


Groups

01/24/06 NorCa

John Peters, JRPJR, I

43

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 NorCa

John Peters, JRPJR, I

44

Approval Groups

01/24/06 NorCa

John Peters, JRPJR, I

45

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

01/24/06 NorCa

John Peters, JRPJR, I

46

Rules Level 2 Approval


Actual Definition form

01/24/06 NorCa

John Peters, JRPJR, I

47

Rules List Modification


Actual Definition form

01/24/06 NorCa

John Peters, JRPJR, I

48

Testing the Process


AME has an excellent Test Workbench for seeing
how all these rules will actually work in real life.

01/24/06 NorCa

John Peters, JRPJR, I

49

Testing the Process


Put in Transaction ID. For Quoting that is the Quote Header ID.
Historical transactions are required.

01/24/06 NorCa

John Peters, JRPJR, I

50

Testing the Process


This dumps the attribute values

01/24/06 NorCa

John Peters, JRPJR, I

51

Testing the Process


This dumps rules and final approver list

01/24/06 NorCa

John Peters, JRPJR, I

52

My Suggestion
AME is complex, dont 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 NorCa

John Peters, JRPJR, I

53

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 NorCa

John Peters, JRPJR, I

54

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 NorCa

John Peters, JRPJR, I

55

Вам также может понравиться