Saltar al contenido principal

Automatizar con Workflows

Los workflows de NocoBase permiten automatizar acciones cuando cambian tus datos. Por ejemplo: enviar email cuando se crea un pedido, actualizar inventario al vender, etc.

Acceder a Workflows​

  1. Ve a Settings (engranaje)
  2. Busca Workflow en el menu
  3. Si no aparece, activa el plugin en Plugin manager

Crear un workflow​

  1. Clic en Add new
  2. Dale un nombre descriptivo
  3. Selecciona el tipo de trigger

Tipos de trigger​

Collection event​

Se ejecuta cuando cambian datos en una coleccion.

Eventos disponibles:

  • After record created - Al crear registro
  • After record updated - Al actualizar
  • After record deleted - Al eliminar

Configuracion:

  1. Selecciona la coleccion
  2. Elige el evento
  3. Opcionalmente filtra: "Solo cuando estado = 'Activo'"

Schedule​

Se ejecuta periodicamente (como un cron).

Ejemplos:

  • Cada hora
  • Todos los dias a las 9am
  • Cada lunes

Form event​

Se ejecuta cuando se envia un formulario especifico.

Nodos de accion​

Update record​

Actualiza campos de un registro.

Ejemplo: Cuando estado cambia a "Pagado", actualizar fecha_pago = hoy

Create record​

Crea un nuevo registro en otra coleccion.

Ejemplo: Al crear cliente, crear tarea de bienvenida

HTTP request​

Llama a una API externa.

Ejemplo: Enviar datos a un webhook de n8n o Zapier

Condition​

Bifurca el flujo segun una condicion.

Ejemplo: Si total > 1000, ir por rama A, sino rama B

Calculation​

Realiza calculos matematicos.

Loop​

Repite acciones para multiples registros.

Ejemplo: Notificar al crear pedido​

Objetivo​

Cuando se crea un pedido > $500, enviar notificacion.

Pasos​

  1. Trigger: Collection event > Pedidos > After created

  2. Condition: total > 500

    • Si: continuar
    • No: terminar
  3. HTTP Request:

    URL: https://tu-webhook.com/nuevo-pedido
    Method: POST
    Body: {
    "pedido": "{{$trigger.numero}}",
    "cliente": "{{$trigger.cliente.nombre}}",
    "total": {{$trigger.total}}
    }

Ejemplo: Actualizar inventario​

Objetivo​

Al marcar pedido como "Enviado", reducir stock del producto.

Pasos​

  1. Trigger: Collection event > Pedidos > After updated

    • Condicion: estado cambio a "Enviado"
  2. Loop: Para cada producto en el pedido

  3. Update record: Productos

    • stock = stock - cantidad_vendida

Usar variables​

En cualquier nodo puedes usar variables:

VariableDescripcion
{{$trigger.campo}}Dato del registro que disparo
{{$trigger.campo.subcampo}}Dato de relacion
{{$node.nombre.output}}Salida de otro nodo
{{$date.now}}Fecha/hora actual

Debug de workflows​

  1. Activa el workflow (toggle verde)
  2. Ejecuta la accion que lo dispara
  3. Ve a la pestana Executions
  4. Revisa cada paso y su resultado

Tips​

  • Prueba con datos de prueba primero
  • Usa condiciones para evitar loops infinitos
  • Los workflows se ejecutan en background
  • Revisa los logs de ejecucion si falla