Project Status Change Workflow

When the user sets a project to a workflow-enabled status, the application triggers the Project Status Change Approval workflow. This workflow then notifies configured assignees, who must approve or reject the status change, or seek more information if required. The default approval rules for this workflow route the approval to the primary project manager. If the approval workflow is withdrawn or results in errors, the application reverts the project to the previous status.

In the BPM Worklist tool, this workflow is called ProjectStatusNotificationApproval.

Project Status Change Approval Process

Here's a table that describes the Project Status Change Approval process.

Task No. Agent Description Comments
1 Requester*

*Project Manager. Project Administrator, or other roles with the privilege to change project statuses.

Users change the status of a project (through the UI or using REST API) to a workflow-enabled status, which triggers the workflow. Statuses are enabled for workflow approval by project application administrators in the Manage Project Statuses task within Setup and Maintenance.
2 The Project Status Change Approval Workflow The workflow sends notifications to all configured assignees using email or in-app notifications, as configured. For detailed information on how you can change approval workflow notifications, see Workflow Notifications in the Implementing Common Applications guide.
3 Workflow Assignees Assignees review the approval notification and approve or reject the project status change. Assignees may also ask for more information from the requester.

If the workflow uses parallel approvers, then the Voting Percentage rule is used to determine final approval.

For detailed information on using BPM Worklist to update approval workflows, see Workflow Approvals and Notifications in the Implementing Common Applications guide. Also see How Invoices Are Approved in the Using Payables Invoice to Pay guide.

4 The Project Status Change Approval Workflow The workflow updates the project status:
  • If the assignees accept the status change, the project status is set to the Status After Change Accepted attribute configured by the project application administrator.
  • If the assignees reject the status change, the project status is set to the Status After Change Rejected attribute configured by the project application administrator.

If the new status is also workflow-enabled, another approval task is launched.

NA

If you previously configured the workflow for status changes of projects enabled for financial management and you want to extend the workflow to nonfinancial projects, then first review and update the workflow configuration as needed.

The following graphic shows the process of changing a project status.
This graphic shows the process of changing a project status.

Configuring the Project Status Change Approval Workflow

Use the Manage Project Statuses task in Setup and Maintenance to enable or disable project statuses for workflow approval. Select the Enable Workflow checkbox for each project status that should trigger a workflow approval.

For each project status with workflow enabled, you must also specify the following attributes:

  • Status After Change Accepted: The status the application assigns to the project after accepting a project status change.

  • Status After Change Rejected: The status the application assigns to the project after rejecting a project status change.

Other rule changes you can make:

  • The default approval rules in all the predefined rule sets are configured to send notifications to the primary project manager for approvals. You must 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.

Note:

You must have the Projects Application Administrator job role (or another similarly privileged job role) to configure rules for this workflow.

For example, assume that during implementation, you enable workflow for the Submitted status, and configure the following workflow attributes:

  • In the Status After Change Accepted field for the Submitted project status, you specify the Active status as the status that the application assigns to the project when the status change is accepted.

  • In the Status After Change Rejected field for the Submitted project status, you specify the Rejected status as the status that the application assigns to the project when the status change is rejected.

In this example, when a requester changes the project status to Submitted, the workflow process routes the status change request to the primary project manager's worklist. If the project manager accepts the status change, the workflow process assigns the Active status to the project. If the project manager rejects the status change, the workflow process assigns the Rejected status to the project.

The following graphic shows an example project status flow when using the Project Status Change workflow for status changes during the lifecycle of a project. In this example, a new project is created with an initial status of Unapproved. After ensuring all project details are correctly entered, a requester changes the project status to Submitted. The workflow sends a notification to the primary project manager, who accepts the status change. The workflow changes the project status to Active. After project completion, the requester changes the project status to Pending Close, which is another workflow-enabled status. A workflow sends a notification to the primary project manager, who again accepts the status change. The workflow changes the project status to Closed.
This graphic shows an example project status flow when Project Status Change workflow is used for status changes during the lifecycle of a project.

Configuring the Workflow: Supported Attributes

When a Project Status Change Approval workflow is launched, the current values of several project-related attributes are included in the payload. These attributes can be used to configure rules to route approvals for specific business needs.

