Mithilfe von BRFplus bzw. BRF+ (SAP Business Rule Framework plus) lassen sich komplexe Geschäftsregeln in SAP ohne Programmierkenntnisse abbilden. Die Anwender können die Geschäftsregeln flexibel in verschiedenen Formaten pflegen, die ihren Anforderungen am besten entsprechen. Das Framework ist universell einsetzbar − in einem SAP ERP-System, in SAP S/4HANA oder in SAP MDG. In einem anderen Blogbeitrag haben wir uns aus einer betriebswirtschaftlichen Perspektive mit BRFplus auseinandergesetzt. Nachfolgend wird die technische Umsetzung von BRFplus genauer betrachtet.
Die BRFplus-Oberfläche ist in drei Bereiche eingeteilt:
Toolbar
Navigationsleiste
Work Area
Für die Erstellung von Geschäftsregeln sind folgende Komponenten erforderlich:
Eine Anwendung, in der sämtliche Geschäftsregeln gespeichert werden
Eine Funktion, die als Hauptbestandteil dient und in der Ein- und Ausgangsparameter definiert werden
Ein Regelsatz für die einzelnen Geschäftsregeln
Ggf. Ausdrücke wie:
eine Entscheidungstabelle, in der die Geschäftsregeln auch gebündelt abgebildet werden können
eine Formel für die Durchführung von Berechnungen oder Zeitermittlungen
Datenbankabfragen, um Informationen schnell und einfach aus SAP-Tabellen zu extrahieren
Loops, um Tabelleneinträge zeilenweise prüfen und verarbeiten zu können
Ein Datenobjekt, das eine Referenz zu einem Data-Dictionary-Objekt besitzt
Nachdem alle Objekte angelegt wurden, kann der Navigationsbereich wie folgt aussehen:
Wir befinden uns in der Transaktion “brf+”. Zuerst wird eine neue Applikation angelegt inkl. einer Beschreibung und eines Entwicklungspakets.
Über “Create And Navigate To Object” gelangt man sofort zum erstellten Objekt. Außerdem sind die Objekte über die Navigationsleiste aufrufbar. Alle Objekte müssen, falls sie einsatzbereit sind, aktiviert werden. Das geschieht über den “Activate”-Button. Als nächstes wird eine Funktion angelegt.
Auch hier gelangt man über “Create And Navigate To Object” zum gewünschten Objekt. Falls gewünscht, lassen sich zusätzliche Datenobjekte einbinden, die als Ein- und Ausgabeparameter dienen sollen. In dieser Funktion wird nun ein Regelsatz angelegt. Das geschieht in der Funktion über den Reiter “Assigned Rulesets”.
Im Regelsatz werden die Regeln angelegt. Beispielregeln können wie folgt aussehen:
Wenn Land = “DE” und Straße leer = Fehler “Straße überprüfen, Feld darf nicht leer sein”
Wenn Typ = “Person” und Geburtsdatum leer = Fehler “Geburtsdatum überprüfen, Feld darf nicht leer sein”
Wenn Eintragungsdatum > aktuelles Datum = Fehler “Eintragungsdatum liegt in der Zukunft”
Regeln können auf verschiedene Arten implementiert und geprüft werden:
Erstellung einer Regel im Regelsatz
Erstellung eines Eintrags in einer Entscheidungstabelle mit anschließender Prüfung im Regelsatz
Nachdem alle Informationen in BRFplus abgebildet wurden, muss der Funktionscode generiert und an der gewünschten Stelle implementiert werden.
In unserem Beispiel implementieren wir die BRFplus-Funktion in das Business Data Toolset (BDT). Das BDT ist ein zentrales Werkzeug zur Pflege von Stammdaten und einfachen Bewegungsdaten. Beim Drücken auf den Speichern-Button wird die entsprechende Funktionalität ausgeführt. Das Ergebnis eines leeren Geschäftspartners kann am Schluss beispielsweise wie folgt aussehen:
BRFplus ist universell einsetzbar und nicht an ein bestimmtes SAP-System (SAP S/4HANA, SAP ERP, SAP MDG) gebunden. Am Beispiel des BDT wird der Speichern-Button ausgeführt. Beim Drücken auf Speichern wird ein Baustein zwischengeschaltet, der die BRFplus-Funktionalität ausführt. In der BRFplus-Applikation werden sämtliche Daten validiert und die validierten Daten an den Baustein zurückgeliefert.