← → navegar  ·  F tela cheia
Case de Planejamento Comercial · Forecast & Budget
Planejamento
Comercial
Estratégia → Execução → Monitoramento → Decisão
em uma plataforma analítica integrada de ponta a ponta
📊 Excel 🐍 Python ETL 🗄 SQL Server DW 📊 Power BI + DAX ⚡ Power Automate
~20.004 transações· 4 anos histórico· 11 vendedores· 47 testes automatizados· 5 fluxos Power Automate
Igor Pereira Pinto · Analista de Dados/BI Sênior · Abril 2026
O Desafio
Dados fragmentados em 6 Excels geravam decisão tardia, forecast impreciso e retrabalho recorrente
20.004
Transações de Vendas
Jan/2018 — Abr/2021
528
Registros de Meta
11 vendedores × 12 meses × 4 anos
11
Vendedores
3 gerentes · 3 times regionais
6
Arquivos Excel
sem integração · cada área com seu número
❌ Situação anterior — dores identificadas
Forecast manual sem métrica de acurácia — erro acima de 30% em picos
Meta vs realizado calculado diferente por cada área — reunião virava debate sobre qual planilha estava certa
Gerentes sem visibilidade do time em tempo real
Fechamento mensal = 2 dias de trabalho manual recorrente
Pedidos cancelados inflavam o faturamento reportado
Riscos detectados depois que era tarde para agir (dia 28, sem margem)
📁 Fontes de dados e seus desafios de ingestão
ArquivoVolumeDesafio técnico
Vendas.xlsx~20.004 linhasCabeçalho na linha 5 · pedidos cancelados misturados · dtype str
Dimensões.xlsx~800 linhas / 7 abas7 dimensões em abas distintas de um único arquivo
Meta 2018–20214 × 132 = 528 linhasFormato wide (meses como colunas) — requer UNPIVOT para long
Decisão com 15–30 dias de atraso e sem projeção do ano — o budget estava comprometido antes de qualquer alerta.
Estratégia Analítica
Três hipóteses de negócio guiam o modelo — construído com orquestração humana sobre IA
📊
H1 — Concentração (Pareto)
"20% dos vendedores geram ~80% da receita"
Priorizar retenção dos top performers
Identificar potencial da cauda longa
Pareto + RANKX no dashboard
📈
H2 — Volatilidade do Forecast
"Erro elevado em picos sazonais — metas flat não capturam variação"
MAPE > 20% sinaliza revisão do modelo de metas
Processo de planejamento precisa de ajuste por período
MAPE mensal no dashboard
📅
H3 — Sazonalidade
"Vendas concentradas em meses específicos — Q1 e Q4 têm comportamentos opostos"
Metas devem refletir sazonalidade histórica, não flat
YoY revela padrão e desvio estrutural
dCalendario + YoY + MTD
🤖 Como foi construído — IA com orquestração humana
🤖
Claude
Arquitetura · Código · DAX
+
🤖
ChatGPT
Segunda opinião · Gaps
👤
Igor
Decide · Valida · Dirige
46 arquivos
Qualidade senior
Humano no comando: a IA gerou código, SQL e DAX; o analista definiu o problema, validou cada entrega e decidiu quais padrões adotar.
⚖️ Divisão de responsabilidades
Papel da IAPapel do Analista
Gerar código, SQL, DAX, fluxosDefinir o problema de negócio
Manter padrões entre 46 arquivosValidar cada entrega vs realidade
Propor arquitetura e hipótesesDecidir o que adotar
Multi-LLM: Claude + ChatGPTSelecionar as 9 melhores contribuições
Arquitetura Ponta a Ponta
7 etapas de pipeline com dupla validação: do Excel bruto ao alerta automático no Teams
📊
Excel (Fontes)
openpyxl · pandas
dtype=str · skiprows
Vendas + Dimensões + Metas
🐍
Python ETL
7 etapas · Extract
Validate RAW (4 testes)
Transform · Validate STG (7)
Load Raw · Staging · DW
🗄
SQL Server
raw → staging → dw
Star Schema Kimball
13 índices · PERSISTED cols
📊
Power BI
7 páginas analíticas
20+ medidas DAX
RLS · MAPE · Pareto · YTD
Power Automate
5 fluxos automáticos
E-mail · Teams · Refresh
Alertas por severidade
🥉 Bronze (raw)
Dado bruto preservado e imutável. Nunca modificado após a carga — base para auditoria e reprocessamento seguro.
🥈 Silver (staging)
Limpeza, tipagem e normalização. Metas UNPIVOTADAS de formato wide → long. Deduplicação declarada.
🥇 Gold (dw)
Star schema Kimball. Colunas PERSISTED pré-calculadas (Margem Bruta, Resultado Líquido). Pronto para Power BI.
Falha crítica = pipeline para. Nenhum dado inválido chega ao DW. O dado raw nunca é sobrescrito — reprocessamento sempre possível.
--dry-run: valida todas as 11 etapas sem gravar nenhum registro. Seguro para testar em ambiente de produção.
Engenharia de Dados
Star schema Kimball com 2 fatos e 8 dimensões + 47 testes que garantem zero dado inválido no DW
🗄 Modelo Dimensional — Star Schema
dCalendario
2.192 datas · 25 atributos
dProdutos
499 produtos · Marca→Categoria
dVendedor
11 vendedores · Gerente (RLS)
dClientes + dCidade
Hierarquia geográfica UF
fVendas — Fato Principal
~20.004 linhas · produto × pedido × data
PERSISTED: Margem Bruta = Fat − Custo
PERSISTED: Resultado Líq. = Fat − Custo − Desp − Imp − Com
fMetas — Fato Budget
528 linhas · relação INATIVA → USERELATIONSHIP
dUnidades
11 unidades · Filial / Matriz
dStatus
Conta Para Faturamento BIT
dPagamento
À Vista · Parcelado · Digital
13 índices nonclustered
INCLUDE para queries Power BI
🧪 Qualidade de Dados — 47 Testes Automatizados
47
Testes pytest
unit + integration
11
Validações pipeline
4 RAW + 7 STAGING
Nulos em chaves primárias
Id Produto, Vendedor, Cliente ≠ NULL
Integridade referencial
Zero FKs órfãs em todas as dimensões
Duplicidade de transações
Num Venda + Id Produto = chave única
Cobertura de metas
Todos os meses 2018–2021 com meta
Valores negativos
Faturamento nunca < zero
Consistência temporal
Data Envio ≥ Data Venda em 100%
Logging completo: cada execução gera logs/etl.log com timestamp, status e rastreabilidade por etapa.
Plataforma Analítica
7 páginas do resumo executivo ao diagnóstico + MAPE como KPI de qualidade do planejamento
📊 Dashboard Power BI — fluxo de perguntas
1
Executive Summary
KPIs globais · semáforo · tendência YTD
2
Meta vs Realizado
YTD · MTD · Atingimento % por vendedor
3
Análise de Produtos
Top 10 · Pareto · Treemap por categoria
4
Análise de Margens
Waterfall: Fat → MB → Resultado Líquido
5
Análise Geográfica
Mapa + ranking de faturamento por UF
6
Acurácia do Forecast
MAPE mensal + evolução da acurácia
7
Diagnóstico
Alertas · desvios · causa raiz · LLM narrativo
📐
20+ medidas DAX
RANKX · TOTALYTD
USERELATIONSHIP
Fluxo de navegação: Pág 1 "estamos bem?" → Pág 2 "quem não está?" → Págs 3–5 "onde está o desvio?" → Págs 6–7 "qual é a causa?"
📉 MAPE — Acurácia do Forecast como KPI de Processo
Mean Absolute Percentage Error — erro percentual médio absoluto entre forecast e realizado, calculado por vendedor × mês.
<10%
Excelente
10–20%
Boa
20–50%
Razoável
>50%
Baixa
Acurácia por vendedor — referência simulada
Ronaldo
88%
Paola
82%
Neymar
74%
Rodrigo
61%
MAPE > 25% = processo de planejamento precisa de revisão — não é falha do vendedor, é do modelo de metas. Medir é o primeiro passo para melhorar.
Governança & Automação
RLS garante que cada gerente vê apenas o seu time + 5 fluxos entregam insights antes de abrir o dashboard
🔒 Row-Level Security — filtro automático por gerente
🏢 Diretoria / Admin — vê TUDO
Guardiola
Ronaldo
Rodrigo
Marta
Paola
Marilia
Zagallo
Neymar
+ time
RoleFiltro DAXAcesso
Gerente_Guardiola[Gerente] = "Guardiola"Ronaldo, Rodrigo
Gerente_Marta[Gerente] = "Marta"Paola, Marilia
Gerente_Zagallo[Gerente] = "Zagallo"Time Zagallo
Admin(sem filtro)Visão total
Filtro aplicado em dVendedor → propaga para fVendas e fMetas automaticamente. Confiança = driver #1 de adoção de dashboard.
⚡ Power Automate — 5 fluxos de inteligência proativa
🔄
SEG · 06H
Refresh Automático
ETL Python + dataset Power BI
E-mail status
⚠️
SEG · 08H
Alerta Baixo Atingimento
Vendedores < 70% da meta + desvio R$
E-mail gerente
📊
SEX · 17H
Resumo Semanal
KPIs semana + MTD + Top 3
E-mail gerentes
🚨
DIA 20 · 08H
Meta em Risco
Projeção < 90% → 3 níveis severidade
E-mail diretoria
🏆
REAL-TIME
Celebração de Meta Superada
Gatilho Power BI quando atingimento > 100%
Teams + E-mail
Sem automação: risco detectado no dia 28 — sem margem de ação.
Com automação: alerta no dia 20 — 11 dias de margem para agir.
Impacto & Competências
Decisão mais rápida, zero retrabalho no fechamento e todas as atribuições analíticas cobertas
📈 Antes × Depois — impacto mensurável
AntesDepoisImpacto
Fechamento: 2 dias manual Dashboard atualizado automaticamente toda segunda ~2 dias/mês
Risco no dia 28 — sem margem Alerta automático dia 20 com projeção e ação 8–11 dias de antecipação
Forecast sem acurácia MAPE mensal por vendedor no dashboard Planejamento mensurável
6 Excels — cada área com seu número DW unificado — fonte única de verdade Governança de métricas
KPI calculado diferente por cada área 20+ medidas DAX centralizadas e versionadas Consistência analítica
47
Testes automatizados
5
Fluxos Power Automate
8
Dias de antecipação
🎯 Atribuições analíticas cobertas pelo projeto
IA/LLM + análise de dados — 3 cenários de forecast, pipeline ML-ready, MAPE como KPI de processo
Benchmark de melhores práticas — S&OP, MAPE < 10%, semáforo 70/90%, YoY histórico 2018–2021
Soluções analíticas integradas às esteiras — pipeline 7 etapas + 5 fluxos Power Automate + Power BI
Mineração de dados e insights — 20.004 transações + descoberta: efeito Janeiro mascarando queda real em 2021
Análises de jornada e personalização — semáforo individual + aceleração necessária por vendedor
Análise com áreas de negócio — dashboard Power BI com RLS + apresentação executiva 10 slides + alertas automáticos
Qualidade para melhorias de processo — 47 testes automatizados + MAPE como KPI de qualidade do planejamento
Roadmap
3 fases de evolução — fundação entregue, aprofundamento em curso, IA e predição como próxima fronteira
✅ Fase 1 — Fundação (concluída)
✅ Pipeline ETL Python — 7 etapas + 47 testes automatizados
✅ SQL Server DW — star schema Kimball completo
✅ Dashboard Power BI — 7 páginas + 20+ medidas DAX
✅ RLS por gerente (Guardiola, Marta, Zagallo)
✅ 5 fluxos Power Automate (alertas + refresh)
✅ Apresentação executiva HTML + DAX Forecast
🔄 Fase 2 — Aprofundamento Analítico
🔄 MAPE como KPI recorrente de processo de planning
🔄 Pág 7: Diagnóstico automatizado + causa raiz
🔄 Análise de comissão variável por meta atingida
🔄 Forecast MTD projetado no dashboard Power BI
🔄 Segmentação de clientes por valor e frequência
🚀 Fase 3 — IA e Predição
🚀 Forecast com Prophet ou XGBoost por vendedor
🚀 Simulação de metas — cenário "e se atingimento X%?"
🚀 Forecast por segmento, unidade e produto
🚀 Integração com CRM para pipeline de oportunidades
🚀 LLM narrativo automático integrado ao dashboard
💬 Próxima fronteira — LLM Narrativo: Python lê o DW → chama API Claude/GPT → gera diagnóstico em linguagem natural diretamente no dashboard Power BI.
"O faturamento caiu 12% em março devido à redução de 30% nas vendas do time Zagallo, concentradas na categoria Eletrônicos — ação recomendada: revisão de carteira e campanha de recuperação."