Share via


IF ... ENDIF (Comando)

Ejecuta condicionalmente un conjunto de comandos dependiendo del resultado de una expresión lógica.

IF lExpression [THEN]
   Commands
[ELSE
   Commands]
ENDIF

Parámetros

  • lExpression
    Especifica la expresión lógica evaluada. Si lExpression da como resultado verdadero (.T.), se ejecutarán cualesquiera instrucciones posteriores a IF y anteriores a ELSE o ENDIF (lo que suceda primero).
    • Si lExpression es falso (.F.) y se incluye ELSE, se ejecutan los comandos situados después de ELSE y antes de ENDIF.
    • Si lExpression es falso (.F.) y no se incluye ELSE, se pasarán por alto todas las instrucciones entre IF y ENDIF. En este caso la ejecución del programa continuará con la primera línea de comando a continuación de ENDIF.

Observaciones

Puede anidar IF ... ENDIF dentro de otro bloque IF ... ENDIF.

Los comentarios precedidos de && se pueden colocar en la misma línea después de IF, ELSE y ENDIF. Estos comentarios se pasarán por alto durante la compilación y la ejecución del programa.

Ejemplo

CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE Customer     && Open customer table

GETEXPR 'Enter condition to locate ' TO gcTemp;
   TYPE 'L' DEFAULT 'COMPANY = ""'
LOCATE FOR &gcTemp  && Enter LOCATE expression
IF FOUND( )  && Was it found?
   DISPLAY  && If so, display the record
ELSE  && If not found
   ? 'Condition ' + gcTemp + ' was not found '   && Display a message
ENDIF
USE

Vea también

DO CASE ... ENDCASE | DO WHILE ... ENDDO | FOR EACH ... ENDFOR | FOR ... ENDFOR | IIF( ) | SCAN ... ENDSCAN