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

В частности, эти функции позволяют, например, в Power BI (Power Pivot) узнать первую (последнюю) дату продажи.

Давайте разберем эти функции подробно.

Для Вашего удобства, рекомендую скачать «Справочник DAX функций для Power BI и Power Pivot» в PDF формате.

Если же в Ваших формулах имеются какие-то ошибки, проблемы, а результаты работы формул постоянно не те, что Вы ожидаете и Вам необходима помощь, то записывайтесь в бесплатный экспресс-курс «Быстрый старт в языке функций и формул DAX для Power BI и Power Pivot».

А также, подписывайтесь на наши социальные сети. Потому что именно в них, Вам будут доступны оперативно и каждый день наши актуальные фишки, секреты, наработки, примеры, кейсы, полезные советы, видео и статьи по темам сквозной BI аналитики (Power BI, DAX, Power Pivot, Excel…): Вконтакте, Инстаграм, Фейсбук, YouTube.

 

DAX функции FIRSTNONBLANK и LASTNONBLANK в Power BI и Power Pivot

FIRSTNONBLANK () — возвращает первое известное значение из столбца, где вычисленное выражение является непустым.

LASTNONBLANK () — возвращает последнее известное значение из столбца, где вычисленное выражение является непустым.

Синтаксис:

FIRSTNONBLANK ([Столбец]; Выражение)
LASTNONBLANK ([Столбец]; Выражение)

Пример формул на основе DAX функций FIRSTNONBLANK и LASTNONBLANK.

В Power BI Desktop имеется исходная таблица «Продажи», в которой находится информация по дате и сумме продажи:

Исходная таблица Продажи в Power BI Desktop

 

Требуется в отчетах Power BI вывести даты первой и последней продажи. И сделать это, буквально в одно действие, можно при помощи DAX функций FIRSTNONBLANK и LASTNONBLANK. Давайте напишем соответствующие формулы мер:

Дата Первой Продажи = FIRSTNONBLANK ('Продажи'[Дата]; SUM('Продажи'[СуммаПродажи]))
Дата Последней Продажи = LASTNONBLANK ('Продажи'[Дата]; SUM('Продажи'[СуммаПродажи]))

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

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

Если в рамках данного контекста, результат выражениям является не пустым, то возвращается первое (последнее) известное значение из первого параметра.

Если же результат выражения в данном контексте имеет значение «пусто», то значение из первого параметра возвращаться не будет.

Итак, результатом выполнения этих формул в Power BI на основе DAX функций FIRSTNONBLANK и LASTNONBLANK, будут получены даты первой и последней продажи в рамках текущего контекста:

Результат работы формул в Power BI на основе DAX функций FIRSTNONBLANK и LASTNONBLANK

Если мы сравним исходную таблицу и получившиеся отчеты по датам первой и последней продажи, то увидим, что функции FIRSTNONBLANK и LASTNONBLANK отработали правильно и вернули дату первой продажи — 15.07.2018, а дату последней продажи — 21.07.2018.

Если же, мы изменим контекст вычисления, а именно, введем фильтр дат, например от 16.07.2018 до 19.07.2018, то рассматриваемые функции FIRSTNONBLANK и LASTNONBLANK вернут соответствующие этому контексту фильтра измененные даты первой и последней продажи:

Результат работы функций FIRSTNONBLANK и LASTNONBLANK в условиях измененного контекста фильтра

 

На этом, с разбором DAX функций FIRSTNONBLANK и LASTNONBLANK в Power BI и Power Pivot, все.

Успехов Вам, друзья!

 

Антон БудуевС уважением, Будуев Антон.
Проект «BI — это просто»

 

 

Присоединяйтесь к нашим социальным сетям

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

по темам сквозной BI аналитики (Power BI, DAX, Power Pivot, Excel...)

Наша группа Вконтакте Мы в Инстаграме Наша группа в Фейсбук Наш YouTube канал
Наша группа VK
Подписаться на наш YouTube канал
 

Если у Вас появились какие-то вопросы по материалу данной статьи, задавайте их в комментариях ниже. Я Вам обязательно отвечу. Да и вообще, просто оставляйте там Вашу обратную связь, я буду очень рад.

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

 

Понравился материал статьи?
Избранные закладкиДобавьте эту статью в закладки Вашего браузера, чтобы вернуться к ней еще раз. Для этого, прямо сейчас нажмите на клавиатуре комбинацию клавиш Ctrl+D


Вам это может быть интересно. Другие статьи нашего обучающего портала:


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

* Заполняя форму отправки комментария своими персональными данными (имя, email, сайт и др.), Вы автоматически подтверждаете свое согласие на обработку своих персональных данных