Расчет недельных продаж с помощью DAX в LuckyTemplates
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
Получение правильных итогов в отчетах LuckyTemplates иногда может быть самой неприятной вещью при использовании показателей DAX . Вероятно, вы можете столкнуться с определенными ситуациями, когда ваши показатели Totals for DAX складываются не так, как вы хотите. Вы можете посмотреть полное видео этого урока в нижней части этого блога.
Меры DAX могут быть основаны на стандартных функциях агрегирования, таких как COUNT или SUM . Эти формулы DAX позволяют выполнять моделирование данных, анализ данных и использовать результаты для создания отчетов и принятия решений.
В этом блоге мы собираемся обсудить общую логику показателей DAX . Эта проблема была поднята на . Если вы хотите просмотреть вопрос и посмотреть точный сценарий с форума, просто нажмите на предоставленную ссылку ниже.
Я покажу вам технику, которая использовалась для решения сценария.
Конечно, вы можете применять этот метод к различным сценариям, особенно при создании довольно сложной логики DAX или при разветвлении нескольких показателей. Это также поможет вам решить ваши итоги, которые могут быть рассчитаны неправильно .
Оглавление
Пример сценария проблемы
Вот общий пример, который как-то связан с обсуждаемым на форуме сценарием.
Теперь мы смотрим на результат продаж в этой таблице. Более того, я сравниваю его с другим результатом — Продажами за прошлый год .
В этом примере мы пытаемся найти минимальный результат для каждого клиента на основе выбранного контекста. Это может быть любой показатель, такой как MIN Total Sales и Total Sales Last Year (в этом случае мы будем использовать общие показатели).
Скорее всего, вы думаете, что формула на изображении ниже даст нам соответствующие результаты.
Что ж, давайте перетащим показатель «Минимальное тестирование» в таблицу и проверим результаты.
Глядя на результаты, можно сказать, что расчеты для каждой строки были точными.
Однако он неправильно рассчитал Total .
Он рассчитывал только минимальную сумму , используя функцию MIN для каждой строки в показателях Total Sales и Sales LY , когда в каждом расчете нет контекста.
Кроме того, он не подсчитывал конкретные минимумы уникальным образом и не получал сумму всех этих уникальных минимумов через любой контекст, в котором мы находимся.
Анализ правильных результатов для примера сценария
Теперь позвольте мне показать вам соответствующие результаты для предыдущего сценария.
Вы увидите на изображении, что он показывает совсем другой результат, поскольку он, очевидно, намного меньше, чем все остальные итоги.
Это имеет гораздо больше смысла , потому что мы в основном подсчитываем минимумы каждой отдельной строки в этой таблице . Таким образом, это означает, что значение результата будет гораздо меньше .
Основная логика, которую нам необходимо здесь понять, заключается в оценке каждого отдельного результата с использованием виртуальных таблиц .
Итерация по виртуальным таблицам позволяет убедиться, что реализуемая вами логика выполняет итерацию по правильному контексту для итогового значения, а не по любому естественному контексту, который может возникнуть при выборке, сделанной на странице отчета .
Если вы начнете понимать, как включать виртуальные таблицы в свои функции DAX , вы быстро увидите возможности для дальнейшего расширения анализа.
Создание виртуальных таблиц в мерах DAX
Теперь, чтобы решить текущий сценарий, первое, что нам нужно сделать, это создать виртуальную таблицу каждого клиента с помощью функции SUMMARIZE .
Функция SUMMARIZE возвращает сводную таблицу для запрошенных итогов по набору групп.
Затем в той конкретной виртуальной таблице , которую мы собираемся пройти, выделенные столбцы на изображении ниже будут сгенерированы виртуально.
Подведение итогов MIN каждой строки в виртуальной таблице
Когда мы перейдем к этапу оценки, мы будем использовать итерирующую функцию с именем SUMX . Эта функция возвращает сумму выражения, которое вычисляется для каждой строки таблицы.
В нашем случае функция SUMX суммирует результат MIN для каждой отдельной строки виртуальной таблицы, которую мы создали.
И вот как мы получили правильные результаты.
Еще одна интересная вещь заключается в том, что виртуальная таблица также работает для каждой отдельной строки . Это означает, что эта таблица будет состоять только из одной строки.
Это связано с тем, что этот фильтр будет виртуально применяться только в формуле , а идентификатор клиента в функции СУММИЗИРОВАНИЕ будет иметь отношение только к контексту клиента, в котором мы находимся.
И это просто то, как вы можете решить этот конкретный сценарий.
Заключение
Подводя итог, можно сказать, что ключом к пониманию того, как рассчитываются итоги, является углубленное изучение того, как работает контекст в LuckyTemplates.
Этот метод, безусловно, можно использовать, потому что есть много ситуаций, когда итоги просто не будут соответствовать тому, что вы думаете, или тому, чем они должны быть. Например, вы можете на самом деле получить итог, но не подозреваете, что на самом деле он вычисляется неправильно.
Главное, что вам нужно для того, чтобы эта техника работала должным образом, — это понимание методологии виртуальных таблиц . Вам необходимо эффективно интегрировать эти виртуальные таблицы в ваши меры DAX , чтобы убедиться, что они дают желаемые результаты.
Это поможет вам решить не только ту, над которой вы работаете в настоящее время, но и другие будущие общие проблемы, с которыми вы можете столкнуться при выполнении вычислений в моделях LuckyTemplates.
С этим можно многое применить и реализовать в своей среде. Вот почему внедрение этих концепций в ваш разум имеет решающее значение.
Чтобы узнать о более продвинутых методах DAX, которые вы можете использовать в LuckyTemplates, ознакомьтесь с этим модулем на сайте LuckyTemplates Online — .
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.