# 📑 ÍNDICE DE REFERENCIAS - REPORTES FINANCIEROS ## 📊 Reportes Implementados ### **1. FLUJO DE EFECTIVO** **Archivo**: `flujo_efectivo.php` **Líneas**: 364 **Tamaño**: 16 KB #### Funciones Clave - `obtenerSaldoCuenta()` - Calcula saldo de cuenta en fecha específica - Agrupación por concepto - Entrada/Salida - Cálculo de flujo neto #### Variables Principales - `$saldoInicialCaja`, `$saldoInicialBancos` - `$saldoFinalCaja`, `$saldoFinalBancos` - `$flujosPorConcepto` - Array agrupado #### Tablas Utilizadas - `pda_detalle` - Movimientos contables - `pda_maestro` - Asientos maestros - `f_cuentas_fin` - Catálogo (códigos 1101, 1102) --- ### **2. BALANCE GENERAL COMPARATIVO** **Archivo**: `balance_general_comparativo.php` **Líneas**: 435 **Tamaño**: 18 KB #### Funciones Clave - `obtenerSaldoCuenta()` - Saldo en dos fechas diferentes - Agrupación por tipo (ACTIVO, PASIVO, CAPITAL) - Cálculo de variaciones #### Variables Principales - `$fechaActual`, `$fechaAnterior` - `$cuentasPorTipo[]` - Cuentas agrupadas - `$totalActivos`, `$totalPasivos`, `$totalCapital` #### Tablas Utilizadas - `f_cuentas_fin` - Donde tipo_cuenta IN ('ACTIVO', 'PASIVO', 'CAPITAL') - `pda_detalle`, `pda_maestro` #### Fórmulas ``` Variación = Saldo Final - Saldo Inicial Variación % = (Variación / Saldo Inicial) * 100 ``` --- ### **3. ANÁLISIS VERTICAL** **Archivo**: `analisis_vertical.php` **Líneas**: 498 **Tamaño**: 19 KB #### Funciones Clave - `obtenerSaldoCuenta()` - Saldos contables - Cálculo de porcentajes - Generación de gráficos de barras #### Variables Principales - `$totalActivos`, `$totalPasivos`, `$totalCapital` - `$totalIngresos`, `$totalCostos`, `$totalGastos` - `$pct` - Porcentaje calculado #### Tablas Utilizadas - `f_cuentas_fin` - Todos los tipos - `pda_detalle`, `pda_maestro` #### Fórmulas ``` % Activo = (Saldo Activo / Total Activos) * 100 % Gasto = (Gasto / Total Ingresos) * 100 % Utilidad = (Utilidad / Total Ingresos) * 100 ``` --- ### **4. CAMBIOS EN EL PATRIMONIO** **Archivo**: `cambios_patrimonio.php` **Líneas**: 407 **Tamaño**: 19 KB #### Funciones Clave - `obtenerSaldoCuenta()` - Saldos iniciales y finales - Cálculo de utilidad neta - Conciliación de patrimonio #### Variables Principales - `$saldoInicialCapitalSocial`, `$saldoFinalCapitalSocial` - `$saldoInicialUtilidades`, `$saldoFinalUtilidades` - `$utilidadNeta` = Ingresos - Costos - Gastos #### Tablas Utilizadas - `f_cuentas_fin` - WHERE tipo_cuenta = 'CAPITAL' - `pda_detalle`, `pda_maestro` #### Fórmulas ``` Patrimonio Final = Capital Social + Utilidades + Acumuladas Utilidad Neta = Ingresos - Costos - Gastos Variación = Final - Inicial ``` --- ## 🔐 Seguridad Implementada ### En Todos los Reportes #### 1. **Validación de Sesión** ```php session_start(); if (!isset($_SESSION['usuario_id'])) { header('Location: login.php'); exit; } ``` #### 2. **Prepared Statements** ```php $stmt = $pdo->prepare("SELECT ... WHERE id_cuenta = ?"); $stmt->execute([$idCuenta, $empresaId, $fecha]); ``` #### 3. **Aislamiento por Empresa** ```php WHERE id_empresa = ? $stmt->execute([$empresaId, ...]); ``` #### 4. **Escape de HTML** ```php echo htmlspecialchars($variable); ``` --- ## 🎨 Estructura HTML Común ### Todas los reportes incluyen: ```html Reporte - ERP

Título Reporte

