Расчет выручки в разбивке по магазинам и по продажам со скидками

Расчет выручки в разбивке по магазинам и по продажам со скидками

В данном примере используется модель данных, описанная на странице Поддерживаемые функции DAX.

  1. Сначала мы рассчитаем выручку по формуле:
    Количество товара в заказе умножить на цену за единицу товара, минус скидка в заказе. Для построчного вычисления будем использовать функцию SUMX:

    SUMX ( factonlinesales, factonlinesales[unitprice] * factonlinesales[salesquantity] - factonlinesales[discountamount] )

    где

    • SUMX – проходит по каждой строке таблицы factonlinesales, вычисляет выражение для каждой строки, а затем суммирует результаты.

    • factonlinesales – таблица фактов, содержащая данные о каждой онлайн-продаже.

    • factonlinesales[unitprice] * factonlinesales[salesquantity] – вычисляет общую стоимость продажи для каждой строки, умножая цену единицы товара на количество проданных единиц.

    • factonlinesales[discountamount] – отнимает сумму скидки от общей стоимости продажи.
      Таким образом, для каждой строки в таблице factonlinesales формула вычисляет прибыль от продажи, умножая цену на количество и затем вычитая скидку. Затем она суммирует все полученные значения, чтобы получить общую прибыль от всех онлайн-продаж с учётом скидок.

      updated-example.png

  2. Для визуализации используем линейчатую диаграмму. На нее мы выведем нашу меру в разбивке по магазинам:

    ex1b.png

     

  3. Для того, чтобы отобразить данные по продажам, по которым были акции, используем виджет Фильтр:

    ex1c.png

     

  4. Если есть необходимость рассчитать сразу продажи со скидками, без использования виджета «Фильтр», можно воспользоваться следующей формулой:

    CALCULATE ( SUMX ( factonlinesales, factonlinesales[unitprice] * factonlinesales[salesquantity] - factonlinesales[discountamount] ), FILTER ( 'dimpromotion', dimpromotion[promotioncategory] IN { "Store" } ) )

    где

    • SUMX – выполняет вычисления для каждой строки в таблице factonlinesales и затем суммирует результаты.

    • factonlinesales[unitprice] * factonlinesales[salesquantity] - factonlinesales[discountamount] – вычисляет итоговую сумму для каждой строки в таблице factonlinesales как произведение цены за единицу (unitprice) и количества проданных единиц (salesquantity), из которого затем вычитается сумма скидки (discountamount).

    • CALCULATE – изменяет контекст фильтрации для вычислений, позволяя применить или изменить фильтры для выражения.

    • FILTER – применяет фильтрацию к таблице dimpromotion, оставляя только те строки, где значение в столбце promotioncategory равно Store. Таким образом, общая цель этой формулы – вычислить сумму продаж с учетом скидок для всех акций, относящихся к категории "Store".

    ex1d.png


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

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

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

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