Ejecutando un FTP desde un DTS

23 08 2007

A veces se tiene la necesidad de extraer o enviar información a un servidor mediante un FTP. Esto se puede hacer desde un DTS. Lo único que tenemos que hacer es añadir en nuestro DTS la tarea “Execute Process”

Esta tarea permite ejecutar un programa

DtsFTP

Los campos que tiene esta tarea son:

Description. Un texto descriptivo de lo que hace la tarea

Win32 process. El nombre del programa que deseamos ejecutar, en ese caso es FTP

Parameters. Los parámetros que recibe el programa FTP. Para nuestro ejemplo los parámetros son:

-v -n -s:c:\temp\ftp.txt ServidorFTP

Donde:

-v

Suprime la presentación de las respuestas del servidor remoto.

-n

Suprime el inicio de sesión automático cuando se establece.

[-s:archivo]

Especifica un archivo de texto que contiene comandos de FTP; los comandos se ejecutar automáticamente después del inicio de FTP. En nuestro ejemplo tendremos un archivo llamado ftp.txt que contendrá los comandos ftp a ejecutar. En nuestro ejemplo dicho archivo lo hemos colocado en c:\temp

ServidorFTP nombre o IP del servidor al cual nos queremos conectar mediante FTP. Para nuestro ejemplo presumamos que el servidor se llama ServidorFTP

Return Code. Le dejamos el cero

Timeout. El tiempo máximo que deseamos especificar para que toda la tarea se ejecute. Transcurrido este tiempo si la tarea no ha terminado la abortará marcando un Timeout.

Hecho esto lo que necesitamos es crear un archivo que contendrá los comandos de FTP.

Copie y peque las siguientes líneas a un archivo de texto y grábelo con el nombre y ruta c:\temp\ftp.txt

user adrian haciendocubos
binary
get logo.jpg c:\temp\ftp\logo.jpg
quit

La primera línea establece que el FTP se debe de hacer con el usuario adrian y password o contraseña haciendocubos. La segunda línea sirve para cambiar el FTP a modo binario ( para traerse o enviar un archivo binario).

La tercera línea se trae el archivo logo.jpg (get) y lo deja en c:\emp\ftp\logo.jpg

Y finalmente el quit termina la sesión de ftp.

¡Listo! Ejecute el DTS y ya.

Si no funciona pruebe crear un archivo .BAT que contenga la línea de comando

ftp -v -n -s:c:\temp\ftp.txt ServidorFTP

y ejecute este .BAT en vez del ftp. Si lo que necesita es enviar un archivo cambie la palabra get por put.


Acciones

Información

5 respuestas para “Ejecutando un FTP desde un DTS”

17 01 2008
pablo uribe (22:27:00) :

ke maravilla de artikulo, justo lo ke estaba buscando!!

18 01 2008
Adrian (14:30:06) :

gracias por el comentario, es bueno saber que te ha sido útil

saludos

17 04 2008
DANIEL MESIAS (23:25:40) :

Adrian, como ejecutas desde SQL un comando de Progress o bien ejecutar un programa de Progress ????

12 09 2008
Victor (03:18:22) :

Adrian,

excelente articulo!,
una pregunta como puedo traer mas de un archivo?, en mi caso requiero traer todos los archivos que inicien con “MP” y terminen en “200808″, como veras debo pasarle el parámetro del año y mes para realizar la descarga.
osea el mes siguiente debere descargar los archivos del periodo “200809″ y asi sucesivamente.

saludos,

12 09 2008
Adrian (13:36:17) :

Hola Victor,

no se me ocurre nada, pero seguramente alguien por aquí podra ayudar.

saludos

Deja un comentario

Puedes usar estas etiquetas : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>