Saltar al contenido principal

Renglones Presupuestarios y Centros de Costo - Guía ACE

Cambio importante (mayo 2026): Tras el Sub-proyecto 1, el concepto único de "centro de costo" se separó en tres dimensiones contables independientes:

  • Renglones Presupuestarios (budget_positions) — partidas presupuestarias con código ACE-{Cat}-{Sub}-{Área} (149 en producción).
  • Áreas Funcionales (functional_areas) — clasificador PDVSA con 26 códigos normalizados.
  • Centros de Costo (cost_centers nuevo) — 22 unidades organizacionales con responsable y departamento.

Las páginas más actualizadas son Renglones Presupuestarios, Áreas Funcionales, Centros de Costo y Dimensiones Contables. Esta guía resume las tres.

Guía detallada para la configuración y uso de las dimensiones contables en el ERP ACE.

Las 3 dimensiones (más cuenta y proyecto = 5 dimensiones por línea)​

DimensiónPreguntaTablaCardinalidad
Renglón Presupuestario¿Qué partida del presupuesto consume?budget_positions149
Área Funcional¿Cómo se reporta a PDVSA?functional_areas26
Centro de Costo¿Quién es responsable?cost_centers22
Cuenta¿Qué naturaleza tiene?accounting_accounts~401
Proyecto¿Para qué iniciativa?projectsabierto

Nomenclatura ACE de Renglones Presupuestarios​

Estructura del Código​

ACE - {Área} - {Subcategoría}{Código} - {Tipo / Área Funcional}
CampoValoresDescripción
EmpresaACESiempre ACE
Área1 a 6Categoría histórica del Excel
Subcategoría1AL, 2MC, etc.Identificador de subcategoría
Tipo / ÁreaLEV, EQPS, INPR, ATIN, TTT, …Código del área funcional PDVSA

Áreas (legacy del Excel original)​

#NombreEjemplos
1LogísticaAlimentación, transporte, combustibles
2MantenimientoCompresores, motores, PIAS, líneas
3ProducciónBombas mecánicas, análisis crudo, químicos
4SG&ANómina, seguros, gastos admin
5InfraestructuraLíneas de crudo/agua/gas, transformadores
6YacimientosTaladros, procura eléctrica/mecánica, flush-by

Estas "Áreas" del Excel no son las functional_areas de la base de datos. La tabla functional_areas (26 códigos PDVSA normalizados) reemplazó la columna pdvsa_code y se referencia por FK desde cada renglón.

Códigos de Área Funcional típicos​

CódigoSignificadoCosto
LEVLevantamiento (gasto operativo recurrente)OPEX
EQPSEquipos (mantenimiento general)OPEX
INPRInversión en Producción (CAPEX)CAPEX
ATINAsistencia Técnica especializadaOPEX/CAPEX según uso
TTTTratamiento (operación específica)OPEX

Nota: El cost_type (OPEX/CAPEX) vive en el renglón presupuestario, no en el área funcional. Un mismo INPR puede usarse en renglones OPEX o CAPEX diferentes.

Ejemplos completos​

CódigoNombreTipoCategoríaÁrea Funcional
ACE-1-1AL-LEVLevantamiento AlimentaciónOPEXLogísticaLEV
ACE-2-2MC-LEVLevantamiento Mtto CompresoresOPEXMantenimientoLEV
ACE-2-2MC-EQPSEquipos Compresores de GasCAPEXMantenimientoEQPS
ACE-3-3BM-EQPSBombas MecánicasCAPEXProducciónEQPS
ACE-3-3AC-ATINAsistencia Técnica Análisis CrudoCAPEXProducciónATIN

Tipos de Renglón Presupuestario​

TipoDescripciónCuentas típicas
OPEXGastos operativos recurrentes5.x (gastos), 6.x (costos directos)
CAPEXInversiones de capital1.2.x (activos fijos)

Tipos de Centro de Costo (modelo nuevo)​

