Activación de un flujo con un archivo de control

Un flujo se puede ejecutar automáticamente cuando se detecta un archivo de control en un directorio controlado. Esta función es útil en situaciones donde el flujo requiere que se complete otro proceso antes de la ejecución. Por ejemplo, puede tener un flujo que requiera un archivo de entrada generado por otro proceso de negocio. Puede realizar una configuración donde el otro proceso coloque un archivo de control en una carpeta y configurar Spectrum Technology Platform para que ejecute un flujo cuando aparezca el archivo de control.

Nota: Asegúrese de que el archivo de control se coloque en la carpeta controlada solo después de que todos los archivos que requiere el flujo estén en su lugar y listos para el procesamiento.
  1. Si aún no lo ha hecho, muestre el flujo.

    Para exponer un flujo, ábralo en Enterprise Designer y seleccione Archivo > Exponer/Anular la exposición y guardar.

  2. Abra Management Console.
  3. Vaya a Flujos > Programaciones.
  4. Haga clic en el botón Agregar .
  5. En el campo Nombre, ingrese el nombre con el que desea designar esta programación. Es el nombre que se verá en la lista de programaciones.
  6. En el campo Flujo, ingrese el trabajo o flujo de proceso que quiere ejecutar. Solo los trabajos y los flujos de proceso ya guardados y expuestos están disponibles aquí.
  7. Una vez que especifica un flujo, aparecen campos adicionales debajo del campo Flujo, un campo para cada una de las etapas de origen del flujo (como Read from File) y etapas receptoras (como Write to File). Estos campos muestran los archivos que se utilizarán cuando esta programación ejecute el flujo. De forma predeterminada, el flujo utilizará los archivos especificados en los orígenes y receptores del flujo. Puede especificar archivos diferentes para utilizarlos cuando se ejecute esta programación si reemplaza la ruta del archivo con la ruta de otro archivo. Por ejemplo, si su flujo tiene una etapa Read From File que lee datos de C:\FlowInput\Customers.csv pero usted desea usar datos de C:\FlowInput\UpdatedCustomers.csv, cuando se ejecute esta programación, debe especificar C:\FlowInput\UpdatedCustomers.csv en el campo Read From File.
    Nota: A fin de cambiar los archivos utilizados en las etapas de origen y receptora debe tener permiso de Lectura para el tipo de entidad protegida Recursos - Servidores de archivos.

    Tenga en cuenta que cuando un flujo es desencadenado por una programación, los archivos que utiliza un flujo deben residir en el servidor Spectrum Technology Platform o en un servidor de archivos definido como un recurso externo en Management Console. Se aplica tanto a trabajos como a actividades de trabajo dentro de un flujo de proceso. Si una etapa de origen o receptora utiliza como referencia un archivo en una computadora cliente, realice uno de los siguientes procedimientos:

    Opción Descripción
    Opción 1: modifique el flujo de datos Mueva el archivo al servidor Spectrum Technology Platform o al servidor de archivos; luego, modifique el flujo de datos:
    1. Abra el flujo de datos en Enterprise Designer.
    2. Haga doble clic sobre la etapa receptora o de origen.
    3. En el campo Nombre de archivo, haga clic en el botón Examinar.
    4. Haga clic en Equipo remoto; luego, seleccione el archivo que desea.
      Nota: Si está ejecutando Enterprise Designer en el mismo equipo que el servidor Spectrum Technology Platform, parecerá que hacer clic en el Equipo Remoto es igual que hacer clic en Mi computadora. Sin embargo, debe seleccionar el archivo utilizando Equipo remoto para que el sistema reconozca el archivo como si estuviera en el servidor Spectrum Technology Platform.
    Opción 2: anule la ubicación del archivo de flujo de datos cuando se ejecute esta programación Es posible anular las referencias del archivo que se encuentran en el flujo cuando se ejecuta esta programación. Para hacer esto, reemplace el archivo predeterminado que aparece en cada campo de origen y recepción con una ruta a un archivo en el servidor Spectrum Technology Platform o en un recurso de servidor de archivos definido en Management Console.
  8. En el campo Desencadenador, elija Archivo de control.
  9. En el campo Archivo de control, especifique la ruta completa y el nombre del archivo de control que desencadenará el flujo. Puede especificar un nombre de archivo exacto o bien utilizar el asterisco (*) como carácter comodín. Por ejemplo, *.trg desencadenará el flujo cuando cualquier archivo con la extensión .trg aparezca en la carpeta.

    La presencia de un archivo de control indica que se cuenta con todos los archivos requeridos para el flujo y que están listos para ser usados en el flujo.

    El archivo de control puede ser un archivo en blanco. Para los trabajos, el archivo de control puede especificar anulaciones de rutas del archivo configuradas en las etapas Write to File o Read from File. Para usar un archivo de control para anular las rutas del archivo, especifique los nombres de las etapas Read from File o Write from File junto con el archivo de entrada o de salida como últimos argumentos, de la siguiente manera:

    stagename=filename

    Por ejemplo:

    Read\ from\ File=file:C:/myfile_input.txt 
    Write\ to\ File=file:C:/myfile_output.txt

    El nombre de la etapa especificado en el archivo de control debe coincidir con el rótulo de la etapa que se muestra en el icono de la etapa en el flujo de datos. Por ejemplo, si la etapa de entrada tiene el rótulo "Read From File", debe especificar:

    Read\ From\ File=file:C:/inputfile.txt

    Si la etapa de entrada tiene el rótulo "Illinois Customers" debe especificar:

    Illinois\ Customers=file:C:/inputfile.txt
    Al invalidar una ubicación de Read from File o Write to File asegúrese de seguir estas pautas:
    • Comience con la ruta con el protocolo "file:". Por ejemplo, en Windows especifique "file:C:/myfile.txt" y en Unix o Linux especifique "file:/testfiles/myfile.txt".
    • Los contenidos del archivo deben utilizar una codificación de caracteres compatible con ISO-8559-1 (Latin-1) basado en ASCII.
    • En las rutas de los archivos, debe utilizar la barra (/), y no la barra invertida.
    • Los espacios en los nombres de etapas deben completarse con una barra invertida.
    • Los nombres de las etapas distinguen mayúsculas de minúsculas.
    Nota: Si hay varias programaciones que utilizan un desencadenador de archivo de control, es importante que cada una controle distintos archivos de control. De lo contrario, el mismo archivo de control podría desencadenar muchos trabajos o flujos de proceso que causarían un comportamiento inesperado. Por una cuestión de organización, es recomendable colocar todos los archivos requeridos y el archivo de control en un directorio para tal fin.
  10. En el campo Intervalo de sondeo, especifique con qué frecuencia buscar la presencia del archivo de control. Por ejemplo, si especifica 10, el monitor buscará cada 10 segundos para ver si aparece el archivo de control en la carpeta controlada.

    El valor predeterminado es 60 segundos.

  11. En el campo Working folder, especifique una carpeta donde estará temporalmente el archivo de control mientras se ejecuta el flujo. Spectrum Technology Platform copia el archivo de la carpeta supervisada en la carpeta de trabajo antes de ejecutar el flujo. Esto vacía la carpeta supervisada, lo que impide que el mismo archivo de control vuelva a iniciar el flujo.
  12. En el campo Opciones de carpeta de trabajo, especifique lo que se debe hacer con los archivos en la carpeta de trabajo cuando el flujo termina de ejecutarse.
    Mantener
    Deja los archivos en su ubicación actual y sin cambiar el nombre. Si selecciona esta opción, los archivos de la carpeta de trabajo se sobrescribirán cada vez que se ejecute esta programación.
    Mover a
    Mueve los archivos desde la carpeta de trabajo a una carpeta especificada. Esto le permite conservar los archivos que estaban en la carpeta de trabajo cambiándolos a otro lugar para que no se sobrescriban la próxima vez que se ejecute el monitor de archivos. También puede utilizar esta opción para mover los archivos a otra carpeta supervisada para desencadenar un proceso posterior, como otro flujo de datos o algún otro proceso.
    Cambiar nombre con marca de hora
    Agrega una marca de hora al nombre del archivo en la carpeta de trabajo. Esto le permite conservar una copia de los archivos en la carpeta de trabajo, ya que el archivo con nombre asignado tendrá un nombre único para que no se sobrescriba la próxima vez que el monitor ejecute un flujo de trabajo.
    Eliminar
    Elimina los archivos de la carpeta de trabajo después de que el flujo termina de ejecutarse.
  13. Si el flujo está configurado para enviar notificaciones por correo electrónico, puede especificar destinatarios adicionales para las notificaciones que se enviarán cuando se ejecute esta programación. Los destinatarios que especifique aquí recibirán notificaciones, además de aquellos destinatarios especificados en los ajustes de notificaciones del flujo. Para configurar un flujo para que envíe notificaciones, abra el flujo en Enterprise Designer y vaya a Editar > Notificaciones.
  14. Haga clic en Guardar.

