Talend Beispiel mit SAP in Verbindung zu treten

PDRTJS_settings_712365_post_594 = {
"Id": "712365"
"UNIQUE_ID ':' wp-post-594"
"Titel": "Beispiel + Talend + bis + + an + Sap"
"Item_id", "_post_594"
"Permalink": "http% 3A% 2F% 2F2010% 2F01%% 2F13 2Fchurriwifi.wordpress.com% 2Fejemplo-Talend-sap% 2F"
}
(Lesen Sie in Inglés Sprache hier )

Bevor Sie mit dem ETL-Prozess mit der Faktentabelle Verkäufe Belastung, Pause zu sehen, wie wir zu Talend verwenden, um eine Verbindung mit SAP tSapConnection Komponenten und tSapOutput tSapInput.In unserem Projekt konnten wir diese Komponenten verwendet haben, um das Lesen von Daten aus dem ERP machen (aber wir nutzten die Komponente tOracleInput zu direkt aus der Datenbank).

Obwohl die SAP-Komponente von Talend ist frei, es zu benutzen benötigen Sie einen Java-Bibliothek von SAP (sapjco.jar), wir werden in unserem System installiert haben. Diese Bibliothek kann der Anwender heruntergeladen werden dürfen, wenn sie registriert sind, Sap ( http://service.sap.com/connectors ). Sapjco Version haben wir installiert ist 2.1.8 (es gibt eine Stelle, die 3.0.4, aber das funktioniert nicht Talend).

Wie die Bibliothek sapjco.jar installieren ist:

  • Sobald die entsprechende Datei heruntergeladen (je nach Version des Betriebssystems Sie verwenden), entpacken Sie es in ein Verzeichnis Ihrer Wahl.Der Test, in unserem Fall, haben wir mit Windows Vista.
  • Wenn Sie eine ältere Version der DLL librfc32.dll in den Fenstern haben system32-Verzeichnis, ersetzen es mit dem Kommen von SAP.
  • Fügen Sie die Installations-Verzeichnis in der PATH-Umgebungsvariablen (in unserem Fall C: \ sapjco).
  • Schließlich fügen wir die Umgebungsvariable CLASSPATH sapjco.jar Datei mit vollem Pfad (z. B. CLASSPATH = c: \ sapjco \ sapjco.jar).

Dann installieren Sie die Bibliothek in das Verzeichnis der Klassen und festgestellt, dass Talend richtig installiert ist.Dazu ziehen wir die Datei in dem Verzeichnis sapjco.jar <directorio_instalacion_talend> \ lib \ java. Talend dann geöffnet und die Registerkarte Module überprüfen, dass sapjco.jar installiert korrekt angezeigt Modul (wie wir in dem Bild zu sehen).

Schließlich werden wir sehen, ein praktisches Beispiel SAP-Anbindung, um Informationen über Funktionsbausteine ​​(RFC) in SAP implementiert und das sich von Talend zugegriffen werden (das ist wirklich das, was uns erlaubt, um die Komponente, über SAP zugegriffen machen abrufen ihre RFC'sy BAPIs).

Die RFC's (Remote Function Call) sind die Basis für die Kommunikation zwischen SAP und einem externen System.Sind Bestandteile der Programmierung (ABAP-Programm, zum Beispiel), in einer Funktion gekapselt, mit einer entsprechenden Schnittstelle Ein-und Ausgangsdaten, die auch aus dem SAP aufgerufen werden kann, oder aus der Ferne, wenn aktiviert " Remote Access Module "(wie wir im Bild unten zu sehen). In diesem Fall ist, wenn wir rufen zum Beispiel von Talend.


Definition der RFC "RFC_READ_TABLE" in Sap

Sap hat viele Termine RFC's als Standard, und auch wir können uns mit dem Code zu bauen, dass die Aufgaben Sie wollen.Darüber hinaus gibt es eine andere Art von RFC's innerhalb von SAP, BAPIs Anrufe, einschließlich ergänzender Vorschriften mit der SAP-Anwendung Operation (z. B. integrierte ermöglicht die BAPI BAPI_SALESORDER_CREATEFROMDAT2 die Schaffung eines Kundenauftrags aus den Daten passieren wir die Funktion in der Schnittstelle).

Beispiel: Lesen des Inhalts einer Tabelle mit Hilfe des RFC "RFC_READ_TABLE."

Wir werden einen Job in Talend Verhalten, um den Inhalt einer Tabelle in SAP, insbesondere, wir alle Materialien, die von einer bestimmten Art sind abzurufen liest.Der vollständige Job ist wie folgt aufgebaut:

In Talend tSapInput Verwendung der Komponente auf die RFC-Aufruf an SAP. Dazu müssen wir wissen, was ist die Schnittstelle, die in SAP definiert hat, zu wissen, dass wir Parameter und Ergebnisse und welche Arten von Datenstrukturen empfangen kann passieren. In der Transaktion SE37 Sap sehen können, sind als Funktionsbausteine ​​definiert, und sehen, wie es die Kommunikation mit dieser Komponente durchzuführen.

Zum Beispiel hat RFC_READ_TABLE Funktionsbaustein (wie im Bild unten), 5 Eingabeparameter in der Registerkarte "Importieren" definiert.Die wir in unserem Beispiel verwenden: QUERY_TABLE (die Tabelle, die Sie wünschen weitere Details), Trennzeichen (Trennzeichen für die Daten).


RFC Definition Sap - Import (Eingabeparameter)

Es besteht auch die Registerkarte Export, wo wir konnten sehen, dass wir Ausgabeparameter (im Fall von Variablen oder einfache Strukturen) haben.Im Fall der Arbeit mit Tabellen, werden sie in der Registerkarte Tabellen erscheinen. Tabellen sind komplexe Strukturen von SAP (als ein Array von Daten.) Tabellen können beide verwendet werden, um Daten aus dem RFC empfangen, um sie weiterzugeben. In unserem Beispiel verwenden Sie den DATA-Tabelle, um die Datensätze aus der Datenbank abgerufen erhalten.


RFC Definition Sap - Tabellen (Parameter Input / Output)

Dann wieder Talend und wird den verschiedenen Bereichen des Bauteils vollständig:

  • Kunde: Sap wichtigsten davon werden die Daten wiederherstellen.
  • Userid: Benutzer für die Verbindung.Müssen Berechtigungen für den RFC ausführen und die gewünschten Daten zugreifen kann.
  • Passwort: Passwort ein.
  • Sprache: Schalten Sprache.
  • Host Name: Host, wo sich der Server befindet Sap.
  • System-Nummer: SAP-Instanz-Nummer des Servers (in der Regel die 00, wo es nur einen Server).
  • Funktion: Name des RFC, denen wir vertrauen.

Beispiel für die Benutzung tSapInput Komponente

  • Initialize Eingang: Initialisierung der Input-Parameter.Sind die Werte, die wir an die Funktion übergeben zu blockieren. In unserem Fall beobachten wir, dass wir einfache Werte (Variablen) und Werte, die wir auch einige der Tabellen geleitet wird.
    • Single Input: Parameter "QUERY_TABLE" und "Trennzeichen" sind input_single Typ (einmalige Einreise) und wischte initialisieren ein Wert, nämlich den Namen der Tabelle, die Sie lesen möchten und das zu verwendende Trennzeichen.
    • Tabelle Input: Eingabe von Werten in beiden Tabellen.Tabelle OPTIONEN TEXT-Feld, geben eine Bedingung an das Lesen von Daten beschränken (wie ein Zustand, wo). Tabellenfelder, FIELDNAME Feld, sagen wir Sap, welche Felder der Tabelle, welche sich erholen (in diesem Fall die Quelle des Materials, seine Art und Produktlinie) wollen. Auf diese Weise beschränken wir sowohl die Anzahl der Datensätze zurückgegeben, da die Felder erhalten (nicht wollen, um alle Felder für jeden Datensatz in dieser Tabelle zu sehen.) Sehen Sie, wie mehrere Werte für das Feld FIELDNAME FIELDS Tabelle angeben, haben wir mehrere Einträge durch Kommas getrennt.
  • Ausgänge: Definition der Strukturen, wo wir von Sap gelingen wird, wieder die Daten.Hier geben Sie die Art der abgerufenen Wert (table_output für, wenn das Ergebnis ist eine Tabelle), den Namen der Tabelle in SAP (TableName Bereich (Struktur Name) und den Namen des Schemas (ein Name für den Datenfluss, wir Stellen Sie keine). In unserem Beispiel lesen wir von der DATA SAP-Tabelle, eine Tabelle der Datensätze besitzt jeder Datensatz einen eindeutigen Feld namens WA. Die Schritte in diesem Abschnitt für die genaue Festlegung der Austausch Details sind wie folgt:
  • Zunächst Ausgabestream Sie die Taste des Zeichens "+". Schema angeklickt wird einen Namen für diese Strömung (registros_devueltos in unserem Beispiel) zu geben und zeigen die Felder, die die Steckdose Struktur tSapInput Komponente zu machen.In diesem Fall werden wir nur ein Feld namens WA (wie wir in dem Bild zu sehen), die auf die Datentabelle Bereich SAP entspricht.

Definition der Output-Struktur "registros_devueltos"

  • Es ist dann notwendig zu assoziieren diese Spalte Komponente SAP wo Daten abgerufen werden. Dazu klicken Sie auf das Feld-Mapping, und wir werden ein neues Fenster zu öffnen. Hier fließen scheinenData Dictionary definiert die im vorherigen Schritt, aber das Feld XPatchQuerys Schema, Daten, ist das, was uns Talend Karte das Feld in den Bereich der SAP, so können Sie empfangen Daten korrekt Sap (Werte in XPatchQuerys eingeführt werden sollte eingeschlossen in doppelte Anführungszeichen, mit dem Symbol ").
Mapping zwischen der Struktur der Ausgabe und dem SAP Talend

In diesem Beispiel haben wir eine relativ einfache Möglichkeit, Daten aus SAP in ein einziges Steuerelement abzurufen.Die Kenntnis der verschiedenen bestehenden RFCs und BAPIs SAP, können wir sicherlich sehr viel komplexer Aufgaben und profitieren Sie von Funktionalität, die in SAP definiert sind. Es kann sogar eine Art Schnittstelle mit SAP die Verwendung dieser Komponenten bereits definiert und verpackt werden.

Um zu sehen, im Detail, wie wir jede Komponente definieren, können Sie den vollständigen HTML-Dokumentation erzeugt Talend von hier . Hier können Sie die ZIP-Datei mit der Dokumentation hier .