Condiciones

La condición es la unidad de trabajo de una regla: evalúa una expresión sobre el evento y, cuando es verdadera, ejecuta acciones.

Partes de una condición

Nombre: identifica la condición en el panel y en las comparaciones entre versiones. Elija algo que describa la intención (tarjeta_extranjera, cliente_bloqueado), no el mecanismo.

Expresión: resulta en verdadero o falso a partir de los datos disponibles en el momento de la evaluación:

$amount > 1000 and $issuer_country != "BR"

La expresión se escribe según la sintaxis para expresiones y solo puede usar los campos del tipo de evento al que pertenece la regla.

Acciones: de cero a varias, ejecutadas en orden cuando la expresión es verdadera. Las acciones son el efecto de la condición: completar un campo, consultar un dato externo, agregar un valor a una lista, ejecutar un análisis.

Orden y encadenamiento

Las condiciones se evalúan de arriba hacia abajo, todas ellas. La evaluación no se detiene en la primera condición satisfecha: si tres condiciones se cumplen, las tres ejecutan sus acciones.

Ese orden importa porque las condiciones comparten la misma memoria de trabajo. Cada condición se evalúa sobre el estado actual del evento, incluido lo que escribieron las condiciones anteriores:

Orden Condición Expresión Acción
1 identifica_emisor $card_bin != null Enriquecer: BIN → issuer_id, issuer_country
2 emisor_extranjero $issuer_country not in ["BR"] Completar campo: review = "true"

La condición 2 solo funciona porque la condición 1 ya completó issuer_country. Si el orden estuviera invertido, el campo aún estaría vacío en el momento de la evaluación.

La misma lógica vale para las acciones dentro de una condición: se ejecutan en el orden en que aparecen y pueden reordenarse arrastrando las filas en el panel.

Condición sin acciones

Una condición puede no tener ninguna acción. Eso es válido, pero raro: sin acción, la condición no produce ningún efecto. El caso de uso es documentar una verificación que todavía se está diseñando, dejando las acciones para después.

Cuándo una condición no se cumple

No pasa nada: la evaluación sigue con la condición siguiente. Los campos que una condición completaría conservan el valor que ya tenían (o siguen vacíos), y una condición posterior puede probar exactamente esa ausencia:

$issuer_country == null

Si una acción falla

Si una acción encuentra un error inesperado durante la ejecución, el evento igualmente se registra, sin los valores que la regla produciría, y el equipo de Glass Data es notificado automáticamente. La ingestión nunca se interrumpe a causa de una regla.

Los valores que la acción no logró resolver no son un error: una consulta sin resultado, o un valor en blanco, deja el campo de destino intacto, y una condición siguiente puede tratar esa ausencia.