Batch Download

www.4AP.de - ABAP Syntaxbeispiel: Download auf den Präsentatiosserver (PC) im Batch (Hintergrundbetrieb)

Beispielcoding: Download auf den Präsentatiosserver (PC) im Batch (Hintergrundbetrieb) (kopieren erlaubt aber auf eigene Gefahr :-))

 


Bie den Fans gibt es eine Anleitung für eine RFC-Verbindung zum Desktop. Damit ist es möglich im Hintergrundbetrieb (Batch) Dateien auf dem PC des Anwenders zu hinterlegen (der muss natürlich laufen!!!).

Der benötigte Funktionsbaustein RFC_REMOTE_FILE ist in neueren Systemen z.B. 4.7 leider nicht mehr enthalten. Der angegebene Pfad 'c:\sap' für die GUI-Installation bzw. die saprdc.ini kann lokal natürlich völlig anders ein, z.B. bei mir hier C:\Programme\SAP\FrontEnd\SAPgui\rfcsdk\bin

Die Option 'shared Volumes' sollte eigentlich auch überall gehen (also gemappte Laufwerke, z.B. Q:\)

Ansonsten 'werkt dat well'.

Dem User kann man eine Batch-(DOS!!)-Datei schreiben mit einem Icon auf dem Desktop (*.cmd). Siehe Beispiel-Datei für das SAP-System TG0 [unter dem Dateinamen RFC_TG0.cmd auf dem Desktop des Users abgelegt]:
@echo off
cls.
echo.
echo Moechten Sie eine eine RFC-Verbindung zum TG0 aufbauen?
echo.
echo Wenn nein (Strg-C) ansonsten:
echo.
pause
@echo on
C:\Programme\SAP\FrontEnd\SAPgui\rfcsdk\bin\rfcexec -D TG0_R
Das eigentliche ABAP-Programm ist ziemlich simpel gestrickt.
*---------------------------------------------------------------------*
* Report ZSIRTEST *
* zum Testen einer RFC-Verbindung zum lokalen PC
* damit kann z.B. ein Download im Batchbetrieb erfolgen!!!
*
* erstellt 19.08.2003 Thorsten Neubüser - www.4ap.de
*---------------------------------------------------------------------*

REPORT ZSIRTEST.
* zum Testen einer RFC-Verbindung zum lokalen PC
* damit kann z.B. ein Download im Batchbetrieb erfolgen!!!

DATA: BEGIN OF T_TAB OCCURS 0,
A(20),
B(20),
C(20),
D(20),
END OF T_TAB.

DATA: D_DESTI LIKE RFCDES-RFCDEST, "RFC destination
D_ERMSG(120), "error message
D_RFILE(256), "remote file name


START-OF-SELECTION.

T_TAB-A = 'Das ist'.
T_TAB-B = 'ein ganz'.
T_TAB-C = 'genialer'.
T_TAB-D = 'Text.'.
APPEND T_TAB.

T_TAB-A = 'Wer'.
T_TAB-B = 'will'.
T_TAB-C = 'das'.
T_TAB-D = 'wissen :-?.
APPEND T_TAB.

* bei Bedarf anpassen!!!
D_DESTI = 'PC139.RFCEXEC'.
* directory C:\TMP must exist locally
D_RFILE = 'C:\TMP\TEST_RFC_DATA.TXT'.

CALL FUNCTION 'RFC_REMOTE_FILE' DESTINATION D_DESTI
EXPORTING FILE = D_RFILE
WRITE = 'X' "X = write ' ' = read
TABLES FILEDATA = T_TAB
EXCEPTIONS SYSTEM_FAILURE = 1 MESSAGE D_ERMSG
COMMUNICATION_FAILURE = 2 MESSAGE D_ERMSG.

IF SY-SUBRC <> 0.
FORMAT RESET INTENSIFIED OFF.
WRITE: / 'RFC ERROR:', D_ERMSG.
ELSE.
WRITE: / 'Table successfully download to', D_RFILE.
ENDIF.

END-OF-SELECTION.