Altova FlowForce Server 2025 Advanced Edition

Crear un trabajo de sondeo de directorios

Inicio Anterior Inicio Siguiente

Este ejemplo le muestra cómo supervisar un directorio en busca de cambios con la ayuda de un desencadenador del sistema de archivos creado en FlowForce Server (ver también Desencadenadores de sistema de archivos). Cada vez que se añade un archivo XML al directorio, FlowForce Server ejecuta un trabajo de asignación de datos que toma el archivo XML como parámetro de entrada. El resultado del trabajo de asignación se mueve después a un directorio de archivado.

 

Requisitos

Licencias necesarias: MapForce Enterprise o MapForce Professional, MapForce Server o MapForce Server Advanced Edition y FlowForce Server.

Los servicios FlowForce Web Server y FlowForce Server deben escuchar en la en la dirección de red y en el puerto configurados previamente.

Debe tener una cuenta de usuario de FlowForce Server con permisos para uno de los contenedores (en este ejemplo se usa el contenedor /public porque está automáticamente abierto a todos los usuarios autenticados).

El trabajo de asignación creado en este ejemplo copia archivos de un directorio a otro. Estos directorios deben existir en el sistema operativo donde se ejecuta FlowForce Server y el usuario debe tener derecho a crear archivos en ellos: Este ejemplo utiliza los directorios C:\FlowForceExamples\DirPolling y C:\FlowForceExamples\Archive.

 

Archivos de muestra

ShortApplicationInfo.mfd: la asignación de datos de MapForce a partir de la cual se creará el trabajo de FlowForce Server.

ApplicationsPage.xml: el archivo de instancia XML que se aportará como entrada de la asignación.

 

Ambos archivos están disponibles en esta ruta de acceso en el equipo donde está instalado Altova MapForce: <Documentos>\Altova\MapForce2025\MapForceExamples.

 

¿Qué hace la asignación de datos?

La asignaciones de datos de MapForce utilizada en este ejemplo (ShortApplicationInfo.mfd) se ilustra a continuación. Desde el punto de vista de FlowForce, lo más importante es que la asignación tome como entrada un archivo XML y que produzca otro archivo XML como resultado.

 

