Partilhar via


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. Ele usa um plano de execução ansioso 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

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

Valor de retorno

Ou value_if_true, value_if_falseou BLANK.

Comentários

  • A função IF.EAGER pode retornar um tipo de dados variante se value_if_true e value_if_false forem de tipos de dados diferentes, mas a função tentará retornar um único tipo de dados se value_if_true e value_if_false forem de tipos de dados numéricos. Neste último caso, a função IF.EAGER converterá implicitamente os tipos de dados para acomodar ambos os 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, mesmo que value_if_false seja do tipo de dados de número inteiro. Para saber mais sobre a conversão implícita de tipos de dados, consulte Tipos de dados.

  • IF.EAGER tem o mesmo comportamento funcional que a função IF, mas o desempenho pode diferir 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)
    

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

Exemplos

Veja IF exemplos.

IF funçãofunções lógicas