Перейти к концу метаданных
Переход к началу метаданных

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

Версия 1 Следующий »

Рассчитывать прибыль будем как для физических лиц, у которых имеется скидка, указанная в столбце discountamount, так и для юридических лиц, у которых также есть скидка, указанная в столбце bonus.

Используемые данные:

Таблица фактов

Таблица измерений

fact
Используемые столбцы:

  • salesamount – сумма, которую заплатил клиент с учетом количества;

  • discountamount – сумма скидки;

  • bonus – бонус (отдельный для каждого клиента).

dimcustomer
Используемый столбец:

  • customertype – тип клиента (“Person“ – физическое лицо, “Company“ – юридическое).

Для расчета прибыли для физически лиц, создадим меру Прибыль для физ лиц и введем следующую формулу:

Прибыль для физ лиц =
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" } )
)

В результате мы можем, например, создать следующую диаграмму с использованием созданных мер:

diagram(1)(1)(1).png

При сложении двух формул, мы получим прибыль с учетом типа клиента:

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"} )
)

Смотрите также

📄 Поддерживаемые функции DAX
📄 Создание мер

Нужна дополнительная помощь?

Свяжитесь с технической поддержкой.

  • Нет меток