Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
How to check the type of a parameter
Message
From
18/05/2001 23:49:46
Fausto Garcia
Independent Developer
Lima, Peru
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
00508539
Message ID:
00509048
Views:
23
Shane,

I've got confused. I tested the code with the original examples you gave and got it working apparently well ...


>Fausto,
>
>This does not work if uMyVar equals "3", ".T." or "{^2001/01/01}" then TYPE("&uMyVar") or TYPE(uMyVar) returns N, L or D instead of U. This is the problem that I have. It appears that TYPE tries to evaluate uMyVar then returns the type of the result.
>
>Any ideas,
>
>Shane
>
>
>
>>Hi Shane,
>>
>>Here is some code that does what you need:
>>
>>
>>PROCEDURE cMyFunc
>>PARAMETERS uMyVar
>>LOCAL cReturnValue
>>IF TYPE("uMyVar")="C" THEN
>>   IF TYPE("&uMyVar")="U" THEN
>>      *Means that the parameter came with a string
>>      *which has an <b>U</b>ndefined "inner" value,
>>      *so we consider it a simple string ("C")
>>      cReturnValue="C"
>>   ELSE
>>      *Here there is inner value!
>>      cReturnValue = TYPE("&uMyVar")
>>   ENDIF
>>ELSE
>>   cReturnValue = TYPE("uMyVar")
>>ENDIF
>>RETURN cReturnValue
>>ENDPROC
>>
>>
>>Hope this helps to solve your problem!
>>
>>
>>>I need a procedure that will accept one parameter. This parameter may contain the value I want or it may contain the name of a variable that contains the value that I want. Here are some examples.
>>>
>>>PROCEDURE cMyFunc( uMyVar )
>>>... What code goes here?
>>>RETURN cReturnValue
>>>ENDPROC
>>>
>>>x = "test"
>>>cMyFunc( x ) should return 'C'
>>>
>>>x = 5
>>>cMyFunc( x ) should return 'N'
>>>
>>>x = "5"
>>>cMyFunc( x ) should return 'C'
>>>
>>>x = .T.
>>>y = "x"
>>>cMyFunc( y ) should return 'L'
>>>
>>>How do I figure out if a character parameter contains the name of another variable?
>>>
>>>Any ideas?
Solo se que nada se

Fausto J. Garcia Pino - MCSD.NET
.NET, Oracle, Tronador & Fondismo!
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform