Защо изричното позоваване на йерархия премахва грешката за различни измерения

Получавам SSAS грешка „Два набора, посочени във функцията, имат различна размерност“.

Всъщност използвам същите измерения, същата йерархия (имплицитно), в единия набор използвам члена „Всички“, в другия набор използвам листови членове. Ако променя идентификаторите на членовете, за да се позовават изрично на (единичната) йерархия, тогава грешката изчезва.

Защо така?

Ето пример за това как получавам грешката:

{Crossjoin( [Measures].[Measure1], [Event].[Category1] ),
Crossjoin( [Measures].[Measure2], [Event].[All] )}

И ето основно как се отървавам от него (добавяне на изрична йерархична реф.):

{Crossjoin( [Measures].[Measure1], [Event].[ByCategory].[Category1] ),
Crossjoin( [Measures].[Measure2], [Event].[ByCategory].[All] )}

Всяко обяснение за корекция би ми помогнало да разбера по-добре синтаксиса на mdx като цяло.

Предварително благодаря много за помощта.


person JM Hicks    schedule 19.04.2013    source източник


Отговори (2)


Не съм специалист по SSAS, но за да сте сигурни, че и двамата членове принадлежат към една и съща йерархия, можете да опитате следното:

with
  member x as [Event].[Category1].dimension.name
  member y as [Event].[All].dimension.name
select { x , y } on 0 from [your-cube]
person Marc Polizzi    schedule 19.04.2013
comment
благодаря за предложението. заявката връща (x, y), (ByCategory, ByCategory). Изглежда не вдига никакъв флаг. - person JM Hicks; 22.04.2013

Можете ли да покажете останалата част от заявката си?

Опитах се да направя нещо подобно, но работи добре..

select {crossjoin( [Measures].[Internet Sales Amount],
[Product].[Bikes]),
crossjoin([Measures].[Reseller Sales Amount],
[Product].[All])} on columns
from cube

резултат

person daniel_aren    schedule 26.04.2013
comment
съжалявам Изтрих и изградих отново своя куб от преработен проект. Сега изглежда работи, но по някаква причина не тогава. Този отговор добавя нещо, но вече нямам оригиналния куб, за да възпроизведа грешката в отговор на вашия въпрос. - person JM Hicks; 01.05.2013