Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
IIF syntax
Message
De
14/09/2015 14:16:40
Lutz Scheffler
Lutz Scheffler Software Ingenieurbüro
Dresden, Allemagne
 
 
À
14/09/2015 09:34:42
Mike Yearwood
Toronto, Ontario, Canada
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Titre:
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows Server 2012
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Web
Divers
Thread ID:
01624559
Message ID:
01624597
Vues:
57
>>>>I have always used the if .. endif clause but am wondering if the IIF could serve me here. The example in help menu of VFP does not answer my question.
>>>>here is what I want to do using if ... endif
>>>>
>>>>
>>>>if myval<7
>>>>replace myval with int(myval) && I want to remove values to the right of the decimal
>>>>else
>>>>? 'myval exceeds 7'
>>>>endif
>>>>
>>>>
>>>>I tried this without success - is it possible ?? (or does this function only apply to expressions) or do I just have the syntax wrong.
>>>>
>>>>? IIF(myval<7,Replace myval with Int(myval), 'Retained myval'  )
>>>>
>>>
>>>IIF() returns either the second or third parameter as an expression, depending on the value of the first parameter. You're attempting to return a command rather than an expression.
>>>
>>>You could do something like
>>>
>>>REPLACE MyVal WITH IIF( MyVal < 7, INT( MyVal ), MyVal ) IN MyAlias
>>>
>>>but that's not a great alternative. MyVal would always be REPLACEd, even with the same value, which will affect things like GETFLDSTATE( ).
>>
>>I'm curious Al why you added the 'in myalias' since ken's solution (which is virtually the same) works for me without it. Unless you were attempting to display the process as it occurs (which for me was not essential component to the operation.) Thanks for your input - I have a lot of places to use this new found knowledge.
>
>The fastest and most correct way is
>
>
replace myval with int(myval) for myval < 7  in alias
>
>The only time myval needs an alias is when you're replacing across multiple aliases joined with set relation - a technique that should be avoided.

But this would change all records in myval<7. Might not be intended.
Words are given to man to enable him to conceal his true feelings.
Charles Maurice de Talleyrand-Périgord

Weeks of programming can save you hours of planning.

Off

There is no place like [::1]
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform