Introdução
Ao utilizar o DAX (Data Analysis Expressions), pode adicionar três tipos de cálculos ao seu modelo semântico:
- Tabelas calculadas
- Colunas calculadas
- Medidas
Nota
O DAX também pode ser utilizado para definir regras de segurança ao nível da linha (RLS), que são expressões que impõem filtros às tabelas de modelo. No entanto, as regras não são consideradas cálculos de modelo. Assim, estão fora do âmbito deste módulo. Para obter mais informações, veja Segurança ao nível da linha (RLS) com o Power BI.
Tabelas calculadas
Pode escrever uma fórmula DAX para adicionar uma tabela calculada ao modelo. A fórmula pode duplicar ou transformar dados de modelo existentes ou criar uma série de dados para produzir uma nova tabela. Os dados calculados da tabela são sempre importados para o modelo, pelo que aumenta o tamanho do armazenamento do modelo e pode prolongar o tempo de atualização de dados.
Nota
Não pode ligar uma tabela calculada a dados externos. Tem de utilizar o Power Query para realizar essa tarefa.
As tabelas calculadas podem ser úteis em vários cenários:
- Tabelas de datas
- Dimensões de desempenho de funções
- Análise de hipóteses
Tabelas de datas
As tabelas de datas são necessárias para aplicar filtros de tempo especiais conhecidos como análise de tempo. As funções de análise de tempo DAX só funcionam corretamente quando uma tabela de datas é configurada. Quando os dados de origem não incluem uma tabela de datas, pode criar uma como tabelas calculadas com as CALENDAR
funções DAX ou CALENDARAUTO
.
Dimensões de desempenho de funções
Quando duas tabelas do modelo têm várias relações, poderá deve-se ao facto de o modelo ter uma dimensão de desempenho de funções. Por exemplo, se tiver uma tabela denominada Vendas que inclui duas colunas de data, OrderDateKey e ShipDateKey, ambas as colunas estão relacionadas com a coluna Data na tabela Data . Neste caso, a tabela Data é descrita como uma dimensão de desempenho de funções porque pode desempenhar a função de data de encomenda ou data de envio.
Os modelos do Microsoft Power BI apenas permitem uma relação ativa entre as tabelas, o que no diagrama de modelo é indicado como uma linha contínua. A relação ativa é utilizada por predefinição para propagar filtros, que neste caso seriam da tabela Data para a coluna OrderDateKey na tabela Vendas . As relações restantes entre as duas tabelas estão inativas. Num diagrama de modelo, as relações são representadas como linhas tracejadas. As relações inativas só são utilizadas quando são expressamente pedidas numa fórmula calculada através da USERELATIONSHIP
função DAX.
Talvez um design de modelo melhor possa ter duas tabelas de datas, cada uma com uma relação ativa com a tabela Vendas . Assim, os utilizadores do relatório podem filtrar por data de encomenda ou data de envio, ou ambas ao mesmo tempo. Uma tabela calculada pode duplicar os dados da tabela Data para criar a tabela Data de Envio .
Análise de hipóteses
O Power BI Desktop suporta uma funcionalidade chamada Parâmetros de hipótese. Quando cria um parâmetro de hipótese, é automaticamente adicionada uma tabela calculada ao modelo.
Os parâmetros de hipótese permitem aos utilizadores do relatório selecionar ou filtrar por valores armazenados na tabela calculada. As fórmulas de medida podem utilizar valores selecionados de forma significativa. Por exemplo, um parâmetro de hipótese pode permitir que o utilizador do relatório selecione uma taxa de câmbio hipotética e uma medida poderia dividir os valores das receitas (numa moeda local) pela taxa selecionada.
Nomeadamente, as tabelas calculadas de hipótese não estão relacionadas com outras tabelas do modelo, porque não são utilizadas para propagar filtros. Por isso, por vezes são denominadas tabelas desligadas.
Colunas calculadas
Pode escrever uma fórmula DAX para adicionar uma coluna calculada a qualquer tabela no modelo. A fórmula é avaliada para cada linha da tabela e devolve um único valor. Quando adicionada a uma tabela Modo de armazenamento de importação, a fórmula é avaliada quando o modelo semântico é atualizado e aumenta o tamanho de armazenamento do modelo. Quando adicionada a uma tabela com o modo de armazenamento do DirectQuery, a fórmula é avaliada pela base de dados de origem subjacente quando a tabela é consultada.
No painel Campos, as colunas calculadas são melhoradas com um ícone especial. O exemplo seguinte mostra uma única coluna calculada na tabela Cliente denominada Idade.
Medidas
Pode escrever uma fórmula DAX para adicionar uma medida a qualquer tabela no modelo. A fórmula está relacionada com a obtenção de um resumo de dados do modelo. De forma semelhante a uma coluna calculada, a fórmula deve devolver um único valor. Ao contrário das colunas calculadas, que são avaliadas no momento da atualização de dados, as medidas são avaliadas no momento da consulta. Os resultados nunca são armazenados no modelo.
No painel Campos, as medidas são apresentadas com o ícone de calculadora. O exemplo seguinte mostra três medidas na tabela Vendas : Custo, Lucro e Receita.
Ocasionalmente, as medidas podem ser descritas como medidas explícitas. Para ser claro, as medidas explícitas são cálculos do modelo escritos no DAX e são frequentemente referidas simplesmente como medidas. No entanto, o conceito de medidas implícitas também existe. As medidas implícitas são colunas que podem ser resumidas em elementos visuais de forma simplista, por exemplo, contagem, soma, mínimo, máximo e etc. Pode identificar medidas implícitas no painel Campos porque são apresentadas com o símbolo sigma (∑ ).
Nota
Qualquer coluna pode ser resumida quando adicionada a um elemento visual. Portanto, quer sejam mostrados com o símbolo sigma ou não, quando são adicionados a um elemento visual, podem ser configurados como medidas implícitas.
Além disso, não existe nenhum conceito de medida calculada na modelação tabular. A palavra calculada é utilizada para descrever as tabelas calculadas e as colunas calculadas, o que as distingue das tabelas e colunas com origem no Power Query. O Power Query não possui o conceito de medida explícita.