Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Большинству начинающих и даже опытных пользователей DAX действительно трудно понять, что  делает функция EARLIER . Также мне потребовалось много времени, чтобы понять, как, когда и зачем следует использовать эту функцию в LuckyTemplates. Вы можете посмотреть полное видео этого урока в нижней части этого блога.

В этой статье мы подробно рассмотрим использование функции РАНЬШЕ . Я покажу вам РАНЬШЕ примеры функций и как их эффективно использовать.

Кроме того, я покажу вам гораздо более интуитивный способ выполнения вычислений вместо того, чтобы вообще использовать функцию РАНЬШЕ .

Оглавление

Как и когда использовать функцию РАНЬШЕ

Исторически функция РАНЬШЕ была единственным способом манипулировать контекстом вычисления в конкретной формуле. Но с тех пор, как были введены ПЕРЕМЕННЫЕ, теперь это не так важно, как раньше.

Однако понимание функции РАНЬШЕ важно, если вы хотите поднять свои знания DAX на новый уровень. Это требует глубокого понимания контекста строки и фильтра, которые являются жизненно важными понятиями при работе с вычислениями DAX.

Для быстрого ознакомления с общей (но очень важной) концепцией контекста см. ссылки ниже.

Контекст оценки — (1.8) Полное руководство для начинающих по DAX

Контекст фильтра — (1.9) Полное руководство для начинающих по DAX

Объяснение контекста строки — (1.10) Полное руководство для начинающих по DAX

Я буду использовать таблицу Products для всех примеров, которые мы здесь рассмотрим. Если мы быстро взглянем на модель, вы увидите, что моя таблица «Продукты» представляет собой таблицу поиска с отношением вниз к моей таблице «Продажи» (которая считается таблицей фактов).

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Я хочу рассчитать некоторые совокупные итоги в этой конкретной таблице.

Первый кумулятивный итог является общим. Я хотел рассчитать его только на основе общего индекса, который у меня есть для каждого продукта, который получен из названия продукта, которое у меня есть в этой конкретной таблице.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Следующее, что я сделал, это поместил общий объем продаж продукта в показатель общего объема продаж. Одним из ключевых понятий этой конкретной формулы является контекстный переход .

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Переход контекста и контекст строки

Переход контекста происходит путем помещения меры внутрь выражения. И тогда вы сможете перейти от контекста строки к контексту фильтра.

Вот как этот конкретный результат фильтруется для продукта 1.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Я погрузился в это, потому что понимание контекста в таблице и вычисляемом столбце здесь является ключевым. И в этом конкретном случае мы используем контекст строки .

Контекст строки означает, что оценка будет происходить в каждой отдельной строке. И каждая отдельная строка в вычисляемом столбце имеет результат с оценкой, которая происходит в каждой отдельной строке.

Совокупное общее количество примеров с использованием функции РАНЬШЕ

Теперь я хочу рассчитать совокупный итог на основе этой конкретной строки в столбце «Совокупные продажи продуктов», и я хочу сделать это в вычисляемом столбце. Именно здесь вступает в действие функция РАНЬШЕ в LuckyTemplates.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Формула для этого примера содержит функцию ФИЛЬТР . И в этой конкретной формуле ФИЛЬТР добавляет дополнительный контекст строки.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Мы начали с контекста строки для этого расчета, а затем использовали функцию фильтра , которая будет оценивать каждую строку в таблице продуктов.

А затем в каждой отдельной строке таблицы Product мы смотрим, что такое индекс, и оцениваем, меньше ли он определенного числа, которое у нас есть в строке.

Сценарий 1: индекс продукта меньше или равен 8

Для этой конкретной строки мы хотим вычислить все, что имеет индекс 8 или ниже.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Нам нужно оценить каждую строку в таблице «Продукты» и определить, есть ли порядковый номер меньше или равный 8.

Если да, то мы хотим рассчитать все продажи для этих конкретных продуктов. И по мере того, как мы снижаемся, он переоценивает ставки.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

EARLIER позволяет нам перейти от контекста одной строки к более раннему контексту строки, чтобы получить значение.

