Расчет недельных продаж с помощью DAX в LuckyTemplates
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
В этом руководстве я собираюсь показать вам расширенный анализ ранжирования в LuckyTemplates. В качестве примера я буду использовать отчет, который я представил для 10-го конкурса LuckyTemplates на форуме LuckyTemplates.
Я обсуждал другие страницы этого отчета в других учебниках. Сейчас я хотел бы сосредоточиться на конкретной странице отчета, которая объединяет два набора данных.
Обратите внимание, что у меня уже есть отдельные страницы для данных о поставщиках и данных о растениях . Но когда эти два набора данных взаимодействуют, пользователи могут получить еще более глубокое понимание. Вот почему я пошел дальше и сделал комбинированный слайд.
Оглавление
Создание объединенной страницы поставщиков/заводов
Если вы видели другие руководства о том, как я создал этот отчет, вы заметите, что все слайды, которые я использовал, выглядят почти одинаково, за исключением некоторых уникальных визуальных эффектов. Это потому, что я создал фоновый шаблон в PowerPoint и использовал его во всем отчете.
Это придало моему отчету последовательный вид, а также упростило задачу, зная, что все, что мне нужно было сделать, это изменить заголовок и данные на каждой странице. Фон везде оставался одинаковым.
На этой странице я использовал один слайсер-остров слева для данных о заводе и другой слайсер-остров справа для данных о поставщике.
Слайсер chiclet можно найти под панелью визуализации, но если вы его еще не видите, вы можете добавить его на свой собственный рабочий стол LuckyTemplates, загрузив его через AppSource.
Таблица в середине содержит все данные. Как видите, у него есть и завод, и список поставщиков.
Он также содержит минуты простоя , среднее время простоя , дефекты и ранжирование по этим трем параметрам. Он также имеет общий средний рейтинг и общий рейтинг .
Обратите внимание, что данные в настоящее время отсортированы на основе общего рейтинга, от самых эффективных до худших.
Меры для ранжирования анализа
Теперь давайте углубимся в фактические меры, которые привели к результатам, которые вы видите в таблице. Я начну с минут простоя, которые просто используют СУММУ количества минут простоя.
Теперь, когда у меня есть готовая базовая мера, я могу приступить к ранжированию минут простоя. Я назвал этот показатель «Лучшие поставщики и предприятия по минутам простоя» . Но поскольку у меня ограниченное пространство на столе, я просто назвал его «Рейтинг по минутам простоя» на визуальном элементе.
Некоторые использовали оператор для подобных случаев. Но что я сделал, так это создал оператор с функцией для местоположения завода.
По сути, это утверждение говорит о том, что если в местоположении завода есть значение, я хочу показать ранг. В противном случае он должен оставаться пустым.
Я сделал это, чтобы убедиться, что место для Total остается пустым. Этот столбец предназначен только для ранжирования данных по каждой строке, поэтому не имеет смысла иметь итог внизу.
Есть несколько способов сделать это. Но когда я оценивал результаты, которые хотел получить, я решил, что использование IF HASONEVALUE — лучший вариант, учитывая то, как все показатели в этом отчете взаимодействуют друг с другом.
Вы заметите, что другие столбцы рангов в таблице также пусты. Это потому, что подход, который я использовал для всех них, был одинаковым.
В следующей части показано использование функции . Затем я использовал , чтобы убедиться, что я ранжирую и местоположение завода, и поставщика, даже если у меня есть . По сути, функция CROSSJOIN помогает объединить данные для получения рейтинга.
Вы заметите, что я хотел, чтобы минуты простоя были больше или равны нулю, прежде чем они будут ранжированы. Это потому, что я хотел исключить все заводы или поставщиков, у которых было пустое место в разделе «Минуты простоя».
Чтобы продемонстрировать это, я отсортирую данные по минутам простоя. На данный момент он сортируется на основе общего рейтинга.
Вот как это будет выглядеть, когда я отсортирую таблицу по минутам простоя.
Обратите внимание, что самые верхние данные содержат ноль. Но на самом деле в наборе данных были некоторые записи, в которых минуты простоя были пустыми. Они были удалены из уравнения.
Перейдем к следующему показателю, который ранжирует среднее время простоя. По сути, я просто продублировал показатель ранжирования для минут простоя и изменил данные, на которые ссылаются.
Это метод, называемый ветвлением меры . По сути, это означает построение меры из меры. У меня была существующая мера, которую я продублировал и настроил, чтобы она соответствовала новой мере, которая мне нужна.
Ветвление мер делает весь процесс разработки отчета более эффективным.
Таким образом, мне не нужно тратить время на создание мер с нуля, особенно если нужная мне мера очень похожа на уже существующую.
Теперь я собираюсь перейти к следующему показателю — ранжированию по дефектам . Еще раз я продублировал меру, которую использовал ранее, и просто изменил области, которые будут характерны для Дефектов.
Здесь я сделал дополнительное изменение, в частности тот факт, что я не хотел, чтобы что-либо было . Поэтому, даже если строка в разделе «Дефекты» не имеет никакого значения, я хочу, чтобы она все равно была включена в рейтинг.
Перейдем к общему среднему. Это мера, которую я использовал, чтобы получить общее среднее значение.
Как видите, мне пришлось создать переменные для этой меры. Первый который я создал, называется AddRank. По сути, я просто взял три показателя, над которыми работал ранее, и добавил их все, чтобы получить общее число.
Затем я создал следующий VAR , который назвал Result. Здесь я использовал функцию для переменной AddRank с делителем на три.
А затем в моем операторе RETURN внизу я использовал IF для поставщика.
Этот подход отличается от подхода HASONEVALUE , который я использовал ранее, хотя идея у них та же. Он просто говорит, что если в списке есть поставщик, покажите мне результат. В противном случае он должен вернуть BLANK .
Теперь я перейду к общему рейтингу. Конечно, это все равно будет похоже на другие меры ранжирования, которые я использовал ранее.
Я использовал HASONEVALUE для местоположения завода, затем у меня есть оператор RANKX еще раз, используя функцию CROSSJOIN , чтобы убедиться, что я получаю свои результаты как по местоположению завода, так и по поставщику. Я также сослался на показатель « Общий средний рейтинг поставщиков и заводов» , над которым я только что работал до этого. Я просто хочу убедиться, что номер не будет пустым.
Самое замечательное в этом то, что всю таблицу можно сортировать по любому из рангов. Поэтому, если я хочу отсортировать свои данные с помощью минут простоя, я могу это сделать. Это покажет, что лучшим результатом для Завода будет Новая Британия, а для Продавца будет Linktype.
Более того, он не влияет на другие рейтинги на странице. Это потому, что я использовал в своей мере, а не .
Видите ли, ALLSELECTED ранжирует данные только на основе выбранных данных. Например, если я применю фильтр, ранжироваться будут только данные, отображаемые в таблице. Данные, исключенные из-за фильтра, не будут включены в рейтинг.
Все сводится к результатам, которые вы ищете. В этом случае я не хотел, чтобы общие ранги менялись независимо от того, смотрю ли я только на определенные фрагменты данных. Вот почему я решил использовать ALL .
Использование форума LuckyTemplates для анализа рейтинга
Анализ ранжирования может быть сложным, особенно если вы работаете с такими функциями, как RANKX . Отличительной чертой LuckyTemplates является то, что у нас есть отличные учебные материалы и культура сотрудничества внутри сообщества. Только на можно найти множество дискуссий об анализе ранжирования.
Давайте направимся на форум, чтобы вы могли иметь представление о том, чего ожидать.
Когда вы попадете на главную страницу форума, вы увидите здесь функцию поиска.
Я наберу RANKX, чтобы показать, сколько информации вы можете получить только из Форума. По результатам поиска на эту тему существует более 50 обсуждений.
Вы увидите множество отличных решений по заданным вопросам. Это очень активное сообщество, поэтому вы увидите, как другие люди присоединяются к обсуждениям и делятся передовым опытом.
Когда я прокручиваю результаты вниз, я вижу отличный контент от Брайана Джулиуса, одного из наших . Это о том, как разрабатывать собственные средства разрешения конфликтов при использовании RANKX.
Если я нажму на это, вы увидите, что это дает вам ссылку на курс, где я могу найти еще больше информации по теме.
Посещение форума LuckyTemplates само по себе уже может дать вам кучу информации, особенно если вы чувствуете, что застряли в своем собственном анализе рейтинга. Вы даже можете и получить доступ к остальной части нашей обучающей платформы, чтобы развивать свои навыки в качестве пользователя LuckyTemplates.
Соображения RANKX — концепции формул LuckyTemplates и DAX
показывают лучшие или последние результаты с использованием ранжирования в LuckyTemplates
Извлечение уникальной информации в LuckyTemplates с использованием ранжирования показателей DAX
Заключение
LuckyTemplates — это такой всесторонний инструмент, который позволяет пользователям получать как можно больше информации из данных, с которыми они работают. В сценарии, который мы обсуждали, вы можете легко получить расширенный анализ ранжирования, если мы учтем такие методы, как ветвление показателей.
Также будет здорово, если вы воспользуетесь ресурсами, которые есть у нас в LuckyTemplates. Даже если у вас есть продвинутые знания в области создания отчетов и информационных панелей, всегда есть новые приемы и приемы, которым можно научиться.
Всего наилучшего,
Джарретт
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.