Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie extrahiert man Daten aus einem SAP-ABAP-System?

Dazu haben Sie mehrere Möglichkeiten.

Wenn Sie SAP BW ausführen, gibt es viele Standardtools, die Ihnen bei der Durchführung von Extraktionen und der Automatisierung der Prozesse helfen.

Andernfalls können Sie ein einfaches ABAP-Programm (Typ 1) schreiben, um Daten aus Tabellen zu lesen und sie in eine flache Datei zu packen.

Andernfalls könnten Sie einen ferngesteuerten Funktionsbaustein (RFC) schreiben und ihn mithilfe der RFC-Bibliothek von SAP aufrufen.

Sie könnten Ihre RFC-Funktion auch mit einem Webdienst verpacken und über SOAP/HTTP aufrufen.

Wenn Sie Zugriff auf die Datenbank haben, können Sie schließlich sogar ein Skript schreiben, um die benötigten Daten zu extrahieren.

Ein einfaches Beispiel für ein Programm, um etwas aus einer DB-Tabelle zu extrahieren:

report ZEXTRACT_EXAMPLE.

data: lt_t001 type table of t001.
data: ls_t001 type t001.
data: lv_filename type string value '/tmp/outfile.txt'.

select * from t001 into table lt_t001.

open dataset lv_filename for output in text mode encoding default.

loop at lt_t001 into ls_t001.
  transfer ls_t001-bukrs to lv_filename.
endloop.

close dataset lv_filename.

Das ist wirklich primitiv, aber Sie bekommen die Idee. Es wählt Daten aus einer DB-Tabelle in eine interne Tabelle (im Speicher) und schreibt sie in eine Datei namens /tmp/outfile.txt auf dem Server, von wo Sie es abholen können. (Sie müssten die Ausgabe ändern, damit sie das gewünschte Format hat).

Sie könnten dann Ihr Programm mit SM36 so einplanen, dass es periodisch als Hintergrundjob ausgeführt wird.