IF()
 Retorna o resultado de uma expressao baseada em uma condiçao
------------------------------------------------------------------------------

 Sintaxe

     [I]IF(<lCondiçao>, <expVerdadeiro>, <expFalso>) --> Valor

 Argumentos

     <lCondiçao> é uma expressao lógica a ser avaliada.

     <expVerdadeiro> é o valor, de qualquer tipo de dado, a ser
     retornado desde que a <lCondiçao> seja verdadeira (.T.).

     <expFalso> é o valor, de qualquer tipo de dado, a ser retornado
     caso <lCondiçao> seja falsa (.F.).  Este argumento nao tem que ser do
     mesmo tipo de dado que <expVerdadeiro>.

 Retorno

     IF() retorna a avaliaçao de <expVerdadeiro> se <lCondiçao> avaliar
     verdadeiro (.T.), e <expFalso> se ela avaliar falso (.F.).  O valor
     retornado é o tipo de dado do argumento avaliado.

 Descriçao

     IF() é uma funçao de conversao lógica.  É uma das funçoes mais
     poderosas e versáteis no Clipper.  Ela fornece um mecanismo para
     avaliar uma condiçao em uma expressao.  Com isso você pode converter
     uma expressao lógica para outro tipo de dado.

 Exemplos

       O exemplo a seguir demonstra a conversao de um dado lógico
        para um numérico:

        lPaid := .T.
        ? IF(lPaid, 1, 0)           // Resulta: 1

       Isto leva a uma série de aplicaçoes.  Neste exemplo um campo
        lógico é formatado, dependendo se o cliente pagou ou nao:

        @ ROW() + 1, 25 SAY IF(lPaid, SPACE(10), "Caloteiro ")

       Se você está imprimindo formulários, você pode imprimir um
        símbolo indicativo em colunas diferentes conforme o valor de um
        campo lógico, desta forma:

        @ ROW(), IF(InHospital, 10, 12) SAY "X"

       Você também pode utilizar IF() para forçar LABEL FORM a
        imprimir linhas em branco, entrando com a seguinte expressao ao
        criar a etiqueta com RL.EXE:

        IF(EMPTY(Company), CHR(255), Company)

 Arquivos:  Biblioteca CLIPPER.LIB.
 To download this example - click here.

See Also: DO CASE IF