Avalia expressões diferentes da ramificação dependendo de a condição booliana ser verdadeira ou falsa.
Sintaxe
IIf ( Logical_Expression, Expression1 [ HINT <hints> ], Expression2 [ HINT <hints> ] )
Argumentos
A função IIf usa três argumentos: IIF ( <condição> , <faça isso> , <se não, faça isso> ).
Logical_Expression
Uma condição que é avaliada como true (1) ou false (0). Ela deve ser uma expressão MDX lógica válida.
Comentários
A condição especificada pela expressão lógica é avaliada como falsa quando o valor dessa expressão é zero. Qualquer outro valor é avaliado como true.
Quando a condição for verdadeira, a função IIF retornará a primeira expressão. Caso contrário, a função retornará a segunda expressão.
As expressões especificadas podem retornar valores ou objetos MDX. Além disso, as expressões especificadas não precisam corresponder ao tipo.
A função IIF não é recomendada para criar um conjunto de membros com base em critérios de pesquisa. Em vez disso, use a função de filtro para avaliar cada membro em um conjunto especificado em relação a uma expressão lógica e retornar um subconjunto de membros.
Observação
Se qualquer expressão for avaliada como NULL, o conjunto de resultados será NULL quando aquela condição for atendida.
Exemplos
IIF ( [Measures].[QtdClientes] > 10000 , “Bom”, “Ruim” )
IIF ( ( [Measures].[QtdClientes] = 0 OR IsEmpty ( [Measures].[QtdClientes] ) ), Null, ([Measures].[QtdClientes] / [Measures].[QtdPedidos] ) )