BUG: You Receive an Error Message If the Member Caption Is Different from the Member Name (322677)



The information in this article applies to:

  • Microsoft SQL Server 2000 Analysis Services

This article was previously published under Q322677
BUG #: Plato7x 12838

SYMPTOMS

When you run a Multidimensional Expressions (MDX) query that references dimension properties, you receive an error message that is similar to the following one:
Unable to open cellset
Dimension property 'store.[store name].[store manager]' was not found

CAUSE

This problem occurs because the property is being referenced by the name of the property instead of the caption of the property.

WORKAROUND

To work around this problem, when you run MDX queries that are expected to return member properties, reference the member properties by using the caption of the property.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

The Backus-Naur form (BNF) specification for the SELECT (OLAP) statement in SQL Server Books Online indicates the following syntax for a SELECT statement:
BNF for SELECT (OLAP)<select_statement> ::= [WITH <single_formula_specification>
[<single_formula_specification>...]]
SELECT [<axis_specification> [, <axis_specification>...]]
FROM <cube_specification>
[WHERE <slicer_specification>]
[<cell_props>]

<single_formula_specification> ::= <member_specification> 
| <set_specification> 
| <cache_specification> 

<member_specification> ::= MEMBER <parent_of_member>.<member_name> AS '<value_expression>'
[, <solve_order_specification>]
[, <member_property_definition>...]

<solve_order_specification> ::= SOLVE_ORDER = <unsigned_integer>
<member_property_definition> ::= <member_property_name> = <value_expression>
<set_specification> ::= SET <set_name> AS '<set>'
<cache_specification> ::= CACHE AS '(<set> [,<set>])'
<axis_specification> ::= [NON EMPTY] <set> [<dim_props>] ON <axis_name>
<set> ::= member:member
| <set_value_expression>
| {<set> | <tuple> [,<set> | <tuple>...]}
| (<set>)

<tuple> ::= <member> | (<member>[,<member>...]) | <tuple_value_expression>
<axis_name> ::= COLUMNS | ROWS | PAGES | SECTIONS | CHAPTERS | AXIS(<index>)
<dim_props> ::= [DIMENSION] PROPERTIES <property> [, <property>...]
<property> ::= <dimension_property> | <level_property> | <member_property>
<dimension_property> ::= <dimension_name>.ID | <dimension_name>.KEY | <dimension_name>.NAME

<level_property> ::= [<dimension_name>.]<level_name>.ID
| [<dimension_name>.]<level_name>.KEY
| [<dimension_name>.]<level_name>.NAME

<member_property> ::= <level_name>.<member_property_name> 
<cube_specification> ::= <cube_name>
<slicer_specification> ::= <tuple>
<cell_props> ::= [CELL] PROPERTIES <cell_property> [, <cell_property>...]

<cell_property> ::= <mandatory_cell_property>
| <optional_cell_property>
| <provider_specific_cell_property>

<mandatory_cell_property> ::= CELL_ORDINAL | VALUE | FORMATTED_VALUE
<optional_cell_property> ::= FORMAT_STRING | FORE_COLOR | BACK_COLOR | FONT_NAME | FONT_SIZE | FONT_FLAGS
<provider_specific_cell_property> ::= <identifier>
				
The following BNF for SELECT (OLAP) more accurately indicates the syntax for an MDX SELECT statement:
BNF for SELECT (OLAP)<select_statement> ::= [WITH <single_formula_specification>
[<single_formula_specification>...]]
SELECT [<axis_specification> [, <axis_specification>...]]
FROM <cube_specification>
[WHERE <slicer_specification>]
[<cell_props>]

<single_formula_specification> ::= <member_specification> 
| <set_specification> 
| <cache_specification> 

<member_specification> ::= MEMBER <parent_of_member>.<member_name> AS '<value_expression>'
[, <solve_order_specification>]
[, <member_property_definition>...]

<solve_order_specification> ::= SOLVE_ORDER = <unsigned_integer>
<member_property_definition> ::= <member_property_name> = <value_expression>
<set_specification> ::= SET <set_name> AS '<set>'
<cache_specification> ::= CACHE AS '(<set> [,<set>])'
<axis_specification> ::= [NON EMPTY] <set> [<dim_props>] ON <axis_name>
<set> ::= member:member
| <set_value_expression>
| {<set> | <tuple> [,<set> | <tuple>...]}
| (<set>)

<tuple> ::= <member> | (<member>[,<member>...]) | <tuple_value_expression>
<axis_name> ::= COLUMNS | ROWS | PAGES | SECTIONS | CHAPTERS | AXIS(<index>)
<dim_props> ::= [DIMENSION] PROPERTIES <property> [, <property>...]
<property> ::= <dimension_property> | <level_property> | <member_property>
<dimension_property> ::= <dimension_name>.ID | <dimension_name>.KEY | <dimension_name>.NAME

<level_property> ::= [<dimension_name>.]<level_name>.ID
| [<dimension_name>.]<level_name>.KEY
| [<dimension_name>.]<level_name>.NAME

<member_property> ::= <level_name>.<member_property_caption> 
<cube_specification> ::= <cube_name>
<slicer_specification> ::= <tuple>
<cell_props> ::= [CELL] PROPERTIES <cell_property> [, <cell_property>...]

<cell_property> ::= <mandatory_cell_property>
| <optional_cell_property>
| <provider_specific_cell_property>

<mandatory_cell_property> ::= CELL_ORDINAL | VALUE | FORMATTED_VALUE
<optional_cell_property> ::= FORMAT_STRING | FORE_COLOR | BACK_COLOR | FONT_NAME | FONT_SIZE | FONT_FLAGS
<provider_specific_cell_property> ::= <identifier>
				

Steps to Reproduce the Problem

  1. Edit the Store dimension in FoodMart 2000.
  2. Add a new member property to the Store Name level. Use the Store_Manager column from the relational source.
  3. Set the name of the new member to [Store Manager 1].
  4. Set the caption of the new member to [Store Manager 5].
  5. Fully reprocess the Store dimension.
  6. Run a full process of the Sales cube.
  7. Run the MDX Sample Application, connect to the FoodMart 2000 database, and then run the following MDX query:
    SELECT Store.[Store Name].Members Dimension Properties Store.[Store Name].[Store Manager 5] on 0 From Sales
    						
    A result set is returned.
  8. Run the following MDX query:
    SELECT Store.[Store Name].Members Dimension Properties Store.[Store Name].[Store Manager 1] on 0 From Sales
    						
    The following error message is returned:
    Unable to open cellset
    Dimension property 'Store.[Store Name].[Store Manager 1]' was not found

Modification Type:MajorLast Reviewed:6/25/2004
Keywords:kbbug kbnofix KB322677