Kein starrer Käfig – Wie sich das BOPF Framework an Ihre Anforderungen anpasst
Das Business Object Processing Framework (BOPF) bietet ein umfangreicheres Fundament, um schnell und kostengünstig neue Eigenentwicklungen mit ABAP umzusetzen. Es bietet eine einheitliche Architektur und Struktur und implementiert bereits Standardfunktionalitäten von Haus aus (z.B. Datenbankzugriff und Pufferung). Gleichzeitig ist es flexibel genug, um vollständig an die eigenen Projektanforderungen angepasst zu werden.
Der Einsatz eines Frameworks für die eigene SAP Entwicklung ist nicht immer unumstritten. Es bietet aus Entwicklersicht zwar viele Vorteile und Zeitersparnisse; häufig aber nur, wenn die vom Framework vorgesehenen Wege auch eingeschlagen werden. Ein Abweichen vom Standardverhalten des Frameworks ist häufig entweder gar nicht möglich oder nur mit hohem Aufwand verbunden.
Im folgenden Artikel erfahren Sie, welche Features BOPF von Haus aus mitbringt und wie Sie das Framework gemäß Ihren individuellen Anforderungen verwenden können.
Als idealer Einstieg in BOPF Thema gilt unser Kickstarter Angebot
Unsere Lösung für Projekte im SAP Transportation Manangement ist die TM Datenmigration mit BOPF
Gerne spreche ich mit Ihnen auch im Detail über Ihre Ausgangslage und zeige Lösungsmöglichkeiten auf. Auf Wunsch unterbreite ich Ihnen im Anschluss ein unverbindliches Angebot.
Kontaktieren Sie mich: Telefon 0211.9462 8572-16 oder per E-Mail info@erlebe-software.de
Ausgangslage aka “Features BOPF provides”
Die BOPF Entwicklungsumgebung bietet diverse Features, um saubere und konsistente Business Objekte anzulegen. Namen für DDIC-Elemente wie Strukturen, Tabellen und ABAP Klassen werden auf Wunsch automatisch vorgeschlagen:
Über eine Prüf-Methode kann die Konsistenz der eigen Business Objekte sichergestellt werden:
Mittels Check & Correct können automatisierte Anpassungen am BO-Modell durchgeführt werden, um das BO in einen konsistenten Zustand zu überführen:
Das sind nur drei Features, mit denen BOPF den Entwicklungsprozess unterstützt und für konsistente Eigenentwicklungen sorgen kann.
Anforderung aka “Breaking the Cage”
In einem unserer Kundenprojekte wurde eine eigene Data Access Class (DAC) gebaut, um mit einem kundeneigenen Business Object für HR Personalstammdaten den SAP Standard “zu verschalen”. Da die DAC Lese- und Schreibzugriff unterstützt, ist es notwendig, dass beim Sperren des Business Objects auch die SAP Standardtabellen entsprechend gesperrt werden. Dies wird durch eine Sperrklasse sichergestellt. Das Problem dabei: Wird eine Konsistenzprüfung im Standard durchgeführt, erscheint standardmäßig kein weiterer Hinweis, dass beim Einsatz der Data Access Class auch die entsprechende Sperrklasse verwendet werden sollte. Wie dennoch eine Warnmeldung ausgegeben werden kann, erfahren Sie im nächsten Abschnitt.
Konsistenzprüfungen erweitern
BOPF gibt als Framework Struktur und Abläufe vor, ist aber glücklicherweise kein Käfig. An vielen Stellen ist es möglich eigene Logik einzufügen und somit Einfluss auf eben diese Abläufe zu nehmen. Dadurch ist es beispielsweise möglich, das Verhalten der Check bzw. Check & Correct Methoden zu beeinflussen. Dazu wird weder eine Modifikation noch eine Erweiterung benötigt:
Durch diese Anpassung wird der Entwickler nun informiert, dass es eine passende Sperrklasse zu unserer DAC gibt. Noch eleganter wäre es natürlich, wenn die Check & Correct Methode die Verwendung der Sperrklasse bei Verwendung der Data Provider Class direkt einbaut. Auch dafür bietet BOPF die Möglichkeit, diese Funktionalität in den Standard zu integrieren – ohne Modifikation oder Erweiterung:
Dies ist nur ein Anwendungsfall für die vielen Möglichkeiten, die mir BOPF bietet um vom Standardweg des Frameworks abzuweichen.
Haben Sie weitere Fragen zur Anpassung des BOPF Frameworks? Wie gehen Sie bei Ihren Anpassungen vor? Ich freue mich auf einen Erfahrungsaustausch über die Kommentarfunktion am Ende das Artikels.