Setzen Sie SAP auf anderen Betriebsystemem müssen Sie den Systemcommand evlt. noch etwas anpassen.
- Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
- FUNCTION Z_ftp_upload.
- *"----------------------------------------------------------------------
- *"*"Lokale Schnittstelle:
- *" IMPORTING
- *" REFERENCE(SRC_FILE)
- *" REFERENCE(DEST_FILE)
- *" REFERENCE(FTP_SERVER)
- *" REFERENCE(FTP_USER)
- *" REFERENCE(FTP_PASSWD)
- *" REFERENCE(FLAG_BINARY) OPTIONAL
- *" EXPORTING
- *" REFERENCE(SUCCESS_226)
- *" TABLES
- *" OUTPUT
- *" EXCEPTIONS
- *" COULD_NOT_OPEN_COMMANDFILE
- *"----------------------------------------------------------------------
- *-----------------------------------------------------------------------
- * DATENDEFINITION
- *-----------------------------------------------------------------------
- line(200),
- END OF syscalltab.
- *Temporärer Dateiname ermitteln.
- " 1. UUID erstellen
- CALL FUNCTION 'SYSTEM_UUID_C_CREATE'
- IMPORTING
- uuid = uuid.
- * FTP Kommandofile schreiben
- OPEN DATASET dsn FOR OUTPUT IN TEXT MODE.
- CONCATENATE 'user' ftp_user ftp_passwd
- INTO fl SEPARATED BY space.
- CLOSE DATASET dsn.
- * Betriebssystemkommando erstellen.
- INTO os_command SEPARATED BY space.
- CALL 'SYSTEM'
- ID 'COMMAND'
- FIELD os_command
- ID 'TAB'
- FIELD syscalltab-*sys*.
- * temporäres File wieder löschen.
- DELETE DATASET dsn.
- * FTP Rückmeldungen auswerten
- * 226 bedeutet File erfolgreich übertragen
- LOOP AT syscalltab.
- success_226 = 'X'.
- *-----------------------------------------------------------
- FUNCTION Z_FTP_DOWNLOAD.
- *"----------------------------------------------------------------------
- *"*"Lokale Schnittstelle:
- *" IMPORTING
- *" REFERENCE(SRC_FILE)
- *" REFERENCE(DEST_FILE)
- *" REFERENCE(FTP_SERVER)
- *" REFERENCE(FTP_USER)
- *" REFERENCE(FTP_PASSWD)
- *" REFERENCE(FLAG_BINARY) OPTIONAL
- *" EXPORTING
- *" REFERENCE(SUCCESS_226)
- *" TABLES
- *" OUTPUT
- *" EXCEPTIONS
- *" COULD_NOT_OPEN_COMMANDFILE
- *"----------------------------------------------------------------------
- *-----------------------------------------------------------------------
- * DATENDEFINITION
- *-----------------------------------------------------------------------
- line(200),
- END OF syscalltab.
- * Temporären Dateiname ermitteln.
- " UUID erstellen
- CALL FUNCTION 'SYSTEM_UUID_C_CREATE'
- IMPORTING
- uuid = uuid.
- * FTP Kommandofile schreiben
- OPEN DATASET dsn FOR OUTPUT IN TEXT MODE.
- CONCATENATE 'user' ftp_user ftp_passwd
- INTO fl SEPARATED BY space.
- CLOSE DATASET dsn.
- * Betriebssystemkommando erstellen.
- INTO os_command SEPARATED BY space.
- CALL 'SYSTEM'
- ID 'COMMAND'
- FIELD os_command
- ID 'TAB'
- FIELD syscalltab-*sys*.
- * temporäres File wieder löschen.
- DELETE DATASET dsn.
- * Ftp Rückmeldungen auswerten
- * 226 bedeutet File erfolgreich übertragen
- LOOP AT syscalltab.
- success_226 = 'X'.
- GeSHi ©