Aviso de traducción por IA

Esta documentación ha sido traducida automáticamente por IA.

Variable

Workflow: Nodo de variable personalizadaCommunity Edition+

Introducción

Puede declarar variables en un flujo de trabajo o asignar valores a variables ya declaradas. Esto se utiliza generalmente para almacenar datos temporales dentro del flujo.

Crear nodo

En la interfaz de configuración del flujo de trabajo, haga clic en el botón de más ("+") en el flujo para añadir un nodo de "Variable":

Add Variable Node

Configurar nodo

Modo

El nodo de variable es similar a las variables en programación: debe declararse antes de poder usarse y asignársele un valor. Por lo tanto, al crear un nodo de variable, debe seleccionar su modo. Hay dos modos disponibles:

Select Mode

  • Declarar una nueva variable: Crea una nueva variable.
  • Asignar a una variable existente: Asigna un valor a una variable que ya ha sido declarada anteriormente en el flujo de trabajo, lo que equivale a modificar el valor de la variable.

Cuando el nodo que se está creando es el primer nodo de variable en el flujo de trabajo, solo puede seleccionar el modo de declaración, ya que aún no hay variables disponibles para asignar.

Cuando elija asignar un valor a una variable declarada, también deberá seleccionar la variable de destino, que es el nodo donde se declaró la variable:

Select the variable to assign a value to

Valor

El valor de una variable puede ser de cualquier tipo. Puede ser una constante, como una cadena de texto, un número, un valor booleano o una fecha, o puede ser otra variable del flujo de trabajo.

En el modo de declaración, establecer el valor de la variable equivale a asignarle un valor inicial.

Declare initial value

En el modo de asignación, establecer el valor de la variable equivale a modificar el valor de la variable de destino declarada por un nuevo valor. Los usos posteriores recuperarán este nuevo valor.

Assign a trigger variable to a declared variable

Usar el valor de la variable

En los nodos posteriores al nodo de variable, puede utilizar el valor de la variable seleccionando la variable declarada del grupo "Variables de nodo". Por ejemplo, en un nodo de consulta, use el valor de la variable como condición de consulta:

Use variable value as a query filter condition

Ejemplo

Un escenario más útil para el nodo de variable es en las ramas, donde se calculan o fusionan nuevos valores con valores anteriores (similar a reduce/concat en programación), y luego se utilizan una vez finalizada la rama. A continuación, se muestra un ejemplo de cómo utilizar una rama de bucle y un nodo de variable para concatenar una cadena de destinatarios.

Primero, cree un flujo de trabajo activado por una colección que se dispare cuando se actualicen los datos de "Artículo", y precargue los datos de relación de "Autor" asociados (para obtener los destinatarios):

Configure Trigger

Luego, cree un nodo de variable para almacenar la cadena de destinatarios:

Recipient variable node

A continuación, cree un nodo de rama de bucle para iterar a través de los autores del artículo y concatenar su información de destinatario en la variable de destinatario:

Loop through authors in the article

Dentro de la rama de bucle, primero cree un nodo de cálculo para concatenar el autor actual con la cadena de autores ya almacenada:

Concatenate recipient string

Después del nodo de cálculo, cree otro nodo de variable. Seleccione el modo de asignación, elija el nodo de variable de destinatario como objetivo de asignación y seleccione el resultado del nodo de cálculo como valor:

Assign the concatenated recipient string to the recipient node

De esta manera, una vez finalizada la rama de bucle, la variable de destinatario almacenará la cadena de destinatarios de todos los autores del artículo. Luego, después del bucle, puede usar un nodo de solicitud HTTP para llamar a una API de envío de correo, pasando el valor de la variable de destinatario como parámetro de destinatario a la API:

Send mail to recipients via the request node

Hasta aquí, una función sencilla de envío masivo de correos electrónicos se ha implementado utilizando un bucle y un nodo de variable.