Auditoría sobre los documentos de compra o venta

¿Qué hace?

Registra cada creación, modificación y eliminación sobre 16 entidades de documentos comerciales:

Cabeceras de venta Cabeceras de compra
PresupuestoCliente PresupuestoProveedor
PedidoCliente PedidoProveedor
AlbaranCliente AlbaranProveedor
FacturaCliente FacturaProveedor
Líneas de venta Líneas de compra
LineaPresupuestoCliente LineaPresupuestoProveedor
LineaPedidoCliente LineaPedidoProveedor
LineaAlbaranCliente LineaAlbaranProveedor
LineaFacturaCliente LineaFacturaProveedor

Por cada evento guarda:

  • Snapshot before (estado anterior, JSON completo)
  • Snapshot after (estado nuevo, JSON completo)
  • Diff por campo (qué cambió exactamente)
  • Usuario (nick), IP y ID de sesión (para agrupar acciones del mismo workflow)
  • Timestamp preciso

Y permite revertir cualquier cambio a un click.


Características principales

📋 Listado con filtros

Filtrá por rango de fecha, usuario, tipo de entidad, acción (creado/modificado/eliminado/revertido), código de documento, cliente/proveedor o estado de rollback.

🔍 Detalle con diff visual

Vista lado a lado rojo (antes) / verde (después) por cada campo modificado. Para create y delete muestra el snapshot completo.

📊 Timeline por documento

Línea de tiempo cronológica de todos los eventos sobre un documento — cabecera + líneas mezcladas, agrupadas por día. Estadísticas (creaciones / modificaciones / eliminaciones / rollbacks) y diff resumido en cada evento.

↩ Rollback unitario

Revertí cualquier evento al estado anterior con un click:

Acción original Qué hace el rollback
update Restaura los campos al before_state
delete Re-inserta la fila con before_state
create Borra la fila creada

El rollback queda registrado como nuevo evento action=rollback enlazado al original mediante rollback_of_id.

🛡 Auditoría a prueba de fallos

  • Si la tabla doc_audit_log no existe (deploy parcial) → corto-circuito silencioso, no rompe el save
  • Cualquier excepción interna del logger → catch & log a error_log, nunca propaga al request
  • Cero impacto en el flujo normal de FacturaScripts si algo falla en el audit
Cookies
Usamos cookies en nuestro sitio web para brindarte la experiencia más relevante recordando tus preferencias y visitas repetidas. Al hacer clic en "Aceptar", aceptas el uso de TODAS las cookies necesarias.
Copyright (c) 2013-2026 FacturaScripts
0.06235s

Soporte