Saber mais sobre o contexto de linha

Concluído

Agora que criou colunas calculadas, ficará a saber como as fórmulas são avaliadas.

A fórmula para uma coluna calculada é avaliada para cada linha da tabela. Além disso, é avaliada no contexto de linha, o que significa a linha atual. Considere a definição de coluna calculada Ano Fiscal Vencido:

Due Fiscal Year =
"FY"
    & YEAR('Due Date'[Due Date])
        + IF(
            MONTH('Due Date'[Due Date]) <= 6,
            1
        )

Quando a fórmula é avaliada para cada linha, a referência de coluna 'Due Date'[Due Date] devolve o valor de coluna para essa linha. Ficará a saber que o Microsoft Excel tem o mesmo conceito para trabalhar com fórmulas em tabelas do Excel.

No entanto, o contexto de linha não se estende para além da tabela. Se a fórmula precisar de fazer referência a colunas noutras tabelas, terá duas opções:

  • Se as tabelas estiverem relacionadas, direta ou indiretamente, pode utilizar a RELATED função OU RELATEDTABLE DAX. A RELATED função obtém o valor no lado único da relação, enquanto o RELATEDTABLE obtém valores no lado muitos. A RELATEDTABLE função devolve um objeto de tabela.
  • Quando as tabelas não estão relacionadas, pode utilizar a LOOKUPVALUE função DAX.

Geralmente, tente utilizar a RELATED função sempre que possível. Normalmente, terá um melhor desempenho do que a LOOKUPVALUE função devido às formas como os dados de relação e coluna são armazenados e indexados.

Agora, adicione a seguinte definição de coluna calculada à tabela Vendas :

Discount Amount =
(
    Sales[Order Quantity]
        * RELATED('Product'[List Price])
) - Sales[Sales Amount]

A definição da coluna calculada adiciona a coluna Valor do Desconto à tabela Vendas . O Power BI avalia a fórmula de coluna calculada para cada linha da tabela Vendas . Os valores das colunas Quantidade de Encomendas e Valor das Vendas são obtidos no contexto de linha. No entanto, uma vez que a coluna Preço da Lista pertence à tabela Produto , a RELATED função é necessária para obter o valor de preço de lista do produto de venda.

O contexto de linha é utilizado quando são avaliadas as fórmulas de colunas calculadas. É também utilizado quando é utilizada uma classe de funções, conhecida como funções de iterador. As funções de iterador proporcionam flexibilidade para criar resumos sofisticados. As funções de iterador são descritas num módulo posterior.