CONCLUSIO      

Whitepaper zum SICo Layer


Lese- und Schreibzugriff auf das SAP Business Information Warehouse.

1. Einleitung
2. Theoretischer Hintergrund
3. Technologie
3.1 Positionierung
3.2 Realisierung
3.3 Praktischer Nutzen
4. Alleinstellungsmerkmale
5. Zusammenfassung

 

 


 

 

1 Einleitung

Bei der nachstehend als System Integration Connector (SICo-Layer) beschriebenen Schnittstelle handelt es sich um eine in Java realisierte Objektklassenbibliothek, die es Entwicklern ermöglicht, über die BAPI- Schnittstelle der SAP auf Funktionen und Objekte des

Business Information Warehouse (SAP BW) der SAP® AG zuzugreifen. Damit können u.a. Schreibzugriffe auf das SAP BW realisiert werden.

Nachfolgend wird die Funktionsweise, die technologische Plattform sowie der Nutzen des SICo-Layer beschrieben. In diesem Zusammenhang wird besonders darauf eingegangen, wie der SICo-Layer auf Komponenten der SAP ® AG aufsetzt und betriebswirtschaftlichen Mehrwert schafft, indem er die strategische Zielrichtung der SAP AG unterstützt und den Funktionsumfang des SAP BW entscheidend erweitert.

2 Theoretischer Hintergrund

Zu den Fundamenten des Data Warehousing gehörte bis vor kurzem noch die sog. "Lehre von den zwei Welten": Sie proklamierte die strikte Trennung zwischen analytischen und operativen Anwendungen. Doch in den letzten Jahren wurden analytische und operative Systeme immer enger miteinander verzahnt. So sind ganz neue Herausforderungen an Systementwickler entstanden. Um diese Herausforderungen verstehen zu können, empfiehlt es sich, die Entwicklung des aktuellen Data Warehousing kurz zu rekapitulieren.

Die folgende Skizze beschreibt Datenflüsse im operativen Geschäft:

Abb. 1: Traditionelles operatives Systemumfeld ("operative Welt")

 

 

Der Anwender greift auf ein oder mehrere operative Systeme zu. Dabei werden typischerweise Daten in Dialogprozessen übertragen. Diese Übertragung geht in beide Richtungen und umfasst nur ein geringes Datenvolumen. Es finden gleichermaßen Lese- und Schreibzugriffe statt.

Datenflüsse in der "analytischen Welt" waren demgegenüber von gänzlich anderer Art, wie die zweite Abbildung verdeutlicht:

Abb. 2: Traditionelles Data Warehousing ("analytische Welt")

 

 

Die Daten fließen hier lediglich in eine Richtung, von den operativen zum analytischen System und von dort weiter zum Anwender.

Ein weiterer Unterschied ist auch die Übertragung großer Datenmengen zwischen operativen Systemen und Data Warehouse im Rahmen von Hintergrundprozessen. Die wichtigste Differenz zu der weiter oben skizzierten "operativen Welt" ist jedoch die Verteilung von Lese- und Schreibzugriffen. Hier gilt in der "analytischen Welt" eine klare Trennung: Schreibzugriffe finden ausschließlich während des Datenimportes in das SAP BW statt, die Dialogprozesse zwischen Analyst und Data Warehouse sind ausnahmslos Lesezugriffe. Diese Trennung war so strikt, dass auf ihrer Basis zwei Sätze mit absoluter Geltung definiert werden konnten:

 
  • Niemand schreibt jemals per Dialogprozess in das Data Warehouse!
  • Das Data Warehouse schreibt niemals Daten in operative Systeme!

Wie schon oft, so ist auch dieses Mal die Zeit schnell über sog. "eherne Gesetze" hinweggegangen. Neue Anforderungen haben zur Entwicklung des sog. "operativen Data Warehousing" geführt. Diese aktuelle Form des Data Warehousing zeichnet sich durch ein viel intensiveres Ineinandergreifen operativer und analytischer Sphäre aus, wie die folgende Skizze verdeutlicht:

Abb. 3: Operatives Data Warehousing
 

 

 

Die Abbildung veranschaulicht, wie im aktuellen Data Warehousing schreibende Dialogzugriffe auf das Data Warehouse z.B. von einem Anwender durchgeführt werden, der direkt im SAP BW Datenbestände modifiziert oder korrigiert.

