Standard Visual Basic Language Types

The following table describes simple C data types for use in Visual Basic applications whenever the VB API function refers to ESB_xx...x_T (except for user-defined types). Visual Basic does not allows the definition of new data types based on these data types.

Simple Data Types
Bitmask Data Types
Additional Data Types
Pointer Types
Miscellaneous Types
Boolean Flags

Simple Data Types

Data TypeEssbase Type
As String * 1ESB_CHAR_T
As IntegerESB_SHORT_T
As LongESB_LONG_T
As String * 1ESB_UCHAR_T
As IntegerESB_USHORT_T
As LongESB_ULONG_T
As LongESB_FLOAT_T
As LongESB_DOUBLE_T

Bitmask Data Types

The values for these data types consist of bit values that are combined to provide additional values when appropriate. For example, a caller needing WRITE access to a database must have the READ and WRITE privileges, thus ESB_ACCESS_WRITE equals the bit values for ESB_PRIV_READ and ESB__PRIV_WRITE. Similarly, ESB_OBJTYPE_BACKUP is a combination of ESB_OBJTYPE_ASCBACKUP and ESB_OBJTYPE_BINBACKUP.

Data TypeEssbase TypeDescription
typedef unsigned shortESB_ACCESS_TEssbase access level. Possible bit values are:
ESB_PRIV_NONE
ESB_PRIV_READ
ESB_PRIV_WRITE
ESB_PRIV_CALC
ESB_PRIV_DBLOAD
ESB_PRIV_DBDESIGN
ESB_PRIV_DBCREATE
ESB_PRIV_APPLOAD
ESB_PRIV_APPDESIGN
ESB_PRIV_APPCREATE
ESB_PRIV_USERCREATE
The possible combinations are:
ESB_ACCESS_NONE
ESB_ACCESS_READ
ESB_ACCESS_WRITE
ESB_ACCESS_CALC
ESB_ACCESS_DBDESIGN
ESB_ACCESS_DBCREATE
ESB_ACCESS_APPDESIGN
ESB_ACCESS_APPCREATE
ESB_ACCESS_FILTER (= ESB_PRIV_DBLOAD + ESB_PRIV_DBLOAD)
ESB_ACCESS_DBALL
ESB_ACCESS_APPALL
ESB_ACCESS_SUPER
typedef unsigned longESB_OBJTYPE_TFile object type. Single object types are:
ESB_OBJTYPE_NONE
ESB_OBJTYPE_OUTLINE
ESB_OBJTYPE_CALCSCRIPT
ESB_OBJTYPE_REPORT
ESB_OBJTYPE_RULES
ESB_OBJTYPE_ALIAS
ESB_OBJTYPE_STRUCTURE
ESB_OBJTYPE_ASCBACKUP
ESB_OBJTYPE_BINBACKUP
ESB_OBJTYPE_EXCEL
ESB_OBJTYPE_LOTUS2
ESB_OBJTYPE_LOTUS3
ESB_OBJTYPE_TEXT
ESB_OBJTYPE_PARTITION
ESB_OBJTYPE_LOTUS4
ESB_OBJTYPE_WIZARD
ESB_OBJTYPE_SELECTION
ESB_OBJTYPE_LRO

Combined object types are:
ESB_OBJTYPE_BACKUP
ESB_OBJTYPE_WORKSHEET
ESB_OBJTYPE_DATA
ESB_OBJTYPE_ALL

Additional Data Types

Data TypeEssbase TypeDescription
ByVal As String * 1ESB_BOOL_Tboolean
ByVal As String*ESB_STR_Tstring (array of char)
ByVal As Long*ESB_HINST_TAPI instance handle
ByVal As Long*ESB_HCTX_TAPI context handle
As AnyESB_VOID_Tvoid
ByVal As LongESB_SIZE_Tsize of a memory block
ByVal As IntegerESB_ACCESS_TEssbase access level
ByVal As LongESB_LOGINID_TEssbase login id

Pointer Types

Data TypeEssbase TypeDescription
As Integer*ESB_PSHORT_Tpointer to short
As Long*ESB_PLONG_Tpointer to long
As Integer*ESB_PUSHORT_Tpointer to unsigned short
As Long*ESB_PULONG_Tpointer to unsigned long
As Long*ESB_PFLOAT_Tpointer to float
As Long*ESB_PDOUBLE_Tpointer to double
As Any*ESB_PVOID_Tpointer to void
As Long*ESB_PSIZE_Tpointer to size of a memory block
As Long*ESB_PHINST_Tpointer to Essbase VB API instance handle
As Long*ESB_PHCTX_Tpointer to Essbase VB API context handle
As Integer*ESB_PACCESS_Tpointer to Essbase access level
As Long*ESB_PLOGINID_Tpointer to Essbase login id

Miscellaneous Types

Data TypeEssbase TypeDescription
ByVal As LongESB_STS_T return value from API functions
As LongSB_FUNC_Tpointer to function

Boolean Flags

Data TypeEssbase TypeDescription
chr$(1)ESB_TRUEBoolean TRUE to be used in data structures
chr$(0)ESB_FALSEBoolean FALSE to be used in data structures
1ESB_YESYES flag to be used in the list of the VB API function parameters
0ESB_NONO flag to be used in the list of the VB API function parameters
ByVal 0& NULLNull