0% found this document useful (0 votes)
104 views28 pages

Approval Process and Rule Structure Guide

This document provides an overview of an approval process system and its rule structure. It describes how approval rules are assigned to different transaction types and how rules can modify transaction attributes and approver lists. It also explains the types of approvers, actions rules can take, and conditions rules can check for. System variables, responsibilities, and the overall approval workflow are also summarized.

Uploaded by

Alon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
104 views28 pages

Approval Process and Rule Structure Guide

This document provides an overview of an approval process system and its rule structure. It describes how approval rules are assigned to different transaction types and how rules can modify transaction attributes and approver lists. It also explains the types of approvers, actions rules can take, and conditions rules can check for. System variables, responsibilities, and the overall approval workflow are also summarized.

Uploaded by

Alon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPS, PDF, TXT or read online on Scribd

AME

Alon Markovich
Topics
Approval process overview
Rule Structure
Rule assignment to transaction types
Treansaction, attribues, approvers
Rule Actions
Rule Conditions
System Mandatory Variables
Responsibilities in System

2 AMP Presentation
Approval Process Overview
Ask AME for a Rebuild list after
Originating each approval
transaction's
Application entire approver Fetch
list. Attributes

Rebuild approval list


Get Rule
Yes
Display the approver Approval Process
AME list to the requestor ? Complete

Rule condition output


?is true No

suppress or add
Requestor approvers (optional)
Rule is valid for transaction

Approver Notify to approver

3 AMP Presentation
Approval rule structure
• If
– Condition1(attributes=attributes value)
– Condition2
– Can be zero conditions
• Then
– Action1 (modify approval process)
– Action2

4 AMP Presentation
Transaction Type & Rules
Application

Approval rule usage


Transaction Type1 Approval
Assigned to Rules
AP Transaction Type2 ”Bank“
Rule Conditions
Transaction Type3

Transaction Type4
Rule Actions
Assigned to
PO Transaction Type5

Transaction Type6

Different transaction types can use the same attribute name to represent
values that are calculated in different ways or fetched from different places

5 AMP Presentation
Approvers and transaction structure
Header item class
(required)
Transaction
Sub-list Approval
Pre-chain-of-authority Group(s)

Header
Sub-list Approval
Authority Hierarchy

,Approval hierachy
Sub-list Approval i.E HR Hierarchy
Line1 Post-chain-of-authority Group(s)
Line item class
(Optional)
Sub-list
Line2 Pre-chain-of-authority Collection of defined
[Link]
subject-matter experts.
Sub-list
Line3 Authority

Sub-list
A transaction may have
Post-chain-of-authority
approval lists per header
and 6lines AMP Presentation
Approver Types & Categories
Approve
transactions
Rule Action HR
directory
FYI

Just receive
notifications

Other system
directory

Approver category Approver type =


system directory

7 AMP Presentation
Approver Types & Categories
Approve
transactions
Rule Action HR
directory
FYI

Just receive
notifications

Other system
directory

Approver category Approver type =


system directory

8 AMP Presentation
Rule’s Actions
• If
– Condition1(attributes=attributes value)
– Condition2
– Can be zero conditions
• Then
– Action1 (modify approval process)
– Action2

9 AMP Presentation
Action, Action Types
• An action determines which approvers are included in a
transaction’s approver list.
• Action type represents a way to ascend a certain
organizational hierarchy
• Seeded action types currently support three types of
approvers:
– HR employees (in the HR supervisory hierarchy),
– HR positions (in the HR position hierarchy)
– (FND) users.
– For Job-level, assign a job level to each job defined in HRMS
(populate the approval_authority column of the HRMS table
per_jobs).
• Using external system hierarchy requires definition of a
custom action type
10 AMP Presentation
type of rule that can use the action type's actions.
N action type can be assigned to the same rule type

Action type Structure


Order number
(each assignment has a unique number)
Order of processing

Rule Type list-creation rules


generate chains of authority according
to list creation rules
Action Type Avoid using list-creation exceptions.
Action Type Use list creation rules and rule-usage
Action Type priorities instead.
Substitution ,Production
Avoid using list-creation exceptions.
Action Use list creation rules and rule-usage
blank priorities instead.
Type Chain of authority
When a single action
pre- and type generates
post-chain-of-authority
Other than several chains of authority for a single transaction,
Let groups of subject-matter the ordering
experts approve a
Substitution ,Production
mode tells AME how to order
transaction beforethe
or chains of authority. This
after management.
Allowed affects the notification order of the approvers in the chains of
authority
Approver types list-modification rules
Required Attributes grant unusual signing authority, or to
revoke usual signing authority, in special cases

