Sistema de Gestión Empresarial
Ingresa tus credenciales para continuar
MDR ERP — Notas de versión
============================
V.3.1.19 — 2026-06-18
---------------------
Duplicar elementos desde el listado del artículo (issue #57).
Elementos del artículo (`view/MntElementos/`)
· Nuevo botón «Duplicar» en cada fila del listado de elementos. Crea una
copia del elemento dentro del mismo artículo sin tener que volver a teclear
todos los datos (marca, modelo, ubicación, precio, etc.).
· La copia se crea con un código nuevo automático y en estado «Disponible».
El número de serie y el código de barras quedan vacíos (son únicos de cada
unidad) para que se completen en la copia.
· Tras duplicar se abre directamente el formulario de la copia para terminar
de rellenar esos datos. No se copian fotos, documentos ni movimientos.
V.3.1.18 — 2026-06-17
---------------------
Nota de texto en la disponibilidad NAVE/LIBRE del planning de técnicos
(issue #56).
Planning de técnicos (`view/Informe_DireccionAmpliado/`)
· Al marcar a un técnico como NAVE o LIBRE se puede escribir un texto breve
(por ejemplo la tarea o el motivo) mediante una pequeña ventana. El texto
aparece en la celda del calendario junto a la etiqueta NAVE/LIBRE.
· La nota es editable: con el botón del lápiz se modifica sin tener que
borrar y volver a crear la disponibilidad.
Planning móvil de técnicos
· La vista que consultan los técnicos en el móvil muestra también ese texto
bajo la etiqueta NAVE/LIBRE (solo lectura).
V.3.1.17 — 2026-06-17
---------------------
Mejora del impuesto por defecto al editar artículos (issue #54).
Artículos (`view/MntArticulos/`)
· Al editar un artículo que no tenía impuesto asignado, el campo «Impuesto
aplicable» se rellena automáticamente con el impuesto por defecto en lugar
de quedarse vacío. Si el artículo ya tenía impuesto, se respeta el guardado.
V.3.1.16 — 2026-06-17
---------------------
Impuesto «por defecto» y preselección automática al crear artículos (issue #54).
Impuestos (`view/MntImpuesto/`)
· Nuevo interruptor «Aplicar como impuesto por defecto» en la ficha del
impuesto. Solo puede haber uno a la vez: al marcar uno, el anterior se
desmarca solo, y no se permite quedarse sin ninguno.
Artículos (`view/MntArticulos/`)
· Al crear un artículo nuevo, el campo «Impuesto aplicable» viene
preseleccionado con el impuesto marcado por defecto. Sigue pudiéndose
cambiar por otro en cada artículo.
V.3.1.15 — 2026-06-16
---------------------
Selección de ubicaciones y fechas en el albarán de inspección y ajustes de
impresión (issue #52).
Albarán de inspección (Gestión de Salidas)
· Al imprimir el albarán de inspección se puede elegir qué incluir: el albarán
de salida completo, o solo las combinaciones de ubicación + fecha de montaje
que se marquen (una misma ubicación puede repetirse en fechas distintas).
· Casilla «Todas» para marcar o desmarcar todas las ubicaciones de golpe.
Impresión
· Ajuste de texto (word-wrap) en la columna de descripción de la factura de
abono para que las descripciones largas no se desborden.
V.3.1.14 — 2026-06-16
---------------------
Nuevo modelo de ayuda contextual en el formulario de artículo (piloto para
validación del cliente). Sustituye el modal estático por una ayuda activa.
Ayuda del formulario de artículo (`view/MntArticulos/`)
· Icono «?» junto a cada campo con un popover de ayuda (qué es, cuándo usarlo,
ejemplo y error común).
· Botón «Guía paso a paso»: recorrido interactivo que resalta los campos uno a
uno (Driver.js servido en local).
· Modal de referencia rediseñado: conceptos de negocio + todos los campos + FAQ.
· Todo se alimenta de una única fuente de contenido
(`view/MntArticulos/ayuda/contenido_articulo.php`); el motor genérico
(`config/template/ayudaContextual.php` + `public/js/ayuda-contextual.js`) es
reutilizable en otras pantallas (presupuestos, facturas) sin tocar código.
V.3.1.13 — 2026-06-11
---------------------
Pre-migración del cliente. Refuerzo del hard reset con confirmación explícita
de backup, para evitar ejecuciones impulsivas en producción.
Control de administración (`control/`)
· El panel «Hard reset inventario» exige ahora TRES confirmaciones para
habilitar el botón: texto «HARD RESET INVENTARIO», check de intención y
nueva check «He hecho backup de la BD (mysqldump)». Defensa en profundidad
de cara al despliegue cliente.
V.3.1.12 — 2026-06-11
---------------------
Fix de la importación Access→MySQL (issue #49) y nueva herramienta de hard reset
en `control/` para preparar reimportaciones limpias.
Importación de inventario (issue #49)
· Nuevo orquestador `assets/importacion/importar_inventario.php` que importa
artículos → elementos → kits en una sola pasada manteniendo el mapa
`cod_access → id_articulo` EN MEMORIA. Sin JSON intermedio, sin drift.
· Una fila por código Access: se abandona la dedup por nombre que fusionaba
códigos Access distintos con el mismo nombre (causa raíz del bug).
· Lógica extraída a cores reutilizables (`*_core.php`) para articulos,
elementos y kits. Toda la importación va en UNA transacción única
(COMMIT/ROLLBACK), atómica y reversible.
· Reconstrucción automática del mapa de familias y proveedores desde la BD
cuando los `mapeo_*.json` no existen (autosuficiente tras un hard reset).
· `importar_elementos.php`, `importar_kits.php` y `generar_mapeo_articulos.php`
quedan deprecados como scripts sueltos: redirigen al orquestador.
· Resolución robusta del intérprete PHP CLI en Plesk/FPM (PHP_BINARY vacío
o php-fpm versionado ya no rompe el lanzamiento).
· Contador en vivo en el log de la pantalla Importación BD vía heartbeat
JSON sondeado cada segundo (artículos/elementos/kits insertados en tiempo
real).
Control de administración (`control/`)
· Nuevo punto de menú «Hard reset inventario»: vacía en una transacción y
orden FK-seguro facturas (todas), presupuestos + versiones + líneas,
almacén dependiente (salidas, picking, movimientos, asignaciones) y todo
el inventario (kits, elementos, artículos). Reinicia los contadores de
numeración. Deja INTACTOS clientes, contactos y el resto de maestras
(familias, proveedores, grupos, impuestos, formas de pago…).
· Conjunto de borrado verificado FK-cerrado; uso de cascada en `presupuesto`
para esquivar el trigger que protege el histórico de líneas no-borrador.
V.3.1.0 — 2026-05-25
--------------------
Incorporación del picking en ordenador (versión desktop) y mejora del
retorno completo de un pedido.
Picking en ordenador (desktop)
· Nueva interfaz de picking adaptada a pantalla de ordenador
· Corrección de bugs detectados en pruebas con Luis
Retorno de pedido
· Función "Retornar todo un pedido" mejorada: registra de una sola
acción todos los elementos pendientes de devolución de la salida
V.3.0.1 — 2026-05-25
--------------------
Sesión de testing FASE 2 picking con Luis. 21 TCs PASS + 8 fixes UX/UI + nueva
funcionalidad de control de retornos en Gestión de Salidas.
Picking (Salidas)
· Ubicación y grupo de equivalencia visibles a la vez en la lista de necesidades
· Contador global muestra 0/N (suma cantidades) en lugar de 0/0
· Fecha del evento visible en la cabecera del picking
· Icono "Cambiar presupuesto" con etiqueta visible CAMBIAR
· Re-escaneo de elemento ya en pool: banner correcto, sin verde mintiendo
· Pantalla final "Salida Completada" muestra el total real (no 0)
· Banner "Buscando..." se actualiza tras modal de presupuesto completado
Picking (Entradas / retorno)
· Modal "Confirmar retorno" ahora incluye número de presupuesto, cliente,
evento y fechas del evento
Gestión de Salidas (nueva funcionalidad)
· Lista también las salidas en estado "retornada", no solo "completada"
· Nueva columna "Retorno" con badges (Retornada / N pendientes)
· Filtro "Solo con pendientes de retorno"
· Click en badge "N pendientes" abre modal con lista detallada de elementos
pendientes (código, artículo, ubicación, tipo, sustitutos)
V.3.0.0 — 2026-05-24
--------------------
Versión inicial con esquema de versionado Semver.