Share via


Função CALCULATETABLE (DAX)

Avalia uma expressão de tabela em um contexto modificado pelos filtros fornecidos.

Sintaxe

CALCULATETABLE(<expression>,<filter1>,<filter2>,…)

Parâmetros

Termo

Definição

Expression

A expressão de tabela a ser avaliada

filter1,filter2,…

Uma expressão Booleana ou uma expressão de tabela que define um filtro

A expressão usada como o primeiro parâmetro deve ser uma função que retorna uma tabela.

Estas restrições se aplicam a expressões Booleanas que são usadas como argumentos:

  • A expressão não pode referenciar uma medida.

  • A expressão não pode usar uma função CALCULATE aninhada.

  • A expressão não pode usar funções que examinem uma tabela ou retornem uma tabela, inclusive funções de agregação.

Entretanto, uma expressão Booliana pode usar qualquer função que procure um único valor, ou que calcule um valor escalar.

Valor de retorno

Uma tabela de valores.

Comentários

A função CALCULATETABLE altera o contexto no qual os dados são filtrados e avalia a expressão no novo contexto especificado. Para cada coluna usada em um argumento de filtro, será removido qualquer filtro existente nessa coluna, e o filtro usado no argumento de filtro será aplicado.

Essa função é um sinônimo para a função RELATEDTABLE.

Exemplo

O exemplo a seguir usa a função CALCULATETABLE para obter a soma de vendas pela Internet para 2002. Esse valor é usado posteriormente para calcular a razão das vendas pela Internet comparada com todas as vendas do ano de 2002.

A tabela a seguir mostra os resultados da fórmula a seguir.

Rótulos de Linha

Internet SalesAmount_USD

CalculateTable 2002 Internet Sales

Internet Sales to 2002 ratio

2001

$2,627,031.40

$5,681,440.58

0.46

2002

$5,681,440.58

$5,681,440.58

1.00

2003

$8,705,066.67

$5,681,440.58

1.53

2004

$9,041,288.80

$5,681,440.58

1.59

Grand Total

$26,054,827.45

$5,681,440.58

4.59

=SUMX( CALCULATETABLE('InternetSales_USD', 'DateTime'[CalendarYear]=2002)
     , [SalesAmount_USD])

Consulte também

Referência

Outros recursos