Saltar al contenido principal

Reglas de negocio

Las reglas de negocio automatizan logica sobre los datos: calculos, validaciones y acciones.

Tipos de reglas

compute

Calcula campos automaticamente cuando cambian otros campos.

{
"type": "compute",
"triggers": ["cantidad", "precio"],
"compute": {
"total": "cantidad * precio"
}
}

validate

Valida datos antes de guardar el registro. Si la validacion falla, el guardado se rechaza.

{
"type": "validate",
"triggers": ["precio"],
"validate": [{
"id": "precio_positivo",
"condition": "precio > 0",
"message": "El precio debe ser positivo",
"severity": "error"
}]
}

action

Ejecuta efectos secundarios despues de guardar (ej: actualizar registros relacionados).

{
"type": "action",
"triggerType": "after_save",
"triggers": ["subtotal"],
"actions": [{
"type": "update_related",
"entity": "pedidos",
"recordId": "pedido_id",
"data": {
"total": {
"type": "aggregate",
"entity": "lineas",
"aggregateOp": "sum",
"aggregateField": "subtotal",
"filter": { "pedido_id": "pedido_id" }
}
}
}]
}

Ciclo de vida

Las reglas tienen el mismo ciclo draft/published que las entidades:

  1. Se crean como draft
  2. Se publican con publish_business_rule
  3. Solo las reglas publicadas se ejecutan

Trigger types

TipoCuando se ejecuta
field_changeCuando cambia uno de los campos trigger (default)
before_saveAntes de guardar el registro
after_saveDespues de guardar el registro
on_loadAl cargar el registro

Tools MCP relacionados

ToolPerfilDescripcion
generate_business_rulecoreCrear regla (via DSL o prompt)
create_business_ruleadvancedCrear regla con DSL directo
list_business_rulescoreListar reglas de una entidad
get_business_ruleadvancedVer detalle de una regla
test_business_ruleadvancedProbar una regla con datos de prueba
publish_business_rulecorePublicar una regla draft
delete_business_ruleadvancedEliminar una regla
get_rule_logsadvancedVer logs de ejecucion
Creado con Fyso