MemberKeyColumn (Level Interface)

Analysis Services Programming

Analysis Services Programming

MemberKeyColumn (Level Interface)

The MemberKeyColumn property of the Level interface contains the name or expression of the column that contains member keys.

Applies To

clsAggregationLevel

clsCubeLevel

clsDatabaseLevel

clsPartitionLevel

Data Type

String

Access

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

Class type Access
clsDatabaseLevel R/W
clsCubeLevel R/W*
clsPartitionLevel R/W
clsAggregationLevel R/W

* Read-only for virtual cube levels.

Remarks

Some general considerations concerning the MemberKeyColumn property are as follows:

  • In relational terms, a key is a set of one or more columns that uniquely identify an entity. MemberKeyColumn is a key in this sense if the AreMemberKeysUnique property of a level is True. If AreMemberKeysUnique is False, MemberKeyColumn uniquely identifies a member within the context of a parent member only. For example, months are unique only within the context of a given year.

  • The MemberKeyColumn property controls the way the dimensions within a cube are processed. To improve cube-processing efficiency, when you create levels, make sure the lowest level has unique members.

  • Often, the fact table will contain member key values but not necessarily member names. The user, however, sees the member names rather than the keys.

  • MemberKeyColumn can contain any valid SQL expression that involves one or more columns from a single table. For example, either of the following is a valid expression that uses the Product.Prod_Year column:
    """Product"".""Prod_Year"""
    DatePart('q',"Product"."Prod_Year")
    

Note  If this property contains an SQL expression, the expression must be compatible with the SQL dialect supported by the OLE DB provider. Using an incompatible expression will result in an error when the cube is processed.

Example

Use the following code to set a level object MemberKeyColumn to the Customer_Number column in table Customer:

LevelObject.MemberKeyColumn = """Customer"".""Customer_Number"""

See Also

AreMemberKeysUnique

Level Interface

Member Names and Member Keys

MemberNameColumn