powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / MSAS 2k, MDX - работа с иерархическим измерением
15 сообщений из 15, страница 1 из 1
MSAS 2k, MDX - работа с иерархическим измерением
    #33217358
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите пожалуйста, возможно-ли сконструировать MDX запрос таким образом, чтобы показывать членов иерархического измерения, но не показывать строки с данными, которые к ним относятся.

Пример: для элементов на уровне 2 строка с данными отсутствует.
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33217546
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это у Вас parent-child с Members with Data = non-leaf data visible?

Если клиент типа эксель, то там есть свойство Subtotals=none
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33217681
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
к сожалению это не parent-child, и Members With Data у него нет.
что делать в таком случае?
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33217832
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShIgorПодскажите пожалуйста, возможно-ли сконструировать MDX запрос таким образом, чтобы показывать членов иерархического измерения, но не показывать строки с данными, которые к ним относятся.

Пример: для элементов на уровне 2 строка с данными отсутствует.

Если я вас правильно понял, то вам нужен CellSet c одной Axis и без Cells?
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33217929
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 backfire
Нет, просто я привел упрощенный пример, в колонках у меня меры.
Мне надо исключить данные с промежуточных уровней, оставив при этом сами элементы уровней (некая группировка). Этого можно добиться если все уровни сделать отдельными измерениями. Но т.к. промежуточных уровней у меня много и разреженность данных слишком велика то CJ с этим не справляется, у NECJ свои заморочки (обсуждались уже много раз, и вариант к которому Вы часто склоняете не подходит к моей задаче). Конечно, я могу написать программу, которая пробежит по полученному результату и откинет те строки, которые соответствуют промежуточным уровням, оставив только то, что надо. Просто я надеялся, что в MDX это тоже возможно.
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33218113
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а приведите запрос, которым вы формируете

(сдаётся мне что вместо Dim.Members надо просто напиcать Dim.Lev.Members)
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33218119
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
приведите запрос, которым вы формируете отчёт, из которого вы хотите удалить "строки с данными, которые к ним относятся"
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33218547
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShIgor(обсуждались уже много раз, и вариант к которому Вы часто склоняете не подходит к моей задаче).

Рад был бы обсудить: в чем и в на какой задаче не подходит мой вариант?
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33219013
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Dmitry Biryukov
да, собственно и запроса как такового еще пока нет

вот этот запрос возвращает всю иерархию уровней:
Код: plaintext
1.
2.
SELECT {[Measures].[measure1], [Measures].[measure2]} ON COLUMNS,
NON EMPTY {DESCENDANTS([a_Dim].[a_Dim_All], [a_Dim].[Level1], AFTER)} ON ROWS
FROM [DataCube]

Если скомбинировать
Код: plaintext
{[a_Dim].[Level1].Members, [a_Dim].[Level2].Members, [a_Dim].[Level3].Members}

то частично получится то, что нужно. Сначала вылезут все строки относящиеся к членам Level1, затем строки относящиеся к Level2, но перед ними будут стоять наименования из Level1, и в самом конце строки из Level3 с наименованиями из Level1 и Level2, т.е. как раз то, что надо, но стоит только попытаться любым способом избавиться от 1 или 2 уровня (например через EXCEPT), то строки этих уровней пропадают и из строк Level3 исчезают наименования из этих уровней...
большего добиться пока не удалось...

2 backfire
это совсем другая тема (аналог DC с произвольной выборкой) и заново ее поднимать сейчас нет смысла.
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33219058
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в догонку...
в качестве примера, вот что получится если скомбинировать ...LevelN.Members
и красным обведено то, что примерно надо получить
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33219322
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
предлагаю попробовать несколько способов
1. [a_Dim].[Level1].Members*[a_Dim].[Level2].Members*[a_Dim].[Level3].Members

2. NECJ([a_Dim].[Level1].Members,[a_Dim].[Level2].Members,[a_Dim].[Level3].Members)

3. NON EMPTY CrossJoin([a_Dim].[Level1].Members,[a_Dim].[Level2].Members,[a_Dim].[Level3].Members)

4. что-то на базе Generate
Generate([a_Dim].[Level1].Members as set1, set1.Current.Children)
или
Generate([a_Dim].[Level1].Members as set2, Generate(set2.Current.Children as set3, set3.Children))

5. Сделать СМ, который конкатенирует полный путь листьевого элемента. что-то типа Generate(hierarchize([a_Dim].Ascendants) as set4, set4.current,",")
а потом строить запрос, где в строках - только элементы нижнего уровня и указанный
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33219324
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
исправление
5. Generate(hierarchize([a_Dim].Ascendants) as set4, set4.current .name ,",")
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33219818
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ох, как много вариантов, но, как и следовало ожидать - результат нулевой:

1. и 3. Query failed: Formula error - duplicate dimensions across (independent) axes - in a <set> base object a_Dim
2. Молча отрабатывает выдавая пустой результат (видимо внутри та же ошибка)
4. Generate в любом варианте вложенности возвращает только элементы последнего указанного уровня.
5. CM с Generate возвращает строку... а это не то, что хотелось бы.

Пришлось все-таки наделать виртуальных измерений, соответствующих каждому уровню в иерархии и комбинацией Hierarchize(Union(NECJ(...), NECJ(...))) добился-таки нужного расположения элементов. Как понял - для решения такого рода задачи вообще нет смысла создавать иерархическое измерение.

Спасибо всем.
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33219977
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShIgorОх, как много вариантов, но, как и следовало ожидать - результат нулевой:

Пришлось все-таки наделать виртуальных измерений, соответствующих каждому уровню в иерархии и комбинацией Hierarchize(Union(NECJ(...), NECJ(...))) добился-таки нужного расположения элементов. Как понял - для решения такого рода задачи вообще нет смысла создавать иерархическое измерение.



Вы говорили, что мой вариант вам не катит.
А в итоге к чему вы пришли?
Как раз к нему и пришли
...
Рейтинг: 0 / 0
MSAS 2k, MDX - работа с иерархическим измерением
    #33220090
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
backfireВы говорили, что мой вариант вам не катит.
А в итоге к чему вы пришли?
Как раз к нему и пришли
Только ради получения приемлемой скорости получения результатов.
Да к тому же от пары мер пришлось отказаться, заставив пользователей смотреть их в других отчетах.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / MSAS 2k, MDX - работа с иерархическим измерением
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]