BAdI
ABAP DevelopmentAdvanced

BAdIs in S/4HANA and Clean Core

Understand why released BAdIs are important in S/4HANA clean-core extension strategy.

Explanation

In S/4HANA, clean core encourages teams to avoid risky modifications and use released extensibility options. Released BAdIs are one of the preferred ways to add custom behavior when SAP provides them. Compared with implicit enhancements, BAdIs are more intentional, easier to track and usually safer during upgrades. In cloud or clean-core environments, developers must check whether the BAdI is released and supported for the extension scenario. A senior consultant should know that the enhancement approach in S/4HANA is not simply to repeat ECC implicit enhancement habits.

Code example

ABAP Code
* Clean-core extension thinking:* 1. Check whether configuration can solve the requirement* 2. Check released BAdI or key-user extensibility* 3. Check released API or RAP/CDS extension option* 4. Avoid implicit enhancement unless there is no safe released option * Goal:* Keep the core upgrade-safe and reduce custom-code risk.

Real project scenario

A sales validation in S/4HANA is implemented through a released BAdI instead of an implicit enhancement, reducing upgrade risk and aligning with clean-core governance.

Common mistakes

- Using ECC-style implicit enhancement without checking released BAdI. - Ignoring clean-core extensibility rules. - Using unreleased objects in cloud-style development. - Not documenting enhancement decision.

Best practices

- Check released BAdIs first. - Avoid unreleased object dependency where possible. - Document clean-core decision. - Review BAdIs during upgrade planning.

Interview angle

For S/4HANA interviews, explain that released BAdIs are preferred clean-core extension points when available.