🔢Code
Nodo de Code en Flow Studio
Actions: Uso del nodo "Code" en Dapta
Caso de uso
Obtener un dato ingresado desde un trigger y transformarlo mediante lógica JavaScript personalizada en un flujo automatizado.
✅ ¿Qué es el nodo "Code"?
Es una acción nativa de Dapta que te permite escribir lógica en JavaScript directamente dentro del flujo. Este nodo es útil para transformar datos, aplicar condiciones, sumar valores, generar fechas, entre muchas otras funciones personalizadas.
🎯 ¿Qué vas a lograr?
En este ejemplo, aprenderás a recibir un número desde el nodo trigger, sumarle un valor y exportar ese resultado para reutilizarlo en otros nodos del flujo. También verás cómo obtener la hora actual usando código.
🧭 Paso a paso para configurar el nodo
1. Crea el flujo y añade el nodo "Code"
Abre Flow Studio en Dapta.
Crea un nuevo flujo o usa uno existente.
Añade el nodo "Code" desde la sección de Actions.
2. Define el trigger de entrada
Configura el método como POST.
En el body, define un parámetro llamado numero.
Ejemplo: { "numero": "1" }
Este será el valor que se manipulará desde el nodo de código.
3. Configura el nodo Code
A. Accede a los datos de entrada:
const numero = params.trigger.body.numero;
params permite acceder a la información proveniente de cualquier nodo anterior del flujo. En este caso, usamos trigger.body.numero.
B. Convierte el valor a número:
Number(numero_input)
Es importante convertirlo porque los datos ingresados por body suelen llegar como texto (string).
C. Aplica la lógica que necesites:
function suma (numero_input) { return Number(numero_input) + 2
}
const resultado = suma(numero)
D. Exporta el valor:
module.exports = { resultado };
Así podrás usar este resultado en otros nodos del flujo.
🕒 Bonus: Exportar la hora actual
Puedes agregar también esta línea al final para exportar la hora actual:
function getCurrentDateTimeInBogota() {
const bogotaTime = new Date().toLocaleString('en-US', { timeZone: 'America/Bogota' }); const date = new Date(bogotaTime); const year = date.getFullYear(); const month = String(date.getMonth() + 1).padStart(2, '0'); const day = String(date.getDate()).padStart(2, '0'); const hours = String(date.getHours()).padStart(2, '0'); const minutes = String(date.getMinutes()).padStart(2, '0'); const seconds = String(date.getSeconds()).padStart(2, '0'); return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
const bogotaTime = getCurrentDateTimeInBogota();
💡 Buenas prácticas
Siempre valida si los valores entrantes son texto antes de operar con ellos.
Usa funciones para encapsular lógica reutilizable.
Exporta sólo los valores que vayas a usar después en el flujo.
Si estás trabajando con datos sensibles, considera usar variables de entorno.
4. Respuesta
Añadir un nodo de “response” ayuda a controlar la salida de la información
Last updated