Ejemplo: carpeta supervisada y carpeta de trabajo

Supongamos que tiene un taller de reparación de automóviles. Todos los días, desea enviar por correo un cupón de descuento para un próximo servicio a los clientes del día anterior. Para hacerlo, tiene un flujo de datos que lleva la lista de clientes del día, asegura que los nombres usen mayúsculas y minúsculas de manera correcta y valida la dirección. Cada noche, otro sistema genera la lista de clientes del día. Este otro sistema genera un archivo que contiene la lista de clientes, y desea usar este archivo como entrada para el flujo de datos.

El sistema que genera la lista de clientes la deja en una carpeta llamadaDailyCustomerReport. Además, cuando termina, coloca un archivo desencadenador vacío en la carpeta. Así que configura Spectrum Technology Platform para supervisar esta carpeta, especificando el siguiente como el archivo desencadenador:

C:\DailyCustomerReport\*.trg

Este le indica a Spectrum Technology Platform que ejecute el flujo de datos cuando cualquier archivo con extensión .trg aparezca en la carpeta. También puede indicar un nombre de archivo específico, pero en este ejemplo estamos usando un comodín.

Cuando se detecta un archivo .trg en la carpeta DailyCustomerReport, Spectrum Technology Platform tiene que moverlo a otra carpeta antes de ejecutar el flujo de datos. El archivo se debe mover porque de lo contrario se detectaría nuevamente en el siguiente intervalo de sondeo, lo que haría que el flujo de datos vuelva a ejecutarse. Así que se mueve el archivo a una “carpeta de trabajo” donde reside durante la ejecución del flujo de datos. Como carpeta de trabajo eligió C:\SpectrumWorkingFolder.

Después de que el flujo de datos termina de procesar la lista de clientes, quiere que el archivo desencadenador se mueva a otra ubicación, donde desencadenará otro proceso para facturación. Por lo tanto, debe seleccionar la opción Mover a y elegir una carpeta llamada C:\DailyBilling.

Por lo que en este ejemplo, el archivo desencadenador comienza enC:\DailyCustomerReport y luego se mueve a la carpeta de trabajoC:\SpectrumWorkingFolder. Una vez finalizado el flujo de datos, el archivo desencadenador se mueve a C:\DailyBilling para iniciar el proceso de facturación.