Hai diverse opzioni per farlo.
Se utilizzi SAP BW, sono disponibili molti strumenti standard per aiutarti a eseguire estrazioni e automatizzare i processi.
Altrimenti, puoi scrivere un semplice programma ABAP (tipo 1) per leggere i dati dalle tabelle e inserirli in un file flat.
Altrimenti, potresti scrivere un modulo funzione abilitato in remoto (RFC) e chiamarlo utilizzando la libreria RFC di SAP.
Puoi anche avvolgere la tua funzione RFC con un servizio web e chiamarlo tramite SOAP/HTTP.
Infine, se hai accesso al database, potresti anche essere in grado di scrivere uno script per estrarre i dati di cui hai bisogno.
Un semplice esempio di programma per estrarre qualcosa da una tabella DB:
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.
Questo è davvero primitivo, ma hai un'idea. Seleziona i dati da una tabella DB in una tabella interna (in memoria) e li scrive in un file chiamato /tmp/outfile.txt
sul server, da dove puoi prelevarlo. (Dovresti modificare l'output in modo che sia nel formato richiesto).
È quindi possibile pianificare il programma con SM36 in modo che venga eseguito periodicamente come lavoro in background.