Oracle Data Integrator in der Praxis

Werbung
Oracle Data Integrator in der Praxis
Anbindung von SAP ERP und Essbase
Andreas Ballenthin
Solution Architect
OPITZ CONSULTING Gummersbach GmbH
Oracle Business Intelligence und Data Warehouse Konferenz
Königswinter bei Bonn, 22. März 2012
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 1
Ihr Oracle Center of Excellence
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 2
Mission
Märkte
Wir entwickeln gemeinsam mit allen
Branchen Lösungen, die dazu führen, dass
sich diese Organisationen besser entwickeln
als ihr Wettbewerb.
 Branchenübergreifend
 Über 600 Kunden
Unsere Dienstleistung erfolgt
partnerschaftlich und ist auf eine langjährige
Zusammenarbeit angelegt.
29%
Handel / Logistik /
Dienstleistungen
29%
Industrie / Versorger /
Telekommunikation
42%
Öffentliche Auftraggeber / Banken und
Versicherungen / Vereine und Verbände
Leistungsangebot
Eckdaten
 Business IT Alignment
 Business Information Management
 Business Process Management
 Anwendungsentwicklung
 SOA und System-Integration
 IT-Infrastruktur-Management
 Gründung 1990
 400 Mitarbeiter
 8 Standorte
<Präsentationstitel – bitte im Folienmaster ändern>
© OPITZ CONSULTING GmbH 2012
Seite 3
Agenda
1.
Motivation
2.
Anbindung von SAP ERP als Quellsystem
3.
Anbindung von Oracle Essbase als Zielsystem
4.
Anbindung von Oracle Essbase als Quellsystem
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 4
1
Motivation
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 5
Motivation
 SAP ERP kommt im deutschsprachigen Raum als
Datenquelle häufig vor.
 Negative Vorerfahrungen mit SAP-Anbindungen sind häufig.
 Essbase dient als Backend für Hyperion Planning u. ä.
 Essbase wird als Aggregat zu ROLAP-Implementierungen
genutzt, insbesondere im Kontext der OBIEE.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 6
Kundenszenario
SAP
ODI
Essbase
Transformations-DB
Standalone Cube 1
Standalone Cube 2
SAP ERP
Hyperion Planning
Planning Application 1
Planning Application 2
(Oracle 11.2)
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 7
2
Anbindung von SAP ERP als Quellsystem
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 8
Rückblende: OWB-SAP-Connector (30.09.2009)
Halbautomatisches Deploymentverfahren
Entwicklung
Mapping
definieren
Produktion
OWB
0
Entwickeln
1
Deployen
SAP R/3
3
Benannten
ABAP-Code
ausführen
OWB
SAP R/3
2
SAPTransport
4
Datenfile
transferieren
und laden
1. ABAP generieren und per RFC
(RFC_ABAP_INSTALL_AND_RUN) an SAP senden
2. Transport des ABAP-Reports über SAP-Transportsystem
3. ABAP-Report ausführen
4. Datenfile per FTP abholen und per SQL-Loader laden
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 9
Rückblende: OWB-SAP-Connector (30.09.2009)
Erfahrungen (I)
 Der Einsatz unter Nicht-Windows-Umgebungen ist mühsam,
da wenig dokumentiert.
 Für große Datenmengen ist dieser eher ungeeignet.
 Einsatz der automatisierten Version scheitert an rechtlichen
Rahmenbedingungen und Erfordernissen der
Revisionssicherheit.
 Meist muss der ABAP-Code nachbearbeitet werden.
 Klammerungen in Filtern wie ((… AND …) OR (…AND…))
oder ((… OR …) AND (…OR…)) sorgen für Fehlermeldungen.
 Datenfile muss auf OWB-Host umbenannt werden.
Schlägt der Filetransfer vom SAP-Host auf den FTP-Host
fehl, erhält man keine Fehlermeldung.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 10
Rückblende: OWB-SAP-Connector (30.09.2009)
Erfahrungen (II)
 Aus dem Rootverzeichnis des FTP-Servers kann nicht