Project Attributes

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 project organization.
ProjectOrganizationName The name of the project organization.
ProjectUnitId The unique identifier of the project unit.
ProjectUnitName The name of the project unit.
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.
LegalEntityName The name of the legal entity.
WorkTypeId The unique identifier of the work type.
WorkTypeName The name of the work type.
ProjectCurrencyCode The code of the currency used for reporting amounts acrosss projects in a common currency.
ProjectLedgerCurrencyCode The code of the currency of the ledger associated with the project.
SponsoredFlag A flag indicating whether the project is sponsored.
ProjectTeamMember-> ProjectPartyId The unique identifier of a project team member.
ProjectTeamMember-> TeamMemberRoleId The unique identifier of the role assigned to a project team member.
ProjectTeamMember-> TeamMemberRoleName The name of the role assigned to a project team member.
ProjectTeamMember-> TeamMemberPersonId The unique identifier of the person of record for a project team member.
ProjectTeamMember-> TeamMemberEmailAddress The email address of a project team member.
ProjectTeamMember-> TeamMemberUserName The user name of a project team member.
ProjectTeamMember-> StartDateActive The start date of a project team member.
ProjectTeamMember-> EndDateActive The end date of a project team member.
ProjectTeamMember-> PjsTrackTime A flag indicating whether missing time is tracked for a team member.
Project Flexfields Custom project-related flexfields created for use in your organization.
ProjectEpsNodeMember-> EpsNodeId The unique identifier of the Enterprise Project Structure (EPS) node to which the project belongs.
ProjectEpsNodeMember-> EpsNodeName The name of the Enterprise Project Structure (EPS) node to which the project belongs.
ProjectEpsNodeMember-> EpsNodeTypeCode The code for the type of the Enterprise Project Structure (EPS) node to which the project belongs.
ProjectEpsNodeMember-> EpsMemberId The unique identifier of the Enterprise Project Structure (EPS) member.
ProjectEpsNodeMember-> EpsMemberDisplayName The name of the Enterprise Project Structure (EPS) member.
ProjectEpsNodeMember-> EpsMemberTypeFlag A flag indicating the type of the Enterprise Project Structure (EPS) member.
ProjectEpsNodeMember-> EpsMemberUsername The user associated with the Enterprise Project Structure (EPS) member.
ProjectClassification-> ProjectClassCategory The project categories assigned to the project.
ProjectClassification-> ProjectClassCode The project class codes associated with the project class categories assigned to the project
ProjectClassification-> ClassCodePercentage The project class code percentage.

Project Status-Related Attributes

Attribute Description
projectStatusCode The unique code of the project status.
projectStatusName The name of the project status.
sourceStatusCode Status codes specific to each source object, as identified by the STATUS_TYPE. Objects which uptake the project status model will either use STATUS_TYPE and SOURCE_STATUS_CODE to resolve a project status, or the globally unique PROJECT_STATUS_CODE.
startDateActive The effective start date of the project status.
endDateActive The effective end date of the project status.

Project Status Change Approval Workflow Notifications

The Project Status Change Approval workflow sends notifications when:

  • A project status change approval workflow is initiated.
  • A project status change approval workflow is approved or rejected.

The default Project Status Change Approval Workflow notification contains the following details:

  • Header

    • Project Status Change Approval Notification

    • Project Name
  • Approval options (if sent to an approver)
    • Approve
    • Reject
    • Request Info?
  • Contents Section
    • Created on
    • Created by
    • Project number
    • Project Description
    • Previous Project Status
    • Current Project Status
    • Next Project Status if Approved
    • Next Project Status if Rejected
    • Comments from Submitter
  • Project Details

    • Project Type

    • Business Unit

    • Organization
    • Project Unit
    • Project Manager
    • Project Start Date
    • Project Finish Date
  • Financial Summary

    • Actual Costs
    • Commitments
    • Budget at Completion
    • Revenue
  • 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 transaction details

For guidance on how you can work with workflow notifications in the BPM Worklist tool, see the Workflow Notifications section in the Common Implementing Applications guide.

You can find the templates and data models used in the Project Status Change Approval workflow in the Shared Folders > Projects > Workflow Notifications > Project Foundation folder in the Oracle BI Publisher catalog. In this folder, the ProjectStatusChangeApprovalReport file contains the template used in the notification report. Expand the Project Foundation > Data Models folder to access the ProjectStatusDM file, which contains the data model used in the notification report.

For information on how you can change notification templates, see the Configurable Notifications section in the Common Implementing Applications guide.