← К списку задач
·Средний·~10 мин

CALCULATE + FILTER: выручка только по Алматы

Сценарий

В Power BI модели есть таблица orders с полем city (город покупателя) и полем amount (сумма заказа).

Отчёт уже содержит меру Выручка = SUM(orders[amount]), которая суммирует все заказы. Но тебе нужна отдельная мера, которая всегда показывает выручку только по городу Алматы — независимо от того, что выбрано в срезах.

Задача

Напиши DAX-формулу для меры «Выручка Алматы» используя функцию CALCULATE с фильтром.

Ожидаемый ответ

Вариант 1 — через FILTER:

Выручка Алматы =
CALCULATE(
    SUM(orders[amount]),
    FILTER(orders, orders[city] = "Алматы")
)

Вариант 2 — краткий синтаксис (рекомендуется):

Выручка Алматы =
CALCULATE(
    SUM(orders[amount]),
    orders[city] = "Алматы"
)

Как работает CALCULATE:

  • Первый аргумент — выражение для вычисления (наша мера Выручка)
  • Остальные аргументы — фильтры, которые модифицируют контекст вычисления
  • orders[city] = "Алматы" заменяет любой существующий фильтр по городу на «только Алматы»

Даже если пользователь выберет в срезе «Астана» — эта мера продолжит показывать выручку Алматы.

Эта задача — на изучение. Sandbox для появится в следующей фазе.