Esta asignación básicamente pasa un archivo XML (ApplicationsPage.xml) a otro esquema y lo guarda con el nombre de ShortInfo.xml. La asignación de datos es relativamente fácil de entender observando la conexión superior: por cada Item encontrado en el origen, se crea un elemento Info en el destino. Las demás conexiones se usan para copiar valores de los elementos secundarios correspondientes. La conexión punteada es de especial interés: en MapForce, esta conexión se denomina «Basada en origen (contenido» y se utiliza porque SubSection contiene contenido mixto.

ff_map_ShortApplicationInfo

ShortApplicationInfo.mfd

Observe que los esquemas XML de origen y destino se llaman SectionedPage y ShortInfo respectivamente. Como comprobará más adelante, cuando la asignación esté implementada en FlowForce Server, el trabajo de FlowForce tendrá parámetros de entrada y de salida con el mismo nombre.

 

Implementar la asignación en FlowForce Server

la asignación de datos ShortApplicationInfo.mfd no necesita ninguna preparación especial antes de implementarse en FlowForce Server. Como el componente de origen y de destino son archivos XML, se incluirán automáticamente en el paquete que se implementa en FlowForce Server.

 

Para implementar la asignación en FlowForce basta con abrirla en Altova MapForce y ejecutar el comando de menú Archivo | Implementar en FlowForce Server.

fs_ex_dir_polling_02

Si FlowForce Server se ejecuta en un host y puerto diferentes, cambie los detalles de conexión anteriores de la forma correspondiente (consulte Definir la configuración de red). Observe también que la ruta de la asignación es /public/Examples/ShortApplicationInfo.mapping; esto es coherente con los ejemplos anteriores.

 

Crear el trabajo de sondeo de directorios

Cuando la asignación termine de implementarse en FlowForce Server, se abrirá el explorador y se cargará la página de creación de trabajos. Como puede ver en la imagen que aparece a continuación, el primero paso de ejecución se crea automáticamente y llama a la función de asignación creada con anterioridad. Observe que el parámetro de entrada se llama igual que el componente de origen de MapForce (SectionedPage), mientras que el parámetro de salida se llama igual que el componente de destino (ShortInfo).

fs_ex_dir_polling_03

Para configurar el trabajo:

 

1.En la casilla Directorio de trabajo, introduzca la ruta del directorio de trabajo. Este ejemplo utiliza C:\FlowForceExamples\DirPolling como directorio de trabajo.

Un directorio de trabajo es un parámetro que necesitan los pasos de ejecución si el trabajo necesita una ubicación para desempaquetar archivos de entrada o guardar archivos de salida. FlowForce Server también utiliza el directorio de trabajo para resolver las rutas de acceso relativas que tengan lugar durante la ejecución del paso. Cuando deba aportar un directorio de trabajo, indique una ruta de acceso válida del sistema operativo donde se ejecuta FlowForce Server. Si no se indica un directorio de trabajo cuando se crea el trabajo, FlowForce Server utiliza un directorio temporal.

2.En Desencadenadores, haga clic en Desencadenador de archivos nuevo. Observe que FlowForce Server agrega automáticamente un nuevo parámetro triggerfile en Parámetros de entrada. En un paso posterior deberá hacer referencia a este parámetro.

TriggerfileParameter

3.Defina estos valores para el desencadenador:

 

Comprobar: Fecha de modificación

Archivo o directorio: C:\FlowForceExamples\DirPolling\*.xml

Intervalo de sondeo: 60 segundos

fs_ex_dir_polling_05

4.Bajo el apartado Pasos de ejecución, asigne el parámetro triggerfile como valor de entrada para el parámetro SectionedPage. Esto se hace haciendo clic en el botón ff-setTo del parámetro SectionedPage y seleccionando triggerfile. Como resultado el valor del parámetro SectionedPage pasa a ser {triggerfile}. Las llaves denotan una expresión de FlowForce y no se deben borrar.

fs_ex_dir_polling_06

Con esta configuración el desencadenador se iniciará cada vez que se copie ApplicationsPage.xml en el directorio de trabajo. Sin embargo, dado que el desencadenador utiliza un comodín (*.xml), se iniciaría también cuando cualquier otro archivo XML cambiara dentro del directorio, incluido el propio resultado de la asignación de datos (ShortInfo.xml). No es esto lo que queríamos y además se producirán errores así que necesitamos añadir otro paso más que mueva el archivo de resultados generado a un directorio distinto. Otra opción sería cambiar el desencadenador por c:\temp\ApplicationsPage.xml (en cuyo caso no sería necesario crear otro paso más).

 

Para agregar el paso que mueve el resultado a un directorio nuevo:

 

1.Añada un paso de ejecución nuevo justo después del anterior.

2.Configure el paso de esta manera (recuerde que lo campos origen y destino distinguen entre mayúsculas y minúsculas):

 

Ejecutar función

Navegue hasta la función /system/filesystem/move.

Origen

ShortInfo.xml

 

Usamos una ruta relativa debido a la configuración del parámetro Directorio de trabajo.

Destino

Debe tratarse de un directorio actual del sistema operativo donde se ejecuta FlowForce Server. Defínalo como:

 

C:\FlowForceExamples\Archive

Sobrescribir destino

Marque esta casilla. Esto da la orden de sobrescribir los archivos que tengan el mismo nombre en la ruta de acceso de destino

Anular en caso de error

Deje este parámetro como está.

 

Parámetro opcional. Este parámetro determina el resultado de un trabajo si ocurre un error. Si el parámetro de Anular en caso de error es true, la ejecución del trabajo se anula. Si el parámetro es false, FlowForce Server ignora los errores y sigue ejecutando el trabajo. El valor predeterminado es true.

Directorio de trabajo

FlowForce buscará todas las rutas relativas en este directorio. Defínalo como:

 

C:\FlowForceExamples\DirPolling

 

Por último, añada sus credenciales del sistema operativo con las que se ejecutará el trabajo:

 

1.En Credenciales, seleccione un registro de credenciales que ya exista o indique credenciales locales. Para más información consulte el apartado Credenciales.

2.Haga clic en Guardar.

 

Ejecutar el trabajo

Ahora puede probar el trabajo copiando el archivo ApplicationsPage.xml en el directorio de trabajo. FlowForce Server ejecutará el trabajo de asignación y copiará el archivo de salida resultante en el directorio de archivado.

 

Para ver si el trabajo se ha ejecutado correctamente consulte Vista de registro.

© 2018-2024 Altova GmbH