substitution rules
types of approvers that
replace one approver with another in special
the action type can
cases, or for short periods of time (such as
generate.
vacations or leaves of absence).

combination rules
when several of your
business rules apply to exactly the same cases..
11 AMP Presentation
list creation rule action types
Rule Type list-creation rules
generate chains of authority according
to list creation rules
Action Type

Chain of authority
When a single action type generates
several chains of authority for a single transaction, the ordering
mode tells AME how to order the chains of authority. This
affects the notification order of the approvers in the chains of
authority

12 AMP Presentation
Avoid list creation exception rule action types
Avoid using list-creation exceptions.
Rule Type Use list creation rules and rule-usage
priorities instead.

Action Type

13 AMP Presentation
pre- and post-chain-of-authority rule action types
pre- and post-chain-of-authority
Rule Type Let groups of subject-matter experts approve a
transaction before or after management.

Action Type Required attribute: ALLOW_EMPTY_APPROVAL_GROUPS attribute.


When this attribute is false, AME raises an exception if a group's has no
members at run time

Approver-Group Chain-of-Authority
treats anapproval group as a chain of authority. AME ignores the
approval group's voting regime and uses the action type's
instead. When the action type uses the serial voting regime, the
serial order is consistent with the group members' order
numbers

Pre- and Post-Chain-of-Authority


The pre-chain-of-authority action type inserts approval groups
before the authority sub-list of an item's approver list. The postchain-
of-authority action type inserts approval groups after the
authority sub-list of an item's approver list. Both use approval groups
' voting regimes

14 AMP Presentation
List modification rule action types
list-modification rules
Rule Type grant unusual signing authority, or to
revoke usual signing authority, in special cases

Action Type

Final-Authority
grants a target approver signing authority in contexts where they usually lack.
It does so by truncating each chain of authority containing the target approver, after the
approver. (If the target approver forwards without approving, the action type truncates the
chain of authority after the last forwardee following the target approver.) The action type
has only one action, which has a null parameter.

Non-Final-Authority
revokes a target approver's signing authority in contexts where they normally have it. It does
so by extending a chain of authority ending with the target approver beyond the target
approver, up to some absolute or relative job level, depending on the particular action's
requirement. Because the actions depend on job levels, the target approver must be an HR
employee, and the HR implementation must use job levels.
Syntax: {A,R}n{+,-} The 'A' or 'R' indicates whether n (a positive integer) represents
an absolute or relative job level. The plus or minus sign is interpreted as for the job-level
action types. For example, the action having the description 'Require approvals at most 2
levels up.' has the parameter 'R2-'.
15 AMP Presentation
Substitution rule action types
substitution rules
Rule Type replace one approver with another in special
cases, or for short periods of time (such as
vacations or leaves of absence).
Action Type

Substitution Action Type


There is just one seeded substitution action type. It replaces the target approver with the
approver identified by the substitution action. The parameters for substitution approvals are
wf_roles.name values. When you create or edit a substitution action, the AME user
interface lets you select an approver type and then query for an approver, so you
don't have to create oredit the parameter or action-description directly.

16 AMP Presentation
Approval Groups
pre- and post-chain-of-authority
Rule Type Let groups of subject-matter experts approve a
transaction before or after management.

Action Type Required attribute: ALLOW_EMPTY_APPROVAL_GROUPS attribute.


When this attribute is false, AME raises an exception if a group's has no
members at run time

Approver-Group Chain-of-Authority
treats anapproval group as a chain of authority. AME ignores the
approval group's voting regime and uses the action type's
instead. When the action type uses the serial voting regime, the
serial order is consistent with the group members' order
numbers

Pre- and Post-Chain-of-Authority


The pre-chain-of-authority action type inserts approval groups
before the authority sub-list of an item's approver list. The postchain-
of-authority action type inserts approval groups after the
authority sub-list of an item's approver list. Both use approval groups
' voting regimes

