Saltar al contenido

Creación y configuración de secuencias de comandos winscp para transferir archivos del sistema de archivos a SFTP en Jitterbit App Builder

Esta guía le guiará en la creación y configuración de secuencias de comandos WINSCP para transferir archivos de un sistema de archivos a SFTP. El tiempo estimado de configuración es de entre 10 y 15 minutos. A modo de resumen, este enfoque se utiliza en un cliente que genera archivos .xlsx desde App Builder, que una empresa externa utiliza para determinar el acceso de los empleados a los informes en el sistema cliente. Esta información se genera primero desde App Builder y luego se transfiere al servidor externo siguiendo el proceso descrito en esta guía.

Cómo configurar

  1. Cree un directorio nuevo directorio en su servidor web y agréguele dos archivos: winscp.log y {{someName}} Export.txt 2. En el {{SomeName}} Export.txt Archivo, agregue el siguiente código para que se ajuste a su configuración:

    open sftp://{{nombreusuario}}:{{contraseña}}@{{nombredehost}} -hostkey="ssh-rsa 2048 {{clave de host}}"
    cd /path/to/directory/on/sftp
    put -nopermissions -nopreservetime -delete C:\{{RutaLocalAlArchivo}}`\*
    exit
    

    En el ejemplo del bloque de código, donde se lee sftp://{{nombreusuario}}:{{contraseña}}@{{nombredehost}}, {{nombreusuario}}, {{contraseña}}, y {{nombredehost}} debe reemplazarse con las credenciales de inicio de sesión de SFTP y el nombre de host, y el -hostkey Se refiere a la huella digital de la clave de host del servidor, que se encuentra en WinSCP > Sesión > Información del servidor y protocolo > Huella digital de la clave de alojar del servidor. Ver captura de pantalla:

    Img 1

    cd /path/to/directory/on/sftp se refiere al directorio raíz de la carpeta SFTP de destino donde se deben mover los archivos.

    put -nopermissions -nopreservetime -delete C:\{{RutaLocalAlArchivo}}\* se refiere a la ubicación del archivo en el servidor de origen (servidor de App Builder) donde existe el archivo, mientras que * es un comodín que le indica al secuencia de comandos que tome cualquier archivo dentro de ese directorio.

    También cabe señalar que la -delete en el secuencia de comandos, se eliminará el archivo en cuanto se mueva (o intente moverlo). Esta opción puede desactivarse si desea conservar el archivo en el directorio de origen.

  2. Abra el Programador de tareas de Windows en el servidor web y cree una nueva tarea según sus especificaciones. En esta configuración, la programación se ejecuta cada 5 minutos, lo que se logra con la opción "Repetir tarea cada 5 minutos durante 1 día", con una programación diaria.

    Img 2

  3. Haga doble clic en la tarea que acaba de crear en el paso 3. En la pestaña Acciones, cree una acción Iniciar un programa:

    • En Programa/ Secuencia de comandos seleccione la ubicación de WinSCP.exe
    • En Agregar argumentos (opcional) coloque la siguiente cadena /console /script="{{someName}} Export.txt" /log="winscp.log" donde {{someName}} Export.txt es el nombre del archivo creado en el paso 1, y winscp.log¿Tu archivo winscp.log también se creó en el paso 1?
    • En Iniciar en (opcional), agrega el "nuevo directorio" que creaste en el paso 1.

    Img 3

¡Su tarea ya debería estar configurada para mover archivos del directorio especificado al SFTP! Puede ejecutarla cuando lo necesite desde el Programador de tareas de Windows y comprobar si hay algún error en el archivo winscp.log.

WinSCP tiene documentación muy útil si desea ampliar el secuencia de comandos o hacer algo similar con WinSCP: https://winscp.net/eng/docs/scripting