Ficha 02 · DAX e dashboards
Exercício 1 · Medidas base
Com a tabela Factos_Vendas (colunas Total, Quantidade), escreve as medidas DAX: Total de Vendas, Nº de Vendas e Ticket Médio.
Resposta:
Total Vendas = SUM(Factos_Vendas[Total])
Nº Vendas = COUNTROWS(Factos_Vendas)
Ticket Médio = DIVIDE([Total Vendas], [Nº Vendas])
DIVIDE evita erro se Nº Vendas for 0. O Ticket Médio reutiliza as outras medidas (boa prática).
Exercício 2 · Coluna calculada vs medida
Precisas de: (a) classificar cada produto em "Barato / Médio / Caro" conforme o preço; (b) mostrar o total de vendas que reage aos filtros. Qual é coluna calculada e qual é medida? Escreve a de (a).
Resposta:
- (a) é coluna calculada — um valor fixo por linha de produto.
- (b) é medida — agrega e reage aos filtros.
Faixa Preço =
SWITCH(TRUE(),
Dim_Produto[PrecoUnit] < 10, "Barato",
Dim_Produto[PrecoUnit] < 50, "Médio",
"Caro"
)
Exercício 3 · CALCULATE
Escreve medidas para: Vendas de 2026 e Vendas da região Sul (dimensões Dim_Tempo[Ano] e Dim_Loja[Regiao]).
Resposta:
Vendas 2026 = CALCULATE([Total Vendas], Dim_Tempo[Ano] = 2026)
Vendas Sul = CALCULATE([Total Vendas], Dim_Loja[Regiao] = "Sul")
CALCULATE aplica o filtro indicado ao cálculo, independentemente do contexto do visual.
Exercício 4 · % do total
Cria uma medida % do Total = vendas do contexto atual a dividir pelo total de todas as vendas (ignorando filtros de produto).
Resposta:
% do Total =
DIVIDE(
[Total Vendas],
CALCULATE([Total Vendas], ALL(Dim_Produto))
)
ALL(Dim_Produto) remove o filtro de produto, dando o total geral no denominador. Formatar como percentagem.
Exercício 5 · Escolher o visual
Para cada pergunta, indica o visual mais adequado: a) Evolução das vendas mês a mês. b) Comparar vendas por categoria. c) Vendas totais do ano (um número). d) Peso de cada região no total.
Resposta:
- a) Gráfico de linhas (tempo no eixo X).
- b) Gráfico de barras (uma barra por categoria).
- c) Cartão (KPI).
- d) Gráfico circular ou treemap (parte do todo) — ou barras, mais legível se forem muitas.
Exercício 6 · Interatividade
Explica como darias ao gestor a possibilidade de filtrar o dashboard por ano e por loja, e como fazer o utilizador ver o detalhe por mês ao clicar num ano.
Resposta:
- Segmentações (slicers): adicionar dois slicers, um com
Dim_Tempo[Ano]e outro comDim_Loja[Loja]. Filtram todos os visuais da página. - Drill-down: numa hierarquia de tempo (Ano → Trimestre → Mês) no gráfico de linhas, ativar o botão de drill-down — clicar no ano desce ao trimestre e ao mês.
Alternativa ao cross-filter: clicar numa barra de categoria filtra os restantes visuais automaticamente.
Exercício 7 · RGPD no dashboard
O teu dashboard de vendas ia mostrar uma tabela com nome e NIF de cada cliente. Que problema há e o que fazes?
Resposta:
Mostrar nome e NIF (dado pessoal) sem necessidade viola o princípio da minimização do RGPD. Para analisar vendas não precisas de identificar pessoas.
Solução: agregar (vendas por região/segmento, não por pessoa) e, se precisares de distinguir clientes, usar um ID anonimizado em vez de nome/NIF. Restringir o acesso a quem tem base legal.