Страницы: 1
RSS
Фильтр для меры Сумма по столбцу DAX
 
У меня есть таблица
Склад ГодМесяц Месяц период ОстаткиВид Стиль Сезон Продажи
1 2018 Январь Янв. 1пол. 2 Одежда Кежуал Лето 1
1 2018Январь Янв. 2пол. 3 Одежда Кежуал Лето 2
1 2018 Февраль Фев. 1пол. 4 Одежда Кежуал Лето 1
1 2018 Февраль Фев. 2пол. 2 Обувь Спорт Зима 2
1 2019 Январь Янв. 1пол. 1 Бижутерия Общий Всесезон 1
1 2019 Январь Янв. 2пол. 6 Обувь Классика Зима 1
1 2019 Февраль Февраль 1пол. 2 Одежда Кежуал Лето 2
1 2019 Февраль Февраль 2пол. 3 Обувь Спорт Зима 1
В таблице множество складов,товаров, видов, стилей и сезонов и др. Единственное что постоянно это количество месяцев (12) и Месяц период (24). При формировании сводной все меры рассчитываются dax.
Используя фильтр рассчитывается =SUMX(FILTER('Таблица';'Таблица[Год]=2018);'Таблица'[Продажи.]) -для 2018, и такая же для 2019.
Все эти махинации проводятся для дальнейшей фильтрации через срезы. Срезы установлены на склады, Стиль, Сезон, Вид.
Итоговая таблица выглядит так
Меры ЯнварьЯнварь Февраль Февраль NN Декабрь Декабрь
Янв. 1пол.Янв. 2пол. Фев. 1пол. Фев. 2пол. N 1пол. N 2пол. Дек. 1пол. Дек. 2пол.
Продажи 18
Продажи 19
20% от продажи
40% от продажи
Отклонения
Остатки Среднее значение за 2018 год
Все считается, но не проходит расчет среднего остатка(который для каждого "Месяц период" должен быть одинаковым), что бы он считал количество уникальных периодов (24) для каждого года (2018 и 2019) отдельно.
Стандартный эксель должен был бы это считать как:
1) Суммесли= Месяц период=Янв. 1пол., "Складывать остатки", и так для каждого месяца.
2) Уник= посчитать количество уникальных значений "месяц период" для каждого года отдельно (24 для 2018 и 24 для 2019)
3) И расчет среднего= Сумма остатков для 2018 года каждого "Месяц период" (Сумма Янв. 1пол., Янв 2пол., N, Дек. 2пол.) /(разделить) на Кол-во уник в 2018 "Месяц период"

Как сделать такой расчет мерой dax (Power Pivot)?
 
Цитата
bereteli написал:
У меня есть таблица...
Придут ребята, которые дружат с DAX, а у них этой таблицы нет. Что им делать? Переписывать с экрана Ваши данные?
 
Если попросят, то скину. Формула не должна быть сложной. Просто когда я пытаюсь втащить самую обычную сумму, которую считает сводная автоматом, она не слушается фильтров и срезов
 
Цитата
bereteli написал:
Если попросят, то скину
ПРОСИТЬ Вас никто не будет - это Вам нужно, а не потенциальным помощникам.
 
ну может так
Код
Средний остаток 2108 = CALCULATE(SUM('Таблица'[Остатки]);'Таблица'[Год]=2018;ALL('Таблица'[Месяц период]))/24

или может так
Код
Средний остаток 2108 = CALCULATE(AVERAGEX(ALL('Таблица'[Месяц период]);CALCULATE(SUM('Таблица'[Остатки])));'Таблица'[Год]=2018)
F1 творит чудеса
 
Максим, хочу сказать Вам огромное спасибо и всех благ. Вторая формула сработала. Я неделю не мог спать, всё пытался.Максим, можете мне пожалуйста подсказать еще. При добавлении в структуру "Сводной" месяцев, считается средняя не так. Если убираю месяцы,а оставляю только периоды (Янв 1пол., и прочие) то всё нормально. Но для отчета мне нужна именно такая структура(
Изменено: bereteli - 13.06.2019 15:40:15
 
bereteli, не цитируйте без необходимости и бездумно. Вернитесь в своё сообщение и приведите его в порядок.
 
bereteli, без файла-примера можно только наугад.
Фильтр по месяцу (как и любое поле в строках/столбцах/срезах/фильтрах) также влияет на подсчёт каждого значения. поэтому дописываем сброс фильтра по месяцу в конец:
Код
Средний остаток 2108 =
CALCULATE (
    AVERAGEX (
        ALL ( 'Таблица'[Месяц период] );
        CALCULATE ( SUM ( 'Таблица'[Остатки] ) )
    );
    'Таблица'[Год] = 2018;
    ALL ( 'Таблица'[Месяц] )
)
По понятным причинам не проверял, как работает
F1 творит чудеса
 
Спасибо огромное!!!Максим, вы лучший!!!! Огромная благодарность Вам!!
Страницы: 1
Наверх