Libro de compras

Formulario maestro–detalle para el registro, edición, totalización y contabilización del Libro de Compras IVA. Permite filtrar por rango de fechas, registrar proveedores, gestionar glosas, especificar el tipo de compra, controlar importaciones con DUI/DIM, calcular automáticamente el crédito fiscal, subtotales y valores exentos, y realizar operaciones masivas como contabilizar o copiar glosas.


📘 Propósito

El formulario Libro de compras permite registrar, actualizar y analizar todas las facturas de proveedores que forman parte del Libro de Compras IVA del periodo seleccionado.

Funciona como un formulario maestro–detalle:

  • Maestro: controla las fechas, funciones LCV, totales, filtrado y herramientas auxiliares.
  • Detalle: muestra la grilla editable donde se introducen las facturas, con columnas como fecha, proveedor, NIT, monto sujeto a crédito fiscal, tasas, exentos, DUI/DIM y glosa.

📅 Filtrado por fechas

La parte superior del formulario incluye las opciones:

  • Filtrar facturas por fechas: activa o desactiva el filtro.
  • Fecha inicial y Fecha final: rango del periodo visible.

Cada vez que las fechas cambian:

  • Se actualiza la tabla temporal del libro (Filtrado()).
  • Se verifica que las fechas no excedan la fecha límite del contrato.
  • Se recalculan los totales en el pie del formulario.

🏷️ Columnas del formulario detalle

La grilla del libro de compras contiene todas las columnas exigidas por normativa tributaria para el registro de compras:

  • Centro de costo
  • Tipo de compra (normal, gasto, activo fijo, etc.)
  • Día y fecha
  • Proveedor (selector con lista desplegable)
  • Ver en línea: abre el registro del proveedor
  • NIT y razón social
  • DUI/DIM: requerido en importaciones
  • Número de factura
  • Importe total
  • ICE, IEHD, IPJ
  • Tasas y otros no sujetos
  • Exento
  • Tasa cero
  • Subtotal
  • Neto sujeto a crédito fiscal
  • Crédito fiscal (automático = Neto × 0.13)
  • Glosa y glosa anterior

🧮 Cálculo automático

Al modificar importes, tasas, ICE o exentos, el formulario recalcula:

  • Subtotal = Importe – ICE – IEHD – IPJ – Tasas – Exento
  • Neto sujeto a CF = Subtotal (ajustado por descuentos y tasa cero)
  • Crédito fiscal = Neto sujeto a CF × 0.13

El proceso se ejecuta en Importe_AfterUpdate y funciones internas del detalle.

🏛️ Proveedores

El libro integra un módulo completo para administrar proveedores:

  • Registrar proveedores: abre el formulario de alta/edición.
  • Ver en línea: muestra el proveedor de la factura seleccionada.
  • Si el NIT no existe, se puede crear automáticamente desde la grilla.

📝 Gestión de glosas

El formulario ofrece herramientas avanzadas para registrar glosas:

  • Copiar glosa: duplica la glosa actual en todas las facturas visibles.
  • Copiar glosa anterior: reutiliza la glosa del registro anterior.
  • Glosa manual: editable directamente en la grilla.

🧰 Funciones LCV

El menú Funciones LCV permite ejecutar operaciones masivas y acciones especiales del libro de compras.

CódigoFunciónDescripción
10 Eliminar facturas seleccionadas Elimina los registros marcados con Contabilizar = -1.
30 Contabilizar un comprobante por factura Genera un comprobante de diario independiente por cada factura.
40 Contabilizar un comprobante por día Agrupa las compras de un mismo día en un asiento único.

Para activar las columnas contables, marque la casilla Contabilizar en el panel superior.

🧾 DUI / DIM – Importaciones

Si la factura corresponde a una importación, debe llenarse el campo DUI/DIM:

  • DUI para declaraciones aduaneras.
  • DIM para internaciones especiales.
  • El sistema valida el tipo de compra para permitir o no este campo.

📊 Totales del periodo

En la parte inferior se muestran los valores acumulados del periodo filtrado:

  • Cantidad de facturas
  • Importe total
  • Total ICE / IEHD / IPJ
  • Total tasas y exentos
  • Subtotal compra
  • Neto sujeto a CF
  • Crédito fiscal

La función Totalizar() recalcula automáticamente estos valores cada vez que el usuario modifica registros o cambia el filtro.

📤 Actualizar y recargar datos

El botón Actualizar recarga el detalle desde la base de datos.

También se ejecuta automáticamente cuando:

  • Se cambia de periodo.
  • Se agregan proveedores.
  • Se copian glosas.

⚠️ Validaciones

  • La fecha no puede superar la fecha límite del contrato.
  • Si un NIT no existe, el sistema permite crearlo rápidamente.
  • Las importaciones requieren DUI/DIM válido.
  • Valores nulos se convierten automáticamente a cero antes de totalizar.

🚪 Cerrar

El botón Cerrar limpia valores nulos, guarda cambios pendientes y cierra el formulario maestro del libro de compras.