#1
|
|||
|
|||
Conexion FTP
Hola gente! lo que necesito es comunicarme via FTP con un servidor y no se bien como realizarlo...
Tengo que generar un archivo de texto plano via FTP en otro servidor. El codigo que coloco es el siguiente L_USER = 'LEO'. L_PASSWORD = 'PEPEU2'. L_HOST = '192.168.1.1'. L_DESTINATION = 'RFCSAP'. * Función para Conectarse al Servidor FTP CALL FUNCTION 'FTP_CONNECT' EXPORTING USER = L_USER PASSWORD = L_PASSWORD HOST = L_HOST RFC_DESTINATION = L_DESTINATION IMPORTING HANDLE = L_HANDLE EXCEPTIONS NOT_CONNECTED = 1 OTHERS = 2. * Funcion para Enviar los Archivos al Servidor FTP CALL FUNCTION 'FTP_R3_TO_SERVER' EXPORTING HANDLE = L_HANDLE FNAME = '192.168.1.1\MI_CARPETA' BLOB_LENGTH = L_LEN GTH CHARACTER_MODE = 'X' TABLES TEXT = lt_mi_tabla EXCEPTIONS TCPIP_ERROR = 1 COMMAND_ERROR = 2 DATA_ERROR = 3 OTHERS = 4. * Función para Desconectarse del Servidor FTP CALL FUNCTION 'FTP_DISCONNECT' EXPORTING HANDLE = L_HANDLE EXCEPTIONS OTHERS = 1. ¿Este seria el procedimiento correcto? La variable L_LEN GTH que dato lleva la cantidad de registros de la tabla?? Muchas Gracias. |
#2
|
|||
|
|||
El password de la FTP_CONNECT tienes que encriptarlo primero, para ello puedes utilizar una funcion que se llama HTTP_SCRAMBLE o algo parecido (ahora no tengo SAP para mirarlo)
|
#3
|
|||
|
|||
Hola !!! Gracias por lo de la encriptacion ahora agrego el codigoa antes de conectar por ftp.
Tengo una nueva duda... Necesito obtener 1 o varios archivos de una ruta del servido destino al cual me conecto por via FTP, mi idea seria usar la siguiente funcion * Se obtiene archivo del servidor CALL FUNCTION 'FTP_SERVER_TO_R3' EXPORTING HANDLE = L_HANDLE FNAME = l_ruta CHARACTER_MODE = 'X' IMPORTING BLOB_LENGTH = L_CANT TABLES TEXT = P_T_TXT Mi duda es si la variable l_ruta tiene que ser especifica para un archivo Ej: 192.168.1.1\leo.txt O si la variable l_ruta al ser 192.168.1.1 obtiene todos los archivos del servidor volcando los datos en P_T_TXT??? |
#4
|
|||
|
|||
No, la funcion te trae fichero a fichero
Para traerte todos tendrias que leer los ficheros que hay en la carpeta del servidor y hacer un bucle Para leer los ficheros que hay en una carpeta de servidor hay una funcion que se llama EPS_GET_DIRECTORY_LIST o algo parecido, si tu servidor es UNIX tienes que fijarte en que distingue entre mayusculas y minusculas por lo que /tmp no es el mismo directorio que /TMP |
Herramientas | Buscar en Tema |
Desplegado | |
|
|