| Status | Approved |
|---|---|
| Owner | FRUTEAU-ext, Sabrina |
| Stakeholders | |
| Jira Request ID |
ERP-1018
-
Getting issue details...
STATUS
|
| Jira Development ID | ERP-714 - Getting issue details... STATUS |
High- Level Specification
| Parameter | Value |
|---|---|
| Application System | SAP S/4HANA - CUI instanceSAP S/4HANA - China instance SAP S/4HANA - Rest of World instance |
| Business Process Reference | 10.02.04.01. Manage Project Settlement and Closure |
Functional Overview
This functional specification defines the custom development required to automatically replicate specific PPM Item User Statuses to linked PS Project and WBS Element User Statuses.
The enhancement ensures that when an Item in PPM is updated to statuses: TECO/Cancelled, Closed/Cancelled or On Hold, the corresponding PS User Status is automatically set on the associated Project Definition.
Scope and Objectives
Standard PPM to PS integration (via DFM configuration) supports mapping PPM Item Status to PS System Status only.
Since Cancelled and On Hold are User Statuses in PS, standard functionality cannot be used, requiring custom development.
The objectives of this Functional Specification are to ensure consistency between PPM and PS project status management by synchronizing User Statuses across both modules whenever a relevant status change occurs in PPM.
Step | Description | Comment |
|---|---|---|
| 1 | Trigger: User changes of PPM Item Status to:
| Upon saving, the PPM item status is updated. |
| 2 | System triggers the status change on the corresponding SAP PS project to Cancelled or On Hold. | Item changed to status On Hold => PS project status changed to On Hold Item changed to status TECO/Cancelled =>
Item changed to status Closed/Cancelled =>
|
| 3 | User changes the PPM item status from On hold to Approved. The system removed status On Hold on the corresponding PS project. | |
| 4 | User changes the PPM item status from TECO/Cancelled to Closed/Cancelled. PS project system status updated to Closed via DFM | Not in the scope of this FS. |
| 5 | User changes the PPM item status from TECO/Cancelled to TECO. The system removed status Cancelled on the corresponding PS project. | |
| 6 | User changes the PPM item status from Closed/Cancelled to TECO/Cancelled. PS project system status updated to TECO via DFM. | Not in the scope of this FS. |
Assumptions
Dependencies
PPM item status configuration defined.
DFM configuration to synchronize PPM item status with SAP PS project system status.
SAP PS user statuses Cancelled and On Hold defined.
Security, Integrity and Controls
Configuration Requirements
Language Requirements
Special Requirements
Design Rationale
Functional Requirements
- Automatic Synchronization
When a user sets the Item Status in PPM to one of the below statuses:
- TECO/Cancelled
- Closed/Cancelled
- On Hold
,The corresponding PS Project and its WBS Elements must automatically receive the corresponding PS User Status.
PPM is the controlling application. Users must not manually adjust the PS status for these cases.
The solution must ensure aligned user statuses between PPM and PS at all times.
The update must occur:
- Immediately upon Item status change
- With error logging and alerting in case of failures
2. Reversibility
If the PPM item status is changed from On Hold, TECO/Cancelled or Closed/Cancelled to another allowed status as per PPM configuration, the status change must be reflected on the SAP PS project:
| From | To | Expected behavior |
| On Hold | Approved | Custom program deactivate user status On Hold on PS Project |
| On Hold | TECO | Custom program deactivate user status On Hold on PS Project |
| TECO/Cancelled | TECO | Custom program deactivate user status Cancelled on PS Project |
| TECO/Cancelled | Closed/Cancelled | TECO system status handled by DFM configuration. User status Cancelled is already assigned to PS project. |
| Closed/Cancelled | TECO/Cancelled | Closed system status handled by DFM configuration. User status Cancelled is already assigned to PS project. |
3. If corresponding SAP PS status is locked for edit by a user, do not allow the change on the PPM item. Error message in PPM stating that the SAP PS project is currently being used by user id, and therefore the status change is not allowed.
Proposed Technology to Use
Data Source Considerations
| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
| /RPM/ITEM_D | STATUS | Check PPM item status assigned |
| TJ30 | ESTAT, TXT04, TXT30 | SAP PS user statuses definition table |
| /RPM/STATUS_T | STATUS, TEXT | PPM item status definition table |
Data Validation Considerations
| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
Custom Tables
Master Data
| Field | Description | Data Type/Length | Validation rule/ Value Help |
|---|---|---|---|
Configuration Table
| Field | Description | Data Type/Length | Validation rule/ Value Help |
|---|---|---|---|
Selection Screen Enhancement
| Field Name | Description | Select: | Data Type/Length | Default Value/ Validation rule/ Value Help | Selection Logic |
|---|---|---|---|---|---|
Processing Logic
- Detect change in Item Status.
If the field STATUS on the PPM item (table /RPM/ITEM_D) is changed to values On Hold, TECO/Cancelled, Closed/Cancelled:
- Identify related SAP PS Project definition: PPM item id = PS Project definition id.
- Set PS User Status on the SAP PS Project definition to the corresponding PS user status:
PPM Status | PPM status id | Corresponding SAP PS User status | PS - TXT04 status text |
On Hold | Z006 | On Hold | ONHOLD |
TECO/Cancelled | Z007 | Cancelled | CNCLD |
Closed/Cancelled | Z008 | Cancelled | CNCLD |
- Set/remove User Status accordingly using: STATUS_CHANGE_IN_PROJECT or BAPI_BUS2001_SETSTATUS
2. If status is changed from On Hold, TECO/Cancelled, Closed/Cancelled to another value:
- Identify related SAP PS Project definition: PPM item id = PS Project definition id.
- Set/remove User Status accordingly using: STATUS_CHANGE_IN_PROJECT or BAPI_BUS2001_SETSTATUS
From | PPM status id from | To | PPM status id To | Expected results |
On Hold | Z006 | Approved | Z002 | Deactivate user status On Hold on PS Project |
On Hold | Z006 | TECO | Z006 | Deactivate user status On Hold on PS Project |
TECO/Cancelled | Z007 | TECO | Z006 | Deactivate user status Cancelled on PS Project |
TECO/Cancelled | Z007 | Closed/Cancelled | Z007 | Check that user status Cancelled is already assigned to PS project. If not, Set. |
Closed/Cancelled | Z008 | TECO/Cancelled | Z008 | Check that user status Cancelled is already assigned to PS project. If not, Set. |
3. If the status update fails because the PS Project is locked:
Display a meaningful error message to the PPM user: “Status update cannot be applied because Project <Project ID> is currently locked in SAP PS by user <username>. Please try again later.”
- The status change is not saved on the PPM item.
Log the failure in the PPM log or message queue.
Volumetrics
Unknown.
Performance Considerations
Error Handling
All failures logged in SLG1.
Testing
How to Test
Test Conditions and Expected Results
| ID | Condition | Expected Result |
|---|---|---|
| 1 | Create 3 PPM items and approve the first Stage Gate to trigger the PS Project creation. | SAP PS project created with same id as PPM item. |
| 2 | Change the projects status to:
| Statuses are replicated to the corresponding SAP PS projects. |
| 3 | Change again the statuses on the 3 projects:
| Changes are reflected to the SAP PS project. |
| 4 | Open the SAP PS project and the PPM item in edit mode simultaneously. Change the PPM item with any of the above mentioned statuses. Save. | PS project lock error message and status change is not saved on the PPM item. |
Test Considerations/Dependencies
Other Information
Development Details
Package
| Package Name | Parent Package |
|---|---|
Enhancement Implementation
| Enhancement Type | Standard Definition Name | Custom Implementation Name | Design Rationale Reference |
|---|---|---|---|
Other Development Objects
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|
Appendix
Custom Authorization Group Naming Convention
This table is based on the Syensqo development standards document. It provides the naming conventions for authorization groups to associated with custom reports and tables to comply with security requirements.
ABAP | ZFI | ZMM | ZPS | ZCO | ZSD | ZBC | ZFI | ZCA |
|---|---|---|---|---|---|---|---|---|
| TABLES | ZFIT | ZMMT | ZPST | ZCOT | ZSDT | ZBCT | ZFIT | ZCAT |
