Un workflow no necesita nodos Fin para funcionar. Si no declaras salidas, el workflow termina como siempre y el nodo Workflow que lo invoca sigue comportándose como un salto simple.
Qué es una salida
Una salida es el contrato de terminación del workflow. Cada salida tiene:Tipos de salida
Éxito
El workflow termina como exitoso.
Error
El workflow termina como fallido, en un fallo controlado.
Neutral
El workflow termina sin marcarse como exitoso ni fallido.
Crear una salida
Puedes crear una salida desde el Administrador de outputs o directamente desde el panel de un nodo Fin. Necesitas permiso de escritura sobre el canvas.1
Abre el formulario
Desde el nodo Fin, abre el selector Output y haz clic en Crear output. Si el workflow aún no tiene salidas, el panel muestra el mensaje “Este workflow aún no tiene outputs” con el mismo botón.También puedes abrir Administrador de outputs desde el menú de la barra superior del canvas y hacer clic en Crear output.
2
Completa los datos generales
Escribe el Nombre, la Variable, elige el Tipo de salida (Éxito, Error o Neutral) y agrega la Descripción. La variable se sugiere automáticamente a partir del nombre hasta que la edites.
3
Define los datos que devuelve
En Datos que devuelve tienes dos modos:
- Campos: agrega una fila por cada dato con Agregar variable. La variable es la ruta que el padre va a leer (por ejemplo,
pedido.total) y el nombre es su etiqueta visible (por ejemplo, “Total del pedido”). - JSON: pega un JSON de ejemplo y cada clave se convierte en un campo. Los valores del ejemplo no se guardan.
4
Guarda
La salida queda disponible para todos los nodos Fin del workflow y aparece de inmediato en los nodos Workflow que lo referencian. Si la creaste desde un nodo Fin, queda asignada a ese nodo automáticamente.
La variable debe ser única en el workflow y no puede contener espacios ni puntos. Además, el esquema necesita al menos un dato, y cada dato debe tener ruta y nombre.
Usar el nodo Fin en el canvas
1
Arrastra el nodo
En el panel de nodos, abre el grupo Fin y arrastra el nodo al canvas.
2
Elige la salida
Haz clic en el nodo para abrir su panel y selecciona una salida en Output. La lista agrupa las salidas por tipo (Éxito, Error y Neutral) y permite buscarlas por nombre. El nodo toma el color del tipo de esa salida, muestra su nombre y la cantidad de datos que devuelve. Mientras no elijas ninguna, se muestra como Fin.
3
Conecta la ruta
Conecta al nodo Fin cada rama que deba terminar con esa salida. Puedes tener varios nodos Fin apuntando a la misma salida.
Detalle de la salida en el panel
Al seleccionar una salida, el panel muestra su ficha con:- Nombre y tipo, con el botón Editar output para modificarla sin salir del nodo.
- Descripción de la salida.
- Variable, con un botón para copiarla.
- Valor, que indica qué nodo escribe el valor de la salida (ver más abajo).
- Datos que devuelve, con la cantidad de datos y un selector para verlos como JSON o como Lista. Debajo se indica cómo se leen en el workflow que llama.
- Uso, que indica si la salida solo se usa en este nodo o en varios nodos Fin.
Escribir el valor de la salida
Los datos que devuelve una salida se escriben con$output.set desde un nodo Código, API o SOAP:
Nodo Código
Administrar las salidas
Abre el Administrador de outputs desde el menú de la barra superior del canvas, desde el botón Administrar outputs del panel del nodo Fin o desde el menú ⋮ del workflow en la barra lateral. Desde ahí puedes:- Ver todas las salidas del workflow con su cantidad total.
- Reordenar las salidas arrastrándolas o con el teclado. El orden se guarda y define cómo se muestran las salidas en el nodo Workflow del padre.
- Ubicar una salida en el canvas con el ícono de localización, que indica en cuántos nodos Fin se usa o si no se usa.
- Editar o eliminar cada salida desde su menú.
- Previsualizar cómo se ve el nodo Workflow en otro workflow, con una salida por cada output y el color de su tipo.
Consumir las salidas desde el workflow padre
Cuando un workflow declara salidas, el nodo Workflow que lo referencia las dibuja como puntos de conexión, uno por salida:- Conecta cada salida a la rama que corresponda en el workflow padre.
- Las variables del esquema quedan disponibles en el selector de variables del padre como
$memory.response.<variable>. Por ejemplo, un esquema con la variabletotalse lee como{{$memory.response.total}}.
Eliminar una salida
Antes de confirmar, la ventana de eliminación te muestra qué nodos Fin se van a borrar en el canvas actual, con el nodo que los precede (“Fin después de «Código»”) o como “Fin sin conexión”. También se borran los nodos Fin que usen la salida en otros canales del mismo workflow. La plataforma revisa además si algún workflow del proyecto tiene esa salida conectada en su nodo Workflow:- Si alguno la usa, la eliminación se bloquea. El mensaje te dice qué workflows la tienen conectada: desconecta la ruta en cada uno y vuelve a intentarlo.
- Si ninguno la usa, la salida se elimina junto con los nodos Fin que la tenían seleccionada y las rutas que llegaban a ellos.
La validación mira la conexión, no la referencia: un nodo Workflow que apunta a este workflow pero no tiene esa salida conectada no bloquea la eliminación.
Probar el workflow desde el Tester
Cuando el nodo Workflow tiene salidas conectadas, el workflow hijo se ejecuta dentro de la ejecución del padre: el padre espera a que termine y continúa por la salida que el hijo tomó. En el Tester esto se nota en dos cosas:- Tus respuestas se envían al workflow hijo mientras esté en curso.
- El nodo no muestra el botón “Ir al workflow” ni el separador de inicio de ejecución, porque no se trata de una ejecución aparte a la que ir.
Siguientes pasos
Nodo Workflow
Invoca otro workflow y continúa por la salida que tomó.
Nodo Código
Escribe el valor de una salida con
$output.set.