Der SICo-Layer verfügt zur Zeit als einziges Werkzeug über eine Schnittstelle, mit deren Hilfe ein solcher Schreibzugriff in das SAP BW realisiert werden kann. Die SAP AG hat jedoch die Zeichen der Zeit erkannt und deshalb für das Ende des Jahres 2003 eine eigene Schnittstelle für Schreibzugriffe in das Business Warehouse angekündigt. Um unseren Kunden ein Höchstmaß an Investitionssicherheit zu bieten wurde deshalb sichergestellt, dass der SICo-Layer problemlos auf beiden Schnittstellen aufgesetzt bzw. im Bedarfsfall auf das SAP-Interface portiert werden kann.

3 Technologie

Die SICONED hat sich ausschließlich auf die Realisierung technisch anspruchsvoller Projekte im Umfeld der beiden SAP-Module Business Information Warehouse (BW) und Strategic Enterprise Management (SEM) spezialisiert. Der SICo-Layer ist unsere Entwicklungsumgebung für Applikationen in diesem Umfeld. Seine Technologie hat sich deshalb im praktischen Einsatz schon häufig bewährt. Unser neuestes Beispiel ist CONCLUSIO ®, das leistungsfähigste Werkzeug zur Planung, Simulation und Optimierung von Konditionssystemen im Marketing- und Vertriebsbereich.

3.1 Positionierung

Sowohl der SAP JavaConnector als auch der System Integration Connector der SICONED sind komplett in Java erstellte Komponenten. Sie verfügen somit über alle Vorteile eines offenen Standards. Dies fängt bei der flexiblen Auswahl der Applikationsart an und endet mit der maximalen Portabilität in Bezug auf Plattform und Betriebssystem. Je nach Anforderung lassen sich somit Applikationen, Applets, Servlets oder Java Server Pages (JSP) realisieren. Mit "Applikation" ist hier eine klassische Stand-Alone Anwendung gemeint, die auf einem lokalen Rechner installiert und gestartet wird. Applets hingegen sind Java-Programme die in HTML-Seiten eingebettet werden und - nachdem sie mit der Webseite über das Intra-/ Internet geladen wurden - innerhalb eines Browser auf dem Client Rechner laufen.

Die zukunftsweisendste und interessanteste Alternative stellen Java Server Pages (JSP) bzw. Servlets dar. Mit ihnen ist es möglich, dynamische Webseiten auf dem Server zu erstellen, die jeweils zum Abrufzeitpunkt die aktuellsten Informationen aus den Quellsystemen ziehen und in die HTML Seite integrieren. Zum Browser wird dann eine reine HTML-Seite gesendet, welche keine speziellen Plug - Ins oder Berechtigungen auf dem Browser benötigen. Ebenfalls können die unterschiedlichen HTML - Versionen und Modelle der Browserhersteller berücksichtigt werden. Selbstverständlich ist es ebenfalls möglich, die extrahierten Daten auch in anderen Formaten (XML, XHTML, WML usw.) bereitzustellen, um sie auf diversen Endgeräten wie z.B. einem WAP - fähigen Mobiltelefon zu visualisieren.

3.2 Realisierung

Bis etwa Mitte des Jahres 2001 setzte die SAP AG bei der Entwicklung ihrer Software fast ausschließlich auf die eigene Sprache ABAP. Seitdem hat die SAP AG ihre Positionierung geändert. Neben ABAP wurde Java zur zweiten offiziellen Programmiersprache der SAP AG erklärt. Konsequenterweise stellt die SAP ® eine Schnittstelle zwischen Java und ABAP zur Verfügung, den sogenannten Java Connector (JCo). Die JCo-API unterstützt SAP ® R/3 ® Release 3.1H und höher, sowie die mySAP Business Suite - Komponenten, welche BAPI [1] -Funktionsaufrufe unterstützen.

Mit Hilfe des Java Connectors ist es ABAP - Programmierern möglich, aus ABAP heraus auf Java-Komponenten zuzugreifen (outbound communication). Ebenso können Entwickler auf SAP ® Funktionen zugreifen (inbound communication). Damit steht dem Entwickler ein breites Spektrum an SAP ® - Funktionen zur Verfügung. Zudem hat er die Sicherheit, dass die von ihm entwickelten Lösungen auf einem zukunftsorientierten und weitestgehend Release - unabhängigen Interface aufsetzen.

