Aplicación de escritorio desarrollada en Python para gestión operativa de compras, proveedores, correos masivos, reasignación de tareas y soporte a descargas de órdenes de compra.
El sistema centraliza procesos administrativos que antes requerían revisión manual, envío individual de correos, búsqueda de PDFs, validación de proveedores y seguimiento separado de tareas. La aplicación integra interfaz gráfica, configuración centralizada, automatización de correos, flujos por bienes/servicios y módulos complementarios para procesamiento de OCs.
- Estado del proyecto
- Problema identificado
- Solución desarrollada
- Funcionalidades principales
- Arquitectura general
- Estructura del repositorio
- Módulos principales
- Requisitos
- Ejecución
- Configuración inicial recomendada
- Pruebas
- Impacto operativo
- Retos técnicos resueltos
- Uso profesional
- Licencia y uso
Proyecto en uso interno y en evolución continua. Incluye funcionalidades de operación diaria para los flujos de Compras Bienes y Compras Servicios.
Antes del sistema, varios procesos se gestionaban manualmente o de forma dispersa:
- Búsqueda manual de órdenes de compra y PDFs.
- Envío repetitivo de correos por proveedor u OC.
- Validación manual de proveedores y correos.
- Reasignación de tareas desde aplicativos internos.
- Configuración separada de carpetas, plantillas y destinatarios.
- Falta de una interfaz centralizada para los flujos de bienes y servicios.
- Riesgo de errores por adjuntos incorrectos, correos incompletos o tareas no actualizadas.
Esto generaba reprocesos, pérdida de tiempo operativo y dependencia de tareas repetitivas de bajo valor.
Se desarrolló una aplicación de escritorio en Python con interfaz gráfica en Tkinter/ttk, orientada a centralizar procesos operativos de compras.
La solución permite:
- Iniciar sesión con credenciales SMTP.
- Operar flujos separados de bienes y servicios.
- Configurar proveedores, correos, carpetas y plantillas.
- Enviar correos masivos con adjuntos PDF.
- Agrupar envíos por proveedor u orden de compra.
- Gestionar formatos HTML de correo.
- Reasignar tareas operativas.
- Integrarse con un módulo auxiliar para descargas automatizadas de OCs.
- Validación de credenciales SMTP.
- Acceso controlado a la aplicación.
- Separación entre autenticación y flujo operativo.
- Acceso a Compras Bienes.
- Acceso a Compras Servicios.
- Entrada a módulos de configuración, correos, flujos y reasignación.
- Envío por OC individual.
- Envío agrupado por proveedor.
- Adjuntos PDF automáticos.
- Plantillas HTML configurables.
- Soporte de correos en copia mediante configuración.
- Validaciones para evitar envíos incompletos.
- Formato de correo configurable.
- CC independiente para seguimiento.
- Reutilización de plantillas.
- Envío de pruebas de formato.
- Flujo visual para reasignación.
- Filtros operativos.
- Actualización de estado.
- Separación por tipo de proceso.
- Proveedores.
- Correos principales y alternos.
- Asignaciones por subdepartamento.
- Carpeta de PDFs.
- Credenciales de Google Sheets.
- Plantillas de correo.
- Correos CC por proceso.
- Edición visual de plantillas.
- Soporte de firma en imagen.
- Envío de correo de prueba.
- Selección de formato por envío.
- Integración con
DescargasOC-main. - Descarga y procesamiento de órdenes de compra.
- Soporte a la operación de despacho y envío masivo.
Usuario
↓
Aplicación Desktop Python
↓
Tkinter / ttk GUI
↓
Módulos internos
├── Login SMTP
├── Menú Bienes
├── Menú Servicios
├── Configuración
├── Correos masivos
├── Reasignación de tareas
├── Plantillas HTML
└── Descargas OC
↓
Servicios externos / locales
├── SMTP
├── Google Sheets
├── PDFs locales
├── Selenium
└── SQLite / archivos de configuraciónGestorCompras/
├── run.py
├── requirements.txt
├── requirements-dev.txt
├── GestorCompras_/
│ ├── run.py
│ └── gestorcompras/
│ ├── main.py
│ ├── gui/
│ ├── logic/
│ └── services/
├── GestorCompras_/tests/
├── DescargasOC-main/
├── Proyecto Compras_capturas/
│ ├── Configuraciones.png
│ ├── Login.png
│ ├── Menu de Bienes.png
│ ├── Menu de Servicios.png
│ ├── Menu de flujo.png
│ ├── Reasignacion de tareas.png
│ ├── correos masivos.png
│ └── descargas oc.png
└── README.mdLanzador principal desde la raíz del repositorio.
Lanzador interno del paquete principal.
Punto de entrada de la aplicación, inicialización y ruteo de la interfaz.
Pantallas y ventanas principales de la aplicación.
Lógica de negocio relacionada con compras, proveedores, tareas, correos y validaciones.
Servicios de acceso a base de datos, correo, archivos, configuración e integraciones.
Pruebas automatizadas del paquete principal.
Módulo auxiliar para descarga y procesamiento automatizado de órdenes de compra.
- Python 3.10+
- Dependencias del proyecto:
pip install -r requirements.txt- Dependencias de desarrollo para pruebas:
pip install -r requirements-dev.txtDesde la raíz del repositorio:
python run.pyAlternativa desde el subproyecto principal:
cd GestorCompras_
python run.py- Abrir Configuración.
- Registrar carpeta de PDFs para despacho.
- Cargar proveedores y correos.
- Definir CC por módulo:
- Despacho.
- Seguimiento.
- Crear o editar formatos de correo.
- Probar formato con correo de prueba.
- Validar flujo de envío con datos demo antes de usarlo en operación.
pytestLa aplicación permite:
- Reducir envío manual de correos repetitivos.
- Centralizar configuración de proveedores y plantillas.
- Disminuir errores por adjuntos incorrectos.
- Agilizar flujos de bienes y servicios.
- Mejorar trazabilidad de tareas operativas.
- Reutilizar formatos HTML profesionales.
- Integrar descargas de OCs con el proceso de despacho.
- Documentar una solución interna como proyecto profesional.
El sistema permite enviar comunicaciones masivas con PDFs asociados, reduciendo trabajo manual y riesgo de errores.
La aplicación diferencia procesos de bienes y servicios, manteniendo una interfaz más clara para el usuario.
Se unificó la gestión de proveedores, correos, carpetas, plantillas y parámetros de envío.
Se organizó la aplicación con separación entre GUI, lógica y servicios para mejorar mantenimiento.
El módulo complementario permite conectar la obtención de órdenes con el flujo posterior de despacho y comunicación.
Este repositorio documenta una solución interna orientada a automatización de procesos administrativos y soporte operativo en compras.
Puede presentarse como experiencia en:
- Desarrollo de aplicaciones desktop en Python.
- Automatización de procesos administrativos.
- Integración con SMTP y plantillas HTML.
- Manejo de archivos PDF.
- Gestión de configuración operativa.
- Automatización con Selenium.
- Separación modular de GUI, lógica y servicios.
- Documentación técnica para portafolio profesional.
GestorCompras — Aplicación Desktop para Automatización Operativa de Compras
Python | Tkinter | SMTP | HTML Templates | SQLite | Selenium | Pytest
Diseñé y desarrollé una aplicación de escritorio para centralizar flujos operativos de compras, gestionar proveedores, configurar plantillas HTML, enviar correos masivos con adjuntos PDF, apoyar la reasignación de tareas e integrarse con un módulo de descarga automatizada de órdenes de compra. La solución reduce tareas manuales repetitivas y mejora el control operativo de bienes y servicios.Uso interno según lineamientos del propietario del repositorio.







