Código JavaScript
Código JavaScript
Ejecuta un bloque de código JavaScript personalizado dentro del flujo de automatización y retorna el valor producido. Ideal para operaciones que no tienen una acción dedicada: cálculos complejos, transformaciones de datos, formatos específicos o manipulaciones avanzadas de objetos y listas.
Usa return en tu código para definir el valor que retornará la acción y que estará disponible para las siguientes etapas del flujo.
Opciones
Código
Escribe el bloque de código JavaScript que se ejecutará. Usa return para definir el valor de retorno.
Acceder a las salidas de acciones anteriores
El objeto actions está disponible dentro del código y contiene los retornos de todas las acciones anteriores del flujo. Usa el ID o el alias de la acción para acceder a sus campos:
// Sintaxis: actions["id_o_alias"]["campo"]
const texto = actions["lerTexto"]["value"]
const numero = actions["calcularTotal"]["value"]
// Combinado en una expresión
return `Resultado: ${actions["buscarNome"]["value"]} (${actions["lerCodigo"]["value"]})`
El editor muestra el autocompletado de los IDs y campos disponibles al escribir actions[".
Acceder a los parámetros del robot
Usa la sintaxis de dobles llaves dentro de template literals para insertar parámetros:
const url = `https://api.exemplo.com/{{PARAMETROS.endpoint}}`
const token = `{{PARAMETROS.token_api}}`
return token
Para secretos (parámetros marcados como contraseña), usa {{SEGREDOS.nombre}}.
Caracteres de escape y barras invertidas
El campo Código (igual que cualquier campo de tipo Código en un campo dinámico) es un bloque de código JavaScript de verdad: todo lo que se escribe se interpreta con las reglas de sintaxis de JavaScript antes de ejecutarse. Eso significa que cualquier carácter que necesitaría escaparse dentro de una cadena JavaScript común (comillas, saltos de línea, barra invertida, etc.) también debe escaparse aquí, exactamente como se haría en un archivo .js.
Esto importa sobre todo en las rutas de archivo de Windows, que usan la barra invertida (\) como separador. Como la barra invertida es el carácter de escape de JavaScript, una ruta copiada directamente del Explorador generará secuencias de escape inválidas o incorrectas (\t, por ejemplo, se convierte en una tabulación, no en la letra "t"). Para usar la ruta como texto literal, escribe cada barra invertida duplicada (\\):
// Incorrecto — "\t" se interpreta como tabulación, no como parte de la ruta
const caminho = "C:\temp\arquivo.txt"
// Correcto — barras duplicadas para escapar cada una
const caminho = "C:\\temp\\arquivo.txt"
return caminho
La misma regla vale dentro de template literals (` ... ), incluso cuando la ruta está mezclada con {{PARAMETROS...}} o actions[...].
No escapar el símbolo del dólar "$"
Define si el símbolo $ del código se tratará literalmente, sin escape automático. Selecciona Sí cuando el código contenga template literals con la sintaxis ${...} y el comportamiento de escape predeterminado esté interfiriendo.
Retornos
Código Javascript
actions["id-de-la-accion"].value // valor retornado por el código personalizado (Cualquiera)
Selección de campos
- value — valor producido por el código ejecutado (Cualquiera)
Reglas y Condiciones
- El campo Código es obligatorio.
- El código debe usar
returnpara definir el valor de retorno; sinreturn, la acción retornará vacío. - El código se ejecuta en un entorno aislado con acceso a las variables del flujo.
- Los errores de sintaxis o las excepciones no controladas en el código interrumpen la ejecución del robot.
Usar bibliotecas externas
Además de las bibliotecas nativas, es posible instalar cualquier paquete npm y usarlo en el código. Consulta el tutorial Instalar bibliotecas Node.js externas para el paso a paso completo.