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
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_false
ou 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
evalue_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)
retornaTRUE
ou 0, mas a fórmulaIF.EAGER(<condition>, 1.0, 0)
retorna apenas valores decimais, mesmo quevalue_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.