Je hebt een aantal opties om dit te doen.
Als u SAP BW gebruikt, zijn er veel standaardtools om u te helpen extracties uit te voeren en de processen te automatiseren.
Anders kunt u een eenvoudig ABAP-programma (type 1) schrijven om gegevens uit tabellen te lezen en in een plat bestand te plaatsen.
Anders zou u een op afstand bediende functiemodule (RFC) kunnen schrijven en deze kunnen aanroepen met behulp van de RFC-bibliotheek van SAP.
U kunt uw RFC-functie ook inpakken met een webservice en deze aanroepen via SOAP/HTTP.
Ten slotte, als je toegang hebt tot de database, kun je misschien zelfs een script schrijven om de gegevens te extraheren die je nodig hebt.
Een eenvoudig voorbeeld van een programma om iets uit een DB-tabel te extraheren:
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.
Dit is echt primitief, maar je snapt het idee. Het selecteert gegevens uit een DB-tabel in een interne tabel (in het geheugen) en schrijft deze naar een bestand met de naam /tmp/outfile.txt
op de server, waar u het kunt ophalen. (Je zou de uitvoer moeten wijzigen om in het door jou gewenste formaat te zijn).
U kunt dan uw programma met SM36 plannen om periodiek als achtergrondtaak te worden uitgevoerd.