Basis Know-How BADI-NEW
Neues BAdI
Das Neue BAdI ( Kernel-BAdI ) ersetzt seit Release 7.0 das
Klassische BAdI.
Es ist Teil des Enhancement Framework und stellt dort eine
explizite Erweiterungoption dar.
Das Neue BAdI wird durch eigene ABAP-Kommandos
Neue BAdIs werden über die Transaktion SE18 ( BAdI-Builder - Definitionen ) angelegt und unter einem Erweiterungsspot zusammengefasst,
der als Container dient und die BAdI-Definitionen semantisch ( nach technischen oder thematischen Kriterien ) gruppiert.
Über die Transaktion SE19 ( BAdI-Builder - Implementierungen ) lassen sich neue BAdI-Implementierungen anlegen.
Analog zum Erweiterungsspot auf der Definitionsseite werden die BAdI-Implementierungen auf der Implementierungsseite über eine Erweiterungsimplementierung gruppiert.
Beispiel: Erweiterungsspot mit 3 BAdIs:
Jeder BAdI-Definition ist genau ein Interface zugeordnet, was die Methoden definiert, die das BAdI zur Verfügung stellt.
Jeder BAdI-Implementierung ist genau eine implementierende Klasse zugeordnet, welche dieses Interface implementiert
und in der das eigentliche Coding abgelegt ist, welches zur Laufzeit vom BAdI aufgerufen wird.
Beispiel: Aufruf von 3 Kernel-BAdIs
explizite Erweiterungoption dar.
Das Neue BAdI wird durch eigene ABAP-Kommandos
- GET BADI
- CALL BADI
Neue BAdIs werden über die Transaktion SE18 ( BAdI-Builder - Definitionen ) angelegt und unter einem Erweiterungsspot zusammengefasst,
der als Container dient und die BAdI-Definitionen semantisch ( nach technischen oder thematischen Kriterien ) gruppiert.
Über die Transaktion SE19 ( BAdI-Builder - Implementierungen ) lassen sich neue BAdI-Implementierungen anlegen.
Analog zum Erweiterungsspot auf der Definitionsseite werden die BAdI-Implementierungen auf der Implementierungsseite über eine Erweiterungsimplementierung gruppiert.
Beispiel: Erweiterungsspot mit 3 BAdIs:
Jeder BAdI-Definition ist genau ein Interface zugeordnet, was die Methoden definiert, die das BAdI zur Verfügung stellt.
Jeder BAdI-Implementierung ist genau eine implementierende Klasse zugeordnet, welche dieses Interface implementiert
und in der das eigentliche Coding abgelegt ist, welches zur Laufzeit vom BAdI aufgerufen wird.
Beispiel: Aufruf von 3 Kernel-BAdIs
DATA:
lro_abc_badi1 TYPE REF TO zex_abc_badi1,
lro_abc_badi2 TYPE REF TO zex_abc_badi2,
lro_abc_badi3 TYPE REF TO zex_abc_badi3.
GET BADI lro_abc_badi1.
CALL BADI lro_abc_badi1->m11.
CALL BADI lro_abc_badi1->m12.
GET BADI lro_abc_badi2.
CALL BADI lro_abc_badi2->m21.
CALL BADI lro_abc_badi2->m22.
GET BADI lro_abc_badi3.
CALL BADI lro_abc_badi3->m31.
CALL BADI lro_abc_badi3->m32.
Basis Administration
Die Angaben im Text sind unverbindlich und dienen lediglich zu Informationszwecken.
Alle Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen.
Alle Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen.