Pioneering the next step.
SAP Gold Partner

SAP-Wiki

BAdI – Business Add-In

Ein BAdI, Business Add-In, ist SAPs objektorientierte Technik, um den Standard an vorgesehenen Stellen ohne Codeänderung zu erweitern. SAP definiert dazu ein Interface, Kunden legen eine oder mehrere Implementierungen an, die über Filterwerte wie Werk oder Buchungskreis gezielt aktiv werden. Im SAP S/4HANA-Umfeld zählen dabei vor allem freigegebene, sogenannte released BAdIs.
Definition

Was ist BAdI?

Die BAdI-Technik kam mit dem objektorientierten Erweiterungskonzept als Nachfolger der älteren User-Exits und erlaubt seitdem mehrere parallele Implementierungen an einer vorgesehenen Stelle im SAP-Standard. SAP definiert dazu ein festes Interface mit Methoden, die Kunden mit eigener Logik füllen, ohne den umgebenden Standardcode zu verändern. Damit bleiben Upgrades und Support Packages an dieser Stelle ohne aufwendigen Modifikationsabgleich möglich.

Relevant ist die BAdI für Entwickler, die Standardprozesse ohne Codeänderung erweitern wollen, heute besonders im Zusammenhang mit Clean Core und SAP S/4HANA. Dort erlaubt SAP für Erweiterungen nur noch freigegebene, sogenannte released BAdIs, die Teil des offiziellen Extensibility-Konzepts sind. Klassische, nicht freigegebene BAdIs bleiben technisch oft nutzbar, gelten im Cloud-Kontext aber nur noch als bedingt zulässig.

Im Ablauf wird zunächst die passende BAdI-Definition über Transaktion SE18 gesucht, dann in SE19 eine Implementierung angelegt und mit Filterbedingungen wie Buchungskreis oder Werk versehen. Eine typische Stolperstelle im Clean-Core-Kontext: Wird eine klassische, nicht freigegebene BAdI genutzt, kann das nächste Cloud-Update die Erweiterung unbrauchbar machen, ohne dass eine sofortige Fehlermeldung darauf hinweist.

Funktionen

Wie funktioniert BAdI?

SAP definiert an vorgesehenen Programmstellen eine BAdI mit einem Interface aus Methoden. Kunden legen dazu über Transaktion SE19 eine oder mehrere Implementierungen an, die zur Laufzeit über Filterwerte wie Buchungskreis, Werk oder Verkaufsorganisation gezielt aktiviert werden. Der umgebende SAP-Standardcode bleibt dabei vollständig unverändert, was den späteren Modifikationsabgleich überflüssig macht.

Im SAP S/4HANA-Umfeld unterscheidet SAP zwischen klassischen BAdIs direkt im ABAP-Stack und freigegebenen, released BAdIs, die offizieller Bestandteil des Extensibility-Konzepts sind. Released BAdIs bleiben auch in der SAP S/4HANA Public Cloud über In-App-Extensibility oder Side-by-Side-Extensibility auf der SAP BTP nutzbar, klassische BAdIs sind dort meist gar nicht oder nur eingeschränkt verfügbar.

Vorteile
Modifikationsfrei

Der SAP-Standard bleibt unverändert, Support Packages und Upgrades laufen an dieser Stelle ohne aufwendigen Abgleich durch.

Mehrfachnutzung möglich

Mehrere Implementierungen lassen sich parallel über Filterwerte wie Werk oder Buchungskreis steuern, anders als bei älterer Technik.

Objektorientiert und strukturiert

Klare Interfaces statt verstreuter Codeeinsprünge machen BAdIs im Vergleich zu älteren Erweiterungstechniken leichter wartbar.

Cloud-fähig bei Freigabe

Released BAdIs funktionieren im Rahmen der Extensibility auch in der SAP S/4HANA Public Cloud.

Grenzen
Nicht jede BAdI ist freigegeben

Klassische, nicht released BAdIs sind im Clean-Core-Kontext nur noch bedingt zulässig und in Cloud-Systemen oft gar nicht nutzbar.

Erweiterungspunkt muss existieren

Ohne eine passende BAdI an der gewünschten Stelle bleibt nur Side-by-Side-Extensibility oder ein grundsätzlich anderer Weg.

Wildwuchs ohne Dokumentation

Viele undokumentierte Implementierungen erschweren spätere Analysen, gerade vor einem Releasewechsel oder einer Systemkonvertierung.

FAQ

Häufige Fragen zu BAdI – Business Add-In

Was ist der Unterschied zwischen einer BAdI und einem User-Exit?
Der User-Exit ist die ältere, prozedurale Technik mit festen Einsprungpunkten und meist nur einer Implementierung je Mandant. Die BAdI ist objektorientiert und erlaubt mehrere gefilterte Implementierungen parallel.
Sind klassische BAdIs in SAP S/4HANA noch erlaubt?
Technisch oft ja, im Sinne von Clean Core aber nur noch bedingt zulässig. SAP empfiehlt für Erweiterungen ausschließlich freigegebene, released BAdIs im Rahmen des offiziellen Extensibility-Konzepts.
Wie viele Implementierungen kann eine BAdI haben?
Anders als beim User-Exit sind mehrere Implementierungen möglich, gesteuert über Filterwerte wie Werk oder Buchungskreis. So lassen sich unterschiedliche Anforderungen sauber getrennt abbilden.
Was bedeutet der Status released bei einer BAdI?
Released markiert eine BAdI als offiziell freigegebenen Teil des SAP-Extensibility-Konzepts. Solche BAdIs bleiben auch in der SAP S/4HANA Public Cloud und bei künftigen Updates stabil nutzbar.
Brauche ich für jede Standardanpassung eine BAdI?
Nein, nur wenn SAP an der gewünschten Stelle einen Erweiterungspunkt vorgesehen hat. Fehlt dieser, bleibt oft nur Side-by-Side-Extensibility auf der SAP BTP als sauberer Weg.

Ihr Kontakt

Gabriele Görtz, Head of Sales & Growth
Gabriele Görtz
Head of Sales & Growth

Sprechen Sie mit uns.

Ein Erstgespräch dauert 30 Minuten. Sie können auch direkt mit einem konkreten Thema kommen. Rufen Sie an oder schreiben Sie uns.
Willkommen bei der CPRO Gruppe

Ihr bisheriger Anbieter ist jetzt CPRO. Sie wurden automatisch auf unsere neue Website weitergeleitet. Für Sie ändert sich nur der Markenauftritt: Ihre Verträge behalten ihre Gültigkeit, Ihre Ansprechpartner und die Gesellschaft als Ihr Vertragspartner bleiben unverändert. Wir freuen uns, Sie hier begrüßen zu dürfen!