Можно ли получить значение показателя из таблицы фактов для родительского члена иерархии, игнорируя дочерние значения? - PullRequest
1 голос
/ 28 марта 2019

Мы создаем куб Financial OLAP с иерархией «родитель-потомок» для финансовых объектов.Таблица фактов содержит показатели как для родительских, так и для дочерних объектов, и значение родителя не равно сумме значений его дочерних элементов.Например, в таблице фактов у нас есть:

+----------+----------+
| EntityID | NetSales |
+----------+----------+
| Europe   |    15000 |
| Spain    |     3500 |
| France   |     8000 |
| Italy    |     5000 |
+----------+----------+

Испания, Франция и Италия - дети Европы, но общий чистый объем продаж в Европе не является общим для Испании + Франции + Италии из-за исключений, сделанных после продажи.между этими детьми (от Испании до Франции и т. д.).

Нам необходимо создать измерение в кубе, которое будет отображать правильную общую сумму родительского объекта на основе его значения в таблице фактов, а не агрегацииего дочерние элементы.

Можно ли настроить модель SSAS или добавить собственный код MDX, чтобы "перезаписать" значение родительского объекта на значение фактов для этого объекта и не учитывать общее количество его дочерних элементов?

Примечание: в иерархии есть 6 уровней, каждый родительский уровень должен принимать свое собственное значение факта для меры, а не общее количество его дочерних элементов.

Ожидаемый результат в кубе будет:

+----------+----------+
| Entity   | NetSales |
+----------+----------+
| Europe   |    15000 |
|   Spain  |     3500 |
|   France |     8000 |
|   Italy  |     5000 |
+----------+----------+

Фактический результат в кубе с нормальной агрегацией:

+----------+----------+
| Entity   | NetSales |
+----------+----------+
| Europe   |    16500 |
|   Spain  |     3500 |
|   France |     8000 |
|   Italy  |     5000 |
+----------+----------+

Любой совет будет высоко оценен.

...