Share via


ColumnType (Level Interface)

Note

  This feature will be removed in the next version of Microsoft SQL Server. Do not use this feature in new development work, and modify applications that currently use this feature as soon as possible.

The ColumnType property of the Level interface contains the data type of the level member key column.

Applies To:clsAggregationLevel, clsCubeLevel, clsDatabaseLevel, clsPartitionLevel

Data Type

ADODB.DataTypeEnum

The ColumnType property is set to one of the following enumerated values.

Column type

Value

Big integer

adBigInt

Binary

adBinary

Boolean

adBoolean

String (Unicode)

adBSTR

Char

adChar

Currency

adCurrency

Date

adDate

Date

adDBDate

Time

adDBTime

Timestamp

adDBTimeStamp

Decimal

adDecimal

Double

adDouble

Integer

adInteger

Numeric

adNumeric

Single

adSingle

Small integer

adSmallInt

Tiny integer

adTinyInt

Unsigned big integer

adUnsignedBigInt

Unsigned integer

adUnsignedInt

Unsigned small integer

adUnsignedSmallInt

Unsigned tiny integer

adUnsignedTinyInt

Text (Unicode)

adWChar

Text

adChar

Access

Access depends on the value of the ClassType property of the object.

Class type

Access

clsDatabaseLevel

R/W*

clsCubeLevel

R/W**

clsPartitionLevel

R

clsAggregationLevel

R

* Read-only for levels with automatic grouping (a level whose Grouping property is groupingAutomatic).

** Read-only for virtual cube levels and cube levels of a shared dimension (a parent Dimension object whose IsShared property is True).

Remarks

The ColumnType property determines how the server will bind the member key column. This property must be set to a compatible type or processing the dimension or cube will result in an error.

The ColumnSize property always returns adInteger for levels with a SubClassType of sbclsRegular, sbclsParentChild, sbclsLinked, or sbclsMining that use automatic grouping (that is, the Grouping property is groupingAutomatic). Additionally, this property always returns adVarChar for levels with a SubClassType of sbclsVirtual.

Example

Use the following code to specify an integer ColumnType:

' Assume an object (dsoDim) of ClassType clsDimension exists
Set dsoLev = dsoDim.Levels.AddNew("Store Id")
dsoLev.MemberKeyColumn = """store"".""store_number"""
dsoLev.ColumnSize = 4
dsoLev.ColumnType = adInteger
dsoLev.EstimatedSize = 24