Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Evaluates an expression and returns the data type of its contents.
TYPE(cExpression)
Return Values
Character
Parameters
- cExpression
Specifies the expression to be evaluated, which can be a variable, field, memo field, or any other expression. The expression must be passed as a character string; place quotation marks around the names of memory variables, fields, and so on. If you do not place quotation marks around the expression, the TYPE( ) function evaluates the contents of the string. If the contents cannot be evaluated as a valid FoxPro expression, TYPE() returns "U" (undefined expression).
Remarks
The following table lists the character values TYPE( ) returns and their corresponding data types:
Data type | Character returned |
---|---|
Character | C |
Numeric (also float, double, and integer) | N |
Currency | Y |
Date | D |
DateTime | T |
Logical | L |
Memo | M |
Object | O |
General | G |
Screen (created with SAVE SCREEN) | S |
Undefined type of expression | U |
If you pass an array as a parameter to TYPE( ), then the data type returned corresponds to the first element in the array. If you want to check the data type for a specific array element, then you must specify that element in the parameter. For example:
? TYPE("myarray[3]")
You can also use the TYPE( ) function to check if a memory variable is an array. For example:
? TYPE("myarray[1]")#"U"
Example
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer && Opens Customer table
nTest = 1.01
cTest = "String"
CLEAR
? TYPE('customer.contact') && Displays C
? TYPE('(12 * 3) + 4') && Displays N
? TYPE('DATE( )') && Displays D
? TYPE('.F. OR .T.') && Displays L
? TYPE('ANSWER=42') && Displays U
? TYPE('$19.99') && Displays Y
? TYPE('nTest') && Displays N
? TYPE('cTest') && Displays C