Ir al contenido principal

Herramienta de bloques de código en procedimientos

Cómo usar bloques de código en Fin Procedures para ejecutar lógica determinista y repetible, cuándo usarlos, cómo configurarlos y bibliotecas de Python disponibles.

Escrito por Dawn

Los bloques de código te permiten ejecutar lógica Python directamente dentro de un Fin Procedure, ofreciéndote resultados consistentes y exactos para tareas donde un LLM puede ser impredecible.

Cuándo usar bloques de código

Usa bloques de código para lógica determinista y repetible, especialmente donde Fin podría ser inconsistente:

  • Cálculos de fecha y hora — días hábiles, conversiones de zona horaria, verificaciones de plazos

  • Operaciones matemáticas — montos de reembolso, porcentajes, conversiones de moneda

  • Manipulación de cadenas — formateo de IDs, extracción de subcadenas, coincidencia con regex

  • Transformación de datos — remodelar respuestas de conectores, filtrar o mapear listas

  • Lógica condicional compleja — verificaciones de elegibilidad con múltiples criterios

Consejo: Usa bloques de código cuando la salida debe ser exacta y repetible, no cuando se beneficie de interpretación.

Cuándo no usar bloques de código

Evita bloques de código para tareas que Fin maneja bien de forma natural, como:

  • Interpretar la intención del usuario

  • Generar respuestas conversacionales


Cómo usar bloques de código

1. Crea un bloque de código

  1. Abre el selector de herramientas escribiendo @ o /

  2. Selecciona +Crear bloque de código

2. Escribe y prueba tu código

  1. Se abrirá el editor de bloques de código

  2. Haz clic en Probar código para ejecutar tu lógica, esto abre el panel de pruebas

  3. Aparecen campos de entrada para cualquier atributo que hayas referenciado

  4. Ejecuta pruebas y visualiza resultados en formato JSON o lista

3. Entiende los atributos

Los atributos se crean a partir de la respuesta devuelta. Por ejemplo, el siguiente código:

return {
  "result": {
    "nested_result": "This is nested"
  },
  "date": "05-04-2025"
}

Crea los siguientes atributos:

  • Un atributo raíz (la respuesta completa)

  • Atributos anidados: result, result.nested_result y date

Nota: El atributo raíz siempre se crea y siempre contendrá la respuesta completa devuelta, no necesita ser JSON.

4. Usa el bloque de código en un procedimiento

  1. Regresa al editor de procedimientos

  2. Abre el selector de herramientas escribiendo @ o /

  3. Selecciona Ejecutar código — esto lista todos los bloques de código disponibles

  4. Elige tu bloque de código

Una vez seleccionado, puedes usar los atributos a lo largo del procedimiento y continuar normalmente.


Bibliotecas disponibles

Estos módulos de la biblioteca estándar de Python están en la lista blanca y preimportados. Puedes usarlos directamente sin una declaración de importación, aunque se recomienda añadir importaciones para mayor claridad.

Módulo

Uso para

Ejemplo

math

Funciones matemáticas

math.floor(3.7), math.ceil(2.1)

decimal

Aritmética decimal precisa

Decimal("19.99") * Decimal("0.15")

re

Expresiones regulares

re.match(r"\d{4}", order_id)

datetime

Fechas, horas, duraciones

datetime.date.today(), timedelta(days=5)

json

Codificación/decodificación JSON

json.loads(raw_string)

random

Generación de números aleatorios

random.randint(1, 100)

zoneinfo

Manejo de zonas horarias

ZoneInfo("America/New_York")

time

Funciones relacionadas con el tiempo

time.time()

Nota: Solo se permiten importaciones de nivel superior. Evita importaciones de submódulos — por ejemplo, from json import loads no está soportado.

¿Ha quedado contestada tu pregunta?