Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

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

У цій статті ми збираємося завершити глибоке занурення у використання функції EARLIER . Я покажу вам РАНІШІ приклади функцій і як їх ефективно використовувати.

Крім того, я покажу вам набагато більш інтуїтивно зрозумілий спосіб виконання обчислень замість використання функції EARLIER взагалі.

Зміст

Як і коли використовувати функцію EARLIER

Історично функція EARLIER була єдиним способом маніпулювати контекстом обчислення в конкретній формулі. Але оскільки були введені ЗМІННІ, тепер це не так важливо, як колись.

Однак розуміння функції EARLIER важливо, якщо ви хочете підняти свої знання DAX на новий рівень. Це вимагає глибокого розуміння контексту рядків і фільтрів, які є життєво важливими поняттями під час роботи з обчисленнями DAX.

Щоб швидко переглянути загальну (але дуже важливу) концепцію контексту, перегляньте посилання нижче.

Контекст оцінювання – (1.8) Посібник DAX для початківців

Контекст фільтра – (1.9) Посібник DAX для початківців

Пояснення контексту рядків – (1.10) Посібник DAX для початківців

Я буду використовувати таблицю Products для всіх прикладів, які ми тут розглядаємо. Якщо ми швидко поглянемо на модель, ви побачите, що моя таблиця Products є таблицею пошуку зі зв’язком до моєї таблиці Sales (яка вважається таблицею фактів).

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Я хочу обчислити деякі сукупні підсумки в цій конкретній таблиці.

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

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Наступне, що я зробив, це помістив Загальні продажі продукту в показник Загальних продажів. Одним із ключових понять цієї конкретної формули є перехід контексту .

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Перехід контексту та контекст рядка

Перехід контексту відбувається шляхом розміщення міри всередині виразу. І тоді ви можете перейти від контексту рядка до контексту фільтра.

Ось як цей конкретний результат фільтрується для продукту 1.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Я занурився в це, тому що розуміння контексту в таблиці та обчислюваному стовпці тут є ключовим. І в цьому конкретному випадку ми використовуємо.

Контекст рядка означає, що оцінка відбуватиметься в кожному окремому рядку. І кожен окремий рядок у обчислюваному стовпці має результат із оцінкою, яка відбувається в кожному окремому рядку.

Приклади сукупної суми з використанням функції EARLIER

Тепер я хочу обчислити сукупний підсумок на основі цього конкретного рядка в стовпці «Сукупні продажі продукту», і я хочу зробити це в обчислюваному стовпці. Ось тут і вступає в дію функція EARLIER у LuckyTemplates.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Формула для цього прикладу містить функцію FILTER . І в цій конкретній формулі FILTER додає додатковий контекст рядка.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Для цього обчислення ми почали з контексту рядка , а потім використалиякий оцінюватиме кожен окремий рядок у таблиці продуктів.

Потім у кожному окремому рядку таблиці Product ми дивимося, який індекс, і оцінюємо, чи він менший за конкретне число, яке ми маємо в рядку.

Сценарій 1: індекс продукту менший або дорівнює 8

Для цього конкретного рядка ми хочемо обчислити все, що має індекс 8 або нижче.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Нам потрібно оцінити кожен окремий рядок у таблиці Products і визначити, чи є число індексу менше або дорівнює 8.

Якщо є, тоді ми хочемо обчислити всі продажі для цих конкретних продуктів. І коли ми йдемо вниз, це переоцінює ставки.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

EARLIER дозволяє нам переходити з контексту одного рядка до контексту попереднього рядка, щоб отримати значення.

Сценарій 2: індекс продукту менший або дорівнює 10

У нашому наступному прикладі конкретним результатом є 10. Ми хочемо оцінити індекс продукту в кожному окремому рядку, якщо він менший або дорівнює 10.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Деякі з вас, хто знайомий із концепцією кумулятивної суми, можуть подумати, що ми можемо використати тут  функцію МАКС замість неї, оскільки це те, що ми робимо в загальному шаблоні кумулятивної суми.

