Análisis de Precios

Comparativa costos vs precios de venta

Compras → Análisis de Precios consulta AY-100
Menú Ayuda

Enviarle este manual a un usuario

El enlace abre solo este manual, sin el menú del sistema. El usuario no necesita clave ni entrar a FactuPOS: se ve en cualquier navegador y en el celular.

El WhatsApp sale del número de Soporte Real y el correo de info@soportereal.com. Con Compartir desde este teléfono sale de su propio WhatsApp y elige el contacto de su lista, sin escribir el número.

Análisis de Precios CO-020

Permite revisar y editar de forma masiva costos y precios de venta de los artículos de una compra, antes o después de aplicarla. Antes de aplicar es donde se decide si la compra va a actualizar el costo de cada artículo (ver Origen del costo). Detecta anomalías como precios bajo costo, márgenes negativos, IVA desincronizado entre el artículo y la compra, y propaga los cambios a las empresas externas sincronizadas.

Layout

La pantalla trabaja una lista de precios a la vez: arriba se elige cuál (P1, P2, P3…) y abajo la tabla muestra todos los artículos de la compra con ese precio.

  • Franja de filtros: el campo Filtrar (busca por código o por nombre) y, a su derecha, los botones de Tipo de precio. Al extremo derecho, el resumen «N artículo(s) · Precio Pn».
  • Botones de tipo de precio 2026-09: hay un botón por cada lista de precios que use la empresa (P1 hasta P10). Un solo clic cambia el precio que se está viendo y editando, y el activo queda marcado en azul. Están pegados a las columnas de precio para que el recorrido del mouse sea corto.
  • Tabla de artículos: una fila por artículo con Código, Nombre, Cantidad, Origen del costo, DbCosto, Promedio, Último, Bruto, Moneda, Modo (Auto/Manual), Precio, Margen %, Ganancia y Precio+IVA. Editar Precio, Margen o Precio+IVA recalcula los otros dos.
  • Teclado: Enter guarda y baja a la fila siguiente; ↑ ↓ saltan entre filas de la misma columna.
Para revisar varios precios del mismo artículo Con los botones P1…Pn se salta de una lista a otra sin perder el filtro escrito. Y si lo que quiere es ver todos los precios de un artículo lado a lado, active Comparar precios y haga clic sobre el artículo: el panel de la derecha los muestra juntos, y con doble clic sobre cualquiera de ellos la tabla salta a ese precio.

La versión anterior del módulo (botón Versión anterior) usa otro diseño: una ficha apilada por artículo con la matriz de precios 4×10 (Venta / Margen % / Utilidad / Neto por cada P1..P10).

Detección de mismatch de IVA 2026

El sistema detecta dos tipos de inconsistencia entre el artículo y la línea de la compra:

  • Porcentaje distinto: el artículo tiene IVA 1% pero la compra vino al 13%, o viceversa.
  • Código de tarifa distinto: ambos tienen el mismo porcentaje pero el CodTarifaImpuesto difiere (ej. artículo con CodTar 02 = 1% pero compra con CodTar 08 = 13%).

Cuando hay mismatch, la celda IVA aparece en ámbar con un ícono de advertencia. Al hacer clic, se abre confirmación para corregir el artículo con los valores que vinieron en la compra. La corrección actualiza tanto Impuesto como CodTarifaImpuesto.

Comparar entre empresas 2026

El botón Comparar abre una pestaña nueva con la matriz de precios entre la empresa actual y todas las empresas externas configuradas en EmpresasSincronizadas. Por cada artículo se muestra:

  • Fila LOCAL en azul claro (referencia)
  • Una fila por cada empresa externa con sus P1..P10 (Neto con IVA), Costo y % IVA
  • Celdas en verde si el precio externo es mayor al local
  • Celdas en rojo si es menor
  • Celdas en ámbar si el % IVA difiere
  • Tooltip con local, externo y diferencia porcentual

Filtros disponibles: Solo artículos con diferencias / Empresa específica / Buscar por código o nombre. La vista es solo lectura — para sincronizar se usa el botón Guardar del módulo principal.

Sincronización a empresas externas 2026

Si el Parámetro 239 está activo y la tabla EmpresasSincronizadas tiene destinos, cada vez que se presiona Guardar el sistema replica automáticamente a las externas:

  • Precios (DBVenta1..10)
  • Costos (DbCosto, Promedio, Último, Bruto)
  • Código de tarifa de IVA (CodTarifaImpuesto)
  • Código CABYS
  • Origen del costo, modo Auto/Manual, marca, código de barras, etc.

El porcentaje de IVA (campo Impuesto) NO se replica directamente: cada empresa destino tiene un trigger que lo recalcula automáticamente al detectar un cambio en CodTarifaImpuesto.

Verificación cruzada y log 2026

Después de cada Guardar, el sistema relee cada empresa externa y compara campo por campo con el local. El resultado se acumula en el panel de Log de Sincronización al pie del módulo (botón "Log Sync"):

  • 🟢 OK — verificado, precios y costo coinciden
  • 🟡 Diferencias — el sync corrió pero algún campo quedó distinto (lista detallada)
  • 🔴 Error — empresa no accesible o falló el MERGE

El panel se abre automáticamente si hubo diferencias o errores. El toast del Guardar muestra "Sync: N/M verificados" como resumen.

¿La compra actualiza el costo? «Origen del costo» (no actualiza / promedio / último)

La columna Origen del costo decide qué le pasa al costo del artículo cuando se aplica la compra. Es la opción que se busca como «no actualizar costos», «costo promedio» o «actualizar costo»:

