Grouping (Level Interface)

Analysis Services Programming

Analysis Services Programming

Grouping (Level Interface)

The Grouping property of the Level interface determines whether members in the level are used individually or are part of groups.

Applies To

clsAggregationLevel

clsCubeLevel

clsDatabaseLevel

clsPartitionLevel

Data Type

GroupingValues

Access

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

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

You can group level members to segment and organize the data contained in a cube. For example, a department store chain may want to use a cube to monitor customer purchasing trends. Querying for data on the customers dimension without grouping might return long lists of individual purchase events that are impractical to view or analyze. Grouping level members based on gender, age group, credit history, or payment method returns more manageable and meaningful data. When such natural groupings are not available, this property can still be used to artificially impose organization on the data.

Member groups allow you to circumvent the maximum limit of 64,000 members per level. When members are grouped, queries return smaller segments of data. Each level can contain 64,000 groups, and each group can contain 64,000 members.

This feature provides support for very large levels. A level can be added (visible or invisible) that provides grouping for a large level. If you create a duplicate of a large level and set the Grouping property to groupingAutomatic, you can ignore the 64,000 member limit.

When this property is set to groupingAutomatic, the Analysis server automatically creates and names the member groups each time the dimension is processed. The number and names of the groups can change as the data in the cube changes.

If Grouping is set to groupingAutomatic, Decision Support Objects (DSO) changes the following properties for the level:

  • The AreMemberNamesUnique property is read-only and set to False.

  • The AreMemberKeysUnique property is read-only and set to False.

  • The Ordering property is read-only and set to orderName.

You cannot set Grouping to groupingAutomatic for a level when any of the following conditions occur:

  • The IsChanging property for the parent dimension is False.

  • The level is the first or last within the dimension.

  • The Grouping property of an adjacent level in the dimension is set to groupingAutomatic.

  • The StorageMode property for the parent dimension is storeasROLAP. Member groups are not supported for ROLAP dimensions.

See Also

AreMemberKeysUnique

AreMemberNamesUnique

IsChanging

Level Interface

Member Groups

Ordering