Agregar lógica de bifurcación a un trabajo con la tarea If/else
Use la tarea If/else condition
para agregar lógica condicional booleana a gráficos de tareas. Estas tareas constan de un operador booleano y un par de operandos, donde los operandos pueden hacer referencia al estado de trabajo o tarea mediante parámetros configurados o dinámicos, o valores de tarea. Consulte Parameterize jobs (Parametrización de trabajos).
Por ejemplo, supongamos que tiene una tarea denominada process_records
que mantiene un recuento de registros que no son válidos en un valor denominado bad_records
y desea ramificar el procesamiento cuando encuentre registros no válidos. Para agregar esta lógica al flujo de trabajo, cree una tarea If/else condition
con una expresión, como {{tasks.process_records.values.bad_records}} > 0
. A continuación, agregue tareas dependientes en función de los resultados de la condición.
Una vez completada la ejecución de un trabajo que contenga una tarea If/else condition
, podrá ver el resultado de la expresión y los detalles de la evaluación de expresiones al ver los detalles de ejecución del trabajo en la interfaz de usuario. Consulte Visualización de los detalles de ejecución de trabajos.
Nota:
- Los valores numéricos y no numéricos se manipulan de forma diferente en función del operador booleano:
- Los operadores
==
y!=
realizan una comparación de cadenas de sus operandos. Por ejemplo,12.0 == 12
se evalúa como false. - Los operadores
>
,>=
y<=
realizan comparaciones numéricas de sus operandos. Por ejemplo,12.0 >= 12
se evalúa como true y10.0 >= 12
se evalúa como false. - Solo se permiten valores numéricos, de cadena y booleanos al hacer referencia a valores de tarea en un operando. Cualquier otro tipo hará que se produzca un error en la expresión de condición. Los tipos de valor no numérico se serializan en cadenas y se tratan como cadenas en expresiones
If/else condition
. Por ejemplo, si un valor de tarea se establece como valor booleano, se serializa en"true"
o"false"
.
- Los operadores
Configurar una tarea If/else
Agregue una tarea If/else condition
desde la pestaña Tareas de la interfaz de usuario trabajos haciendo lo siguiente:
- En el menú desplegable Tipo, seleccione
If/else condition
. - Escriba el operando que se vaya a evaluar en el primer cuadro de texto Condición. El operando puede hacer referencia a cualquiera de los siguientes valores:
- Una variable de parámetros de un trabajo.
- Una variables de parámetros de una tarea.
- El valor de una tarea.
- Seleccione un operador booleano en el menú desplegable.
- En el segundo cuadro de texto Condición, escriba el valor para evaluar la condición.
- Haga clic en Guardar tarea.
Configuración de dependencias en una condición If/else
Configure las dependencias de la tarea desde el gráfico de tareas If/else condition
de la pestaña Tareas haciendo lo siguiente:
- Seleccione la tarea
If/else condition
en el gráfico de tareas y haga clic en + Agregar tarea. - Escriba los detalles de la tarea. El campo Depende tiene
<task-name> (true)
como valor predeterminado del campo donde<task-name>
es el nombre de la tareaIf/else condition
.- Seleccione
<task-name> (false)
para configurar una tarea que se ejecute en una evaluación de condición falsa.
- Seleccione
Puede configurar varias tareas para que se ejecuten en serie o en paralelo en función del resultado de If/else condition
. Considere la posibilidad de configurar Run if dependencies
si necesita ejecuciones condicionales basadas en errores de tareas ascendentes. Consulte Configure task dependencies (Configuración de dependencias de tareas).