Strategic architectural guide to modernizing SAP EHS. Replace procedural custom code with modern Incident Management (I_EHSIncidentTP), OSHA 300 compliance, and Clean Core BAdIs.
Environment, Health, and Safety (EHS) is subject to strict governmental regulations (US OSHA, European REACH, global ESG disclosure frameworks). In classic SAP ECC, EHS was notoriously complex and heavily modified with procedural code that resisted upgrades.
In SAP S/4HANA Clean Core, EHS is completely re-architected into modular, event-driven components:
| Capability | Classic SAP EHS (Deprecated) | S/4HANA Clean Core EHS |
|---|---|---|
| Data Model & Tables | Direct reads on CCIHT_IAL, ESTVA |
Released RAP BO I_EHSIncidentTP & CDS entities |
| Workflow Engine | Classic SWDD / BOR BUS1001 |
Flexible Workflow SWF_FLEX with Fiori My Inbox |
| Regulatory Reporting | Custom ABAP ALV reports | Standard OSHA 300/300A/301 PDF rendering via ADS |
| Emergency Integration | Synchronous RFC / Phone tree scripts | Asynchronous CloudEvents 1.0 via SAP Event Mesh |
In ABAP Cloud, safety incidents are registered and escalated through native Entity Manipulation Language (EML) without procedural function modules:
MODIFY ENTITIES OF I_EHSIncidentTP
ENTITY Incident
CREATE FIELDS ( IncidentTitle IncidentCategory Plant IncidentStatus RegulatoryReportingStandard )
WITH VALUE #( (
%cid = 'CID_INC_1'
IncidentTitle = 'Chemical Spill Containment'
IncidentCategory = 'RELEASE'
Plant = '1010'
IncidentStatus = 'SUBMITTED'
RegulatoryReportingStandard = 'OSHA_300'
) )
FAILED DATA(ls_failed)
REPORTED DATA(ls_reported).
COMMIT ENTITIES.
Never directly insert or modify records in legacy EHS database tables. All regulatory audits and incident reports must be orchestrated through released Clean Core entities like I_EHSIncidentTP.
Model your EHS compliance architecture, evaluate OSHA 300 reporting rules, and generate clean core RAP EML code with Tool #107: