Cómo automaticé 40 horas mensuales de reporting en una empresa retail
La situación inicial
Cuando una empresa retail con 12 tiendas me contactó, su proceso de reporting era el siguiente: cada lunes por la mañana, una persona del equipo de administración se conectaba a SAP, exportaba las ventas de la semana anterior en seis archivos Excel distintos (uno por categoría de producto), los copiaba en una carpeta compartida, y luego otro compañero cogía esos seis archivos, los unificaba manualmente en un Excel maestro con fórmulas complejas, y mandaba el informe final por email a dirección.
El proceso completo llevaba entre 8 y 10 horas cada semana. 40 horas al mes. Y aún así, el informe llegaba con datos de la semana anterior.
El diagnóstico
Antes de escribir una línea de código, analicé el proceso completo para entender los puntos de fricción:
- SAP exportaba en formato .xlsx con estructura inconsistente entre semanas (a veces cambiaban columnas o el orden de los campos)
- El Excel maestro tenía referencias brutas a celdas fijas, por lo que si cambiaba algo en SAP, el informe se rompía
- No había validación de datos: nadie detectaba si faltaba una tienda o si una cifra era anómalamente alta hasta que alguien lo veía en la reunión
- El informe final era estático: no permitía filtrar por tienda, por producto ni por período
La solución: un pipeline ETL con Python + Power BI
El rediseño se hizo en tres capas:
Capa 1: Extracción automática desde SAP
Usando la API de SAP y un script Python programado como tarea en el servidor Windows de la empresa, cada noche a las 2:00 AM se extraen automáticamente los datos de ventas del día anterior para todas las tiendas y categorías. Sin intervención humana.
El script incluye validaciones: si alguna tienda no reporta datos o si hay valores fuera de rango, genera una alerta por email antes de que nadie llegue a la oficina.
Capa 2: Transformación y carga en base de datos
Los datos extraídos se limpian, normalizan y cargan en una base de datos SQL Server. Este paso elimina el problema de la estructura inconsistente: el modelo de datos es fijo, independientemente de cómo exporte SAP.
Las transformaciones incluyen: limpieza de nombres de producto, normalización de códigos de tienda, cálculo de márgenes brutos, y detección de duplicados.
Capa 3: Dashboard en Power BI
Conectado directamente a SQL Server, el dashboard de Power BI se actualiza automáticamente cada mañana con los datos más recientes. La dirección entra cualquier día, a cualquier hora, y ve:
- Ventas acumuladas del mes vs. objetivo, por tienda y categoría
- Evolución diaria con comparativa semana anterior y año anterior
- Top 10 productos por margen, con drill-down por tienda
- Alertas visuales cuando una tienda está por debajo del 80% de su objetivo
El resultado
Tres semanas después de la implementación, el proceso manual había desaparecido. Los resultados concretos:
- 40 horas/mes liberadas del equipo de administración para tareas de mayor valor
- Datos en tiempo real en lugar de con una semana de retraso
- 0 errores en los informes desde la implementación (frente a 2-3 correcciones manuales habituales por mes)
- Visibilidad diaria que antes no existía: detectaron en la primera semana que una tienda tenía un problema de stock que estaba costando ventas
¿Qué necesitas para implementarlo?
Este tipo de proyecto no requiere cambiar de ERP ni grandes inversiones en infraestructura. Los requisitos típicos son:
1. Acceso a los datos (ERP, Excel, base de datos existente) 2. Un servidor o máquina que pueda ejecutar el script (incluso un PC de oficina) 3. Una licencia de Power BI Pro (~10€/usuario/mes)
El tiempo de implementación para un proyecto de esta complejidad es de 3 a 6 semanas.
Si tu empresa tiene un proceso de reporting que consume horas de trabajo manual cada semana, hablamos y te digo si tiene solución.
¿Quieres aplicar esto en tu empresa?
Primera consultoría sin coste. Analizamos tu situación y te propongo un plan concreto.
Contactar ahora