transferiert werden.
Die Konstellation "Mapping generiert nach /tmp/xxx" und
"FTP-Directory = xxx" und "FTP-Server-Root="/tmp/"
funktioniert jedoch.
 Reportnamen sind nicht übersteuerbar (setzen sich immer
aus den Namen der verwendeten Tabellen zusammen).
 Die Namenslänge ist dem OWB-Connector, nicht aber SAP
egal. Es wird nicht nach 30 Zeichen (= Längenbeschränkung
eines ABAP-Reportnamens) abgeschnitten.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 11
SAP ABAP ERP Adapter
 „ODI-SAP-Connector“
 Wird von Oracle Deutschland verantwortet
ODI SDK
 Basis: SAPJCo3 (sapjco3.jar, sapjco3.dll)
odi-sap.jar
 Java-EE-Applikation (odi-sap.jar)
Wird dem Oracle Data Integrator
als Open Tool bekannt gemacht
 Gliedert sich nahtlos in die SAP-Transportprozesse ein
 Genügt rechtlichen Rahmenbedingungen und
Erfordernissen der Revisionssicherheit
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 12
Topologie und Reverse Engineering
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 13
Funktionsweise
LKM SAP ERP to Oracle (SQLLDR)
ODI
SAP
_OdiSAPAbapExecute
odi-sap.jar
sapjco3.jar
sapjco3.dll
Function Group
ABAP Program
ZODI_FGR…
LKM SAP ERP to
Oracle (SQLLDR)
SAP-FTP-Server
SAPFTPA
Anlieferungsverzeichnis
ODI-Work-Table
C$_0…
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 14
Funktionsweise
LKM SAP ERP to Oracle (SQLLDR)
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 15
3
Anbindung von Oracle Essbase
als Zielsystem
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 16
Essbase: Rule Files
 Daten werden nach Essbase geladen.
 Rule File wird i. d. R. im Essbase Server definiert.
 Rule File hat Files oder Datenbanken als Datenquelle.
 Rule File wird meist von Fachabteilung oder HyperionEntwicklern definiert.
 Rule File liegt üblicherweise in der Verantwortung der
Fachabteilung.
► Es ist wesentlich sinnvoller, ein vorhandenes Rule File
anzusprechen, als im ODI ein Rule File zu generieren und
ausführen zu lassen.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 17
IKM Essbase Data Load using Rule Files
 Basis: IKM SQL to Hyperion Essbase (DATA)
 Optionen und Defaultwerte sind identisch
 Schritte:
IKM SQL to Hyperion
Essbase (DATA)
IKM Essbase Data Load using
Rules Files
Lock journalized table
Prepare for loading
Prepare for loading
Load data into essbase
Report statistics
Cleanup journalized table
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 18
Funktionsweise
IKM Essbase Data Load using Rule Files
ODI-Agent
ODI-Agent-lokaler
Essbase-Client
Essbase
IKM Essbase Data Load
using Rule Files
Prepare for loading
(Jython)
odihapp_common.jar
essmsh
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 19
Verwendung
shell touch '...\load_essbase.err';
shell rm '...\load_essbase.err';
import database <App>.<Database> dimensions / data
connect as 'xxx' identified by 'xxx'
using server rules_file 'xxx.rul'
on error write to '...\load_essbase.err';
iferror 'exitabort';
shell touch '...\load_essbase.err';
exit 0;
define label 'exitabort';
exit;
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 20
Parameterübergaben
 PRE_LOAD_MAXL_SCRIPT wird vollständig als Filename
interpretiert.
 Das Setzen von Essbase-Server-Variablen ist je nach
