Можно определить другую группу мер в кубе с помощью dimGoodsType в качестве таблицы источника данных и столбца «Вес» в качестве меры и, как обычно, связать ее с измерением «Тип товара». Затем на вкладке свойств меры Price
вы можете установить Measure Expression
как [Measures].[Price] * [Measures].[Weight]
. Этот расчет будет выполнен до агрегирования. Основная проблема заключается в том, что если вы определите прямой расчет как Price * Weight
, SSAS сначала суммирует все веса и суммирует все цены в контексте текущей ячейки, и только после этого он будет выполнять умножение, но вы всегда хотите выполнитьумножение на уровне листьев и суммировать оттуда.
Другим решением может быть создание view_factSoldItems
, где вы добавите вычисляемый столбец Weighted Price
как price * weight
, а затем добавите эту меру в куб.