S/4HANA Clean Core
Architect / Cross-trackAdvanced

Clean Core Risk: Modifications, Implicit Enhancements and Unreleased Objects

Identify the highest-risk custom code patterns that make upgrades difficult.

Explanation

The biggest Clean Core risks are direct modifications to SAP standard objects, implicit enhancements in fragile locations, direct updates to standard tables, and usage of unreleased SAP internals. These patterns may work today but create upgrade, testing and support risk. Implicit enhancements are not always forbidden in on-premise systems, but they require strong justification, documentation and regression testing. Unreleased objects can change without compatibility guarantees. Clean Core assessment should identify these risk patterns and replace them with released extension points wherever practical.

Code example

ABAP Code
* High-risk patterns to flag during Clean Core review:** 1. Direct modification of SAP standard object.* 2. Implicit enhancement in standard include without documentation.* 3. Direct UPDATE/DELETE/INSERT on SAP standard tables.* 4. Usage of unreleased function module/class for business-critical process.* 5. Custom code depending on internal standard table structures. * Safer pattern:* Replace with released BAdI/API/CDS/RAP option where possible.* If not possible, document risk and regression test during upgrade.

Real project scenario

A pricing issue was caused by an implicit enhancement added inside a standard pricing include. During upgrade, the surrounding standard logic changed and the enhancement no longer behaved correctly.

Common mistakes

- Assuming all working custom code is upgrade-safe. - Ignoring implicit enhancements during upgrade planning. - Not documenting why unreleased object is used. - Not testing modified processes after upgrade.

Best practices

- Inventory risky enhancements. - Replace with released alternatives where possible. - Document unavoidable risk. - Regression test high-risk objects during upgrade.

Interview angle

A senior answer should identify modifications, implicit enhancements and unreleased object usage as Clean Core risk areas.