Storages & Files Type constants
Wherever a value type is to be specified one of the constants in the table below can be used. Their values are the same as the VT_XXX constants used in Win32 API to specify the type of the VARIANT values.

You can use the numbers listed or you can use also the VBScript internally defined constants (if your application is in VBScript) or use the constants defined in the ASP include files supplied with ActiveX Pack1. We suggest using named constants in larger applications as it will make them more readable.

Value VBS constant Include file constant Type Supported by SFRecord, SFField, SFFilter Comments
0 vbEmpty cvtEmpty Empty value no* Used to indicate empty variables/values
1 vbNull NULL value no May be returned as indicator for NULL (invalid pointer).
2 vbInteger cvtInteger 2 byte signed integer yes
3 vbLong cvtLong 4 byte signed integer yes
4 vbSingle cvtFloat 4 byte floating point yes
5 vbDouble cvtDouble 8 byte floating point yes
6 vbCurrency cvtCurrency Currency (8 byte integer) yes Currency is in fact 64 bit signed integer treated as fixed point value (2 digits after the dot)
7 vbDate cvtDate OLE Date (8 byte) yes OLE date is recorded in 8 byte floating point numbers physically.
8 vbString cvtString String 2 x n bytes + 2 yes Strings require size to be specified when used as fields or read/written directly through SFFilter.
9 vbObject Object pointer no Indicates that an object pointer is contained. By itself it caries no information what kind of value can be extracted from the object.
10 vbError Error value no Used to hold error values
11 vbBoolean cvtBoolean 2 byte Boolean yes Booleans can be used in conditional expressions directly (in all the scripting languages)
12 vbVariant Variant (can be resolved  further) no Used to indicate that a VARIANT value contains another VARIANT value (a kind of recursion). Therefore it does not indicate particular type and cannot be used in fields/records.
13 vbDataObject Data object no Special value indicating COM data transfer object. 
14 vbDecimal Decimal sequence of bytes no Special type (not supported in records as it has no fixed size defined)
16 cvtSByte Signed byte yes Signed byte
17 vbByte cvtByte Unsigned byte yes Unsigned byte (usually this type represents the minimal piece of binary data)
18 cvtUInteger Unsigned 2 byte integer yes
19 cvtULong Unsigned 4 byte integer yes
8192 vbArray Array flag (used in combination with others) no** Combined using a bit wise OR operation with other types it designates an array of that type. The arrays in the scripting languages (if they are supported over the standard COM features - VBScript for example) are arrays of variants by default.
* - Supported as "non-set" meaning. Empty values cannot be written/read.
* - Arrays cannot be set as fields in this version of the library.
newObjects Copyright 2001-2006 newObjects [ ]