Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
IIF() Evaluates Differently Than IF?
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
00044321
Message ID:
00044345
Vues:
29
>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
Fil
Voir

Click here to load this message in the networking platform