Nodo If
El nodo IF te permite crear condiciones en tus flujos. El "if" es una estructura de control que se utiliza para tomar decisiones basadas en una condición. Básicamente, se utiliza para decirle al programa "si ocurre esto, haz aquello".
El nodo de If tiene dos puntos de conexión, cada uno corresponde a un posible resultado de la condición. Los resultados son TRUE y FALSE.
TRUE: La condición indicada se cumple.
FALSE: La condición indicada no se cumple.
En Javascript el "if" escribe de la siguiente manera:
if (condición) {
// código a ejecutar si la condición es verdadera
}
En este caso, "condición" es una expresión que puede ser verdadera o falsa. Si la condición es verdadera, entonces el código dentro de las llaves se ejecutará. Si la condición es falsa, entonces ese código se saltará y el programa continuará ejecutando el resto de las instrucciones.
Parámetros de entrada
Las condiciones en el nodo If, pueden realizarse sobre variables del flujo. Para incluir una variable en la condición, debes elegirlas en el campo "Parámetros de entrada". Como parámetros de entrada puedes utilizar cualquier variable del flujo, como:
Campos de formulario
Respuestas de una integración manual
Respuestas de una App del mercado de apps
Metadata del flujo
Datos obtenidos de documentos con OCR.
Variables creadas en nodos de "Código".
En Kosmos, el nodo de If se utiliza para evaluar una condición y realizar una acción si se cumple dicha condición. En Kosmos, un If siempre va a tener un output igual a true como código a ejecutar si la condición es verdadera.
Esto significa que, si la condición se cumple, se establecerá un output con valor FALSE y se ejecutará el siguiente nodo de la lógica de negocio. En el caso de que la condición no se cumpla, el output será FALSE y se ejecutará el siguiente nodo de la lógica de negocio que tenga un input conectado a él.
Es importante tener en cuenta que la condición puede ser cualquier expresión o comparación que devuelva un valor booleano (true o false).
if (condición) {
output = true
}
En Kosmos, las condiciones del nodo IF se basan en los parámetros de entrada, es decir, en las variables que forman parte del flujo. Esto significa que al utilizar el nodo IF, puedes evaluar una condición específica basada en los valores de las variables existentes en tu flujo. Al establecer una condición en el nodo IF, estás creando una estructura de control que permite la toma de decisiones en función del valor de dicha condición. De esta manera, puedes adaptar el comportamiento de tu flujo en función de las necesidades específicas de tu aplicación o negocio. Además, con el uso de operadores lógicos como && (AND), || (OR) y ! (NOT), puedes crear condiciones más complejas para tomar decisiones más precisas.
¿Cómo agregar el nodo de If?
Ingresa a editar tu botón, o componente, e ingresa a la configuración de Business Logic.
Coloca el nodo de "If" y conéctalo.
Haz click en “Editar” en el nodo.
En “Parámetros de entrada”, coloca tu cursor sobre el campo, elige la fuente del parámetro y sin hacer click, elige la variable que vas a usar como parámetro de entrada para la condición. (Puedes seleccionar más de uno).
Para el caso de campos de opción múltiple verás dos opciones “key” o “value”. Key es la clave del elemento en la lista. Value es el valor del elemento en la lista.
En el editor de texto busca “ //------ Escribe tu codigo aquí ------//”
Utiliza la siguiente estructura para escribir tu condición en javascript.
if (condición) {
output = true
}
Haz click en guardar.
Plantillas de If
A continuación, te presentamos plantillas básicas de If que puedes usar en tus flujos. Donde "#variable" se reemplaza por tus parámetros de entrada, para crear condiciones relacionadas a las variables del flujo. Como parámetros de entrada puedes utilizar cualquier variable del flujo, como "Campos de formulario", Variables que obtienes como respuesta de una integración manual o de un servicio del mercado de apps, etc.
1.- Condicionar que una variable del flujo sea igual a otra variable del flujo.
if(#variable === #variable) {
output = true
}
2.- Condicionar que una variable del flujo sea igual a una cantidad que tú determinas.
if(#variable === cantidad) {
output = true
}
3.- Condicionar que una variable del flujo sea igual a un dato que tú determinas.
if(#variable === dato) {
output = true
}
4.- Condicionar que una variable del flujo sea TRUE. Es útil en campos de Sí/No donde Sí, siempre es igual a TRUE.
if(#variable === true) {
output = true
}
5.- Condicionar que una variable del flujo NO sea igual a otra variable del flujo.
if(#variable != #variable) {
output = true
}
6.- Condicionar que una variable del flujo NO sea igual a una cantidad que tú determinas.
if(#variable != cantidad) {
output = true
}
7.- Condicionar que una variable del flujo NO sea igual a un dato que tú determinas.
if(#variable != dato) {
output = true
}
Ejemplos de uso
Verificar la edad del solicitante:
if (edad >= 18 && edad <= 65) {
output = true;
}
En este caso, se verifica si la edad del solicitante está entre 18 y 65 años. Si es así, la condición es verdadera y se establece el valor de output en true.
Validar el historial crediticio:
if (historial_crediticio == "bueno") {
output = true;
} else {
output = false;
}
En este caso, se verifica si el historial crediticio del solicitante es "bueno". Si es así, la condición es verdadera y se establece el valor de output en true. Si no es así, la condición es falsa y se establece el valor de output en false.
Verificar la cantidad de ingresos del solicitante:
if (ingresos_mensuales >= 2000) {
output = true;
}
En este caso, se verifica si los ingresos mensuales del solicitante son mayores o iguales a 2000. Si es así, la condición es verdadera y se establece el valor de output en true.
Comprobar si el solicitante ha tenido algún incumplimiento anterior:
if (incumplimiento_anterior == false) {
output = true;
}
En este caso, se verifica si el solicitante ha tenido algún incumplimiento anterior. Si la respuesta es no, es decir, si la variable incumplimiento_anterior es false, la condición es verdadera y se establece el valor de output en true.
Validar el nivel educativo del solicitante:
if (nivel_educativo == "universitario" || nivel_educativo == "posgrado") {
output = true;
}
Utilizando el operador && (AND):
if (edad >= 18 && ingresos_mensuales > 1000) {
output = true;
}
En este ejemplo, la condición se cumplirá si la edad del solicitante es mayor o igual a 18 años y sus ingresos mensuales superan los $1000.
Utilizando el operador || (OR):
if (antiguedad_laboral >= 2 || ingresos_mensuales > 5000) {
output = true;
}
En este caso, la condición se cumplirá si la antigüedad laboral del solicitante es mayor o igual a 2 años o sus ingresos mensuales superan los $5000.
Utilizando el operador ! (NOT):
if (!(tipo_empleo == "independiente" || ingresos_mensuales < 2000)) {
output = true;
}
En este ejemplo, la condición se cumplirá si el tipo de empleo del solicitante no es "independiente" y sus ingresos mensuales no son menores a $2000.
Preguntas frecuentes
¿Puedo usar una condición más compleja en el nodo IF en Kosmos?
Sí, en el nodo IF en Kosmos puedes usar una condición más compleja, incluyendo operadores lógicos como && (AND), || (OR) y ! (NOT), así como también comparaciones como >, <, >=, <= y ==.
¿Qué pasa si no asigno un valor a la salida de FALSE en el nodo IF en Kosmos?
Si no asignas un valor a la salida de FALSE en el nodo IF en Kosmos, el flujo seguirá avanzando sin realizar ninguna acción específica cuando la condición es falsa. Por lo tanto, es importante asignar un valor a la salida de FALSE para asegurarse de que el flujo siga correctamente en ambos casos, verdadero y falso.
¿Es posible conectar múltiples nodos de IF de forma sucesiva en Kosmos?
Sí, en Kosmos es posible realizar cadenas de condiciones, lo que significa que puedes conectar un nodo de if después de otro nodo de if sucesivamente para crear flujos de trabajo más complejos y adaptados a tus necesidades. De esta manera, puedes encadenar varias condiciones y crear una secuencia de acciones que se ejecuten solamente si todas las condiciones previas se cumplen.