# Business Add-Ins (BAdIs) suchen und finden: Ein Beispiel Quelle: https://erlebe-software.de/abap-und-co/business-add-ins-badis-suchen-und-finden/ Stand: 2026-07-28 Häufig steht ein Entwickler vor der Aufgabe, bestimmte Anpassungen für die Verarbeitung einer Transaktion vorzunehmen. Schnell ist meistens klar, dass dafür ein Business Add-In (BAdI) genutzt werden kann. Aber was ist, wenn gerade kein BAdI bekannt ist und der SAP-Guru des Unternehmens, der alle BAdIs auswendig kennt, nicht verfügbar ist? Genau dann hilft dieser kleine Trick, mit dem BAdIs einer Transaktion ganz einfach gefunden werden können. ## Das Wichtigste im Überblick - **Klasse CL_EXITHANDLER in der SE24 aufrufen** - **Methode GET_INSTANCE auswählen** - **Breakpoint bei der CASE-Anweisung setzen** - **Gewünschte Transaktion aufrufen** - **Im Debugger das Feld EXIT_NAME bei den Variablen aufnehmen** - **BAdI-Namen merken und in der SE18 die Definition ansehen** - **Implementierung des BAdIs über SE19** ## Die Klasse der BAdIs Die Klasse **CL_EXITHANDLER** ist eine Klasse für Exit-Techniken, also auch BAdIs, welche die **Funktionsbaustein-Exits** abgelöst haben. Immer wenn ein BAdI durchlaufen wird, wird diese Klasse aufgerufen. Daher ist hier eine **gute Einstiegsmöglichkeit,** um BAdIs zu finden. Die Klasse enthält die Methode **GET_INSTANCE**, die eine **Referenz auf eine generierte EXIT-Klasse** zurückgibt. Genau diese Stelle hilft bei unserem Problem weiter. Wenn wir in dieser Methode z. B. bei der **CASE-Anweisung** einen **Breakpoint** setzen, öffnet sich der [Debugger](https://erlebe-software.de/knowhow/abap-debugger/) immer, wenn gerade ein BAdI durchlaufen werden soll. Wenn sich der Debugger öffnet, muss die Variable **EXIT_NAME** bei den Variablen hinzugefügt werden. Diese enthält den **Namen des aktuellen BAdIs**. Mittels **F8** kann man so **alle BAdIs einer Transaktion** finden. ![Name des aktuellen BAdIs](https://erlebe-software.de/files/2015/02/021215_1306_Wiefindeich1.png) Name des aktuellen BAdIs ### Definition und Implementierung [Die Definition der BAdIs](https://mindsquare.de/knowhow/sap-badis/) kann anhand der Bezeichnung aus dem Datenfeld **EXIT_NAME** dann in der **Transaktion SE18** betrachtet werden. Sollte es das gewünschte BAdI sein, so erfolgt die **Implementierung** über die **Transaktion SE19**. ## Fazit Wie Sie sehen, ist diese Methode ein **einfacher Trick**, um BAdIs zu finden. Sie können die Transaktion ganz normal verwenden und sehen dann, ob an einer **gewünschten Stelle ein BAdI existiert**, den Sie verwenden können. *Dieser Artikel erschien bereits im Februar 2015. Der Artikel wurde am 03.02.2026 erneut geprüft und mit leichten Anpassungen aktualisiert.* ## FAQ ### Wann ist dieser Ansatz zur BAdI-Suche besonders sinnvoll? Die Methode eignet sich vor allem dann, wenn zu einer Transaktion kein bekanntes BAdI dokumentiert ist und keine interne Übersicht oder Expertise kurzfristig verfügbar ist. ### Warum ist die Klasse CL_EXITHANDLER ein geeigneter Einstiegspunkt? CL_EXITHANDLER wird immer dann durchlaufen, wenn ein BAdI ausgeführt wird. Ein Breakpoint in der Methode GET_INSTANCE ermöglicht es daher, zur Laufzeit alle relevanten BAdIs einer Transaktion zu identifizieren. ### Wie geht man nach dem Ermitteln des BAdI-Namens weiter vor? Der im Debugger ermittelte BAdI-Name (EXIT_NAME) wird in der Transaktion SE18 zur Einsicht der Definition verwendet; die Implementierung erfolgt anschließend über SE19.