Соответствующие структуры из моего куба состоят в том, что у меня есть Иерархия с "Классом" и "Подклассом". У меня также есть Мера под названием «Значение», которую я пытаюсь получить.
Простой запрос может выглядеть так:
SELECT
NON EMPTY ([Measures].[Value]) ON COLUMNS,
NON EMPTY ([Some Dimension].[Class Hierarchy].[Class]) ON ROWS
FROM [MyCube]
И я, очевидно, могу читать подкласс, используя иерархию, возвращаемую в Adomd.
Моя проблема двоякая, во-первых, как бы я "сгладил" эту иерархию, чтобы получить и Class, и SubClass в качестве отдельных членов в CellSet? Это не работает:
SELECT
NON EMPTY ([Measures].[Value]) ON COLUMNS,
NON EMPTY (
[Some Dimension].[Class Hierarchy].[Class],
[Some Dimension].[Class Hierarchy].[Sub Class]
) ON ROWS
FROM [MyCube]
Иерархия классов используется более одного раза в функции Crossjoin
Второй вопрос, который мне на самом деле нужно сделать, - это отфильтровать вышеупомянутое на определенных классах, опять же, это не будет работать по той же причине, что и выше.
SELECT
NON EMPTY ([Measures].[Value]) ON COLUMNS,
NON EMPTY (
{[Some Dimension].[Class Hierarchy].[Class].&[ClassA],[Some Dimension].[Class Hierarchy].[Class].&[ClassB]},
[Some Dimension].[Class Hierarchy].[Sub Class]
) ON ROWS
FROM [MyCube]
Любая помощь высоко ценится. MDX сводит меня с ума!