| Status | Revision in progress |
|---|---|
| Owner | FRUTEAU-ext, Sabrina |
| Stakeholders | |
| Jira Request ID | ERP-131 Automated Close of Portfolio Item, Project & WBS |
| Jira Development ID | ERP-106 Automated Close of Portfolio Item, Project & WBS |
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
Over time, many PPM items and SAP Project System (PS) projects reach completion or become inactive but remain open in the system. This leads to administrative inefficiencies, a cluttered project portfolio, and potential compliance risks. To address these challenges, this enhancement proposes the automation of idle project closure. To address these issues, this enhancement introduces a program supporting 2 scheduled processes to manage idle projects and assets:
1. Projects Closure (Quarterly)
Run on a quarterly basis to identify inactive or idle projects, which have not been set to Closed status. The program will attempt to automatically close these projects if all closure criteria are met. If a project cannot be closed due to outstanding issues (such as open balances or commitments), the system will notify the responsible Financial Controller for further review and action.
2. Pending Closure AuC (Monthly)
Run on a monthly basis to identify any idle Assets under Construction (AuC). The program will generate a consolidated notification listing all such AuCs that require attention and send it to the Asset Manager, enabling timely follow-up and resolution.
Scope and Objectives
This enhancement specifically targets SAP Project System (PS) projects that meet the following criteria:
- Project status is either "Technically Completed" (TECO) or is still active but all depending WBS elements are set to TECO status
- No financial transactions have occurred for the past six months.
The scope includes:
- Assessment of whether these projects can be fully closed in the system.
- Notification to the responsible Financial Controller if closure is not possible due to outstanding issues (e.g., open balances or commitments).
- Notification for regular review of idle Assets under Construction (AuC) to the Asset Manager.
The objectives are:
- Minimize erroneous postings by preventing transactions on inactive projects
- Optimize reporting by ensuring only active and relevant projects appear as open
- Maintain good data hygiene by keeping project data accurate,
- Highlighting non capitalized costs and POs or WOs left open.
Process Flow Diagram
- Inactive Project Closure Review
(for SAP PS projects with no transactions for 6 months and status TECO)
Step | Description | Comment |
|---|---|---|
| 1 | 3 possible scenarios:
2. User/Responsible person - Project: Changes the PPM item status to TECO
3. User/Responsible person - Project: No PPM item related to the SAP PS project. The User changes the SAP PS project status to TECO 4. User/Responsible person - Project: Sets all the WBS elements within a project to TECO, while the project remains active. | |
| 2 | Inactivity Period
| X = Inactivity period defined as input parameter. |
| 3 | System (Scheduled Process): On a quarterly basis, scans for SAP PS projects with:
| The program identifies the SAP PS projects in scope. |
| 4 | Closure Attempt The program checks if the eligible projects can be closed.
|
2. Idle Asset Under Construction (AuC) Monitoring
(for periodic review and notification of AuCs with no recent activity)
Step | Description | Comment |
|---|---|---|
| 1 | AuC created and assigns it to a specific WBS element, linking it to a project. Transactions are posted to the AuC as project activities occur. | |
| 2 | Inactivity Period: No further transactions (financial or logistical) occur on the AuC for X months. | X = Inactivity period defined as input parameter. |
| 3 | The program compiles a consolidated list of all identified idle AuCs. Sends a monthly consolidated notification to the Asset Manager with details of all idle AuCs requiring attention. | |
| 4 | Asset Manager: Reviews the notification and takes appropriate follow-up actions (e.g., investigates, initiates settlement, etc...).
|
Assumptions
N/A
Dependencies
ERP-167 Sync Project Person Responsible & Applicant with HR Positions
ERP-174 Synch Status from PPM Item to PS Project/WBS
ERP-87 Automate Asset & Settlement Rule Creation - Workflow
Security, Integrity and Controls
N/A
Configuration Requirements
N/A
Language Requirements
N/A
Special Requirements
N/A
Design Rationale
Functional Requirements
This section describes the business process and decision logic for managing inactive SAP PS projects and idle Assets under Construction (AuCs). It outlines the key steps and criteria used to identify, review, and act on inactive projects and assets.
Please note that technical implementation details are provided separately in the Processing Logic section.
1. Scheduled Processing
- The program runs in two modes:
- Inactive Project Closure Review: Conducted quarterly to identify and process inactive projects.
- Idle AuC Monitoring: Conducted monthly to identify and report on idle Assets under Construction.
- The period of inactivity (default: six months) can be adjusted as needed (input parameter).
- The program offers a test mode execution, which will issue a report with all the projects that can be closed and the ones that cannot. List the different reasons preventing the closure. See job log details in Handling Error section.
2. Inactive Project Closure Review
2.1. Identification of Inactive SAP PS Projects
- The program identifies SAP PS projects that are no longer active, marked as “Technically Completed” TECO
- The program identifies SAP PS projects that are assigned an active status, but all the related WBS elements are marked as “Technically Completed” TECO
- Projects used solely for statistical or intercompany recharge purposes are excluded from this review.
- Only projects and WBS elements with no recorded activity (actuals or commitments) in the past X months are considered inactive and subject to further review. X = Inactivity period.
- SAP PS projects that are still active (i.e., not TECO, Cancelled, or Closed), where all associated WBS elements have the status TECO, and for which there have been no transactions during the past X months (with X being the specified inactivity period).
2.2 Closure Criteria Review:
- In the case of SAP PS projects that are still active (i.e., not TECO, Cancelled, or Closed), where all associated WBS elements have the status TECO, and for which there have been no transactions during the past X months (with X being the specified inactivity period): Change the project status to TECO.
For all identified projects in step 2.1, Attempt to close the WBS elements. Closure is only possible if all of the following conditions are met:
- Outstanding Time Transfer Check: Confirm that all time bookings have been fully transferred to the relevant WBS elements
- No open purchase orders or purchase requisitions
- No open process or work orders
- All linked assets under construction are fully capitalized or settled
- The WBS element has a zero balance
- No Capitalization date maintained on WBS element is the future
Project Closure Action:
- If all conditions are satisfied, the project status is set to closed. If the project is linked to a portfolio management item, its status is also updated to “Close.”
- If any condition is not met, the project remains open and the reasons are documented in a notification to the Financial Controller (see section 4).
3. Idle AuC Monitoring
For each AuC assigned to a WBS element project:
- Identify any AuCs that have not been fully capitalized or settled.
- Identify last activity (posting) date.
- If last activity date > Inactivity period and outstanding balance exist, send a consolidated notification to the Asset Manager (see section 4).
4. Notifications
Inactive Project Closure:
Financial Controllers receive a consolidated notification listing:- Projects that were successfully closed
- Projects that could not be closed, with reasons for each (e.g., open commitments, pending time transfers, unsettled assets)
- Guidance on next steps and the date of the next scheduled review
Idle AuC Monitoring:
Asset Managers receive a notification listing all identified idle AuCs, including relevant details and recommended actions.
If a recipient cannot be identified, the issue is logged for further investigation.
- See Processing logic for rules to derive email recipients.
Proposed Technology to Use
Data Source Considerations
| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
| PROJ | PSPNR, OBJNR, PROFL | Used to select the projects in scope |
| JEST | OBJNR, STAT | Select Projects which are set to status TECO |
| CATSCO | RPROJ, TRANSFERRED | Check if CATS time entries not transferred to WBS element |
| /RPM/ITEM_D | ITEM_D | If SAP PS project id exists in this table, then there is a corresponding PPM item. |
| ACDOCA | ANLN1 | Check if the AuC asset still has a balance |
| ANLA | ANLKL | Check the asset class = AuC. |
| COBRB | OBJNR, COBRB | Identify assets linked to the related WBS element |
| PRPS | USR08, PSPHI | Capitalization date |
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 |
|---|---|---|---|---|---|
| Mode | 2 options to select from:
| Options | None | ||
| Inactivity period (days) | Field used by the program to identify the projects to close or the idle AuC. The field can be a number of days. | Input field | number 3 digits | 180 days (= 6 months) |
Processing Logic
1. Scheduled Processing
The program can be executed in 2 modes:
- Inactive project closure review: The identification and processing of inactive projects must occur quarterly.
- Idle AuC Monitoring: The identification and reporting of idle AuCs must occur monthly.
The Inactivity period (defined as 6 months in this FS) is set as an input parameter.
2. Inactive project closure review
For each identified inactive project, the program:
2.1.Identification of Inactive SAP PS Projects
- The program identify SAP PS projects with:
- status TECO:
- JEST: Object Status (stores status information for objects like projects and WBS) STAT field = TECO
- PROJ: Project Definition (main project header data)
- Join the 2 tables to keep only project definitions.
- Result: List of project definitions (IDs) that are TECO.
- Exclude PS project with Project profile = PROJ-PROFL
- status TECO:
- The program identify SAP PS projects with:
| ZPS0003 | Statistical Expense |
| ZPS0004 | Intercompany Recharges |
| ZPS0005 | Provisional Expense |
- Check that no transactions for the past 6 months: no Actuals nor Commitment posted on the related WBS elements.
Get all the related WBS elements table PRPS field PSPHI = Project id
Query ACDOCA where OBJNR = PRPS_OBJNR (WBS element Object number)
- Filter by BUDAT for posting date.
- Check that the latest posting date > X (Inactivity period).
- The program also checks for the SAP PS projects that are still active (i.e., not TECO, Cancelled, On Hold or Closed) with all associated WBS elements have the status TECO:
- Identify active projects:
- The program also checks for the SAP PS projects that are still active (i.e., not TECO, Cancelled, On Hold or Closed) with all associated WBS elements have the status TECO:
Table JEST: Object Status (stores status information for objects like projects and WBS) STAT field status <> TECO, HOLD, CNCL, CLSD
PROJ: Project Definition (main project header data)
Join the 2 tables to keep only project definitions.
Result: List of project definitions (IDs) that are TECO.
- Exclude PS project with Project profile = PROJ-PROFL
| ZPS0003 | Statistical Expense |
| ZPS0004 | Intercompany Recharges |
| ZPS0005 | Provisional Expense |
- For the projects identified, check if all Level 2 (L2) WBS elements have the status TECO.
- Table PRPS field PSPHI = Project id
- Table: PRPS field STUFE = 2.
- Table JEST-STAT: Check that all L2 WBS elements have the status TECO assigned.
- If not, ignore the project.
- If so, then check if all WBS elements at other levels also have the status TECO.
- Table PRPS field PSPHI = Project id and field STUFE > 2
- Table JEST-STAT: Check that all WBS elements have the status TECO assigned.
- If not, ignore the project.
- If so, Check that no Actuals nor Commitment posted on all of the related WBS elements.
- Get all the related WBS elements table PRPS field PSPHI = Project id
- Query ACDOCA where OBJNR = PRPS_OBJNR (WBS element Object number)
- Filter by BUDAT for posting date.
- Check that the latest posting date > X (Inactivity period).
- If so, Update the PPM item status/PS project status to TECO.
- If the SAP PS project is related to a PPM id, Update the PPM item status to TECO.
Check project id exist in /RPM/ITEM_D field ITEM_D
Function Module /RPM/ITEM_CHANGE - This function module allows to change attributes of a PPM item, including its status.
The status change to TECO on the PPM item will be replicated to the SAP PS project.
- Else set the SAP PS project to status TECO.
2.2 Checks if no outstanding time transfer
For all the projects identified in step 1, check that all time booking is transferred to the WBS element (Time booked and time transfer completed).
Table CATSCO
RPROJ = WBS element = Project id followed by * to obtain all WBS elements for a given project definition (Example, if the project id = A.000004, then search all RPROJ values starting with A.000004);
TRANSFERRED = " "
If any records with Transferred = " ", then some records are still expected to be transferred. The project cannot be closed. ==> Step 2.5.
2.3 Attempt to set the project status to CLSD (Closed). If 2.2 is successful, simulate a SAP PS Project status change to Closed. If not the below closure criteria are met, the system will prevent the closure and issue an error message.
| No Open Commitments - Outstanding purchase orders - Outstanding purchase requisitions* |
| No Open R&I Process Orders All process orders assigned to the WBS element are completed and closed in the system. |
| No Open Work Orders All work orders (maintenance, production, or service) assigned to the WBS element are completed and closed in the system. |
No Open AuC |
| Overall balance on WBS element = 0 |
Good receipt |
*If Purchase requisitions are not replicated from Ariba to S4, no check at project closure is done.
Before performing any actual status changes, the system will simulate the project closure using the following BAPIs:
BAPI_PS_INITIALIZATION– to initialize the PS environmentBAPI_BUS2054_SET_STATUS– to set the WBS/project statusBAPI_PS_PRECOMMIT– to check for errors prior to commit
In this simulation mode, no status changes are saved. The purpose is solely to detect whether any of the above closure conditions are not fulfilled. If a condition fails, the corresponding error messages returned by the BAPIs will be captured and reported in the notification issued.
2.4 If all the above criteria (2.1 and 2.2) are met, meaning that the project closure simulation reported no errors, the project can be closed:
- If the SAP PS project is related to a PPM id, the PPM item status be updated:
- If PPM Item status = TECO/Cancelled => change PPM Item status to Closed/Cancelled.
- If PPM Item status = TECO => change PPM item status to Closed.
- If the SAP PS project is related to a PPM id, the PPM item status be updated:
Check project id exist in /RPM/ITEM_D field ITEM_D
Function Module /RPM/ITEM_CHANGE - This function module allows to change attributes of a PPM item, including its status.
The status change to Close on the PPM item will be replicated to the SAP PS project.
- Else set the SAP PS project to status CLSD.
- A consolidated notification is sent to the Financial Controller. See section 4.
2.5 If condition 2.1 and/or 2.2 are not fulfilled, the project will not be closed.
Check if the Capitalization date (PRPS-USR08)
- If Capitalization date is maintained as a date in the future ==> No notification is necessary for this project
- Else, a notification will be issued for this project.
Notifications detailed in section 5 will be issued.
3. Idle AuC Monitoring
3.1. Identifying AuC Related to WBS
Use ANLA fields:
ANLN1 (Asset Number)
ANLN2 (Asset Subnumber)
POSNR (WBS Element)
ANLKL (Asset Class — to filter for AuC)
Filter where ANLKL corresponds to your AuC asset class and POSNR matches your WBS element.
3.2. Checking for the last Activity (identifying dormant AuC)
Use BUDAT (Posting Date) in ACDOCA.
If there are no entries for the asset in the last X months (X= Inactivity period), it meets inactivity criterion.
3.3. Checking Capitalization/Settlement
Analyze postings in ACDOCA for the asset to determine if it’s fully capitalized or settled.
Use FM FI_AA_VALUES_CALCULATE to determine if the calculated balance is zero, which indicates full settlement.
If there are still open balances or no settlement/capitalization postings, the asset is not fully settled.
3.4 If AuCs not fully capitalized/settled, send a notification to Asset Manager. Details in section 4.
4. Notification
4.1. Inactive project closure review:
A consolidated notification for each Financial Controllers highlighting:
- Projects that were closed by the program
- Projects that could not be closed and the reasons.
Template email:
Subject: Inactive Project Closure Review Results – [Processing Date]
Dear [Financial Controller, see section 4.3 for deriving Financial Controller],
As part of the regular review of inactive projects (PS status TECO and no activity in the past [Inactivity period] months), please find below the summary of closure attempts performed on [Processing Date].
1- Projects Successfully Closed
The following projects were successfully closed:
Project ID | Project Name/Description |
... | ... |
2- Projects Not Closed
The following projects could not be closed.
Project ID | Project Name/Description | Object (Order IDs, AuC, etc.) | Reason (SAP Error Message) |
... | ... | WBS element id | Balance of WBS A.000046.01.02.02 is not zero |
... | ... | WBS element id | Pending CATS time entry records for transfer.* |
*In this case the notification does not display the SAP error message, as no error is generated. Please use the mentioned reason. This occurs if condition 3.1 is valid.
Please review the reasons and take the necessary actions (e.g., settle balances, close orders, resolve AuC issues) to enable closure in the next review cycle.
Next scheduled review: [Next Review Date]
4.2 Idle AuC Monitoring:
A consolidated notification highlighting all the AuC which have not been
Email template:
Subject: Consolidated List of Idle Assets Under Construction (AuC) – [Processing Date]
Dear [Asset Manager, see section 4.3 for deriving Asset Manager],
As part of the periodic review of inactive AuC, the following Assets have been identified as inactive (no activity in the past [Inactivity period] months) and are not fully capitalized or settled.
Please review the list below and take appropriate action to settle or capitalize these assets as needed.
| AuC Number | AuC Description | Linked WBS Element | Project ID | Outstanding Amount | Capitalization date |
| Identified AuC in section 4. | Taken from table ANLA: input ANLN1 Asset number and retrieve TXT50 | WBS element identified in section 4. | Project ID identified in section 4. | Section 4.3 - Use FM FI_AA_VALUES_CALCULATE to obtain the total outstanding amount. | Maintained on the WBS element. Table PRPS field USR08. |
4.3 Deriving email recipients
- Financial controller: Financial controller position is stored in table PRPS, field ASTNR. From the position ID the SAP Personal ID can be derived through table HRP1001. Then obtain the email address through PA0105.
- Asset Manager: Refer to FS ERP-87 Automate Asset & Settlement Rule Creation - Workflow.
4.4 Handling notification errors (No recipient derived)
If email recipients cannot be identified, no notification is sent, error is shown in the job error log report.
Volumetrics
Unknown.
Performance Considerations
Error Handling
The job log report should:
- Record the execution details of the program, including start and end times and selection criteria (Inactivity period).
- Log the number of objects processed (e.g., number of projects with TECO status found).
- List SAP PS projects successfully closed
- List PPM items successfully closed
- List SAP PS projects not closed and provide reason (error or pending timesheet transfer)
- Capture any errors encountered during execution.
- Provide an overview of the notifications sent (recipient, successful or failed)
Testing
How to Test
Test Conditions and Expected Results
| ID | Condition | Expected Result |
|---|---|---|
| 1 | Prepare test data:
| Projects are created covering the various scenarios. |
| 2 | Execute the program in mode Inactive project closure review. | Expected projects are closed. Expected PPM items are closed. Notification is sent with the errors report for non closed projects and closed projects overview. Records of all actions are included in the notification, including:
The job log should be reviewed for audit and troubleshooting. |
| 3 | Execute the program in mode Idle AuC Monitoring | Notification is sent to the Asset Manager containing all inactive AuC. |
Test Considerations/Dependencies
N/A
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 |

