Ver la Versión Completa : Ftp Sap
Edd_401
19/12/08, 15:35:51
Hola que tal tengo que mandar unos archivos de tipo .XML a un servidor FTP.
El problemas es que no se como hacer, agradeceria su valiosa ayuda con documentacion a acerca de FTP que es, como funciona, etc, etc.
En verdad me ayudarian mucho..
Grax.
edd_401@hotmail.com
DCErick
19/12/08, 16:07:16
Pues casi no he hecho nada para FTP, pero un día para quitarme la duda logré hacerme este programa:
REPORT zsd_deposito_bancarios.
DATA: BEGIN OF outrec,
matnr(15),
maktx(30),
ean11(18),
bismt LIKE mara-bismt,
END OF outrec.
CONSTANTS: user(12) TYPE c VALUE 'opernes',
pwd(20) TYPE c VALUE 'marlsuna'.
DATA: hdl TYPE i,
key TYPE i VALUE 26101957,
dstlen TYPE i,
upc(11) TYPE n.
DATA: BEGIN OF result OCCURS 0,
line(100) TYPE c,
END OF result.
DATA: BEGIN OF commands OCCURS 0,
line(100) TYPE c,
END OF commands.
DATA: wrkfile LIKE rlgrap-filename VALUE '/sapmnt/data/outbound/'.
*PARAMETERS : p_cmd(200) TYPE c.
END-OF-SELECTION.
PERFORM connect_ftp
CHANGING
hdl.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
CALL FUNCTION 'FTP_COMMAND'
EXPORTING
handle = hdl
command = 'ls' "'get 007000001247.txt \\192.16.1.33\Instaladores\007000001247.txt'
TABLES
data = result
EXCEPTIONS
command_error = 1
tcpip_error = 2.
IF sy-subrc = 0.
PERFORM write_result.
ELSE.
PERFORM write_result.
*Cerramos Conección FTP
PERFORM disconnect_ftp.
ENDIF.
ENDIF.
*&--------------------------------------------------------------------*
*& Form Connect_FTP
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
* -->HDL text
*---------------------------------------------------------------------*
FORM connect_ftp CHANGING hdl.
****Nos conentamos a sitio FTP.
CALL 'AB_RFC_X_SCRAMBLE_STRING'
ID 'SOURCE' FIELD pwd ID 'KEY' FIELD key
ID 'SCR' FIELD 'X' ID 'DESTINATION' FIELD pwd
ID 'DSTLEN' FIELD dstlen.
CALL FUNCTION 'FTP_CONNECT'
EXPORTING
user = user
password = pwd
* ACCOUNT =
host = '192.68.1.252'
rfc_destination = 'SAPFTPA'
* GATEWAY_USER =
* GATEWAY_PASSWORD =
* GATEWAY_HOST =
IMPORTING
handle = hdl
EXCEPTIONS
not_connected = 1
OTHERS = 2.
ENDFORM. "Connect_FTP
*&--------------------------------------------------------------------*
*& Form WRITE_RESULT
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM write_result.
LOOP AT result.
WRITE : / result.
ENDLOOP.
PERFORM disconnect_ftp.
ENDFORM. "WRITE_RESULT
*&--------------------------------------------------------------------*
*& Form DISCONNECT_FTP
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM disconnect_ftp.
CALL FUNCTION 'FTP_DISCONNECT'
EXPORTING
handle = hdl.
ENDFORM. " DISCONNECT_FTP
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web