ClasificaciónUso
PRODUCTIVECC de actividades productivas directas
ADMINISTRATIVECC de gestión y administración
SUPPORTCC de soporte a operaciones
PROJECTCC vinculado a un proyecto específico

Jerarquía​

Tanto renglones presupuestarios como centros de costo se organizan en árbol:

  • Un nodo puede tener un padre y múltiples hijos.
  • level se calcula automáticamente (0 = raíz).
  • No se permiten ciclos (CHECK constraint en BD).
  • No se puede desactivar un nodo con hijos activos.
  • Al cambiar el padre, los level de descendientes se recalculan.

Mapeo Cuenta ↔ Renglón​

Hasta el Sub-proyecto 1, las cuentas contables se almacenaban en un campo JSONB dentro del CC. Eso ya no existe. Ahora hay una tabla relacional:

account_budget_position_links (account_id, budget_position_id, role, is_active)

Roles soportados​

RolSignificado
DEBIT_DEFAULTCuenta por defecto al cargar al débito (única por cuenta)
CREDIT_DEFAULTCuenta por defecto al cargar al crédito (única por cuenta)
ALLOWEDCuenta permitida sin ser default (whitelist amplia)

Categorías típicas de cuentas (referencia)​

GrupoCuentasAplica típicamente a
Labor5.1.x — Sueldos, SSO, INCES, FAOVTodos los renglones
Beneficios5.2.x — HCM, prestaciones, viáticosRenglones con personal
Servicios y Contratos6.1.x — Servicios contratadosRenglones operacionales
Materiales6.3.x — Materiales y repuestosRenglones de mantenimiento/producción
Estudios6.2.x — Estudios y calibracionesRenglones de producción/yacimientos
Oficina5.5.x — Oficina y adminRenglones administrativos

Consultar vía API​

GET /api/accounting/positions/:id/accounts   # cuentas vinculadas a un renglón
GET /api/accounting/accounts/:id/positions # renglones vinculados a una cuenta
POST /api/accounting/account-position-links # crear vínculo
DELETE /api/accounting/account-position-links/:id

Ver en el Frontend​

  1. Detalle del Renglón > pestaña Cuentas Contables.
  2. Las cuentas aparecen con: código contable, nombre, tipo (ASSET/LIABILITY/EXPENSE/REVENUE), naturaleza (Débito/Crédito), rol del vínculo.

Presupuesto por Período​

Cambio importante (Sub-proyecto 1): Los campos mensuales (budget_jan, budget_feb, …, budget_q4, total_annual_budget) fueron eliminados de budget_positions. Se archivaron en la tabla budget_positions_legacy_excel para preservar el histórico.

El presupuesto productivo vive ahora en budget_lines.amount_* ligado a un BudgetPlan con período fiscal y monedas duales (USD/VES).

Resumen Presupuestario​

El endpoint GET /api/budget/positions/:id/summary devuelve:

  • Presupuesto asignado — total del renglón en el período fiscal actual.
  • Comprometido — OCs y contratos aprobados pendientes (budget_commitments).
  • Ejecutado — gastos realmente incurridos (budget_executions).
  • Disponible — Asignado − Ejecutado − Comprometido.
  • % Ejecutado — indicador de avance.
  • Líneas presupuestarias — detalle por budget_line.
  • Ejecuciones recientes — últimos 10 movimientos.

Permisos​

Renglones Presupuestarios​

AcciónPermiso
Verbudget:positions:read
Crear / Editarbudget:positions:write

Centros de Costo​

AcciónPermiso
Veraccounting:cost-centers:read
Crear / Editar / Desactivaraccounting:cost-centers:write

Áreas Funcionales​

AcciónPermiso
Veraccounting:functional-areas:read
Crear / Editaraccounting:functional-areas:write

Mapeos cuenta↔renglón​

AcciónPermiso
Veraccounting:mappings:read
Crear / Editaraccounting:mappings:write

Permisos legacy cost-centers:* redirigen a budget:positions:* durante 1 release.