#powerbi #dax #analysis
#powerbi #dax #анализ
Вопрос:
Я создавал панель мониторинга, в которой я пытаюсь показать анализ текущего выбранного года по сравнению с прошлым годом. Пожалуйста, посмотрите на изображение ниже :
Как вы видите на изображении выше, 2020 год, выбранный из слайсера, и продажи в 2020 году составляют 4,30Млн. Ожидание: я хочу показать разницу в прошлом году с помощью знака стрелки, означающего, что если продажи в текущем году больше, чем в прошлом году, чем «Зеленая верхняя стрелка», а если продажи в прошлом году больше, чем в текущем году, тогда «Красная стрелка вниз».
Что я пробовал: я создал DAX, но он не показывает для меня никакого значения: продажи за предыдущий год = РАССЧИТАТЬ (сумма (заказы [Продажи]),ПРЕДЫДУЩИЙ ГОД (заказы [Дата заказа]))
Вариант 2: я также попробовал этот (он показывает мне ценность, но желаемые результаты):
тот же период прошлого года = ВЫЧИСЛИТЬ(Сумма (заказы [Продажи]),ТОТ ЖЕ ПЕРИОД ЗА ПОСЛЕДНИЙ ГОД (заказы [Дата заказа]))
Ожидаемый результат (процент текущего года по сравнению с прошлым годом со знаком стрелки) :
Пример канала передачи данных: http://www.cse.ohio-state.edu /~hwshen/Melbourne/Data/Superstore.xlsx Как я могу достичь вышесказанного?
Спасибо
Комментарии:
1. Было бы полезно, если бы вы поделились образцом модели с образцами значений и ожидаемым результатом.
2. Спасибо за быстрый ответ @mxix Пожалуйста, посмотрите ожидаемый результат. Я обновил вопрос. Я не могу поделиться образцом рабочей тетради в комментариях.
3. Нет необходимости в рабочих книгах, просто несколько примеров таблиц с данными в текстовом формате в теле вопроса.
4. Я добавил ссылку на образец набора данных
Ответ №1:
Процентное соотношение должно быть прямым. Имейте в виду, что вам нужна ТАБЛИЦА ДАТ или используйте автоматическую дату и время, созданную power bi, для этого вам нужно ссылаться на нее с помощью «.[Дата]»
same period last year = CALCULATE(Sum(Orders[Sales]),SAMEPERIODLASTYEAR(Orders[Order Date].[Date]))
Sales YoY % =
VAR _ly = [same period last year]
RETURN
DIVIDE(_ly-Sum(Orders[Sales]),_ly)
Форматируйте показатель [Объем продаж в годовом исчислении %] в процентах.
Визуальная часть вы можете сделать это несколькими способами: с помощью карточек, HTML, визуальных элементов ключевых показателей эффективности или условного форматирования таблицы / матрицы.
Комментарии:
1. Я добавил таблицу дат: Table = CALENDARAUTO(6) затем соедините дату с датой заказа (. Теперь в «Тот же период прошлого года» есть данные. но эта мера содержит данные за последние три года, а не только за прошлый год.
2. замените заказы [Дата заказа]. [Дата] со столбцом вашей таблицы дат.
3. Спасибо за ответ. Я обновил показатель, заменив «заказ [дата]» на дату [Дата]: за тот же период прошлого года = ВЫЧИСЛИТЬ (Сумма (Заказы [Продажи]), SAMEPERIODLASTYEAR(‘Дата’ [Дата])) После этого слайсер и связанные с ним номера работают нормально.
4. Но у меня есть несколько вопросов: 1. Я создал таблицу дат, выполнив «CALENDARAUTO (6) «. Теперь в срезе появляются ненужные годы, которые не нужны. например, 2021,2011 и т.д. Как я могу установить даты таблицы в соответствии с моими исходными датами таблицы? и что произойдет, если я получаю данные с SQL-сервера и они обновляются ежедневно? Даты таблицы будут установлены соответствующим образом? 2. Когда я не выбираю какой-либо год из среза, число суммируется по всем предыдущим годам, а не только по прошлому году 2019.
5. Вы можете проверить, выбран ли только один год с помощью HASONEVALUE() . И вы можете использовать CALENDAR вместо CALENDARAUTO и генерировать его на основе дат.