Але якщо я вставлю MAX у формулу, вона завжди оцінюватиме максимальну кількість продуктів. Крім того, він фактично не оцінює індекс продукту в певному рядку.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Тому нам потрібно вийти з контексту цього рядка , а потім повернутися до самого початкового контексту рядка, щоб отримати індекс продукту. І саме це робить EARLIER .

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Функція EARLIER дозволяє нам переходити з одного контексту до контексту попереднього рядка, щоб ми могли отримати потрібний результат.

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

Для нашого наступного прикладу я ранжував свої продукти на основі продажів. Я також отримав ранг залежно від того, де вони всі сидять.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Найбільший обсяг продажів наших продуктів становить 864 000 доларів США, і це продукт 63.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Тепер я хочу створити підсумковий підсумок на основі рейтингу. Замість того, щоб дивитися на попередній індекс, я фактично шукаю попередній рейтинг продажів продукту.

Отже, ми маємо переглянути кожен окремий продукт у цій конкретній таблиці продуктів, щоб оцінити, чи є рейтинг продукту меншим або дорівнює рейтингу продукту в цьому конкретному рядку.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

EARLIER виходить із цього контексту рядка та повертається до початкового контексту рядка, створеного під час перебування в обчислюваному стовпці.

Краща альтернатива функції EARLIER

Використання функції EARLIER може бути дещо складним. Але хороша новина полягає в тому, що ми маємо кращий спосіб виконувати ці обчислення в LuckyTemplates.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

VARIABLES є набагато кращим способом виконання обчислень. Я покажу вам, як можна обійти РАНІШЕ .

У цьому прикладі замість того, щоб вискакувати з контексту рядка, створеного фільтром, ми можемо фактично просто отримати значення індексу продукту в початковому контексті рядка в змінній.

Тому я взяв EARLIER і вставив змінну ProductIndex .

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Тут ви побачите, що сукупні продажі продуктів тепер чудово працюють і в цьому новому форматі. Виглядає як раніше.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

Ми можемо зробити те саме з кумулятивними продажами продукту за рейтингом, використовуючи цей розрахунок:

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX

А потім, якщо ми відсортуємо стовпець «Рейтинг продажів продукту» за зростанням, ми побачимо, що найвищий рейтинг має продукт 63.

Як використовувати функцію EARLIER у LuckyTemplates – підручник DAX


Висновок

Використанняє набагато кращим способом вирішення всіх прикладів, які я показав раніше.

І, чесно кажучи, з усією роботою щодо розробки, яку я робив раніше, я рідко використовував функцію EARLIER . Але це все одно крута функція, щоб знати і розуміти.

Змінні є ключовими, коли ви пишете DAX у багатьох різних областях LuckyTemplates. Тут усе стає набагато простіше.

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

Ви можете переглянути ці посилання, щоб отримати більше інформації на цю тему:

Синтаксис формул, коментарі та змінні – найкращий посібник із DAX для початківців

Як використовувати змінні у формулі DAX за допомогою LuckyTemplates

Сподіваюся, ви зможете добре зрозуміти, як цей конкретний обчислення працює в LuckyTemplates.


Змініть формати дати за допомогою редактора Power Query

Змініть формати дати за допомогою редактора Power Query

У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.

Power Query: об’єднайте файли з кількох папок

Power Query: об’єднайте файли з кількох папок

Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.

Створення таблиці дат у LuckyTemplates

Створення таблиці дат у LuckyTemplates

Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.

Мобільні звіти LuckyTemplates. Поради та методи

Мобільні звіти LuckyTemplates. Поради та методи

У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.

Звіти про професійну аналітику послуг у LuckyTemplates

Звіти про професійну аналітику послуг у LuckyTemplates

У цій презентації LuckyTemplates ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.

Загальні функції SQL: огляд

Загальні функції SQL: огляд

Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.

Створення шаблону LuckyTemplates: керівництво та поради

Створення шаблону LuckyTemplates: керівництво та поради

У цьому підручнику ви дізнаєтеся, як створити свій ідеальний шаблон LuckyTemplates, налаштований відповідно до ваших потреб і вподобань.

Параметри полів і малі кратні в LuckyTemplates

Параметри полів і малі кратні в LuckyTemplates

У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.