Trivasa BI — Context
Documentación, decisiones y proyectos curados de BI para Trivasa.
Este sitio guarda el conocimiento transversal: cómo está construido el ERP, qué contiene su base de datos, dónde están las trampas, y cómo está montado el stack de BI. Lo que se aprendió una vez y no debería volver a descubrirse.
Empezar por aquí
Si es tu primera vez, o vuelves después de un tiempo:
- Servidores y bases — qué base es cuál. Es el error más caro de cometer: una query contra la base equivocada devuelve resultados plausibles pero falsos.
- Convenciones del esquema — cómo está construido el esquema del ERP.
- Calidad de datos — los gotchas confirmados, antes de escribir cualquier query de negocio.
Secciones
Arquitectura
De dónde sale la data, por dónde pasa y dónde termina.
- Servidores y bases — topología SQL Server,
EMPRESAS_2, respaldos - El ERP: Management Pro — el sistema origen y sus tres capas
- Stack de BI en ctunlinux — servicios, puertos, dlt, dbt, observabilidad
- Hosting de la wiki — cómo se publica este sitio
- Runbook: agregar una tabla nueva — dlt (backfill + incremental) → dbt (staging/marts) → Lightdash (deploy + GUI)
Esquema del ERP
Qué hay en la base de datos y cómo usarla.
- Convenciones — prefijos, FKs, patrones, familias de tablas
- Dominios de negocio — los 14 dominios y los catálogos núcleo
- Modelos de datos de
raw— diagramas ER de lo que ya está replicado - Calidad de datos — gotchas confirmados
- Inventario — tipos de movimiento y existencia a una fecha
- Solicitud de material — el proceso y su máquina de estados
- Reportes nativos — los 549 reportes del ERP y dónde vive su SQL
- Warehouse — qué está replicado a Postgres y qué falta
Decisiones
Proyectos
Trabajo curado con su código y estado.
- Consulta XMLs
- Layout de gastos
- poliza-explor — las pólizas contables por los dos lados: salida (censo por documento de origen vía
Poliza_Control.Pc_Tablay reconciliación deCheque,Recibo_Pago,Compra_Indirecto) y entrada (configuracion-polizas: la pantallaCT001, las tablasPoliza_Configuracion*, cómo se elige cada cuenta contable y por qué se descuadran) - Consumo interno FIFO
- varela-bot — bot de Telegram para avisos y acuses de material listo
- notificacion-solicitud-material — reconstrucción vía SQL de las pestañas de "Control de Solicitudes de material v3" (
ZTRV098) - streamlit-reportes — app Streamlit en producción con 3 reportes contra TRIVASADB en vivo: análisis de solicitud de material, transferencias sin recepción, y detalle de solicitud de material
- query-api — puente HTTP genérico de solo lectura (
POST /query) entre Cowork y las bases de Trivasa (Postgres warehouse + SQL Server.207/.205), publicado enreportesweb.frento.com.mx - conciliacion-cfdi — conciliación CFDI (recibidos/emitidos/retención) vs. mpro, por documento y por póliza; código en el repo separado
conciliacion-cfdi, conexión directa a BD (ya no víaquery-api) - reportes-mpro — recreación en Python de los reportes nativos de auditoría de compras
RPTRV79de mpro (dominio de auditoría, no de conciliación); repo propio, sin documentación curada aquí todavía
Los tres hechos que más cuesta ignorar
Es_Cve_Estado = 'ACTI' no existe |
Devuelve cero filas siempre. El criterio robusto es excluir cancelados (!= 'CA'), no incluir activos. |
TRIVASADB3 no es producción |
Es una copia restaurada. Las cifras oficiales salen de .207/TRIVASADB. |
| Los folios colisionan entre tablas | Rc_Folio y Oc_Folio matchean por casualidad en el 41 % de los casos, con 83 % de fechas invertidas. Usar el campo polimórfico Xx_Tabla/Xx_Documento. |
Regla de oro
Nunca improvisar nombres de tabla, columna, servicio o convención que no estén confirmados en este sitio o verificados explícitamente en la conversación. Si hace falta un dato que no está documentado, preguntar — no inventar.