🏆 Guide #95 Architecture Milestone

SAP S/4HANA EPPM & Project System Architecture

Published: October 2026 | Enterprise Project & CapEx Accounting | Author: Andrea Perrelli

Strategic architectural guide to modernizing SAP Project System (PS). Replace legacy procedural code with S/4HANA EPPM, Work Breakdown Structure (WBS) RAP EML, and real-time ACDOCA settlement.

1. The Problem with Classic SAP Project System (PS)

In classic SAP ECC, capital expenditure (CapEx) and customer projects were managed in module PS using transaction CJ20N (Project Builder) and tables PROJ, PRPS, AFVC, and COSP.

Over decades, project systems accumulated massive technical debt:

2. Clean Core EPPM Architecture vs. Legacy PS

Capability Classic SAP PS (Deprecated) S/4HANA Clean Core EPPM
Project & WBS Entity Direct access to PROJ / PRPS Released RAP BO I_EnterpriseProjectTP
Financial Settlement Transaction CJ88 (Batch CO-PA / Cost Center) Real-Time Event-Based Revenue Recognition into ACDOCA
Budget Control Classic AVAC with manual reconstruction (CJEN) Native HANA Real-Time Availability Control (AVAC)
Extensibility Hook User Exits CNEX0001 / CNEX0002 Clean Core Released BAdI BADI_PROJECT_HEADER

3. RAP EML Project Creation Lifecycle

In ABAP Cloud, enterprise projects and hierarchical WBS elements are created atomically via Entity Manipulation Language (EML):

MODIFY ENTITIES OF I_EnterpriseProjectTP
  ENTITY EnterpriseProject
  CREATE FIELDS ( Project ProjectDescription CompanyCode ProjectProfileCode )
  WITH VALUE #( (
    %cid               = 'CID_PRJ_1'
    Project            = 'PRJ-2026-01'
    ProjectDescription = 'Global Data Center Construction'
    CompanyCode        = '1010'
    ProjectProfileCode = 'CAPITAL'
  ) )
  CREATE BY \_EnterpriseProjectElement
  FIELDS ( ProjectElement ProjectElementDescription )
  WITH VALUE #( (
    %cid_ref = 'CID_PRJ_1'
    %target  = VALUE #( (
      %cid                      = 'CID_WBS_1'
      ProjectElement            = 'PRJ-2026-01-01'
      ProjectElementDescription = 'Civil Engineering & Foundation'
    ) )
  ) )
  FAILED DATA(ls_failed)
  REPORTED DATA(ls_reported).

COMMIT ENTITIES.
Clean Core Project Rule

Never write direct database updates to tables PROJ, PRPS, or AFVC. All project lifecycle events, WBS creation, and budget reservations must pass through released RAP entity I_EnterpriseProjectTP.

4. Interactive Architecture Generator

Model your Enterprise Project landscape, evaluate AVAC budget sizing, and generate clean core RAP EML code with Tool #108: