Todos os projetos

DRE gerencial consolidada no Microsoft Fabric

Uma única DRE para três empresas, atualizada por pipeline, com acesso por centro de custo e as justificativas de variação registradas no próprio relatório.

Contexto
Área financeira de um grupo farmacêutico
Meu papel
Especialista de BI, da arquitetura à documentação
Período
2025–2026
Ferramentas
Microsoft Fabric, Lakehouse, Dataflow Gen2, PySpark, Power BI, DAX, RLS, XMLA, Fabric SQL Database, Python, SAP Business One

Como a solução funciona

  1. SAP Business One lançamentos contábeis de cada empresa
  2. Lakehouse ingestão por CopyJob e base histórica em Delta
  3. Dataflow Gen2 regras de reclassificação de contas
  4. Modelo semântico fato única, medidas DAX e RLS
  5. DRE no Power BI com justificativas gravadas no relatório

O problema

Os números da DRE vinham de fontes que não conversavam entre si: os lançamentos vivos do SAP Business One, uma base histórica de 2025 com outra lógica de contas e ajustes mantidos em planilha. Comparar períodos exigia reconciliar tudo à mão, e cada área precisava ver só a sua parte do resultado.

O que eu fiz

  • Arquitetura em camadas no Fabric. Ingestão do SAP Business One no Lakehouse, transformações em Dataflow Gen2 e um pipeline que orquestra a atualização completa, na ordem certa.
  • Base histórica congelada e comparável. Gravei a base de 2025 como tabela Delta (via notebook PySpark) e apliquei a ela as mesmas regras de reclassificação dos dados atuais, para comparar períodos de igual para igual.
  • Uma tabela fato. Unifiquei movimentos do ERP, ajustes controlados e a base histórica numa única fato, com tipos e chaves padronizados para não quebrar os relacionamentos.
  • Segurança por linha. O acesso é definido pelo e-mail de quem abre o relatório, combinando pacotes de contas e centros de custo, com curinga para quem precisa ver tudo.
  • Atualização incremental. Janela móvel de atualização e partições gerenciadas pelo endpoint XMLA, para não reprocessar o histórico inteiro a cada carga.
  • Justificativas no relatório. Com o writeback nativo do Power BI (Translytical Task Flows), quem analisa registra a explicação da variação direto no visual; um Fabric SQL Database e funções em Python gravam o comentário.
  • Correção na origem. Quando a margem do mês corrente saía distorcida, ajustei a conta que alimenta o cálculo (CMV) por uma tabela de ajuste com chave de previsão e realizado, em vez de remendar a medida. Resultado bruto, margem, EBITDA e lucro recalculam sozinhos.
  • Validação automática. Um script em Python compara o BI com as bases da Controladoria e aponta as diferenças por conta e por lançamento, numa planilha com resumo.

Resultado

  • Uma versão da DRE para as três empresas, com a mesma regra de negócio em todos os períodos.
  • Cada pessoa vê apenas os pacotes e centros de custo que lhe cabem, no mesmo relatório.
  • As explicações de variação ficam junto do número, e não perdidas em e-mails.
  • Documentação técnica completa (consultas, transformações, regras, RLS e medidas) e um manual de uso para a Controladoria.

O que eu levo deste projeto

Corrigir na origem compensa. Uma medida "especial" para cada exceção resolve o mês, mas cria um modelo que ninguém consegue manter. Ajustar o dado que alimenta o cálculo deixa todos os subtotais coerentes, hoje e nos próximos fechamentos.