¿Cómo invocar un Notebook desde FlowEngine?

En este tutorial, explicaremos cómo invocar ejecuciones de Notebook desde FlowEngine:.

Con el nuevo nodo "Notebook Launcher", ahora podemos ejecutar Notebooks completos, o sólo los párrafos que necesitemos, de manera ordenada.

 

Veamos cómo podemos usar ese nodo. Para ello, seguiremos los siguientes pasos:

  1. Elige la opción "Gestión de FlowEngine" del menú:

     

  2. Elige el dominio perteneciente a tu usuario:

  3. Una vez que estés en el dominio, arrastra un nodo de tipo "Notebook Launcher" al flujo y haz doble clic sobre él para ver sus propiedades.

     

    1. Name: el nombre que quieras que tenga el nodo cuando lo veas dentro del flujo.

    2. Onesait Platform Notebook: En esta lista, selecciona el Cuaderno sobre el que deseas trabajar.

    3. Workflow mode: Si está activo, permite la ejecución con las dependencias tal como se representan en el flujo. Por ejemplo, tome el siguiente flujo:

      Si el "check" está activo, el párrafo 3 se ejecutará cuando el 1 y el 2 se ejecuten. Si está desactivado, el párrafo 3 se ejecutará cuando cualquiera de los otros lo haga.

    4. Inputs & Execution: En esta pestaña, selecciona entre los modos de ejecución:

      1. Execute entire notebook (Ejecutar todo el notebook):

        1. Si se activa este "check", se ejecutará todo el cuaderno, siguiendo el orden de párrafos definido en el mismo.

        2. Si está desactivado, entonces el modo de ejecución de párrafo único está abierto, mostrando las siguientes propiedades:

          1. Input Paragraph selecion (Selección de párrafo de entrada): Selección del párrafo que queremos ejecutar. El ID del párrafo aparecerá junto con su título entre paréntesis (si se ha definido).

          2. Input Parameters mapping (Mapeo de Parámetros de Entrada): Si el párrafo tiene parámetros de entrada configurados, aparecerán para que los rellenes. Sus valores se pueden informar de diferentes maneras:

            1. msg: De un campo del msg anterior.

            2. flow: De una variable global al Flow.

            3. global: De una variable global.

            4. string: Como una cadena de caracteres fija.

            5. number: Como un número fijo.

            6. boolean: Como un valor lógico verdadero/falso fijo.

            7. timestamp: Como una marca de tiempo fija.

    5. Outputs: esta pestaña también cambia dependiendo de si queremos ejecutar todo el cuaderno o solo un nodo.

      1. Ejecución de un solo párrafo: Si el check Execute entire notebook (Ejecutar todo el cuaderno) está desactivado, la configuración de outputs (salidas) está deshabilitada. Dado que se ejecuta un solo nodo, la salida será única.

      2. Ejecución completa: Si se marca el check Ejecutar todo el cuaderno, aparecerán las siguientes opciones para definir las salidas:

        1. Enable Paragraph Output (Habilitar Salida de Párrafo): Si la marcamos, nos permite definir diferentes salidas con los resultados de los párrafos que seleccionemos.

        2. Split Outputs (Salidas divididas): El selector de salida múltiple está habilitado.

        3. Outputs Number (Número de Salidas): Permite elegir el número de salidas que quieres en el nodo.

        4. Output Parameters mapping (Asignación de parámetros de salida): Para cada output que hayas definido, puedes seleccionar el párrafo cuyo resultado mostrará esa salida.

El resultado sería el siguiente:

Si pasamos el cursor sobre los pines de salida del nodo, podemos ver el párrafo al que pertenece.

Una vez que el nodo esté configurado , podemos ver las salidas definidas, las cuales tendrán la siguiente estructura:

 

En el msg.payload.body, encontraremos los siguientes campos de resultado:

  • Title:: Título del párrafo ejecutado.

  • Text: Contenido del párrafo ejecutado.

  • User: Usuario.

  • dateUpdated: Fecha de la última actualización del párrafo.

  • config: Parámetros de configuración del párrafo.

  • settings: Muestra los parámetros y variables de entrada del párrafo.

  • results: Contiene el resultado de la ejecución.

    • code: Indica si la ejecución ha sido correcta.

    • msg: Array con los resultados de la ejecución del párrafo. Cada elemento marcará el tipo de dato (type) y el resultado (data).

  • El resto de campos son informativos sobre cuándo se realizó la ejecución y el tiempo que tardó.