Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Is there a VFP function to...
Message
From
28/06/2006 12:34:04
 
 
To
28/06/2006 12:28:52
Cetin Basoz
Engineerica Inc.
Izmir, Turkey
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01132372
Message ID:
01132484
Views:
16
>>>>>
>>>>>LOCAL lcControl
>>>>>lcControl = IIF(UPPER(LEFT(Object.ControlSource,2)) == [M.],SUSBTR(Object.ControlSource,3),Object.ControlSource)
>>>>>DO CASE
>>>>>   CASE TYPE([m.]+lcControl) == [U] AND; && Not a memory variable
>>>>>        TYPE(lcControl)      #  [U]
>>>>>        REPLACE (lcControl) WITH WITH ltNewDateTime
>>>>>   CASE TYPE(lcControl)      == [C] && Memory variable
>>>>>        STORE ltNewDateTime TO (lcControl)
>>>>>OTHERWISE
>>>>>        *** something wrong
>>>>>ENDCASE
>>>>>
>>>>>(not tested for all occasions)
>>>>
>>>>I guess you ment to use VARTYPE() and not TYPE(), with TYPE() you must enclose the variable names with apostrophs. (I know that you know that!)
>>>
>>>PFMJI, but he's right - lcControl contains the name of the variable or field. Vartype(lcControl) would always return "C", while type(lcControl) returns the type of the expression it contains. Hence, this should read
>>>
>>>
>>>LOCAL lcControl
>>>lcControl = IIF(UPPER(LEFT(Object.ControlSource,2)) == [M.],SUSBTR(Object.ControlSource,3),Object.ControlSource)
>>>DO CASE
>>>   CASE TYPE([m.]+lcControl) == [U] AND; && Not a memory variable
>>>        TYPE(lcControl)      =  [T]    && a datetime field
>>>        REPLACE (lcControl) WITH WITH ltNewDateTime
>>>   CASE TYPE(lcControl)      == [T] && datetime Memory variable
>>>        STORE ltNewDateTime TO (lcControl)
>>>OTHERWISE
>>>        *** something wrong
>>>ENDCASE
>>>
>>Sorry, but you are wrong, and I am right! :-)
>>?vartype(sometextfield) && C
>>?vartype(somenumericfield) && N
>>?type(somenumericfield) && Raises an error
>>?type(somedatetimefield) && Raises an error
>>?type("somedatetimefield") && T
>>?vartype(somedatetimefield) && T
>>?vartype("somedatetimefield") && C because "somedatetimefield" is text
>
>Tore,
>Controlsource already have the quotes:)
>Cetin

A-ha, I never really analyzed that first line. Where is that hole in the ground when you really need it? :-)
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform