How You Set Up Approval Groups and Approval Task Configuration Rules
Here's how you set up or define approval groups and approval task configuration rules for contracts:
- Sign in as a setup user.
-
In Setup and Maintenance go to:
-
Offerings: Sales
-
Functional Area: Sales Foundation
-
Task: Manage Approval Groups
-
-
On the Manage Approvals page, click the Approval Groups tab.
-
In the Groups region, select the plus sign icon to begin creating a new approval group.
-
Enter a name for the new group.
-
Click Save.
-
-
Add a member to the group. Click the Add Member icon to retrieve the Add to Group dialog window. In the search box, enter the email address of the user created earlier and click OK.
-
Click Save.
-
Repeat the previous steps to create an approval group that includes both level-one and level-two approvers.
-
Click the Task Configuration tab.
-
In the Tasks to be configured region, search for
ContractsApproval
. -
Click the ContractsApproval task to access a set of subtabs where you can set up rules for the approval task.
For example, under Configuration, you can set the assignment and routing policy attributes to suit your business needs. If you want to let the initiator add ad hoc approvers and configure notifications as the approval progresses, select the Allow initiator to add participants option.
As another configuration example, you can specify a variety of conditions, such as preventing a PDF from being attached to a notification or allowing an initiator to add participants.
-
You can create rules to suit your business needs. Edit the ContractsApproval task.
-
Click Rules
-
Expand each rule.
-
Click Edit to create rules for the
ContractsApproval
stage rule set. -
Delete all three rules.
-
Create a new rule.
Important: Create rule names without spaces between them. -
Enter the rule name. Click the arrow. Under the IF label, click the list icon next to the first field.
-
As an example, in the Condition Browser, expand
ContractsApprovalPayloadType
,ContractDetails
, result, and select theestimatedAmount
payload attribute.Note: Set up this rule for contracts starting with zero dollars:ContactDetails.estimatedAmount
is null orContractDetails.estimatedAmount.value.doubleValue()
is same or above 0.00.Here's another example with contract_type_id, organization_id, amount null, and agreed amount 0 or agreed amount smaller than 2000 dollars:
IF ContractDetails.org_id is {org_id} and ContractDetails.contractTypeId in {contract_type_id} and (contractdetails.agreedAmount is null or(contractdetails.agreedAmount isn't null and contractdetails.agreedAmount.doubleValue()same or less than 2000))
-
Select 'isn't' from the operator drop-down list, and select null as the comparison value of the IF condition.
-
Click the down arrow in IF condition and select simple test to add a new IF condition.
-
In the IF condition of ContractApproval, use the following condition to setup contract approval based on Contract Intent:
- For Buy Intent:
ContractDetails.buyOrSell
is "B" - For Sell Intent:
ContractDetails.buyOrSell
is "S"
- For Buy Intent:
-
Select the comparison field of the new IF condition from the condition browser.
-
Similarly add another IF condition as follows: select
estimatedAmount
for the comparison field, select same or less than as the operator, and select a value such as 30000 as the comparison value. -
Select Approval Group from the List Builder drop-down list under THEN, and click Create Action to create the List builder action 1 region.
-
Select level 1 approver and enter the required information for the List builder action 1 region.
-
Click + next to Estimate_Amount_Rule1 to create a second rule, give it a name such as Estimate_Amount_Rule2, and expand it.
-
Create a second rule to route to higher level approvers for higher contract amounts.
-
Create a third rule such that, if contract estimated amount isn't entered, it's routed to level 1 approver.
-
Click the Save button and then the Commit task button to commit the rules to the database. Expand all the rules.
Note that you could also add rules based on:
-
Policy deviations (
ContractsApprovalPayloadType.policyDeviation
= Y or N) -
Terms amended rule (
ContractsApprovalPayloadType.termsAmended
= Y or N) -
Nonstandard clauses added (
ContractsApprovalPayloadType.nonStdClause
= Y or N) -
Missing (deleted) standard clauses (
ContractsApprovalPayloadType.missingStdClause
= Y or N) -
Standard clause (not on the terms template) added (
ContractsApprovalPayloadType.stdClauseAdded
= Y or N) -
Clause deviation category codes (
TermsDeviations.deviationCategory
= "<<Code>>") -
Deviation codes (
TermsDeviations.deviationCode
= "<<Code>>")
Add steps to define such approval rules, referring to this table:
Clause Deviation Category Code
Clause Deviation Code
Description
OKC_NON_STD_ARTICLES
NA
A nonstandard clause exists on the contract.
OKC_NON_STD_ARTICLES
ADDED_NON_STD
A new nonstandard clause was added.
OKC_NON_STD_ARTICLES
MODIFIED_STD
A standard clause was modified and made nonstandard.
OKC_MISSING_STD_ARTICLES
NA
A standard clause from the terms template was deleted from the contract.
OKC_MISSING_STD_ARTICLES
MISSING_MANDATORY
A mandatory clause is missing.
OKC_MISSING_STD_ARTICLES
MISSING_EXPERT_ARTICLE
A conditional clause based on an expert rule is missing.
OKC_MISSING_STD_ARTICLES
MISSING_OPTIONAL_ARTICLE
An optional clause is missing.
OKC_INVALID ARTICLES
NA
An invalid clause exists on the contract.
OKC_INVALID ARTICLES
ARTICLE_EXPIRED
The clause is expired.
OKC_INVALID ARTICLES
ARTICLE_ON_HOLD
The clause is on hold.
OKC_INVALID ARTICLES
EXPERT_ARTICLE_NOT_REQUIRED
The rule conditions no longer apply for a clause added by Contract Expert.
OKC_STD_ARTICLES_ADDED
NA
A standard clause was added.
OKC_STD_ARTICLES_ADDED
ADDED_STD_ARTICLE
A standard clause from the library was added.
OKC_STD_ARTICLES_ADDED
REPLACED_ALT
A standard clause was replaced with an alternate clause.
-
-
Alternatively, to bypass the approval hierarchy and have automatic approval, create only the following rule.
Edit IF condition to 1 is 1 Under Then block Choose List builder : Supervisory Response type: Required Number of levels: 1 Starting Participant: HierarchyBuilder.getPrincipal("<User Id>",-1,null,null) Top Participant: HierarchyBuilder.getPrincipal("<User Id>",-1,null,null) Auto action enabled: True Auto Action: "APPROVE" Save and commit.
-
Click the Approval Group tab to create an approval group for Clause Approval.
-
Click the Task Configuration tab to create rules for clause approval human task. Click the human task ContractClauseApproval and then click the Rules subtab.
-
Click the Approval Group tab to create an approval group for Template Approval.
-
Click the Task Configuration tab to create rules for Contracts Template Approval human task, click the TemplateApprovalHumanTask human task, and then click the Rules subtab.
-
Repeat the rule creation steps described for contract approvals.