Мы создаем куб 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 |
+----------+----------+
Любой совет будет высоко оценен.