Anwendung nötig.
Lösung:
1. Parameterfile maxlparam.msh exportieren
(IKM SQL To File Append) set YEAR = FY11;
2. Im maxL-Script aufrufen
msh '…\maxlparam.msh';
3. Servervariablen setzen
alter database … set
variable 'YEAR' "$YEAR" ;
4. Servervariable in Calc Scripts, Rules Files u.ä. verwenden
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 21
Möglichkeiten
 alter database … set variable …;
 alter database … clear data in region … physical;
 import database … data …
 import database … dimensions …
 shell
 msh
 execute calculation …
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 22
4
Anbindung von Oracle Essbase
als Quellsystem
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 23
Essbase: Report Scripts / Calc Scripts
 Daten aus Essbase extrahieren
 Report Scripts / Calc Scripts werden i. d. R. im Essbase
Server definiert
 Werden meist von Fachabteilung oder Hyperion-Entwicklern
definiert
 Liegen i. d. R. in der Verantwortung der Fachabteilung
► Es ist sinnvoll, ein vorhandenes Report Script / Calc Script
anzusprechen.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 24
Funktionsweise
LKM Hyperion Essbase DATA to SQL
Essbase
ODI-Agent
Ziel (Oracle RDBMS)
LKM Hyperion Essbase
DATA to SQL
Begin Essbase Data
Extract (Jython)
Extract Data (Jython)
odihapp_common.jar
odihapp_essbase.jar
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
C$
© OPITZ CONSULTING GmbH 2012
Seite 25
Verwendung
 EXTRACTION_QUERY_FILE
 Ohne Pfadangabe: Server Report Script
 Mit Pfadangabe: Client Report Script
(agentenlokal)
 Weiterverarbeitung mit StandardIKMs z. B. IKM SQL Control Append
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
{ DECIMAL v }
{ SUPALL }
{ NAMESON }
{ TABDELIMIT }
{ ROWREPEAT }
{ NOINDENTGEN }
{ SUPMISSINGROWS }
{ MISSINGTEXT "0" }
<Supshare
<Row (Year,Period)
<DimBottom Year
<DimBottom Period
!
© OPITZ CONSULTING GmbH 2012
Seite 26
Wichtige Hinweise
 Customizing war notwendig.
(Schritt „Begin Essbase Data Extract“)
 Column „Data“ des Ziels wird mit UD1 markiert und soll an
das Ende des Extrakts gestellt werden.
stagCols = '
<%=odiRef.getColList("" ,
"[CX_COL_NAME]=[COL_NAME] ", ", ", "", "!UD1")%>
<%=odiRef.getColList(",",
"[CX_COL_NAME]=[COL_NAME] ", ", ", "", "UD1")%>'
 Reihenfolge der Dimensionen ist „beliebig“, aber
reproduzierbar.
 Nach erstem Extrakt wird Reihenfolge im Report Script an
Definition der C$-Tabelle angeglichen.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 27
Wenn das zu langsam ist:
LKM Essbase Data Extract using Calc Script
 Vorlage IKM Essbase Data Load using Rule Files
verwenden.
 Konvertierung zu LKM über Repository-Update vornehmen.
UPDATE snp_trt
SET trt_type='KL'
,km_src_techno = 'HYPERION_ESSBASE'
,km_techno = NULL
WHERE i_trt = ...
 Zusätzlich wird ein leeres IKM benötigt.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 28
Exportieren mit Calc Script
SET DATAEXPORTOPTIONS {
DataExportLevel "ALL";
DataExportRelationalFile ON ;
DATAEXPORTOVERWRITEFILE ON;
};
FIX (&Servervariable 1,
@MATCH ("<Dimension 1>","<Maske>"),
<Festes Attribut 1"
<Festes Attribut 2"
&Servervariable 2
@RELATIVE("YearTotal",0));
DATAEXPORT "DSN" "<DSN>" "<Zieltabelle>" "user" "passwort";
ENDFIX;
 Bis zu 100x schneller als Report Script
 Am ODI „vorbei“
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 29
Kontakt
Andreas Ballenthin
OPITZ CONSULTING Gummersbach GmbH
[email protected]
+49 2261 6001 0
Diese Präsentation finden Sie auf
http://www.slideshare.net/opitzconsulting.
Oracle Data Integrator in der Praxis – Anbindung von SAP ERP und Essbase
© OPITZ CONSULTING GmbH 2012
Seite 30
Herunterladen