17 AMP Presentation
Approval Groups
Approval Group
• If ITEM_CATEGORY inNested
{COMPUTER_HARDWARE}
Approval Group and ITEM_AMOUNT
COMP_APP_1 = {Jim Small}
•one of the approver-type labels ‘person_id’ and
<= 1,000 USD then require post-approval from
COMP_APP_2 = {COM_APP_1,
user_id’, thebyCOMP_APP_1
followed a colon, followed by agroup.
valid ID for
Jane Smith}
• If ITEM_CATEGORY in {COMPUTER_HARDWARE} an appropriate approverand type. 1,000 USD <
•wf_roles role type (orig_system), followed by a colon,
ITEM_AMOUNT <= 10,000 USD then followed require post-approval
a valid from the COMP
wf_roles.orig_system_id.
StaticGroup
Approval
_APP_2 group. •The order of the rows returned by the query
determines the dynamic members’ order numbers, at
run time. The query can reference the transaction-ID
placeholder :transactionId.

Dynamic
SQL Generated the members are notified one after the
other, in an order consistent with the
members’ order numbers, All members
Serial must approve for the group to approve

the members are notified in parallel. All


Consensus Voting members must approve for the group to
Voting Regime approve.

First-Responder-Wins Voting the members are notified in parallel. The


response of the first member to respond to
the notification requesting approval
Order-Number Voting becomes the group’s approval decision

18 AMP Presentation the members are notified in the order of


their order numbers, All members must
approve for the group to approve.
Rule’s Conditions
• If
– Condition1(attributes=attributes value)
– Condition2
– Can be zero conditions
• Then
– Action1 (modify approval process)
– Action2

19 AMP Presentation
Conditions
attribute_name = approver_name
associates an attribute
1,000 <= TRANSACTION_AMOUNT < 2,000
Ordinary with a set of
attribute_name is {true, false}
.allowed values or range
attribute_name in {value_1, value_2, . . . }

Same

Exception But appear only Same

in exception rules

Check if the target

List approver appears in the

Modification approval list

and where (i.e last)

20 AMP Presentation
AME Setup - Variables
• Single-value Variables (similar to profile options)
– Describe various aspects of AME's computing environment. Their
values must be set for AME to function properly.
– Distributed Environmen, helpPath, htmlPath etc.
• Transaction type variables (similar to profile options,
but at the transaction type level)
– adminApprover, allowAllApproverTypes, forwardingBehaviors
etc.

21 AMP Presentation
Attributes
• A business variable such as TRANSACTION_AMOUNT, whose value AME
fetches at run time
• In AME, a condition specifies a list or range of attribute values required to
make a rule apply to a transaction. For example: USD1000 <
TRANSACTION_AMOUNT < USD5000
• Attribute Class – attributes are assigned to classes / groups, for example
attributes that are assigned to transaction header, cost centers etc.
• Static attribute usage - fixed value for the attribute, for all items and
transactions, stored as string regardless of data type, maybe null, requires
less run time.
• Dynamic attribute usage – value is determined by SQL at run time, can
refer to a transaction_id by bind variable ':transactionId‘. An example for
ITEM_QUANTITY attribue SQL is: *must have order by
– select item_quantity
from some_application_table
where transaction_id = :transaction_id
22 order by line_item_id AMP Presentation
’Attribute cont
• Type of attributes:
– Number – must user fnd_number function in SQL:
select fnd_number.number_to_canonical(requestor_person_id)
from some_application_table
where transaction_id = :transactionId
– Date
select to_char(sysdate, ame_util.versionDateFormatModel) from dual
– String
– Boolean
– Currency
select fnd_number.number_to_canonical(transaction_amount), currency_code,
currency_conversion_type
from some_application_table
where transaction_id = :transactionId

23 AMP Presentation
Required Attributes
Description Attribute Name
When this attribute is false, AME raises an exception if an ALLOW_EMPTY_APPROVAL_GROUPS
Approval Group has no members at run time
These attributes' values identify the first approver in each FIRST_STARTING_POINT_ID
chain of authority generated by the action type Dual Chains SECOND_STARTING_POINT_ID
of Authority
This attribute determines if all approvers with the same job INCLUDE_ALL_JOB_LEVEL_APPROVERS
level should be included when building the chain of authority
for the action types that depend on Job Level.
If this attribute is not null, the approver it identifies will be JOB_LEVEL_NON_DEFAULT_STARTING_
used as the starting point for action types that depend on POINT_ID
Job Level. Its value will override the setting for
TRANSACTION_REQUESTOR_PERSON_ID.
If this attribute is not null, the approver it identifies will be SUPERVISORY
used as the starting point for action types that depend on _NON_DEFAULT_STARTING_POINT_ID
Supervisory Level. Its value will override the setting for
TRANSACTION_REQUESTOR_PERSON_ID.
This attribute should be assigned to the position ID of the TOP_POSITION_ID
position at the top of the hierarchy. This is used in Action
Types that climb the position hierarchy and is needed to
determine
24 if AME has reached the top of the AMP
hierarchy as
Presentation
opposed to reaching a gap in the hierarchy setup.
’Required Attributes cont
Description Attribute Name

