Information générale
Catégorie:
Codage, syntaxe et commandes
>Here's an odd one. The following code returns two different answers, even though they should be identical:
>
>****************
>* The following code makes vp_dbfname = ""
>****************
>iif(EMPTY(thisform.ctextbox1.Value),vp_dbfname = "", ;
> vp_dbfname = thisform.ctextbox1.Value)
>
>****************
>* This code makes vp_dbfname = thisform.ctextbox1.Value
>****************
>if EMPTY(thisform.ctextbox1.Value)
> vp_dbfname=""
>else
> vp_dbfname = thisform.ctextbox1.Value
>endif
IIF() doesn't perform value assignments. In your first example, if the EMPTY() expression evaulates to .T., then the evaluation of the expression vp_dbfname = "" is returned (.T. or .F.). The actual operation of value assignment is not performed. However, in your second example, the lines of code assigning a value to vp_dbfname are actually executed depending on the IF condition.
HTH
Précédent
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement