Страницы: 1
RSS
DAX сумма за последние 13 месяцев с учетом выбранного периода на срезе
 
Добрый день. Задача показать сумму продаж за последние 13 месяцев в зависимости от выбранного периода. Желтым отметил желаемый результат если бы сводная была подключена к срезам
Изменено: mechanix 85 - 27.08.2021 16:05:02
 
Не знаю, я правильно понял Вас или нет, но см мой вариант
Код
=
VAR SelectMonth =
    IF ( HASONEVALUE ( 'календарь'[Месяц] ); MAX ( 'календарь'[Месяц] ) )
VAR SelectYaer =
    IF ( HASONEVALUE ( 'календарь'[Год] ); MAX ( 'календарь'[Год] ) )
VAR DateFilter =
    FILTER (
        'календарь';
        'календарь'[Год] = SelectYaer
            && 'календарь'[Месяц] = SelectMonth
    )
VAR Period =
    CALCULATE ( MAX ( 'календарь'[Дата] ); DateFilter )
VAR result =
    CALCULATE (
        SUM ( [сумма] );
        DATESINPERIOD ( 'календарь'[Дата]; Period; -13; MONTH )
    )
RETURN
    result

файл здесь:
https://dropmefiles.com/Ql7wh
 
azma, мера просто выводит сумму за 13 месяцев, а нужно именно с разбивкой по годам и месяцам. тот же результат я получаю проще
Код
=CALCULATE(SUM([сумма]);FILTER(ALL('календарь');'календарь'[ГМ]>=MAX('календарь'[ГМ])-12&&'календарь'[ГМ]<=MAX('календарь'[ГМ])))


Нужно как-то избавиться от фильтра что ли
Изменено: mechanix 85 - 28.08.2021 09:02:45
 
mechanix 85, доброго дня. Не знаю, возможно ли
Цитата
mechanix 85 написал:
как-то избавиться от фильтра
поэтому другой вариант: создаем дубль справочник-календарь, не связываем его с фактами. Срезы выводим из справочника-дубля. Дальше дело техники, как отфильтровать таблицу.
Код
=var select_month = MAX('календарь2'[ГМ])
return
SUMX(
   SUMMARIZE(
      FILTER('календарь';'календарь'[порядк № месяца]<=select_month&&
         'календарь'[порядк № месяца]>select_month-13
         );
      'календарь'[порядк № месяца];
      "summa";
      SUM('факт'[сумма])
   );
   [summa]
)

П.С. summarize используется для Общего итога. Если итоги не нужны, можно просто IF использовать.
П.П.С. Было подленько с Вашей стороны сделать обычную сводную и ее срезы - я долго тупил, почему сводная PP не реагирует на срезы, когда меру писал))
 
Спасибо! в понедельник испробую. Кстати с дублем экспериментировал, но создавал связь с фактами

Цитата
Vladimir Chebykin написал:
П.П.С. Было подленько с Вашей стороны сделать обычную сводную и ее срезы - я долго тупил, почему сводная PP не реагирует на срезы, когда меру писал))
зато разминка для мозгов)))
Изменено: mechanix 85 - 29.08.2021 10:53:05
Страницы: 1
Наверх