Aplicación de escritorio en Python para control de inventario por áreas operativas, con trazabilidad completa, control de caducidad y gestión por roles.
Este proyecto se desarrolló para mejorar la gestión interna del inventario en embarcaciones, centralizando el control de stock por ramas operativas (máquinas, puente, cubierta, cocina) y reduciendo errores derivados del control manual disperso.
La solución permite trabajar con usuarios y permisos por nivel (admin, superior, alto, bajo), gestionar categorías y productos, registrar entradas y salidas de stock, visualizar historial de movimientos y facilitar la toma de decisiones internas con datos reales.
Se incorporó control de caducidad con alertas para anticipar vencimientos y avisos por stock mínimo para evitar roturas de suministro. El resultado es una herramienta práctica para profesionalizar la operación diaria, aumentar la trazabilidad y optimizar el trabajo a bordo, pudiendo conocer en todo momento el estado del material, obtener un histórico de datos y proyectar tendencias (mantenimiento predictivo, adelanto de compras, planificación).
Qué hicimos
- Login con usuarios y niveles de acceso (admin, superior, alto, bajo).
- Control por ramas operativas: máquinas, puente, cubierta, cocina.
- CRUD completo de categorías y productos.
- Movimientos de stock (+/-) con historial y auditoría.
- Deshacer/rehacer de movimientos recientes (seguridad operativa ante errores).
- Filtros por categoría, stock mínimo y caducidad.
- Alertas visuales para stock crítico, caducado o próximo a caducar.
- Persistencia en Excel (
stock.xlsx) y usuarios en JSON.
Auditoría / trazabilidad (detalle)
La aplicación incorpora un sistema de auditoría orientado a operación real:
- Cada movimiento queda registrado con fecha y hora, usuario responsable, rama operativa, tipo de movimiento (entrada/salida), producto/categoría, cantidad y observaciones/motivo (si aplica).
- Permite consultar el histórico completo de acciones para identificar qué ocurrió, cuándo y quién lo hizo, mejorando la transparencia y reduciendo incidencias operativas.
- El historial facilita revisiones internas, detección de patrones de consumo y soporte ante discrepancias (por ejemplo, diferencias entre stock esperado y stock real).
Facilidad de actualización y adaptación
El software está planteado para que hacer mejoras y actualizaciones sea sencillo, lo que permite adaptarlo rápidamente a la actividad concreta:
- Ajustar interfaz, campos, validaciones y flujos según el tipo de embarcación o el modo de trabajo.
- Incorporar nuevas ramas, categorías, reglas de alertas o módulos específicos (consumos por equipo, mantenimiento, etc.) sin rehacer la base del proyecto.
Esto lo convierte en una herramienta evolutiva, preparada para crecer con la operativa.
Por qué Excel como base de datos (y su ventaja práctica)
Se utiliza Excel para volcar y mantener los datos porque aporta una ventaja operativa muy útil:
- Con una conexión a internet, el archivo puede compartirse fácilmente (por ejemplo, mediante almacenamiento en la nube), permitiendo que el inventario sea consultado por personal que no tiene por qué estar físicamente en el lugar de trabajo.
- Facilita comparar embarcaciones, compartir consumos o analizar diferencias entre stocks de varias unidades, y llevar control centralizado sin obligar a instalar sistemas complejos.
- Además, Excel permite exportar/abrir los datos con herramientas estándar, lo que agiliza revisiones y reportes sin fricción.
Valor para gestión interna
- Centraliza el inventario y evita control manual disperso.
- Reduce errores y mejora la trazabilidad por usuario y fecha.
- Previene roturas de stock y ayuda a planificar reposiciones.
- Aporta histórico útil para decisiones basadas en datos (consumo, rotación, planificación).
- Permite colaboración y comparación entre embarcaciones al poder compartir el Excel fácilmente.
Tecnologías
Python, Tkinter, pandas, tkcalendar.
Vías de mejora / continuidad
- Mejorar interfaz para mayor rapidez e intuición.
- Informes automáticos (diarios/semanales/mensuales): consumo, rotación, alertas, desviaciones.
- Potenciar el módulo de máquinas con sensorización (IoT).
- Integrar control de cambios de aceite y consumos por equipo.
- Evolucionar a mantenimiento preventivo basado en datos reales.
- Histórico por componente (uso, consumo, intervenciones, vida útil) para optimizar costes y fiabilidad.