IF.EAGER

Aplica-se a:Coluna calculadaTabela calculadaMedidaCálculo visual

Verifica uma condição e retorna um valor quando é TRUE; caso contrário, retorna um segundo valor. Ela usa um plano de execução eager que sempre executa as expressões de ramificação, independentemente da expressão de condição.

Sintaxe

IF.EAGER(<logical_test>, <value_if_true>[, <value_if_false>])

Parâmetros

Termo Definição
logical_test Qualquer expressão ou valor que possa ser avaliado como TRUE ou FALSE.
value_if_true O valor retornado se o teste lógico é TRUE.
value_if_false (Opcional) O valor retornado se o teste lógico é FALSE. Se omitido, BLANK será retornado.

Retornar valor

value_if_true, value_if_false ou BLANK.

Comentários

  • A função IF.EAGER pode retornar o tipo de dados de variante se value_if_true e value_if_false são de tipos de dados diferentes, mas a função tenta retornar um só tipo de dados se value_if_true e value_if_false são de tipos de dados numéricos. No último caso, a função IF.EAGER converterá implicitamente os tipos de dados para acomodar os dois valores.

    Por exemplo, a fórmula IF.EAGER(<condition>, TRUE(), 0) retorna TRUE ou 0, mas a fórmula IF.EAGER(<condition>, 1.0, 0) retorna apenas valores decimais, embora value_if_false seja do tipo de dados número inteiro. Para saber mais sobre a conversão implícita de tipos de dados, confira Tipos de dados.

  • IF.EAGER tem o mesmo comportamento funcional que a função IF, mas o desempenho pode ser diferente devido a diferenças nos planos de execução. IF.EAGER(<logical_test>, <value_if_true>, <value_if_false>) tem o mesmo plano de execução que a seguinte expressão DAX:

    
    VAR _value_if_true = <value_if_true>
    VAR _value_if_false = <value_if_false>
    RETURN
    IF (<logical_test>, _value_if_true, _value_if_false)
    

    Observação: as duas expressões de ramificação são avaliadas independentemente da expressão de condição.

Exemplos

Confira exemplos de IF.

Função IF
Funções lógicas