Switch
Switch reparte tus datos entre varios caminos. Mira el valor de un campo de cada registro, lo compara con las condiciones que defines (los casos) y envía el registro por la salida del caso que cumple. Es la forma de decir “si el estado es pagado, haz esto; si está pendiente, haz esto otro”.
Cuándo usarlo
- Enviar cada pedido a un proceso distinto según su estado: pagado, pendiente o cancelado.
- Dirigir las consultas de clientes al equipo adecuado según su categoría.
- Separar los registros que tienen un dato, como el correo, de los que no lo tienen.
- Seguir un camino u otro según una respuesta de sí o no.
Configuración
| Campo | Qué hace |
|---|---|
| Data Input | Los registros que quieres repartir. Admite uno o varios. |
| Switch Key (obligatorio) | El campo cuyo valor se evalúa, por ejemplo estado. Para un campo dentro de otro, sepáralos con un punto: cliente.pais. |
| Number of Cases (obligatorio) | Cuántos casos quieres definir, de 1 a 30. Por defecto, 1. Cada caso tiene su propia salida. |
Casos
Por cada caso aparece un grupo Case 1, Case 2, etc., con estos campos:
| Campo | Qué hace |
|---|---|
| Operator (obligatorio) | Cómo se compara el valor del campo. Por defecto, equals. Ver la tabla de operadores. |
| Value | El valor con el que se compara. No aparece con los operadores que no lo necesitan. |
| Operador | Se cumple cuando el valor del campo… |
|---|---|
equals / not equals | es igual / distinto al valor indicado. |
contains / not contains | contiene / no contiene el valor indicado. |
starts with / ends with | empieza / termina por el valor indicado. |
is empty / is not empty | está vacío / tiene contenido. |
exists / not exists | existe y tiene datos / no existe o no tiene datos. |
boolean validator | representa un “sí”: true, yes, y, 1 u on. |
Las comparaciones distinguen mayúsculas de minúsculas.
Opciones de reparto (avanzadas)
| Campo | Qué hace |
|---|---|
| First Match Only | Si un registro cumple varios casos, sale solo por el primero. Desactivado por defecto: el registro sale por todos los casos que cumpla. |
| Enable Default Output | Añade una salida Default que recibe los registros que no cumplen ningún caso. Desactivado por defecto. |
Resultado
- Case 1, Case 2…: una salida por caso, con los registros que lo cumplen. Si ningún registro cumple un caso, esa salida se detiene y los componentes conectados a ella no se ejecutan.
- Default: solo si activas Enable Default Output. Recibe los registros que no han cumplido ningún caso.
Con Batch Mode activado, cada salida deja pasar solo los registros que cumplen su caso.
Ejemplo
Tu tienda recibe pedidos con el campo estado. Configuras Switch Key como estado y Number of Cases en 2. En Case 1 eliges equals y pagado, y conectas su salida al componente que prepara el envío. En Case 2 eliges equals y pendiente, y conectas su salida a un correo de recordatorio de pago. Activas Enable Default Output para avisar al equipo de cualquier pedido con otro estado.
Buenas prácticas
- Activa Enable Default Output para no perder registros que no encajan en ningún caso.
- Si un valor puede llegar con mayúsculas distintas, normalízalo antes con Text Formatter.