This attribute should be assigned to the person ID of the TOP_SUPERVISOR_PERSON_ID


employee at the top of the hierarchy (typically the CEO of a
corporation). This is used in Action Types that climb the
supervisor hierarchy and is needed to determine if AME has
reached the top of the hierarchy as opposed to reaching a
gap in the hierarchy setup.
This is the date a transaction was first submitted. Note that TRANSACTION_DATE
AME always fetches a transaction’s current attribute values,
and then applies the appropriate transaction type’s rules
active as of EFFECTIVE_RULE_DATE, to (re)generate the
transaction’s approver list
Business_group_id from per_business_groups table TRANSACTION_GROUP_ID

Org_id from hr_all_organization_units table TRANSACTION_ORG_ID


ID of person requesting the transaction RANSACTION_REQUESTOR_PERSON_ID
user ID of the user submitting a transaction TRANSACTION_REQUESTOR_USER_ID

SET_OF_BOOKS_ID TRANSACTION_SET_OF_BOOKS_ID

25 AMP Presentation
Mandatory Attributes
• ALLOW_DELETING_RULE_GENERATED_APPROVER (boolean)
– Determines whether AME lets the originating application suppress from a transaction’s approver list
approvers required by the transaction type’s rules.
• ALLOW_REQUESTOR_APPROVAL (boolean)
– Determines whether AME lets a requestor approve their own transaction, if they have sufficient signing
authority.
When the attribute is false, the relevant action type does not include the requestor in the
chain of authority. Instead, the action type includes in the chain of authority at least one of the requestor's
superiors.
• AT_LEAST_ONE_RULE_MUST_APPLY (boolean)
– Determining whether AME raises an exception when no rules apply to a transaction at run time.
• REJECTION_RESPONSE (string)
– Determined how AME responds when an approver rejects an item. 3 allowed values:
– ame_util.continueAllOtherItems currently has the value 'CONTINUE_ALL_OTHER_ITEMS'. When
REJECTION_RESPONSE has this value, AME continues the approval processes of all items other than the
item(s) that were rejected
– ame_util.continueOtherSubItems currently has the value 'CONTINUE_OTHER_SUBORDINATE_ITEMS'.
When REJECTION_RESPONSE has this value, AME continues the approval processes of all subordinate-
level items other than the item(s) that were rejected, but stops the approval process of the header and the
rejected item(s).
– ame_util.stopAllItems currently has the value 'STOP_ALL_ITEMS'. When REJECTION_RESPONSE has
this value, AME stops the approval processes of all of the transaction's items, including the header.

Mandatory attributes cannot be used in transactions


26 AMP Presentation
’Mandatory Attributes cont
• USE_RESTRICTIVE_ITEM_EVALUATION (boolean)
– If the attribute is true, a rule containing conditions on a subordinate-level item class' attributes only
applies if one of the transaction’s items in that class satisfies all of the rule’s conditions on
attributes of that item class. If the attribute is false, different items may satisfy different conditions
on the subordinate item class' attributes.
• EFFECTIVE_RULE_DATE
• EVALUATE_PRIORITIES_PER_ITEM )boolean)
– whether AME evaluates the priorities of the usages of applicable rules per item
• USE_WORKFLOW (boolean)
– Whether AME should log the transaction type's exceptions to the Workflow exception stack
• WORKFLOW_ITEM_KEY (string)
– item key is typically also the AME transaction ID, and in this case, the attribute's dynamic usage can simply
select :transactionId from dual.

27 AMP Presentation
AME Setup - Responsibilities
• Responsibilities
– AME Application Administrator perform technical
tasks such as setting AME's configuration variables
– AME General Business User create and test
conditions and rules (not technical skills)
– AME Limited Business User, same as AME General
Business User, with limitation of Security Attributes
• Security Attributes
– ame_internal_trans_type_id
– The application administrator responsibility can view a
transaction type's AME internal ID by selecting the
Admin tab, choosing ‘Maintain transaction types’

28 AMP Presentation

You might also like