Retorna o resultado de uma expressão baseado em uma condição.


01. SINTAXE

ret := IIF( <exp1>,  <val1>, <val2> )


02. PARÂMETROS

Nome

Tipo

Descrição

Obrigatório

Referência

exp1

expressão

Define uma condição lógica a ser avaliada como verdadeira (.T.) ou falsa (.F.).

S


val1expressãoDefine a expressão a ser processada ou ou valor retornado quando o resultado da expressão lógica for verdadeiro (.T.).S
val2expressãoDefine a expressão a ser processada ou ou valor retornado quando o resultado da expressão lógica for falso (.F.).S


03. RETORNO

Nome

Tipo

Descrição

ret

variável

O retorno do iif vai depender da expressão ou conteúdo em val1 ou val2, de acordo com a avaliação da exp1


04. OBSERVAÇÕES

A função IIF() é muito flexível e útil, pois possui inúmeras aplicações vantajosas:


  • Fornece um meio de avaliar uma condição dentro de uma expressão. Através dela é possível converter expressões lógicas em outro tipo de dado. Por exemplo:
    • IIF(DELETED(), “Deletado”, “Ativo”)
  • Quando possível, substitui o comando IF ... ENDIF, economizando tempo de processamento.



05. EXEMPLOS

// Verifica se a divisão pode ser realizada

LOCAL nCoef := IIF(nCoef > 0, nValor / nCoef, 0)

 

// Verifica o sinal de um número

LOCAL nCoef := IIF(nCoef >= 0, “Positivo”, “Negativo”)

// A função IIF() pode ser utilizada para substituir a seguinte estrutura de programação:

IF cSexo == “F”
          cNome := “Sra. “ + cNome
ELSE
          cNome := “Sr. “ + cNome
ENDIF

// A estrutura acima é equivalente à:

 

cNome := IIF(cSexo == “F”, “Sra. “, “Sr. “) + cNome




06. VEJA TAMBÉM




  • Sem rótulos