Search

Inconsistent Syntax for column-references in DAXMD for Non-Aggregateable attributes by Gerhard Brueckl

Closed
as By Design Help for as By Design

3
0
Sign in
to vote
Type: Bug
ID: 775587
Opened: 1/2/2013 6:54:21 AM
Access Restriction: Public
0
Workaround(s)
0
User(s) can reproduce this bug
when referencing non-aggregateable attributes of a multidimensional model in DAXMD the syntax is different to attributes that have IsAggregateable=True

for IsAggregateable=True columns can be referenced using 'MyTable'[MyColumn.Key0]
EVALUATE
    SUMMARIZE(
        'Date',
        'Date'[Calendar Year.Key0],
        "Amt", 'Financial Reporting'[Amount])


for IsAggregateable=False columns can be referenced using 'MyTable'[MyColumn.UniqueName]
EVALUATE
    SUMMARIZE(
        All('Scenario'),
        'Scenario'[Scenario.UniqueName],
        "Amt", 'Financial Reporting'[Amount])

if i change the IsAggregateable-property of the scenario attribute to True, it works with .Key0
Details (expand)

Product Language

English

Version

private build - 11.0.9000.5

Category

Analysis Services

Operating System

Windows 7 Enterprise (SP1)

Operating System Language

German

Steps to Reproduce

Run the following querie:
EVALUATE
    SUMMARIZE(
        All('Scenario'),
        'Scenario'[Scenario.Key0],
        "Amt", 'Financial Reporting'[Amount])

Actual Results

Error: Query (2, 2) Die in der Funktion 'SUMMARIZE' angegebene Spalte 'Scenario.Key0' wurde in der Eingabetabelle nicht gefunden.

translated to english:
The function 'SUMMARIZE' used a column reference 'Scenario.Key0' that could not be found in the source table

Expected Results

the query should work as it does for attribtes where IsAggregateable=True like 'Date'[Calendar Year.Key0]

Platform

X64

Virtualization

 
File Attachments
0 attachments
Sign in to post a comment.
Posted by Microsoft on 1/20/2013 at 11:58 PM
Hello,

The metadata for tabular view of multidimensional models is exposed via CSDL-BI. In this CTP, calculated members are supported for non-aggregatable attributes. In order to make the key column unique we need to expose the UniqueName. hence this is the by design.

Regards
Siva
Posted by furmangg on 1/7/2013 at 8:02 AM
I think the underlying issue is that the Scenario dimension has a calculated member defined in the MDX script. Remove that and you can use the Key0 property again, I believe.

That said, I agree. Every attribute should have a .UniqueName property and every attribute should have a Key0 property (if the key is different than the name). I filed this as a DCR here:
https://connect.microsoft.com/SQLServer/feedback/details/775973/daxmd-dcr-every-attribute-should-have-uniquename-property
Sign in to post a workaround.