Расчет итоговой прибыли с учетом типа клиента
Рассчитывать прибыль будем как для физических лиц, у которых имеется скидка, указанная в столбце discountamount, так и для юридических лиц, у которых также есть скидка, указанная в столбце bonus.
Используемые данные:
Таблица фактов | Таблица измерений |
|---|---|
fact
| dimcustomer
|
Для расчета прибыли для физически лиц, создадим меру Прибыль для физ лиц и введем следующую формулу:
Прибыль для физ лиц =
CALCULATE (
SUMX ( fact, fact[salesamount] - fact[discountamount] ),
FILTER ( dimcustomer, dimcustomer[customertype] IN { "Person" } )
)где:
fact[discountamount]– скидка, которая вычитается из общей суммы продажfact[salesamount];функция
FILTERфильтрует измеренияdimcustomerпо значению столбцаcustomertype, в данном случае равномуPerson- т.е. фильтрует только физических лиц.
Таким образом, формула рассчитывает сумму прибыли для всех фактов, относящихся к физическим лицам.
Аналогичным образом создается мера Прибыль для юр лиц с тем отличием, что вместо fact[discountamount] мы будем использовать fact[bomus], а вместо IN {"Person"} будем использовать IN {"Company"}:
Прибыль для юр лиц =
CALCULATE (
SUMX ( fact, fact[salesamount] - fact[bonus] ),
FILTER ( dimcustomer, dimcustomer[customertype] IN { "Company" } )
)В результате мы можем, например, создать следующую диаграмму с использованием созданных мер:
При сложении двух формул, мы получим прибыль с учетом типа клиента:
CALCULATE (
SUMX (fact, fact[salesamount] - fact[discountamount]),
FILTER (dimcustomer, dimcustomer[customertype] IN {"Person"} )
)
+ CALCULATE (
SUMX (fact, fact[salesamount] - fact[bonus]),
FILTER (dimcustomer, dimcustomer[customertype] IN {"Company"} )
)Смотрите также
Нужна дополнительная помощь?