Сценарий 2: индекс продукта меньше или равен 10

В нашем следующем примере конкретный результат равен 10. Мы хотим оценить индекс продукта в каждой отдельной строке, если он меньше или равен 10.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Теперь некоторые из вас, кто знаком с концепцией кумулятивного итога, могут подумать, что вместо этого мы можем использовать здесь функцию  MAX , поскольку это то, что мы делаем в общем шаблоне кумулятивного итога.

Но если я поставлю MAX в формулу, она всегда будет оцениваться по максимальным продуктам. Кроме того, он фактически не оценивает индекс продукта в конкретной строке.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Поэтому нам нужно выйти из этого контекста строки , а затем вернуться к самому начальному контексту строки, чтобы получить индекс продукта. И это то, что РАНЬШЕ делает.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Функция РАНЬШЕ позволяет нам перейти от одного контекста к контексту предыдущей строки, чтобы мы могли получить желаемый результат .

Сценарий 3: использование рейтинга продуктов вместо индекса продуктов

В нашем следующем примере я ранжировал свои продукты на основе продаж. У меня также есть ранг, основанный на том, где они все сидят.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Лучшие продажи наших продуктов составляют 864 000 долларов США, и это Продукт 63.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Теперь я хочу создать совокупный итог на основе рейтинга. Вместо того, чтобы смотреть на более ранний индекс, я на самом деле ищу более ранний рейтинг продаж продукта.

Таким образом, мы должны пройтись по каждому отдельному продукту в этой конкретной таблице продуктов, чтобы оценить, является ли рейтинг продукта меньше или равен рейтингу продукта в этой конкретной строке.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

EARLIER выпрыгивает из контекста этой строки и возвращается к исходному контексту строки, созданному при нахождении в вычисляемом столбце.

Лучшая альтернатива функции EARLIER

Использование функции РАНЬШЕ может быть немного сложным. Но хорошая новость заключается в том, что у нас есть лучший способ выполнять эти вычисления в LuckyTemplates.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

VARIABLES — гораздо лучший способ выполнения вычислений. Я покажу вам, как вы можете обойти РАНЬШЕ .

В этом примере вместо того, чтобы выпрыгивать из контекста строки, созданного фильтром, мы можем просто получить значение индекса продукта в исходном контексте строки в переменной.

Поэтому я удалил РАНЬШЕ и вставил переменную ProductIndex .

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Вы увидите, что совокупные продажи продуктов теперь отлично работают и в этом новом формате. Похоже, как это было раньше.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Мы можем сделать то же самое с совокупными продажами продукта по рейтингу, используя этот расчет:

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

И затем, если мы отсортируем столбец «Рейтинг продаж продуктов» по ​​возрастанию, мы увидим, что продукт с самым высоким рейтингом — это продукт 63.

Как использовать функцию EARLIER в LuckyTemplates — учебник по DAX

Как кумулятивно рассчитать бюджет или прогнозировать результаты в LuckyTemplates
Сравнить несколько метрик кумулятивно в LuckyTemplates с помощью DAX

Заключение

Использование ПЕРЕМЕННЫХ — гораздо лучший способ справиться со всеми примерами, которые я показал ранее.

И, честно говоря, со всей работой по разработке, которую я проделал раньше, я редко использовал функцию РАНЬШЕ . Но это все еще крутая функция, которую нужно знать и понимать.

Переменные играют ключевую роль при написании DAX во многих различных областях LuckyTemplates. Здесь все становится намного проще.

Вместо того, чтобы входить и выходить из контекста в формулах, вы можете фактически инициировать вычисления в переменных или изолировать вычисление с переменными в нем, чтобы выполнение формулы было более плавным.

Вы можете просмотреть эти ссылки, чтобы получить больше информации по этой теме:

Синтаксис формул, комментарии и переменные — полное руководство по DAX для начинающих

Как использовать переменные в формуле DAX с LuckyTemplates

Надеюсь, вы сможете хорошо понять, как этот конкретный расчет работает в LuckyTemplates.


Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать