Ich habe einen Report mit expliziter Erweiterungsoption (ENHANCEMENT-POINT .. SPOTS ..). Zu dieser Option existiert eine aktive Erweiterungsimplementierung, welche eine kundenspezifische Anpassung zum Standardreport darstellt.
Nun würde ich gerne diese Implementierung deaktivieren, ohne das Coding zu löschen, so dass ich diese bei Bedarf einfach wieder aktivieren kann. Eventuell soll es auch mehrere parallele Implementierungen geben, welche standardmäßig deaktiviert sind und somit nicht ausgeführt werden. Dies ist ja für BADIs problemlos möglich, aber geht das auch für solche Erweiterungsimplementierungen?
Hab auf die Schnelle nur die Möglichkeit mit Switch Framework und Schaltern gefunden. Kennt jemand eine einfachere Lösung?
Ich hab dies nun mit dem Switchframework umgesetzt:
1. Erweiterungsimplementierung in ein separates Paket erstellen, z.B. ZENHANCE_001
2. Schalter erstellen in Transaktion SFW1
3. Paket mit Implementierung dem Schalter zuweisen
4. Business Function in Transaktion SFW2 vom Typ G = Enterprise Business Function erstellen
5. Schalter der Business Function zuweisen und Eigenschaft Reversibel aktivieren
6. In Transaktion SFW 5 kann nun die Business Function aktiviert/deaktiviert werden
Folgende Benutzer bedankten sich beim Autor IHe für den Beitrag: Legxis
Zumindest bei Implementierungen innerhalb eines Erweiterungsspots geht es auch einfacher:
Im SE18 hatte ich den Erweiterungsspot ME_PROCESS_PO_CUST
Dieser hatte 3 Implementierungen. Die erste war inaktiv, die 2. und 3. war aktiv.
Eine Prüfung mit der Ikone "Waage" ergab, dass nur 1 Implementierung aktiv sein darf. Im Debugger hatte ich auch festgestellt, dass nur die 3. Implementierung aufgerufen wurde.
Die 3. Implementierung wollte ich deaktivieren, damit die 2. wieder läuft.
Dazu die "BAdI-Implementierung" (bei mir die 3.) mit SE19 aufrufen (2. Punkt von oben "Klassiches Badi Implementierung" ändern.
Dann Menüpunkt Implementierung -> Deaktivieren und sichern.
Bei anderen Erweiterungsspots oder Badis kann es sein, dass in SE19 nicht der 2. Punkt, sondern der erste Punkt "Neues Badi" zum Ziel führt. (ausprobieren)