The Financial Plan Version Approval Workflow
Every time someone submits a budget version for baseline or a forecast version for approval, the application triggers the Financial Plan Version Approval workflow. This workflow notifies the configured approvers, who must approve or reject the financial plan version. It also sends a non-action notification to the project manager of the plan version and the user who initiated the workflow.
In the BPM Worklist tool, this workflow is named ApprovePlanVersion. The project manager is the default approver for this workflow.
How to Enable the Financial Plan Version Approval Workflow
In the Setup and Maintenance work area, go to the Manage Financial Plan Types task and select the Use workflow for status changes check box for the financial plan type to which the budget or forecast versions belong.
Key Components of Approval Workflow
Component | Description |
---|---|
Oracle SOA Suite Approval Management Extensions |
Approval management extensions of the human workflow services
from Oracle SOA Suite are the core of approval functionality
in Oracle Cloud. With these components, you can perform many
key integrated tasks for the approval functionality. Here
are the key functions of approval management extensions:
|
Oracle Business Process Management (BPM) |
Provides an interface named BPM Worklist for business users
to perform the following key activities related to approval
management:
|
Oracle Human Capital Management Cloud (Oracle HCM Cloud) |
Used for defining various employee hierarchies like supervisory, job-based, or position-based. Approval management extensions integrate with Oracle HCM Cloud to derive the required approvers if approval rules are configured based on Oracle HCM Cloud hierarchies. |
Human Task Workflow Concepts
Concept | Description |
---|---|
List Builders |
Approval management determines the nature of the approvers
required for a workflow approval using list builders. Each
approval rule is associated with a list builder for
generating the list of approvers. The Financial Plan Version
Approval workflow supports the following list builders:
Note: For more information about List Builders and how
to define them, see Workflow Approval and Notifications
in the Implementing Applications guide. |
Participants |
A participant is a user or set of users who participate in the approval process. Each participant is associated with a rule set. Approval rules are defined in the context of a rule set and you can create many rules under one rule set. Based on your approval requirements, you must configure the approval rules in the context of a participant. The different types of participants that can be configured are:
Note: For more information about participants, see Workflow
Approval and Notifications in the Implementing Applications
guide.
|
Participant Model Implemented in Financial Plan Version Approval Workflow
The Financial Plan Version Approval workflow uses the ApprovePlanVersion human task. You must configure this task for financial plan version approvals. This task is shared by the budget and forecast approval requests and includes the same participants for both the budget and forecast requests.
For financial plan approvals, a total of 13 participants are predefined. Out of these 13, the two key participants are the Approver and Requester. The Approver is an active participant to send approval notifications to the project manager (default approver). The Requester is an FYI participant to send FYI notifications to the requester who submits the budget for baseline or the forecast for approval.
- Parallel Mode: The task is assigned and notifications go to all participants at once in parallel. For example, participants 3 to 6 in the below figure are defined as parallel participants.
- Sequential Mode: The task is assigned and notifications go in sequential mode, meaning one after another, to each participant. All participants have to approve sequentially for the task to be approved. For example, participants 7 to 13 in the below figure are defined as sequential participants.
- Only Approver and Requester participants are enabled by default. You must enable the other participants as required.
- The default approval rules in all the predefined rule sets are configured to send notifications to the project manager for approvals. Review the predefined rules and modify them as required.
- You can disable participants that you don’t want to use by enabling the Ignore Participant option or by defining a rule to ignore the participant.
- You can’t change the order of the predefined participants.
- You can’t add participants.
The following figure indicates the predefined participant model for the ApprovePlanVersion task.
Here are the details of the participants defined in the financial plan version approval workflow. Each participant is associated with a predefined rule set.
Number | Participant Name | Rule Set | Participant Type |
---|---|---|---|
1 |
Approver |
BudgetForecastAMXRuleSet |
Serial |
2 |
Requester |
NA |
FYI |
3 |
Financial Plan Approval Single Participant 1 |
ProjectBudgetsandForecastsApprovalSingleRuleSetOne |
Single |
4 |
Financial Plan Approval Parallel Participant 1 |
ProjectBudgetsandForecastsApprovalParallelRuleSetOne |
Parallel |
5 |
Financial Plan Approval Serial Participant 1 |
ProjectBudgetsandForecastsApprovalSerialParticipantOne |
Serial |
6 |
Financial Plan Approval FYI Participant 1 |
ProjectBudgetsandForecastsApprovalFYIRuleSetOne |
FYI |
7 |
Financial Plan Approval Single Participant 2 |
ProjectBudgetsandForecastsApprovalSingleRuleSetTwo |
Single |
8 |
Financial Plan Approval Parallel Participant 2 |
ProjectBudgetsandForecastsApprovalParallelRuleSetTwo |
Parallel |
9 |
Financial Plan Approval Serial Participant 2 |
ProjectBudgetsandForecastsApprovalSerialRuleSetTwo |
Serial |
10 |
Financial Plan Approval FYI Participant 2 |
ProjectBudgetsandForecastsApprovalFYIRuleSetTwo |
FYI |
11 |
Financial Plan Approval Single Participant 3 |
ProjectBudgetsandForecastsApprovalSingleRuleSetThree |
Single |
12 |
Financial Plan Approval Parallel Participant 3 |
ProjectBudgetsandForecastsApprovalParallelRuleSetThree |
Parallel |
13 |
Financial Plan Approval Serial Participant 3 |
ProjectBudgetsandForecastsApprovalSerialRuleSetThree |
Serial |
The Financial Plan Version Approval Process
Here's how the Financial Plan Version Approval process works.
Task Number | Agent | Description | Comments |
---|---|---|---|
1 |
Project Administrator |
Uses the Manage Budget Versions, Edit Budget Version, Manage Forecast Versions, or Edit Forecast Version page to submit a budget or a forecast for approval. |
For information on working with budgets or forecasts, see Considerations for Creating Budgets and Forecasts in the Defining and Managing Financial Projects guide. |
2 |
ApprovePlanVersion |
As soon as someone submits a financial plan for approval, the workflow sends notifications to all configured assignees using email or in-app notifications, as configured. |
When a budget or forecast version for a project template is submitted, the application skips the workflow and the version is set to Baseline or Approved status respectively. For information on how you can customize approval workflow notifications, see Workflow Notifications in the Implementing Applications guide. |
3 |
Workflow Assignees |
Assignees review and approve or reject the financial plan. |
If the workflow uses parallel approvers, then the Voting Percentage rule is used to determine the final approval. For information on using BPM Worklist to update approval workflows, see Workflow Approvals and Notifications in the Implementing Applications guide. Also, see the Use Cases section in this topic. |
4 |
ApprovePlanVersion |
If the assignee rejects the financial plan, then the workflow updates the budget or forecast status to Current Working. If the assignee approves the financial plan, then the budget status is set to Current Baseline and the forecast status is set to Approved. |
NA |
5 |
ApprovePlanVersion |
The workflow performs the following tasks once the financial plan
is submitted.
|
NA |
-
- Approval history doesn't exist.
- Approvals are done but the budget is still in the Submitted status.
If the workflow is stuck due to an error, for example during rule evaluation, its indicated on the Approval History dialog box and you can't withdraw the budget approval. The application administrator can review the status of the workflow in the Transaction Console and either recover or withdraw the workflow.
Configure Financial Plan Version Approval Workflow
You can configure approval rules in the context of a rule set using BPM Worklist. To configure rules for this workflow, you must have the Projects Application Administrator job role.
- In the Setup and Maintenance work area, go to the Define Approval Management for Project Financial Management task.
- Click Manage Task Configurations for Project Financial Management.
- In the Tasks to be configured pane, search for your human task workflow. Enter the name of your human task workflow in the Search field and click Search task types. For example, to search for the Financial Plan Version Approval workflow, enter ApprovePlanVersion and click Search task types.
- Verify that the human task workflow appears underneath the Search.
- Select the task and click Edit task on the panel header.
- Click the Assignees tab on the right to view the predefined participants for the human task workflow.
- Select the appropriate participant and click Go to rule to navigate to the relevant rule set.
- Each rule consists of an IF and THEN component.
- In the IF section of the rule, define the condition that determines if the rule should be applied. If needed, you can define multiple conditions.
- In the THEN section of the rule, define how approvals will be generated if
the conditions are met. The THEN component consists of a:
- List builder and related attributes.
- Response type that indicates if the assignees are required to respond or if they will receive an FYI notification.
- Automatic action setting that lets you set an automatic response. For example, automatically approve or reject.
- The default approval rules in all the predefined rule sets are configured to send notifications to the Project application administrator for approvals. Review the predefined rules and modify them as required.
- You can disable participants that you don’t want to use by enabling the Ignore Participant option or by defining a rule to ignore the participant.
- For generic guidance on customizing workflows and notifications, see Workflow Approval and Notifications in the Implementing Applications guide.
Supported Attributes
- Plan Version Payload attributes - These attributes are associated with the version that's being processed.
- Project Attributes - These attributes are associated with the project that's associated with the budget or forecast.
- Budget Attributes - These attributes are associated with the budget that's being processed.
- Forecast Attributes - These attributes are associated with the forecast that's being processed.
Plan Version Payload Attributes
Attribute |
Description |
---|---|
projectName |
The name of the project. |
projectNumber |
The unique identifier of the project. |
awardNumber |
The award number. |
awardId |
The unique identifier of the award. |
businessUnit |
The unique identifier of the business unit. |
projectUnit |
The name of the project unit that's implementing the project that's associated with the budget or forecast. |
planVersionName |
The name of the budget or forecast version. |
planVersionNumber |
The unique identifier of the budget or forecast version. |
requestorName |
The name of the person requesting approval of the budget or forecast version. |
approverName |
The name of the person approving the budget or forecast version. |
principalInvestigator |
The name of the person acting as the principal investigator of the award budget. |
SummaryAmounts --> peopleEffort |
The labor effort amount of the budget or forecast version. |
SummaryAmounts --> equipmentEffort |
The equipment effort amount of the budget or forecast version. |
SummaryAmounts --> pcRawCost |
The raw cost amount of the budget or forecast version in project currency. |
SummaryAmounts --> pcBurdenedCost |
The burdened cost amount of the budget or forecast version in project currency. |
SummaryAmounts --> pcRevenue |
The revenue amount of the budget or forecast version in project currency. |
SummaryAmounts --> pfcRawCost |
The raw cost amount of the budget or forecast version in project ledger currency. |
SummaryAmounts --> pfcBurdenedCost |
The burdened cost amount of the budget or forecast version in project ledger currency. |
SummaryAmounts --> pfcRevenue |
The revenue amount of the budget or forecast version in project ledger currency. |
SummaryAmounts --> margin |
The margin amount of the budget or forecast version in project ledger currency. |
SummaryAmounts --> marginPercent |
The margin percentage of the budget or forecast version in project ledger currency. |
planTypeName |
The name of the financial plan type that's associated with the budget or forecast version. |
planningAmount |
The presence of cost amounts, revenue amounts, or both in a budget or forecast version. |
projectNumAct |
The system generated number of the project which starts at one and keeps incrementing. |
versionNumAct |
The system generated number of the budget or forecast version which starts at one and keeps incrementing. |
Attribute |
Description |
---|---|
ProjectId |
The unique identifier of the project. |
ProjectName |
The name of the project. |
ProjectNumber |
The project number. |
CarryingOutOrganizationId |
The unique identifier of the organization that's executing the project. |
ProjectOrganizationName |
The name of the organization that's implementing the project. |
ProjectUnitId |
The unique identifier of the project unit that's implementing the project that's associated with the budget or forecast. |
ProjectUnitName |
The name of the project unit that's implementing the project that's associated with the budget or forecast. |
ProjectTypeId |
The unique identifier of the project type. |
ProjectTypeName |
The name of the project type. |
BusinessUnitId |
The unique identifier of the business unit. |
BusinessUnitName |
The name of the business unit. |
LegalEntityId |
The unique identifier of the legal entity that's implementing the project. |
LegalEntityName |
The name of the legal entity that's implementing the project. |
WorkTypeId |
The unique identifier of the work type that's associated with task for which the budget or forecast is created. |
WorkTypeName |
The name of the work type that's associated with the task for which the budget or forecast is created. |
ProjectCurrencyCode |
The currency code used by default with amounts in the project. |
ProjectLedgerCurrencyCode |
The currency code used by default with amounts in the project ledger. |
SponsoredFlag |
Indicates whether the project is sponsored or not. |
ProjectClassification |
The classification of the project. The node comprises of ProjectClassCategory, ProjectClassCode, and ClassCodePercentage attributes that help in classifying a project. |
ProjectDff |
Custom project-related flexfields created for use in your organization. |
ProjectTeamMember --> projectPartyId |
The unique identifier of a party assignment to the project for a project team member associated with the budget or forecast version. |
ProjectTeamMember --> TeamMemberRoleId |
The unique identifier of the role that's assigned to a project team member associated with the budget or forecast version. |
ProjectTeamMember --> TeamMemberRoleName |
The name of the role that's assigned to a project team member associated with the budget or forecast version. |
ProjectTeamMember --> TeamMemberPersonId |
The unique identifier of a project team member associated with the budget or forecast version. |
ProjectTeamMember --> TeamMemberEmailAddress |
The email address of a project team member associated with the budget or forecast version. |
ProjectTeamMember --> TeamMemberUserName |
The name of a project team member associated with the budget or forecast version. |
ProjectTeamMember --> startDateActive |
The start date of a project team member associated with the budget or forecast version. |
ProjectTeamMember --> endDateActive |
The end date of a project team member associated with the budget or forecast version. |
Budget Attributes
Attribute |
Description |
---|---|
VersionName |
The name of the budget version. |
VersionNumber |
The number of the budget version. |
InternalVersionId |
The unique identifier of the budget version. |
ProjectName |
The name of the project that's associated with the budget version. |
ProjectNumber |
The number of the project that's associated with the budget version. |
InternalProjectId |
The unique identifier of the project that's associated with the budget version. |
FinancialPlanType |
The name of the financial plan type that's associated with the budget version. |
Status |
The status of the budget version. |
PlanningAmounts |
The presence of cost amounts, revenue amounts, or both in a budget version. |
BaselinedBy |
The name of the person who set the budget version to baseline. |
BaselinedDate |
The date when the budget version is set to baseline. |
ProjectCurrency |
The currency in which the project that's associated with the budget is implemented. |
TotalRevenue |
The total revenue amounts taken into account the planning amounts from the previous budget version plus any adjusted amounts. |
TotalRawCost |
The total raw cost amounts taken into account the planning amounts from the previous budget version plus any adjusted amounts. |
TotalBurdenedCost |
The total burdened cost amounts taken into account the planning amounts from the previous budget version plus any adjusted amounts. |
Margin |
The difference between the budgeted cost and revenue amounts. |
MarginPercentage |
The difference between the budgeted cost and revenue amounts, expressed as a percentage. |
TotalEffortAtCompletion |
The projected amount of work, in hours, for labor and equipment resource classes from the budget version. |
EquipmentEffortAtCompletion |
The projected amount of work, in hours, for equipment resource class from the budget version. |
PeopleEffortAtCompletion |
The projected amount of work, in hours, for labor resource class from the budget version. |
PlanningOptionDff |
Custom budget planning options related flexfields created for use in your organization. |
projectBudgetCurrentBaselinedVersions --> ProjectId |
The unique identifier of the project that's associated with the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> PlanVersionId |
The unique identifier of the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> PlanTypeId |
The unique identifier of the financial plan type that's associated with the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> PlanningOptionId |
The unique identifier of the financial planning options setup that's associated with the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> ProjectNumber |
The project number of the project that's associated with the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> ProjectName |
The name of the project that's associated with the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> PlanVersionNumber |
The version number of the project that's associated with the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> PlanVersionName |
The name of the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> PlanTypeName |
The name of the financial plan type that's associated with the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> BaselinedDate |
The date when the current baseline budget version was set to baseline. |
projectBudgetCurrentBaselinedVersions --> PeopleQuantity |
The amount of work, in hours, for labor resource class from the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> EquipmentQuantity |
The amount of work, in hours, for equipment resource class from the current baseline budget version. |
projectBudgetCurrentBaselinedVersions --> TotalPcBrdndCost |
The total of burdened cost amounts of the current baseline budget in project currency. |
projectBudgetCurrentBaselinedVersions --> TotalPcRawCost |
The total of raw cost amounts of the current baseline budget in project currency. |
projectBudgetCurrentBaselinedVersions --> TotalPcRevenue |
The total of revenue amounts of the current baseline budget in project currency. |
projectBudgetCurrentBaselinedVersions --> TotalPfcBrdndCost |
The total of burdened cost amounts of the current baseline budget in project ledger currency. |
projectBudgetCurrentBaselinedVersions --> TotalPfcRawCost |
The total of raw cost amounts of the current baseline budget in project ledger currency. |
projectBudgetCurrentBaselinedVersions --> TotalPfcRevenue |
The total of revenue amounts of the current baseline budget in project ledger currency. |
projectBudgetCurrentBaselinedVersions --> ApprovedCostPlanTypeFlag |
Indicates if the current baseline budget is of approved cost plan type or not. |
projectBudgetCurrentBaselinedVersions --> ApprovedRevPlanTypeFlag |
Indicates if the current baseline budget is of approved revenue plan type or not. |
projectBudgetCurrentBaselinedVersions --> BudgetSourceReference |
The reference of the source that's used for creating the current baseline budget version. |
Forecast Attributes
Attributes |
Description |
---|---|
InternalVersionId |
The unique identifier of the forecast version. |
VersionName |
The name of the forecast version. |
VersionNumber |
The number of the forecast version. |
ProjectName |
The name of the project that's associated with the forecast version. |
ProjectNumber |
The number of the project that's associated with the forecast version. |
InternalProjectId |
The unique identifier of the project that's associated with the forecast version. |
Status |
The status of the forecast version. |
PlanningAmounts |
The presence of cost amounts, revenue amounts, or both in a forecast version. |
ProjectCurrency |
The currency in which the project that's associated with the forecast is implemented. |
FinancialPlanType |
The name of the financial plan type that's associated with the forecast version. |
EtcStartDate |
The date when the estimate-to-complete is intended to begin. |
EACBurdenedCost |
The estimated burdened cost amount at the completion of the project. |
EACRawCost |
The estimated raw cost amount at the completion of the project. |
EACRevenue |
The estimated revenue amount that will be recognized at the completion of the project. |
Margin |
The difference between the estimate-at-completion cost and revenue amounts. |
MarginPercentage |
The difference between estimate-at-completion cost and revenue amounts, expressed as a percentage. |
EACPeopleEffortAtCompletion |
The projected amount of work, in hours, for labor resource class from the forecast version. |
EACEquipmentEffortAtCompletion |
The projected amount of work, in hours, for equipment resource class from the forecast version. |
EACTotalEffortAtCompletion |
The projected amount of work, in hours, for labor and equipment resource classes from the forecast version. |
ETCBurdenedCost |
The estimated burdened cost amount to complete the project. |
ETCRawCost |
The estimated raw cost amount to complete the project. |
ETCRevenue |
The estimated revenue amount to be recognized to complete the project. |
ActualBurdenedCost |
The actual burdened cost amount incurred on the project. |
ActualRawCost |
The actual raw cost amount incurred on the project. |
PhysicalPercentComplete |
The amount of physical work achieved, expressed as percentage. |
TotalCommitments |
The total planned quantity or amounts of commitments required to complete a project. |
PlanningOptionDff |
Custom forecast planning options related flexfields created for use in your organization. |
projectForecastCurrentApprovedVersions --> ProjectId |
The unique identifier of the project that's associated with the current approved forecast version. |
projectForecastCurrentApprovedVersions --> PlanVersionId |
The unique identifier of the current approved forecast version. |
projectForecastCurrentApprovedVersions --> PlanTypeId |
The unique identifier of the financial plan type that's associated with the current approved forecast version. |
projectForecastCurrentApprovedVersions --> ProjectNumber |
The number of the project that's associated with the current approved forecast version. |
projectForecastCurrentApprovedVersions --> ProjectName |
The name of the project that's associated with the current approved forecast version. |
projectForecastCurrentApprovedVersions --> PlanVersionNumber |
The version number of the project that's associated with the current approved forecast version. |
projectForecastCurrentApprovedVersions --> PlanVersionName |
The name of the current approved forecast version. |
projectForecastCurrentApprovedVersions --> PlanTypeName |
The name of the financial plan type that's associated with the current approved forecast version. |
projectForecastCurrentApprovedVersions --> PlanningOptionId |
The unique identifier of the financial planning options setup that's associated to the current approved forecast version. |
projectForecastCurrentApprovedVersions --> BaselinedDate |
The date when the current approved forecast version was set to baseline. |
projectForecastCurrentApprovedVersions --> EtcStartDate |
The date when the estimate-to-complete is intended to begin in the current approved forecast version. |
projectForecastCurrentApprovedVersions --> PeopleQuantity |
The amount of work, in hours, for labor resource class from the current approved forecast version. |
projectForecastCurrentApprovedVersions --> EquipmentQuantity |
The amount of work, in hours, for equipment resource class from the current approved forecast version. |
projectForecastCurrentApprovedVersions --> TotalPcBrdndCost |
The total of burdened cost amounts of the current approved forecast in project currency. |
projectForecastCurrentApprovedVersions --> TotalPcRawCost |
The total of raw cost amounts of the current approved forecast in project currency. |
projectForecastCurrentApprovedVersions --> TotalPcRevenue |
The total of revenue amounts of the current approved forecast in project currency. |
projectForecastCurrentApprovedVersions --> TotalPfcBrdndCost |
The total of burdened cost amounts of the current approved forecast in project ledger currency. |
projectForecastCurrentApprovedVersions --> TotalPfcRawCost |
The total of raw cost amounts of the current approved forecast in project ledger currency. |
projectForecastCurrentApprovedVersions --> TotalPfcRevenue |
The total of revenue amounts of the current approved forecast in project ledger currency. |
projectForecastCurrentApprovedVersions --> PrimaryCostForecastFlag |
Indicates if the current approved forecast is of approved cost plan type or not. |
projectForecastCurrentApprovedVersions --> PrimaryRevForecastFlag |
Indicates if the current approved forecast is of approved revenue plan type or not. |
projectForecastCurrentApprovedVersions --> ForecastSourceReference |
The reference of the source that's used for creating the current approved forecast. |
Financial Plan Version Approval Workflow Notifications
- A budget or forecast version requires approval.
- A budget or forecast version is approved or rejected.
- A budget or forecast version requires more information.
Contents of a Financial Plan Version Approval Workflow Notification
- Header
- Budget Version
- Created On
- Created By
- Version Number
- Version Description
- Financial Plan Type
- Summary Section
- Project
- Labor Effort (Hours)
- Equipment Effort (Hours)
- Burdened Cost in Project Currency
- Raw Cost in Project Currency
- Burdened Cost in Project Ledger Currency
- Raw Cost in Project Ledger Currency
- Approval History: One row per approver
- Approvers
- Assigned to / Approved by / Rejected by <Name of Approver>
- Date and Time of Assignment / Approval / Rejection
- Submitter
- Submitted by <Name of Submitter>
- Date and Time of Submission
- Link to budget version
- Approvers
- Approval options (if sent to an approver)
- Approve
- Reject
- Request Info
Customizing Notification Templates
You can find the templates and data models used in the Financial Plan Version Approval workflow in the Shared Folders > Projects > Workflow Notifications > Project Control folder in the Oracle BI Publisher catalog. In this folder, the FinancialPlanVersionApprovalTemplate file contains the template used in the notification report. Expand the Project Control > Data Model folder to access the FinancialPlanVersionApprovalDM file, which contains the data model used in the notification report.
Use Cases
Automatically Approve the Budget Version for Baseline in All Cases
To set up autoapproval for project budgets:
- In the Setup and Maintenance work area, go to the Manage Task
Configurations for Project Financial Management task.
The BPM Worklist application is displayed.
- In the Tasks to be configured pane, search for the ApprovePlanVersion task, and click the ApprovePlanVersion link.
- Click the Edit icon in the Tasks to be configured pane to modify the workflow.
- Click the Assignees tab.
The participants who must approve project budgets or forecasts are displayed. Click on each of these participants to review the workflow rules that apply to their approval choices.
- Click the Approver participant in the workflow, click the
Go to Rule (the diamond shaped) icon within the
Approver box, and then click the Go to Rule option that
appears.
The list of rules associated with the Approver participant are displayed. Ensure that the BudgetForecastAMXRuleSet rule is selected in the drop-down list.
- Change the IF condition of the predefined rules from 1 is 1 to 1 is 2 to disable the predefined workflow from sending project budget or forecast approvals to the project manager for approval.
- Add the AutoApproval rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options (the + icon) drop-down list and select General Rule.
- Click the Properties link, enter AutoApproval in the Name field, add the description, verify that the Active check box is selected, and click OK.
- In the IF part of the rule, click the Advanced Add or Modify
Options drop-down list and select simple
test, and add the IF conditions as follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
ApprovePlanVersionPayloadType.planClassCode
Note that you can also select this value by clicking the Left Value search icon and selecting ApprovePlanVersionPayloadType.planClassCode in the Condition Browser dialog box.
is
"BUDGET"
This value is case-sensitive. Include the quotation marks. Don't copy and paste this value.
To meet similar requirements for forecasts, enter "FORECAST".
To specify that the rule is applicable only for budget versions.
- In the THEN part of the rule, click the Advanced Add or
Modify Options drop-down list and select the Supervisory
list builder by clicking Add Approver >
Supervisory. Then, enter the values as
follows:
- Response Type: Required
- Number of levels: 1
- Starting Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Top Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Auto Action Enabled: True
- Auto Action: “APPROVE” (Type this value including the quotation marks. Don't copy and paste this value.)
- Rule Name: “AutoApproval” Note: The rule name is auto-populated, its the name that you entered in Step 7.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Click Validate on the top right corner to validate the newly defined rules.
- Click the Save icon in the Tasks to be configured pane to save the rules.
- Click the Commit task icon in the Tasks to be configured pane to complete the rule configuration.
- Click OK to close the confirmation message window.
Simple Approval Rule Using Resource and Supervisory List Builders
- Autoapproval rule for budget cost less than or equal to $1000 using the Supervisory list builder.
- Project manager approval for budget cost greater than $1000 using the Resource list builder.
Follow these steps:
- In the Setup and Maintenance work area, go to the Manage Task
Configurations for Project Financial Management task.
The BPM Worklist application is displayed.
- In the Tasks to be configured pane, search for the ApprovePlanVersion task, and click the ApprovePlanVersion link.
- Click the Edit icon in the Tasks to be configured pane to modify the workflow.
- Click the Assignees tab.
The participants who must approve project budgets or forecasts are displayed. Click on each of these participants to review the workflow rules that apply to their approval choices.
- Click the Approver participant in the workflow, click the
Go to Rule (the diamond shaped) icon within the
Approver box, and then click the Go to Rule option that
appears.
The list of rules associated with the Approver participant are displayed. Ensure that the BudgetForecastAMXRuleSet rule is selected in the drop-down list.
- Change the IF condition of the predefined rules from 1 is 1 to 1 is 2 to disable the predefined workflow from sending project budget or forecast approvals to the project manager for approval.
- Add the AutoApproval rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options (the + icon) drop-down list and select General Rule.
- Click the Properties link, enter AutoApproval in the Name field, add the description, verify that the Active check box is selected, and click OK.
- In the IF part of the rule, click the Advanced Add or Modify
Options drop-down list and select simple
test, and add the IF conditions as follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
ApprovePlanVersionPayloadType.planClassCode
Note that you can also select this value by clicking the Left Value search icon and selecting ApprovePlanVersionPayloadType.planClassCode in the Condition Browser dialog box.
is
"BUDGET"
This value is case-sensitive. Include the quotation marks. Don't copy and paste this value.
To meet similar requirements for forecasts, enter "FORECAST".
To specify that the rule is applicable only for budget versions.
ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost
isn't
null
To check if the burdened cost amounts are available.
new BigDecimal(ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost)
same or less than
1000.00
To check if the burdened cost is within the threshold limit.
- In the THEN part of the rule, click the Advanced Add or
Modify Options drop-down list and select the Supervisory
list builder by clicking Add Approver >
Supervisory. Then, enter the values as
follows:
- Response Type: Required
- Number of levels: 1
- Starting Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Top Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Auto Action Enabled: True
- Auto Action: “APPROVE” (Type this value including the quotation marks. Don't copy and paste this value.)
- Rule Name: “AutoApproval” Note: The rule name is auto-populated, its the name that you entered in Step 7.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Add the Project manager approval rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options drop-down list and select General Rule.
- Click the Properties link, enter ProjectManagerApproval in the Name field, add the description, verify that the Active check box is selected, and click OK.
- In the IF part of the rule, click the Advanced Add or Modify
Options drop-down list and select simple
test, and add the IF conditions as follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
ApprovePlanVersionPayloadType.planClassCode
Note that you can also select this value by clicking the Left Value search icon and selecting ApprovePlanVersionPayloadType.planClassCode in the Condition Browser dialog box.
is
"BUDGET"
This value is case-sensitive. Include the quotation marks. Don't copy and paste this value.
To meet similar requirements for forecasts, enter "FORECAST".
To specify that the rule is applicable only for budget versions.
ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost
isn't
null
To check if the burdened cost amounts are available.
new BigDecimal(ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost)
more than
1000.00
To check if the burdened cost is within the threshold limit.
- In the THEN part of the rule, click the Advanced Add or
Modify Options drop-down list and select the the
Resource list builder by clicking Add Approver >
Resource. Then, enter the values as follows:
:
- Response Type: Required
- Users: ApprovePlanVersionPayloadType.approvePlanPayload.approverName
- Groups: null
- Application Role:null
- Rule Name:
“ProjectManagerApproval”Note: The rule name is auto-populated, its the name that you entered in Step 8.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Click Validate on the top right corner to validate the newly defined rules.
- Click the Save icon in the Tasks to be configured pane to save the rules.
- Click the Commit task icon in the Tasks to be configured pane to complete the rule configuration.
- Click OK to close the confirmation message window.
Multilevel Approval Rule Using Supervisory List Builder
Suppose that you want to approve the budget version for baseline based on the budget cost. The higher the budget cost, the more levels of approval needed for the budget. Let's say, if the budget cost is same or less than $5000, then it should be approved only by the project manager. If the budget cost is between $5000 and $20000, then it should go till the second level of approval to the manager of the project manager. If the budget cost is higher than $20000, then it should go till the third level of approval to the manager of the manager of the project manager.
Budget Cost Greater Than |
Budget Cost Same or Less Than |
Levels of Approvals Required |
---|---|---|
0 |
5000 |
1 |
5000 |
20000 |
2 |
20000 |
No upper limit |
3 |
- First level approval rule to route approval to project manager for budget cost that’s same or less than $5000.
- Second level approval rule to route approval to the project manager and the manager of project manager for budget cost that’s between $5000 and $20000.
- Third level approval rule to route approval till the manager of the manager of the project manager for budget cost that’s greater than $20000.
You must also find out the highest position in the job hierarchy so that you can implement this approval for any number of levels till the highest position in your hierarchy. In this example, we’ll consider the highest position in the hierarchy to be CEO. See the implementation steps to define jobs in Oracle Fusion Cloud HCM documentation.
Pre-requisite: Define jobs in Oracle Fusion Cloud HCM.
Follow these steps:
- In the Setup and Maintenance work area, go to the Manage Task
Configurations for Project Financial Management task.
The BPM Worklist application is displayed.
- In the Tasks to be configured pane, search for the ApprovePlanVersion task, and click the ApprovePlanVersion link.
- Click the Edit icon in the Tasks to be configured pane to modify the workflow.
- Click the Assignees tab.
The participants who must approve project budgets or forecasts are displayed. Click on each of these participants to review the workflow rules that apply to their approval choices.
- Click the Approver participant in the workflow, click the
Go to Rule (the diamond shaped) icon within the
Approver box, and then click the Go to Rule option that
appears.
The list of rules associated with the Approver participant are displayed. Ensure that the BudgetForecastAMXRuleSet rule is selected in the drop-down list.
- Change the IF condition of the predefined rules from 1 is 1 to 1 is 2 to disable the predefined workflow from sending project budget or forecast approvals to the project manager for approval.
- Add the first level rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options (the + icon) drop-down list and select General Rule.
- Click the Properties link, enter FirstLevel in the Name field, add the description, verify that the Active check box is selected, and click OK.
- In the IF part of the rule, click the Advanced Add or Modify
Options drop-down list and select simple
test, and add the IF conditions as follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
ApprovePlanVersionPayloadType.planClassCode
Note that you can also select this value by clicking the Left Value search icon and selecting ApprovePlanVersionPayloadType.planClassCode in the Condition Browser dialog box.
is
"BUDGET"
This value is case-sensitive. Include the quotation marks. Don't copy and paste this value.
To meet similar requirements for forecasts, enter "FORECAST".
To specify that the rule is applicable only for budget versions.
ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost
isn't
null
To check if the burdened cost amounts are available.
new BigDecimal(ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost)
same or less than
5000.00
To check if the burdened cost is within the threshold limit.
- In the THEN part of the rule, click the Advanced Add or
Modify Options drop-down list and select the Supervisory
list builder by clicking Add Approver >
Supervisory. Then, enter the values as
follows:
- Response Type: Required
- Number of levels: 1
- Starting Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Top Participant:
HierarchyBuilder.getPrincipal("john.doe",-1,"","")Note: john.doe is the username of the CEO.
- Auto Action Enabled: False
- Auto Action: null
- Rule Name: “FirstLevel”Note: The rule name is auto-populated, its the name that you entered in Step 7.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Repeat Step 7 and make the following changes for the second and third levels of
approval:
- Enter the rule names as SecondLevel and ThirdLevel.
- Enter the value in the IF condition as follows:
- Second level: new BigDecimal(ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost) between 5000.00 and 20000.00
- Third level: new BigDecimal(ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost) more than 20000.00
- Enter the value in the THEN condition as follows:
- 2 for second level and 3 for third level in the Number of levels field.
- Click Validate on the top right corner to validate the newly defined rules.
- Click the Save icon in the Tasks to be configured pane to save the rules.
- Click the Commit task icon in the Tasks to be configured pane to complete the rule configuration.
- Click OK to close the confirmation message window.
Skip a Level Using Supervisory List Builder and Rule Priority
Person |
Position |
Manager |
Approval Required |
---|---|---|---|
David |
Project Manager |
Henry |
Yes |
Henry |
Senior Manager |
Nick |
No |
Nick |
Group Manager |
Abraham |
Yes |
The budget version must first be approved by David. After David approves, the workflow should then skip Henry and route the budget version approval to Nick. After Nick approves, the workflow should move into the approved state.
In such case, edit the predefined rule set to define an additional rule that uses rule priority and a try-catch action.
Follow these steps:
- In the Setup and Maintenance work area, go to the Manage Task
Configurations for Project Financial Management task.
The BPM Worklist application is displayed.
- In the Tasks to be configured pane, search for the ApprovePlanVersion task, and click the ApprovePlanVersion link.
- Click the Edit icon in the Tasks to be configured pane to modify the workflow.
- Click the Assignees tab.
The participants who must approve project budgets or forecasts are displayed. Click on each of these participants to review the workflow rules that apply to their approval choices.
- Click the Approver participant in the workflow, click the
Go to Rule (the diamond shaped) icon within the
Approver box, and then click the Go to Rule option that
appears.
The list of rules associated with the Approver participant are displayed. Ensure that the BudgetForecastAMXRuleSet rule is selected in the drop-down list.
- Change the rule priority to ensure that the workflow notification is sent to the
project manager and only after this approver approves, notifications are sent to
the next approver.
- Select the SoaOLabel.FinancialPlanApprovalRule.BudgetorForecastApprovalRule predefined rule.
- Click the Properties link.
- Select Highest from the Priority drop-down list, select the Advanced Mode check box, verify that the Active check box is selected, and click OK.
- Change the IF condition of the predefined rules from 1 is 1 to 1 is 2 to disable the predefined workflow from sending project budget or forecast approvals to the project manager for approval.
- Add the skip level rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options (the + icon) drop-down list and select General Rule.
- Click the Properties link, enter SkipLevel in the Name field, add the description, select Medium from the Priority drop-down list, verify that the Active check box is selected, select the Advanced Mode check box, and click OK.
- Click the Insert Pattern link.
- In the IF part of the rule, add the Task is a Task pattern by entering
Task in both the text boxes. Then, click the
Advanced Add or Modify Options drop-down list
and select simple test, and add the IF condition,
as follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
Task.payload.planClassCode
Note that you can also select this value by clicking the Left Value search icon and selecting Task.payload.planClassCode in the Condition Browser dialog box.
is
"BUDGET"
This value is case-sensitive. Include the quotation marks. Don't copy and paste this value.
To meet similar requirements for forecasts, enter "FORECAST".
To specify that the rule is applicable only for budget versions.
- In the THEN part of the rule, click the Insert
Action drop-down list and select
try. Then, perform these actions in the
following order:
Where to Perform the Action
Action to Perform
Result
Under the try action
Click the Insert Action drop-down list and select catch.
The catch action is added.
Under the catch action
Click the Insert Action drop-down list and select Add Approver > Supervisory.
The Supervisory list builder is added.
Under the catch action
Select the check box against catch and click the Move down icon.
The Supervisory list builder moves directly under the try action.
Under the try action
Enter the values as follows:- Response Type: Required
- Number of levels: 1
- Starting Participant: HierarchyBuilder.getManager("supervisory",HierarchyBuilder.getManager("supervisory",Task.payload.approvePlanPayload.approverName,-1,"","LINE_MANAGER").getId(),-1,"","LINE_MANAGER")
- Top Participant:
HierarchyBuilder.getManager("supervisory",HierarchyBuilder.getManager("supervisory",Task.payload.approvePlanPayload.approverName,-1,"","LINE_MANAGER").getId(),-1,"","LINE_MANAGER")Note: Replace “LINE_MANAGER” with the hierarchy type that you define in Oracle HCM Cloud.
- Auto Action Enabled: False
- Auto Action: null
- Rule Name:
“SkipLevel”Note: The rule name is autopopulated, its the name that you entered in Step 8.
- Dimension Id:
nullNote: The dimension id is autopopulated as null.
NA
In the catch action
Select the check box against catch and click the Delete Action icon.Note: Before you perform this action, ensure that only the check box against catch is selected.The catch action is deleted.
In the try action
Select the check box against try and click the Insert Action drop-down list and select catch.
The catch action is added.
In the catch action
Enter Object as the target and e as the identifier value in the text boxes.
NA
Under the catch action
Click the Insert Action drop-down list and select return.
NA
Note: If the try and catch actions are indented at the same level, it indicates that the rule is configured correctly.
- Click Validate on the top right corner to validate the newly defined rules.
- Click the Save icon in the Tasks to be configured pane to save the rules.
- Click the Commit task icon in the Tasks to be configured pane to complete the rule configuration.
- Click OK to close the confirmation message window.
Multiple Approval Rules Based on Project Roles
- If the submitter has the project manager role on the project, then the budget version must be auto-approved.
- If the submitter has the project administrator role (not project manger role) on the project, then the budget version must be routed to the project manager for approval.
In such case, edit the predefined rule set to define a couple of additional rules that use advanced mode with pattern matching.
Follow these steps:
- In the Setup and Maintenance work area, go to the Manage Task
Configurations for Project Financial Management task.
The BPM Worklist application is displayed.
- In the Tasks to be configured pane, search for the ApprovePlanVersion task, and click the ApprovePlanVersion link.
- Click the Edit icon in the Tasks to be configured pane to modify the workflow.
- Click the Assignees tab.
The participants who must approve project budgets or forecasts are displayed. Click on each of these participants to review the workflow rules that apply to their approval choices.
- Click the Approver participant in the workflow, click the
Go to Rule (the diamond shaped) icon within the
Approver box, and then click the Go to Rule option that
appears.
The list of rules associated with the Approver participant are displayed. Ensure that the BudgetForecastAMXRuleSet rule is selected in the drop-down list.
- Change the IF condition of the predefined rules from 1 is 1 to 1 is 2 to disable the predefined workflow from sending project budget or forecast approvals to the project manager for approval.
- Add the approval rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options (the + icon) drop-down list and select General Rule.
- Click the Properties link, enter ProjectRoleBasedApproval in the Name field and add the description.
- Select Medium from the Priority drop-down list, select the Advanced Mode check box, verify that the Active check box is selected, and click OK.
- In the IF part of the rule:
- Click Insert Pattern, then enter Lists in the left box and select Lists from the drop-down list.
- Click the Add Pattern icon, then enter Task1 in the left box and select Task from the drop-down list.
- Click the Add Pattern icon and select Surround from the Surround selected tests with parenthesis drop-down list that's adjacent to the Add Pattern icon you just clicked.
- Select None from the drop-down list below and.
- Enter ProjectTeamMember1 in the left box and choose ProjectTeamMember from the drop-down list in the pattern.
- Click the Advanced Add or Modify Options
drop-down list and select simple test,
and add the IF conditions within the same pattern as
follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
Task1.payload.approvePlanPayload.requestorName
Note that you can also select this value by clicking the Left Value search icon and selecting Task1.payload.approvePlanPayload.requestorName in the Condition Browser dialog box.
is
ProjectTeamMember1.teamMemberUserName
Note that you can also select this value by clicking the Left Value search icon and selecting ProjectTeamMember1.teamMemberUserName in the Condition Browser dialog box.
To specify that the requester is a project team member.
ProjectTeamMember1.teamMemberRoleName
is
"Project Manager"
To check whether the requester plays the Project Manager role in the project.
- In the THEN part of the rule, add a list builder of resource type by
clicking Insert Action > Add
Approver > Resource. Then, enter
the values as follows:
- Response Type: Required
- Users: Task1.payload.approvePlanPayload.approverName
- Groups: null
- Application Role: null
- Rule Name: “ProjectRoleBasedApproval”
Note: The rule name is auto-populated, its the name that you entered in Step 7.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Add the auto-approval rule for project manager role, as follows:
- In the Rules pane, click the Advanced Add or Modify Options drop-down list and select General Rule.
- Click the Properties link, enter AutoApproveForProjectManagerRole in the Name field, and add the description.
- Select Medium from the Priority drop-down list, select the Advanced Mode check box, verify that the Active check box is selected, and click OK.
- In the IF part of the rule:
- Click Insert Pattern, then enter Lists in the left box, and select Lists from the drop-down list.
- Click the Add Pattern icon, then enter Task1 in the left box, and select Task from the drop-down list.
- Click the Add Pattern icon and select Surround from the Surround selected tests with parenthesis drop-down list that's adjacent to the Add Pattern icon you just clicked.
- Select None from the drop-down list below and.
- Type ProjectTeamMember1 in the left box and choose ProjectTeamMember from the drop-down list in the pattern.
- Click the Advanced Add or Modify Options
drop-down list and select simple test,
and add the IF conditions within the same pattern as
follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
Task1.payload.approvePlanPayload.requestorName
Note that you can also select this value by clicking the Left Value search icon and selecting Task1.payload.approvePlanPayload.requestorName in the Condition Browser dialog box.
is
ProjectTeamMember1.teamMemberUserName
Note that you can also select this value by clicking the Left Value search icon and selecting ProjectTeamMember1.teamMemberUserName in the Condition Browser dialog box.
To specify that the requester is a project team member.
ProjectTeamMember1.teamMemberRoleName
is
"Project Manager"
To check whether the requester plays the Project Manager role in the project.
- In the THEN part of the rule, add a list builder of supervisory type by
clicking Insert Action > Add Approver
> Supervisory. Then, enter the values
as follows:
- Response Type: Required
- Number of levels: 1
- Starting Participant: HierarchyBuilder.getPrincipal(Task1.payload.approvePlanPayload.approverName,-1,"","")
- Top Participant: HierarchyBuilder.getPrincipal(Task1.payload.approvePlanPayload.approverName,-1,"","")
- Auto Action Enabled: True
- Auto Action: "APPROVE" (Type this value including the quotation marks. Don't copy and paste this value.)
- Rule Name:
“AutoApproveForProjectManagerRole” Note: The rule name is auto-populated, its the name that you entered in Step 8.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Click Validate on the top right corner to validate the newly defined rules.
- Click the Save icon in the Tasks to be configured pane to save the rules.
- Click the Commit task icon in the Tasks to be configured pane to complete the rule configuration.
- Click OK to close the confirmation message window.
Approval Rule Comparing the Strategic Budget from EPM
Suppose that you want to approve the budget version for baseline based on the comparison with the strategic budget. Let's say, if the detailed project budget created has a difference of amount that’s less than or equal to 5000 USD than that of the strategic budget, then it’s approved by the project manager. If the detailed project budget created has a difference of amount that’s greater than 5000 USD than that of the strategic budget, then it’s auto-rejected.
Follow these steps:
- In the Setup and Maintenance work area, go to the Manage Task
Configurations for Project Financial Management task.
The BPM Worklist application is displayed.
- In the Tasks to be configured pane, search for the ApprovePlanVersion task, and click the ApprovePlanVersion link.
- Click the Edit icon in the Tasks to be configured pane to modify the workflow.
- Click the Assignees tab.
The participants who must approve project budgets or forecasts are displayed. Click on each of these participants to review the workflow rules that apply to their approval choices.
- Click the Approver participant in the workflow, click the
Go to Rule (the diamond shaped) icon within the
Approver box, and then click the Go to Rule option that
appears.
The list of rules associated with the Approver participant are displayed. Ensure that the BudgetForecastAMXRuleSet rule is selected in the drop-down list.
- Change the IF condition of the predefined rules from 1 is 1 to 1 is 2 to disable the predefined workflow from sending project budget or forecast approvals to the project manager for approval.
- Add the auto-approval rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options (the + icon) drop-down list and select General Rule.
- Click the Properties link, enter AutoApprovalLessThanStrategicBudgetBy5000 in the Name field and add the description, verify that the Active check box is selected, and click OK.
- In the IF part of the rule, click the Advanced Add or Modify
Options drop-down list and select simple
test, and add the IF conditions within the same pattern
as follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
ApprovePlanVersionPayloadType.approvePlanPayload.planTypeName
is
“Detailed Budget”
Replace this with the appropriate FPT name that's used for the detailed budget.
NA
ApprovePlanVersionPayloadType.planClassCode
Note that you can also select this value by clicking the Left Value search icon and selecting ApprovePlanVersionPayloadType.planClassCode in the Condition Browser dialog box.
is
"BUDGET"
This value is case-sensitive. Include the quotation marks. Don't copy and paste this value.
- To meet similar requirements for forecasts, enter "FORECAST".
To specify that the rule is applicable only for budget versions.
new BigDecimal(ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost).subtract(ProjectBudgetCurrentBaselinedVersions.totalPcBrdndCost)
Same or less than
5000.00
NA
ProjectBudgetCurrentBaselinedVersions.planTypeName
is
"Strategic Budget"
Replace this with the appropriate FPT name that's used in EPM.
NA
ProjectBudgetCurrentBaselinedVersions.planTypeName
Note that you can also select this value by clicking the Left Value search icon and selecting ProjectBudgetCurrentBaselinedVersions.planTypeName in the Condition Browser dialog box.
isn't
null
NA
- In the THEN part of the rule, add a list builder of supervisory type by
clicking Insert Action > Add
Approver > Supervisory. Then,
enter the values as follows:
- Response Type: Required
- Number of levels: 1
- Starting Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Top Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Auto Action Enabled: True
- Auto Action: “APPROVE” (Type this value including the quotation marks. Don't copy and paste this value.)
- Rule Name:
“AutoApprovalLessThanStrategicBudgetBy5000"Note: The rule name is auto-populated, its the name that you entered in Step 7.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Add the auto-reject rule, as follows:
- In the Rules pane, click the Advanced Add or Modify Options drop-down list and select General Rule.
- Click the Properties link, enter AutoRejectMoreThanStrategicBudgetBy5000 in the Name field, add the description, verify that the Active check box is selected, and click OK.
- In the IF part of the rule, click the Advanced Add or Modify
Options drop-down list and select simple
test, and add the IF conditions within the same pattern
as follows:
Value to Enter in the Left Text Box
Value to Select in the Number Comparison Drop-down List
Value to Enter in the Right Text Box
Why to Add the IF Condition
ApprovePlanVersionPayloadType.planClassCode
Note that you can also select this value by clicking the Left Value search icon and selecting ApprovePlanVersionPayloadType.planClassCode in the Condition Browser dialog box.
is
"BUDGET"
This value is case-sensitive. Include the quotation marks. Don't copy and paste this value.
To meet similar requirements for forecasts, enter "FORECAST".
To specify that the rule is applicable only for budget versions.
ProjectBudgetCurrentBaselinedVersions.planTypeName
Note that you can also select this value by clicking the Left Value search icon and selecting ProjectBudgetCurrentBaselinedVersions.planTypeName in the Condition Browser dialog box.
isn't
null
NA
ProjectBudgetCurrentBaselinedVersions.planTypeName
is
"Strategic Budget"
Replace this with the appropriate FPT name that's used in EPM.
NA
ApprovePlanVersionPayloadType.approvePlanPayload.planTypeName
is
“Detailed Budget”
Replace this with the appropriate FPT name that's used for the detailed budget.
NA
new BigDecimal(ApprovePlanVersionPayloadType.approvePlanPayload.summaryAmounts.pcBurdenedCost).subtract(ProjectBudgetCurrentBaselinedVersions.totalPcBrdndCost)
more than
5000.00
NA
- In the THEN part of the rule, add a list builder of supervisory type by
clicking Insert Action > Add Approver
> Supervisory. Then, enter the values
as follows:
- Response Type: Required
- Number of levels: 1
- Starting Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Top Participant: HierarchyBuilder.getPrincipal(ApprovePlanVersionPayloadType.approvePlanPayload.approverName,-1,"","")
- Auto Action Enabled: True
- Auto Action: “APPROVE” (Type this value including the quotation marks. Don't copy and paste this value.)
- Rule Name:
“AutoRejectMoreThanStrategicBudgetBy5000"Note: The rule name is auto-populated, its the name that you entered in Step 8.
- Dimension Id: nullNote: The dimension id is auto-populated as null.
- Click Validate on the top right corner to validate the newly defined rules.
- Click the Save icon in the Tasks to be configured pane to save the rules.
- Click the Commit task icon in the Tasks to be configured pane to complete the rule configuration.
- Click OK to close the confirmation message window.