SAP-Integration in den IBM Business Process Manager
Immer dann, wenn z. B. Bedarfsanforderungen erstellt, Rechnungsdaten abgerufen oder Kostenstellenzugehörigkeiten geprüft werden, ist es notwendig, dass der IBM BPM mit dem vorhandenen SAP kommuniziert.
Direkte Anbindung
In aktuellen SAP-Versionen kann man die Webservices direkt aus den verfügbaren SAP-Schnittstellen generieren. Diese können im BPM aufgerufen werden. Was einfach klingt, erweist sich oft als Kampf mit komplizierten Datenstrukturen, die zu noch komplizierteren Aufrufen führen. Auch das direkte Ansprechen der Java-Schnittstellen mittels SAP Java Connector ist mühselig, da stets sämtliche Schnittstellen und Attributsnamen bekannt sein müssen. Der Programmierer benötigt hier entweder volle Kenntnis des SAP-Systems und der Schnittstellen oder einen dauerhaften Ansprechpartner, der jederzeit für Rückfragen zur Verfügung steht. Doch wie soll man aus den oft verwirrenden BAPI-Calls die richtigen Werte auslesen? Wie soll das Ganze anschließend im BPM verwendet werden?
Der IBM-SAP-Adapter
Die Antwort ist einfach: IBM bietet bereits seit einiger Zeit einen Adapter speziell für SAP an. Dieser kann auf verschiedene Weise an den IBM BPM angebunden werden. Am einfachsten lässt sich SAP mit der Advanced-Variante des Business Process Manager ansprechen. Hier werden SCA-Schnittstellen verwendet und mit einem Advanced Integration Service an den Business-Process-Model-&-Notation-Prozess (BPMN) angebunden. Der SAP-Adapter legt die SCA-Schnittstelle zu SAP über den Namen des BAPI-Bausteins an. Anschließend kann ein grafisches Mapping verwendet werden, um entsprechende Schnittstellen zum Prozess herzustellen. Ob die Anbindung funktioniert, lässt sich leicht über die integrierten Debugging-Tools des IBM Integration Designer testen, der Entwicklungsumgebung für Advanced Integration Services.
Etwas aufwändiger stellt sich das Problem ohne SCA-Fähigkeit dar. Mit der BPM-Standard-Version führt der Weg über Java-Module, welche über eine Webservice-Schnittstelle in den Prozess eingebunden werden. Dabei erzeugt der SAP-Adapter Java-Objekte, die den Ein- und Ausgaben des BAPI-Bausteins entsprechen. Diese müssen durch Java-Code manuell auf die jeweiligen Attribute aus dem Prozess gelegt werden. Die so entstehende Enterprise Java Bean (EJB) kann als Unternehmensanwendung auf einem WebSphere Application Server installiert und über die Webservice-Schnittstelle aufgerufen werden. Ein solcher Application Server wird bei der Installation des BPM automatisch mit eingerichtet. Test und Debugging können hier über die üblichen Schnittstellentests oder zusätzlich implementierte Java-Methoden durchgeführt werden.
SolMan-Einbindung
Einen Sonderfall beim Thema SAP-IBM-Integration stellt der SAP Solution Manager dar. Mit ihm stellt SAP eine Sammlung von Werkzeugen, Inhalten und Services zur Verfügung, über die sich Systemlandschaften konsolidieren und zentral administrieren lassen. Als funktionales Prozessmodell konzipiert, können SAP-Anwender damit auch rudimentäre Abläufe im ERP-System steuern. Tiefergehende Backend-Logik für solche Zwecke enthält er jedoch nicht. An dieser Stelle lässt sich trefflich der IBM BPM anknüpfen. Als Entwicklungstool kann er im Solution Manager erstellte Prozesse, sogenannte Geschäftsentwürfe, importieren. Ein Geschäftsentwurf wird im SAP Solution Manager auf der Basis von SAP-Prozessen definiert und durch eine Reihe von Iterationen optimiert.
Über Import- und Exportoperationen zwischen SAP Solution Manager und Process Designer bzw. Process Center werden die in Repositorys gespeicherten Daten ausgetauscht. Im IBM BPM werden diese dann weiter modelliert und verfeinert, um für bestimmte Projekte präzise Geschäftsszenarios bereitzustellen. Die fertigen Entwürfe werden anschließend zum Konfigurieren zurück in den SAP Solution Manager exportiert.
SAP-Integration ist möglich und geht mit BPM Advanced einfach von der Hand. Für einige wenige Anbindungen kann man allerdings bedenkenlos auf die Advanced-Variante verzichten – insbesondere, wenn keine weitere SAP-Anbindung stattfinden wird oder mehr Budget für Entwicklung und Wartung vorhanden ist als für den Lizenzkauf. Eine solche direkte Anbindung ohne SAP-Adapter empfiehlt sich generell nur dann, wenn sehr viel umfangreiches Fachwissen und sehr gute Kenntnisse von SAP im Allgemeinen und dem betreffenden SAP-System bei den beteiligten Entwicklern vorliegen.