``` --- ## 📊 Códigos de Cuentas Utilizadas ### Movimientos de Efectivo - `1101` - Caja General - `1102` - Bancos ### Tipos de Cuentas - `ACTIVO` - Activos - `PASIVO` - Pasivos - `CAPITAL` - Capital/Patrimonio - `INGRESO` - Ingresos - `COSTO` - Costos - `GASTO` - Gastos --- ## 🔍 Consultas SQL Principales ### Obtener Saldo de Cuenta ```sql SELECT COALESCE(SUM(d.debito), 0) as total_debito, COALESCE(SUM(d.credito), 0) as total_credito FROM pda_detalle d INNER JOIN pda_maestro m ON d.id_asiento = m.id_asiento WHERE d.id_cuenta = ? AND m.id_empresa = ? AND m.fecha_asiento <= ? ``` ### Obtener Resultados ```sql SELECT c.tipo_cuenta, COALESCE(SUM(d.debito), 0) as total_debito, COALESCE(SUM(d.credito), 0) as total_credito FROM pda_detalle d INNER JOIN pda_maestro m ON d.id_asiento = m.id_asiento INNER JOIN f_cuentas_fin c ON d.id_cuenta = c.id_cuenta WHERE m.id_empresa = ? AND m.fecha_asiento BETWEEN ? AND ? AND c.tipo_cuenta IN ('INGRESO', 'COSTO', 'GASTO') GROUP BY c.tipo_cuenta, ... ``` --- ## 🎯 Parámetros GET Utilizados ### Flujo de Efectivo - `desde` - Fecha inicial (default: primer día del mes) - `hasta` - Fecha final (default: hoy) ### Balance General Comparativo - `fecha_actual` - Fecha a comparar (default: hoy) - `fecha_anterior` - Fecha anterior (default: hace 1 año) ### Análisis Vertical - `fecha` - Fecha del análisis (default: hoy) ### Cambios en Patrimonio - `fecha_inicio` - Inicio del período (default: 1 enero) - `fecha_fin` - Fin del período (default: hoy) --- ## 📚 Documentación Asociada ### Guías de Uso 1. `NUEVOS_REPORTES_FINANCIEROS.md` - Qué es cada reporte 2. `GUIA_LECTURA_REPORTES.md` - Cómo usarlos 3. `IMPLEMENTACION_REPORTES_FINANCIEROS.md` - Detalles técnicos ### Resúmenes - `IMPLEMENTACION_ESTADOS_FINANCIEROS.txt` - Resumen ejecutivo --- ## 🔧 Integración en Menu.php ```php 'contabilidad' => [ 'titulo' => 'CONTABILIDAD', 'icono' => 'bi bi-book-fill', 'submenu' => [ ['titulo' => 'Catálogo de cuentas', 'url' => 'catalogo_cuentas'], ['titulo' => 'Asientos contables', 'url' => 'asientos'], ['titulo' => '--- REPORTES ---', 'url' => '#'], ['titulo' => 'Diario general', 'url' => 'diario_general'], ['titulo' => 'Mayor general', 'url' => 'mayor_general'], ['titulo' => 'Balance general', 'url' => 'balance_general'], ['titulo' => 'Balance comparativo', 'url' => 'balance_general_comparativo'], ['titulo' => 'Estado de resultados', 'url' => 'estado_resultados'], ['titulo' => 'Flujo de efectivo', 'url' => 'flujo_efectivo'], ['titulo' => 'Análisis vertical', 'url' => 'analisis_vertical'], ['titulo' => 'Cambios patrimonio', 'url' => 'cambios_patrimonio'] ] ] ``` --- ## 💾 Resumen de Archivos | Archivo | Tipo | Líneas | Tamaño | |---------|------|--------|--------| | `flujo_efectivo.php` | PHP | 364 | 16 KB | | `balance_general_comparativo.php` | PHP | 435 | 18 KB | | `analisis_vertical.php` | PHP | 498 | 19 KB | | `cambios_patrimonio.php` | PHP | 407 | 19 KB | | `NUEVOS_REPORTES_FINANCIEROS.md` | MD | 200+ | 6.5 KB | | `GUIA_LECTURA_REPORTES.md` | MD | 180+ | 6 KB | | `IMPLEMENTACION_REPORTES_FINANCIEROS.md` | MD | 220+ | 7 KB | | `menu.php` | PHP | ✏️ Modificado | - | --- ## ✅ Checklist de Verificación - [x] Todos los archivos PHP creados - [x] Seguridad validada (prepared statements) - [x] Menú actualizado con enlaces - [x] Documentación completa - [x] Pruebas funcionales pasadas - [x] Estilos responsivos verificados - [x] Impresión funcional - [x] Multi-empresa soportado - [x] Sesiones validadas - [x] XSS prevention implementado --- **Referencia Completa** Versión: 1.0 Fecha: Diciembre 2025 Estado: LISTO PARA PRODUCCIÓN ✅