Der hier vorgestellte System Integration Connector (SICo-Layer) setzt auf den Java Connector der SAP auf. Der SICo-Layer ist eine auf der Programmiersprache JavaT basierende Schnittstelle zum SAP Business Information Warehouse (SAP BW) die von der SICONED entwickelt wurde. Vom SICo-Layer werden die Releasestände ab SAP BW 2.x unterstützt.

Weiter oben wurde bewusst der neutrale Ausdruck "Entwickler" statt des Begriffes "Java-Programmierer" gewählt. Ein besonderer Vorzug des SICo-Layers ist es nämlich, mittels eines sog. " Wrapper" aus sämtlichen Programmiersprachen heraus adressierbar zu sein, die den Zugriff auf COM- Objekte erlauben (z.B. Visual Basic und Visual C++). Die Funktionalität des SICo-Layer steht so einer großen Entwicklergemeinde zur Verfügung.

Der Zugriff auf die Funktionen der BAPI der SAP (SAB BW-OBI) erfolgt über ein vollständig gekapseltes Objektmodell. Der SICo-Layer vereinfacht die komplexe Ansteuerung der JCo-Objektklassen erheblich, bzw. er arbeitet die durch die JCo-Objektklassen gelieferten Ergebnismengen so auf, dass eine einfache Weiterverarbeitung gewährleistet wird.

Die Vorteile des System Integration Connectors (SICo-Layer) im Überblick:

  •  Schnellste verfügbare Schnittstelle in das SAP BW.
  •  Release - Unabhängigkeit vom SAP GUI (ODBO).
  •  Geringerer Installationsaufwand auf der Client-Seite (GUI, ODBO).
  •  Plattformunabhängigkeit (Linux, UNIX, Windows).
  •  Skalierbarkeit (Multithreading).
  •  BW-OBI Durchgriff auf das betriebswirtschaftliche Objektmodell der SAP.
  •  Performanter schreibender Zugriff direkt in das SAP BW.

3.3 Praktischer Nutzen

Der praktische Nutzen des SICo-Layers lässt sich am Beispiel eines simplen Lesezugriffes auf das Data Warehouse verdeutlichen. Soll etwa von einer beliebigen Applikation ein MDX - Statement an das SAP BW gesendet werden, um Datenbestände auszulesen, so müssen ohne Einsatz des SICo-Layers und seiner Klassenbibliothek die folgenden Interaktionen zwischen der Applikation und dem Java Connector stattfinden:

1) Initialisierungsaufruf
2) Verbindung zum SAP BW aufbauen
3) Anforderung einer Prozess - ID
4) Übergabe des MDX - Statements
5) Syntaxcheck; MDX - Statement ausführen
    (Noch werden keine Daten gelesen!)
6) Dimensionsdaten der Zeilen (Rows) lesen
7) Dimensionsdaten der Spalten (Columns) lesen
8) Daten lesen
9) Prozess schließen

 

Die Ergebnisse dieser Abfragen werden in Form flacher Tabellen ausgegeben, die vor ihrer weiteren Verwendung noch in das jeweils gewünschte Format zu konvertieren sind.

Bei Einsatz des SICo-Layers vereinfacht sich die gesamte Prozedur zu:

1) Initialisierungsaufruf
2) Verbindung zum SAP BW aufbauen
3) MDX - Statement ausführen

 

Das Ergebnis der Abfrage wird nun in einem Objekt abgelegt, das wahlweise verschiedene Formate ausgibt (z.B. HTML).


Die separate Konvertierung flacher Tabellen in das gewünschte Ausgabeformat kann deshalb komplett entfallen.

Der Einsatz des SICo-Layers ermöglicht auch jenen Entwicklern eine komfortable Anwendungsschicht für den einfachen Zugriff auf die Daten und Strukturen im SAP ® BW bereit, die kein tieferes SAP BW Know how besitzen. Damit wird die Applikationsentwicklung entscheidend beschleunigt.

4 Alleinstellungsmerkmale

Der SICo-Layer wird im Umfeld des SAP Business Warehouse (BW) bzw. SAP Strategic Enterprise Management (SEM) eingesetzt. Deshalb wurde sichergestellt, dass er sowohl auf der Basis seiner eigenen Schreibschnittstelle, als auch mit dem von SAP in Aussicht gestellten Interface funktioniert. Das Berechtigungskonzept der SAP greift in diesem Zusammenhang ebenfalls.