Lo que quiereElijaQué hace al aplicar la compra
No actualizar el costoPropioEl costo del artículo no se mueve, y los precios automáticos tampoco. Es un costo que se pone a mano.
Costo promedioPromedioMezcla el costo de lo que ya había en inventario con el de esta factura, según las cantidades. Es la opción con que nacen los artículos.
Actualizar al costo de la facturaÚltimoEl artículo toma el costo unitario de esta factura (ya con los descuentos).
Costo antes de descuentosBrutoToma el costo de esta factura sin restarle los descuentos.

El sistema lleva siempre anotados el promedio, el último y el bruto de cada compra, aunque el artículo esté en Propio: la opción solo decide cuál de ellos es el costo que usa el artículo (y del que salen sus precios automáticos).

  • Dónde se cambia: en la compra, Opciones → Análisis de precios. Funciona también con la compra en borrador. Al elegir, se guarda de una vez.
  • Queda guardada en el artículo, no en la factura: se mantiene en las compras siguientes hasta que se cambie.
  • Muchos artículos a la vez: desde el catálogo de artículos, Cambios globales → Origen del costo.
  • Artículos que se crean desde la compra: la ventana Crear y homologar trae el mismo selector, y recuerda lo último que eligió.
  • Cambiar el origen pide el permiso 411 · Editar costos del artículo.
Se elige ANTES de aplicar la compra Si quiere que una factura no toque el costo, deje el artículo en Propio antes de darle Aplicar. Pasarlo a Propio después no devuelve el costo anterior: para entonces la compra ya lo actualizó, y Propio se queda con ese costo nuevo. Cambiar entre Promedio, Último y Bruto sí se puede hacer después: el costo pasa en el momento al que se elija.

Operaciones masivas

  • Márgenes: aplica los márgenes de subcategoría a los artículos en modo Auto
  • P1→todos: iguala P2..P10 al valor de P1
  • Redondeo Venta: ×5 / ×10 / ×100 / ×500 sobre el precio sin IVA
  • Redondeo Neto: ×5 / ×10 / ×100 / ×500 sobre el Neto (con IVA)

Si hay artículos seleccionados (checkbox), las operaciones se aplican solo a esos. Si no, a todos los visibles.

Protección contra borrado accidental Si un payload llega con todos los precios en 0 pero el artículo tiene precios actuales mayores a 0, el sistema NO sobrescribe (se hace SKIP del UPDATE y se loggea el evento). Esta protección defensiva evita que un error de cliente borre los precios.
Bitácora completa Cada cambio de precio, costo, IVA o sincronización queda registrado en BitacoraSistema con detalle: "Precios compra X | COD nombre | P1: ANT→NUEVO, P2: ...". Útil para auditoría y para reconstruir valores en caso de incidente.

Histórico de cambios por artículo 2026-05

El módulo ahora permite ver el historial de cambios de costo y precio de cada artículo con dos vistas independientes:

  • Click sobre cualquier parte de la fila del artículo (excepto inputs y botones) → se despliega un panel al final de la lista con el histórico desde la tabla nueva ArticuloPrecioHistorial. Cada cambio aparece con fecha, origen (compra / catálogo / cambios globales), campo (Costo o Precio), nivel (P1..PN), valor anterior, flecha de dirección (▲ subió rojo / ▼ bajó verde / → igual) y valor nuevo. Incluye documento, proveedor y usuario que provocó el cambio.
  • Click en el ícono de reloj (junto al lápiz de editar, en color ámbar) → abre modal MAP-002 "Histórico desde Bitácora" que parsea registros viejos de BitacoraSistema. Útil para datos previos a la creación de la tabla, o flujos que aún no quedan registrados estructuradamente.

Filtro por documento en el modal de Bitácora

El modal arranca prellenado con el número de la compra actual, mostrando solo entradas relacionadas a esa factura. Botones:

  • Aplicar — filtra por el texto del input.
  • Todos — limpia el filtro y muestra todo el histórico del artículo.

Enter en el campo también aplica el filtro. El filtro busca coincidencias parciales sobre el número de documento.

¿Qué fuente uso? Los registros estructurados de ArticuloPrecioHistorial (panel inline) son la fuente recomendada porque traen cada campo separado, con cantidades exactas y filtros precisos. La bitácora (modal) es complemento: cubre historia previa y formatos no estructurados.
Tabla ArticuloPrecioHistorial Se llena automáticamente al aplicar una compra (cuando los costos o precios cambian). Cada nivel de precio afectado genera un registro independiente, con el documento de la compra y los datos del usuario que la aplicó. Si los valores no cambiaron entre aplicaciones (mismo precio antes y después), no se genera entrada para evitar ruido en el histórico.

Exportar a Excel: permiso 723

Si el botón Excel aparece gris, no es una falla: exportar este reporte se habilita persona por persona con su propio permiso:

  • Permiso 723 — Compras · Historial Cambio Precios desde Bitácora CO-050
Cómo se asigna Lo asigna quien administre los permisos de usuario de su empresa, en Seguridad → Usuarios SE-001: elegir a la persona, escribir el número del permiso (o la palabra Excel) en el buscador de permisos y marcar la casilla. Toma efecto recargando la pantalla, sin cerrar sesión.

Al pasar el mouse sobre el botón gris, el sistema dice qué le falta. Que a un compañero sí le funcione no significa que esté habilitado para todos: el permiso es por persona (por ejemplo, el usuario del contador suele ser uno aparte y necesita el suyo). Si el mensaje dice en cambio que la exportación está apagada para la empresa, esa no se abre desde el sistema: la solicita el dueño o la gerencia a Soporte Real. Ver el reporte en pantalla no pide este permiso; solo la descarga a Excel. Más detalles en El Excel de los reportes.