🔢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