Zusätzlich zu dieser reibungslosen Integration in das SAP-Umfeld bietet der SICo-Layer jedoch noch weitere Funktionalitäten, die über den gegenwärtigen Standard des SAP BW/SEM hinausgehen. Vor allem zwei Neuerungen haben sich bei Schreibzugriffen in das SAP BW/SEM als äußerst effizient erwiesen: die fortgeschrittene Datenfreigabe und anwenderspezifische Definition von Hierarchielevel.

Die fortgeschrittene Datenfreigabe stellt etwa im Rahmen einer Planung oder Simulation sicher, dass der Planer die von ihm eingegebenen Zahlen im normalen Reporting sofort wieder abrufen kann. Es ist keine Wartezeit mehr nötig, bis die Planzahlen durch einen Hintergrundprozess im Datenziel verbucht worden sind. Das ermöglicht erstmals wirklich interaktive Planungen bzw. Simulationen.

Noch nützlicher ist im praktischen Einsatz für den Anwender die Option, geplante oder simulierte Daten entweder sofort oder erst zu einem von ihm bestimmbaren späteren Zeitpunkt für die Allgemeinheit freizugeben.

Die anwenderspezifische Definition von Hierarchielevel eröffnet die Möglichkeit, erheblich genauer zu simulieren oder zu planen. Sollen beispielsweise Marketingkosten auf Abteilungsebene geplant werden, ist bei Einsatz des SICo-Layers folgendes Szenario denkbar: Die zu planenden Kosten würden in verschiedene Blöcke aufgespalten, wie etwa Veranstaltungen, Werbeaktionen, Aufwendungen für Marktforschung usw. Jeder dieser Blöcke wird separat beplant. Der SICo-Layer stellt hierfür eine Hierarchie zur Verfügung, mittels derer die Marketingkosten auf die genannten Blöcke verteilt werden können. Nach Abschluss des Prozesses werden die Teilwerte gesammelt und unter dem gemeinsamen Hierarchieknoten - in diesem Falle dem Marketing-Budget - an das SAP Business Warehouse übergeben.

5 Zusammenfassung

Die strategische Ausrichtung der SAP in Richtung Java und Portale zeigt die allgemeine Richtung an, in die sich die IT - Lösungen der Zukunft bewegen. Dieser Strategie konsequent folgend ist der SICo-Layer eine flexible und zukunftsorientierte Softwarekomponente, die den Zugriff auf das SAP BW in hohem Maße vereinfacht.

Die wichtigsten Funktionalitäten des SICo-Layer sind:

  •  Verbindungsaufbau zum SAP BW.
  •  Funktionen zum Datenabruf aus dem SAP BW.
  •  Ausführen von MDX - Statements auf den Datenbeständen des SAP BW.
  •  Einfacher Zugriff auf extrahierte Daten und deren Weiterverwendung.
  •  Resultcache.
  •  Schreibender Zugriff (Multi-User fähig, transaktionssicher) auf SAP BW.
  •  Auslesen von Metadaten.

[1] BAPI: "Business Application Programming Interface". Die BAPI ist die native Schnittstelle der SAP. In ihr sind neueste Funktionen und Features realisiert, die in anderen Interfaces (ODBO for OLAP) eventuell nicht bzw. noch nicht enthalten sind. Außerdem ist es der zur Zeit schnellste Zugriff auf das SAP BW.

 

Copyright: © 2003 SICONED

Beratung Systemintegration Schulung

Am Hermertsberg 2
D-64342 Seeheim-Jugenheim
Tel.:+49 (0)6257/ 992-0
Fax.:+49 (0)6257/ 992-525
eMail info@siconed.com
Web: http://www.siconed.com

Impressum:

Autoren: Wolfgang Pense, Stephan Herget, Horst Tausch
Version/ Datum: 1.3 / März 2003

SAP® and R/3® are registered trademarks of SAP AG.
SICONED® is a registered trademark of SICONED.
All other company and product names may be trademarks of their respective companies
.

 
Zum Seitenanfang Druckversion   Benutzer-Login    Impressum 

Menü Navigation

Die folgenden Links werden für die Menüs der DHTML-Navigation benutzt.