Пользовательское соглашение
Политика конфиденциальности
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
Техническая поддержка сайта
ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
ГЛАВНАЯ
ТРЕНИНГИ
Быстрый старт
Расширенный Excel
Мастер Формул
Прогнозирование
Визуализация
Макросы на VBA
КНИГИ
Готовые решения
Мастер Формул
Скульптор данных
ВИДЕОУРОКИ
ПРИЕМЫ
Бизнес-анализ
Выпадающие списки
Даты и время
Диаграммы
Диапазоны
Дубликаты
Защита данных
Интернет, email
Книги, листы
Макросы
Сводные таблицы
Текст
Форматирование
Функции
Всякое
PLEX
Коротко
Подробно
Версии
Вопрос-Ответ
Скачать
Купить
ПРОЕКТЫ
ОНЛАЙН-КУРСЫ
ФОРУМ
Excel
Работа
PLEX
© Николай Павлов, Planetaexcel, 2006-2022
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
Техническая поддержка сайта
ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Quick fix/resolution for something that I noticed when populating a PowerPivot model with data from an OData feed via PowerQuery. The feed had nested XML tables that I pivoted into the main resultset using the PowerQuery “expand”. The resulting column name by default is ParentField.ChildField
I left the column names as default, added it to a PowerPivot model and tried to join it using one of these fields (Job[Client.ID] => Client[ID]) and received the following error
============================
Error Message:
============================
Query (1, 183) The dimension ‘[Client.ID_Cardinality]’ was not found in the cube when the string, [Client.ID_Cardinality], was parsed.
It seems power pivot doesn’t quote identifiers. Quick fix is to rename the pivoted column (Job[Client.ID]) to one that doesn’t include a period in the column name (Job[ClientID])
An example!
Imagine I’ve imported the following data into excel
and added it into a data model
Now I try to relate the Job table to the Client table using [Job]Client.ID => Client[ID]
Quite an error message.
But if in the Job table I rename Client.ID to ClientID
Success!
Something to keep in mind, especially when expanding nested XML tables using PowerQuery. Strip those periods (and probably other special characters)!
Any time I modify a query in Power Query, refreshing the Power Pivot table that uses the Power Query Workbook connection fails with the following error:
The operation failed because the source database does not exist, the source table does not exist, or because you do not have access to the data source.
More Details:
OLE DB or ODBC error: The query ‘Table1’ or one of its inputs was modified in Power Query after this connection was added. Please remove and re-add the connection. This can be done by disabling and re-enabling download of ‘Table1’ in Power Query..
An error occurred while processing table ‘Table1’.
The current operation was cancelled because another operation in the transaction failed.
The error message says I can remove and re-add the connection by «disabling and re-enabling download» but I don’t see any way to do this in Excel 2010. Plus I don’t want to destroy any measures or relationships in Power Pivot.
fyi — I am using Excel 2010 so obviously I had to use «Existing Connections» to select the Power Query table workbook connection to load into Power Pivot. Also note that I do not load Power Query to worksheet.
Any ideas?
Any time I modify a query in Power Query, refreshing the Power Pivot table that uses the Power Query Workbook connection fails with the following error:
The operation failed because the source database does not exist, the source table does not exist, or because you do not have access to the data source.
More Details:
OLE DB or ODBC error: The query ‘Table1’ or one of its inputs was modified in Power Query after this connection was added. Please remove and re-add the connection. This can be done by disabling and re-enabling download of ‘Table1’ in Power Query..
An error occurred while processing table ‘Table1’.
The current operation was cancelled because another operation in the transaction failed.
The error message says I can remove and re-add the connection by «disabling and re-enabling download» but I don’t see any way to do this in Excel 2010. Plus I don’t want to destroy any measures or relationships in Power Pivot.
fyi — I am using Excel 2010 so obviously I had to use «Existing Connections» to select the Power Query table workbook connection to load into Power Pivot. Also note that I do not load Power Query to worksheet.
Any ideas?
Level: Beginners
Power Pivot is a database that has been designed from the ground up to be optimised for reporting and analysis in Power BI, Power Pivot for Excel and SSAS Tabular. The technology is essentially the same across all of these products so I will generically refer to Power Pivot in this article.
Power Pivot uses an in memory columnar database (Vertipaq) as the foundation technology – the same technology for all versions (Power Pivot, Power BI and SSAS Tabular). The Vertipaq engine is what makes Power Pivot both super fast and highly compressed. A Power Pivot database is not the same as a relational database (RDB) and it does not support all the relationship types that relational databases support. This can be confusing for people that are new to Power Pivot, particularly if they have at least a basic understanding of how databases (such as MS Access) work. I explain what you need to know to get started with relationships in Power Pivot here.
Virtual Relationships
This article is specifically about physical relationships, however there are ways to create virtual relationships using DAX. Examples include using LOOKUPVALUE, FILTER, CROSSFILTER and other techniques. I am not covering these types of relationships in this article.
Relationship Cardinality Types
There are 3 different possible physical relationship cardinality types in database design but not all are supported by Power Pivot.
Relationship Cardinality Type | Power BI Support | Power Pivot for Excel Support |
---|---|---|
One to Many | Yes | Yes |
One to One | Yes | No |
Many to Many | No | No |
One to Many Relationships
The one to many relationship is the foundation of Power Pivot. In the example above (from Adventure Works in Power BI Desktop), the Customers table is on the 1 side of the relationship and the Sales table is on the many side of the relationship. These tables are joined using a common field/column called “CustomerKey”. Customer Key (aka customer number) is a code that uniquely identifies each customer. There can be no duplicates of the customer key in the customer table. Conversely the customer can purchase as many times as needed and hence the customer key can appear in the Sales table as many times as necessary. This is where the name “one to many” comes from – the customer key occurs once and only once in the Customers table but can appear many times in the Sales table.
Tables on the one side of the relationship are called Dimension tables (I call them Lookup tables) and the tables on the many side of the relationship are called Fact tables (I call them Data tables).
The entire Power Pivot Vertipaq engine is optimised to work with this (one to many) type of relationship.
One to One Relationships
The One to One relationship is only supported in Power BI and the newest version of SSAS Tabular. In my view this relationship type has limited value and in most cases it is better to combine these tables into a single flat table prior to loading to Power BI. Consider the model below.
The first relationship (shown as 1) is a 1 to many relationship between the Customer table (Lookup table) and the Sales table (Data table). The Customer Socio Economic Data table is joined to the Customer table via a 1 to 1 relationship (shown as 2 above). If there is a benefit (to the user of reports) of splitting this Socio Economic data into a separate table then of course you should do so. If there is no benefit, I recommend you combine all the data from Customer Socio Economic Data table into the Customer table using Power Query on load.
Every relationship has a “cost” in that it will have some affect on performance. The performance impact may not be noticeable for simple models but may become an issue with very complex models.
If you only remember 1 thing from this article, then please let it be this: Don’t automatically accept the table structure coming from your source data. You are now a data modeller and you need to make decisions on the best way to load your data. Your source system is probably not optimised for reporting (unless it is a reporting datamart) so please don’t assume that what you have got is what you need.
Many to Many Relationships
The many to many relationship type is not supported in Power Pivot. This is a deliberate design decision that has been made as a trade off to ensure optimum database performance. If you have data that is logically related with a many to many cardinality, there are modelling techniques you can use to solve the problem in Power Pivot that are covered in my many to many pattern article here.
UI Differences
There are a few differences in the Power BI Desktop/Excel 2016 UI (relationship view) and that of Excel 2010/2013.
Excel 2010/2013
The early UI has an arrow pointing to the lookup table (the one side of the relationship) and a dot on the many side. This is unfortunate as the arrow is pointing in the opposite direction of the filter propagation. This only exists in Excel 2010/2013 (and the early version of SSAS Tabular).
Power BI/Excel 2016
The UI has been significantly improved with Power BI Desktop and Excel 2016. As you can see below, the 1 to many relationship is now clearly shown, and there is also a new arrow showing the automatic filter propagation direction.
One Active Relationship
It is possible to have more than 1 relationship between tables in Power Pivot, but only 1 can be active at a time. An example of when you may want multiple relationships is if you have a Sales[Order Date] and a Sales[Ship Date] in your data table.
In this scenario (shown above in Excel 2013) you may want to join both Sales Date columns to your Calendar table so you can use time intelligence in your data model on both Order Date and Ship Date.
The active relationship is shown as a solid line (above) and the inactive relationship is shown as a dashed line (in this case it is highlighted in blue above). The active relationship is used by default in all DAX measures however you can over-ride this default and use the inactive relationship (when needed) by using the USERELATIONSHIP() function. Full details on this are covered in my article here.
Cross Filtering Behaviour
Power Pivot is optimised to work with one to many relationships and to automatically propagate filters (filter context) from the one side to the many side. In all versions of Power Pivot for Excel, this is the ONLY type of filter propagation that is available.
Power BI supports bi-directional cross filtering behaviour (shown right below) as well as single direction (shown left below).
In fact bi-directional filtering is the default behaviour for Power BI Desktop. There are many people (including me) that think this is a bad idea as bi-directional cross filtering comes at a cost – there is an overhead of constantly cross filtering the lookup table based on the contents of the data table at time when it is actually not required. Sure if you have a simple model and you need this behaviour and you don’t know how to handled it with the many to many pattern then turn it on. But surely this should not be turned on by default. In addition, if you have more than 1 data table, bi-directional cross filtering can cause circular references causing further confusion to unsuspecting users.
I think Microsoft is trying to make Power BI more user friendly for the “lay user” however in this case I think Microsoft has made a mistake. Do yourself a favour and turn off bi-directional cross filtering unless you explicitly need it. To change it just double click on the arrow and set the cross filter direction to single.
update: Last week 17th Feb 2017 I noted that new models I built were single directional by default – seems Microsoft has listened and changed the default behaviour.
Wrap Up
Hopefully this article has helped you understand more about how Power Pivot works. Let me know in the comments below if there is anything I have missed.
Как показывает практика, если в файле Excel больше 50 тысяч строк, да еще формулы типа ВПР, он падает и умирает. Потом восстает, как зомби, чтобы выпить нашу кровь и нервы. Ведет он себя тоже как зомби — еле двигается и «ни черта» не соображает.
Что же делать? Ответ простой: начать работать с надстройкой для Excel — Power Pivot. Этот инструмент создан для работы с данными. Он может легко обрабатывать миллионы строк!
Надстройка Power Pivot в Excel
Power Pivot – это надстройка Excel, с помощью которой можно работать с данными в несколько миллионов строк, объединять таблицы в модель данных и создавать аналитические вычисления.
В «обычном» Excel пользователи ограничены количеством строк в таблице – не более размера листа в 1 048 тысяч строк, но в Power Pivot такого ограничения нет. Надстройка может подключаться к данным из внешних источников и работать с большими объемами информации в миллионы строк.
Открыть надстройку Power Pivot можно, нажав на вкладке меню Power Pivot кнопку Управление. Эта вкладка выглядит одинаково во всех версиях Excel.
Если такой вкладки у вас меню нет, проверьте, та ли у вас версия Excel. Так как Power Pivot представляет собой надстройку COM, то перед первым применением вам может потребоваться добавить её в меню (как это сделать, читайте в предыдущей статье).
Хорошая новость: начиная c версий после 2019 года компания Microsoft анонсировала включение Power Pivot во все версии Excel.
Как правило, разработка отчетов в Power Pivot происходит в следующем порядке:
- Подключение к внешним источникам данных. При загрузке в Power Pivot данные сжимаются в несколько раз с помощью специальных механизмов оптимизации.
- Объединение таблиц в модель данных с помощью создания связей между ними.
- Аналитические вычисления с помощью DAX-формул.
- Построение сводных таблиц и диаграмм на основе модели данных.
Подключения к источникам, связи и вычисления настраиваются в отчете один раз. При изменении исходных данных отчеты можно обновить в меню Данные → Обновить все. Давайте разберем подробнее, как это работает.
Добавление данных в Power Pivot
Чтобы начать работать с Power Pivot, перейдите на вкладку меню Power Pivot → нажмите Управление. Добавить данные в открывшейся надстройке можно несколькими способами:
- С помощью встроенных инструментов импорта.
- Добавить данные из Power Query.
- Также таблицу с данными можно просто скопировать и вставить в Power Pivot из буфера обмена в меню Главная → Вставить.
Способ 1. Подключение к данным с помощью встроенных инструментов импорта.
В Power Pivot есть свои инструменты для импорта внешних данных, которые можно найти на вкладке Главная → кнопки Из базы данных, Из службы данных, Из других источников.
С помощью встроенных инструментов настраивается подключение к 15 видам источников данных.
Увидеть весь список можно в окне «Мастер импорта таблиц», которое открывается в меню Главная → Из других источников.
Настроим подключение к данным на примере файла Excel. Укажите путь к файлу, поставьте галочку «Использовать первую строку в качестве заголовков столбцов», выберите таблицы, жмем «Готово». У вас в окне включится счетчик импорта строк — работает довольно быстро. В результате импорта в окне Power Pivot появятся вкладки с таблицами.
Способ 2. Добавить данные из Power Query.
Загрузка данных с помощью инструментов Power Pivot делается легко, но Power Query лучше подходит для импорта и значительно расширяет возможности аналитики. В нем намного больше доступных источников и возможностей для обработки таблиц произвольного вида.
Чтобы настроить подключение с помощью Power Query, вам нужно создать запрос к источнику данных. Список ранее созданных запросов находится на вкладке «Запросы и подключения». Нажмите на запрос правой кнопкой мышки и выберите Загрузить в… В открывшемся окне доступных вариантов импорта поставьте галочку «Добавить эти данные в модель данных». Задать настройки импорта также можно в самом редакторе Power Query.
К сожалению, в Excel 2010 Power Pivot почти невозможно «подружить» с Power Query и этот новый функционал в старом Excel сильно ограничен.
Интерфейс Power Pivot
Разберем подробнее интерфейс Power Pivot.
В окне Power Pivot есть:
- Лента редактора для вкладок меню Главная, Конструктор, Дополнительно.
- Строка формул на языке DAX.
- Область данных и вычисляемых столбцов.
- Добавление нового вычисляемого столбца.
- Область вычислений, в которой можно писать меры.
- Меню, которое появляется при нажатии правой кнопкой мышки.
- Ярлычки с названиями таблиц данных для переключения между ними (как между листами в «обычном» Excel).
Модель данных и связи
Чтобы перейти к настройке связей между таблицами, выберите в меню Главная → Представление диаграммы (вернутся обратно к просмотру таблиц можно, нажав Представление данных).
Модель данных в Power Pivot – это набор таблиц, объединенных связями.
Графически связь таблиц обозначается линией между ними, как в примере на рисунке. Чтобы создать связь, выделите мышкой поле в одной таблице и «перетащите» его на соответствующее ему поле в области другой таблицы.
Power Pivot поддерживает типы связей «один к одному», «один ко многим».
- Понять, какой именно вид связи задан между таблицами, можно с помощью значков на концах линий: на стороне «один» стоит символ единица — «1», а на стороне «многие» — звездочка «*». Если между таблицами задана связь «один к одному», то на концах линии будут единички «1».
- Поля, которые используются для создания связей, называются ключами связи. В таблицах, которые находятся на стороне «один» (конец линии с единичкой «1») в ключевых столбцах должны содержаться только уникальные значения. В таблицах на стороне «многие» со звездочкой «*» в ключевых столбцах те же значения, но они могут повторяться много раз.
- Стрелка на линии связи обозначает направление фильтрации. Так, на рисунке выше справочники Товары и Города фильтруют таблицы ДанныеФакт и ДанныеПлан.
Если выделить мышкой линию связи в модели данных, то можно увидеть, с помощью каких полей задана связь. Выделенные линии можно удалять. Или, щелкнув по ним дважды, менять связи в открывшемся окне. Также управление связями доступно в окне, которое открывается в меню Конструктор → Управление связями.
Вычисления в Power Pivot
Формулы Power Pivot пишут на языке DAX (Data Analysis Expressions, выражения для анализа данных). DAX-формулы позволяют, по аналогии с формулами Excel, выполнять вычисления и/или настраивать произвольную фильтрацию и представление данных в таблицах.
Язык DAX впервые появился в 2010 году вместе с надстройкой Power Pivot. В этом языке сотни функций, с помощью которых можно создавать аналитические расчеты. Кроме Power Pivot в Excel, DAX-формулы также доступны в Power BI и Analysis Services. То есть эти формулы вам точно пригодятся.
Вычисления с помощью DAX-формул создаются в виде:
- вычисляемых столбцов, как в обычных таблицах Excel.
- мер, которые пишут в области вычислений под таблицей.
Вычисляемые столбцы представляют собой столбцы в таблицах данных, созданные с помощью формул. Чтобы добавить такой столбец, щелкните мышкой дважды по столбцу слева «Добавление столбца», введите название вычисления, а затем знак «=» и формулу в строке формул.
Вычисляемый столбец похож на любой другой столбец в таблице. Также с помощью таких столбцов можно создавать связи в модели. Вычисляемые столбцы в Excel рассчитываются в момент загрузки (обновления) данных, а значения в самом столбце сохраняются, увеличивая размер файла. То есть столбцы – это статические вычисления.
Как и вычисляемые столбцы, меры тоже создаются с помощью DAX-формул. В отличие от столбцов, меры – это динамические вычисления, результат которых зависит от контекста – его можно увидеть в отчете, где мы задаем в разрезе каких полей, фильтров и др. вычислить меру. Меры записываются под таблицей в области вычислений.
Меры в Power Pivot можно превратить в KPI – ключевые показатели эффективности. Для этого выделите меру и нажмите на кнопку Создать KPI в меню Главная. Кроме мер, созданных пользователями, в Excel также есть неявные меры. Они создаются автоматически при формировании сводной таблицы, когда пользователь помещает данные в область значений. Чтобы посмотреть, есть ли у вас в Power Pivot неявные меры, выберите на вкладке Главная → Показать скрытые.
Отчеты на основе Power Pivot
Power Pivot отлично работает со сводными таблицами. Используя модель данных, пользователи могут создавать отчеты с помощью сводных таблиц и диаграмм. Чтобы создать сводную таблицу, выберите меню Главная → Сводная таблица.
В версиях Excel после 2013 года это можно сделать прямо из Excel в меню Вставка → Сводная таблица, выбрав там «Использовать модель данных этой книги». После этого откроется стандартное меню, уже знакомое вам по работе с обычными сводными таблицами.
Вид этого окна может немного отличаться в зависимости от версии Excel.
Так как данные в Power Pivot связаны, можно создать одну сводную таблицу на основе нескольких таблиц. Например, добавить в область строк и столбцов значения из справочников, а в область значений – меры, записанные с помощью DAX-формул.
Подключения к источникам данных и вычисления настраиваются в отчете один раз. Если данные в источниках поменяются, то для повторного выполнения вычислений достаточно нажать на кнопку Обновить все на вкладке Данные.
Hi, i am not able to connect the 3 tables i have. gettign the following error:
failed to save modifications to the server. Error returned: ‘Relationship ‘d1259967-03f1a-b4a5-f83344f5d47’…» between columns ‘ MAS[Part_Num]’ and ‘Table B[Cl_Part]’ has the TO end cardinality set to Many. To end cardinality must always be set to One.
Part_Num column has Ids like below:
M393A2K43BB1-CRC |
750-40017-01 |
AGIGA9831-001JCB |
HMN82GR7AFR4N-UH |
Quick fix/resolution for something that I noticed when populating a PowerPivot model with data from an OData feed via PowerQuery. The feed had nested XML tables that I pivoted into the main resultset using the PowerQuery “expand”. The resulting column name by default is ParentField.ChildField
I left the column names as default, added it to a PowerPivot model and tried to join it using one of these fields (Job[Client.ID] => Client[ID]) and received the following error
============================
Error Message:
============================
Query (1, 183) The dimension ‘[Client.ID_Cardinality]’ was not found in the cube when the string, [Client.ID_Cardinality], was parsed.
It seems power pivot doesn’t quote identifiers. Quick fix is to rename the pivoted column (Job[Client.ID]) to one that doesn’t include a period in the column name (Job[ClientID])
An example!
Imagine I’ve imported the following data into excel
and added it into a data model
Now I try to relate the Job table to the Client table using [Job]Client.ID => Client[ID]
Quite an error message.
But if in the Job table I rename Client.ID to ClientID
Success!
Something to keep in mind, especially when expanding nested XML tables using PowerQuery. Strip those periods (and probably other special characters)!
Содержание статьи: (кликните, чтобы перейти к соответствующей части статьи):
- DAX функция ERROR
- DAX функция IFERROR (если ошибка)
- DAX функция ISERROR
Приветствую Вас, дорогие друзья, с Вами Будуев Антон. В этой статье мы рассмотрим несколько функций в Power BI и Power Pivot, которые так или иначе обрабатывают возникающие во время вычислений в DAX, ошибки. И это функции ERROR, IFERROR и ISERROR.
Для Вашего удобства, рекомендую скачать «Справочник DAX функций для Power BI и Power Pivot» в PDF формате.
Если же в Ваших формулах имеются какие-то ошибки, проблемы, а результаты работы формул постоянно не те, что Вы ожидаете и Вам необходима помощь, то записывайтесь в бесплатный экспресс-курс «Быстрый старт в языке функций и формул DAX для Power BI и Power Pivot».
DAX функция ERROR в Power BI и Power Pivot
ERROR () — останавливает выполнение DAX кода и выводит заранее определенную пользователем ошибку (предупреждение).
Синтаксис: ERROR («Текст ошибки»)
Пример: в Power BI имеется исходная таблица с перечислением товаров и их количеством
Суть задачи: создать такую меру, чтобы она всегда вычисляла общее количество товара и пользователь не мог наложить никаких фильтров на это вычисление. Если пользователь накладывает фильтры, нужно остановить вычисление меры и в Power BI Desktop выдать пользователю ошибку (предупреждение).
Общее количество можно рассчитать при помощи DAX функции SUM:
Общее Количество Товара = SUM ('Товары'[Количество])
Данная формула действительно сможет посчитать общее количество товара, но она также легко подвержена пользовательским фильтрам, что по условию задачи нам не нужно:
Тогда мы можем изменить формулу выше и сумму рассчитать под следующим условием: если наложен какой-либо фильтр, то выдать пользователю предупреждение, если фильтра нет, то рассчитать количество.
Все это легко решается при помощи функций IF (условия «если») и ISFILTERED (проверяет на наличие фильтров):
Общее Количество Товара = IF( ISFILTERED('Товары'[Товар]); "ФИЛЬТРОВАТЬ ТОВАРЫ НЕЛЬЗЯ!"; SUM('Товары'[Количество]) )
Получившаяся формула вполне рабочая, если мы выберем какой-либо товар, то нам действительно выйдет предупреждение:
В принципе, мы задачу практически решили. Но, можно пойти еще дальше и при пользовательском фильтре не то чтобы просто вывести предупреждение, а вообще остановить работу DAX формулы и тем самым действительно обратить внимание пользователя к ошибке.
И это как раз таки можно реализовать при помощи функции ERROR, прописав внутри нее наш текст предупреждения, и вставив ERROR заместо текста предупреждения в формуле выше:
Общее Количество Товара = IF( ISFILTERED('Товары'[Товар]); ERROR("ФИЛЬТРОВАТЬ ТОВАРЫ НЕЛЬЗЯ!"); SUM('Товары'[Количество]) )
Тогда, если пользователь наложит фильтр, то DAX формула остановит свою работу:
И при нажатии на визуализации в Power BI на ссылку «См. подробности», выйдет текст самого предупреждения, который мы прописывали в ERROR:
Если убрать все фильтры, то, соответственно, формула рассчитает общее количество товаров и ни каких предупреждений от ERROR не будет.
DAX функция IFERROR (если ошибка) в Power BI и Power Pivot
IFERROR () — если ошибка. Производит вычисление выражения и если во время вычисления возникла ошибка, то функция выводит значение из второго параметра, если ошибок нет, то возвращается результат вычисления самого выражения.
Синтаксис: IFERROR (Выражение; Значение Если Ошибка)
Пример формулы 1: IFERROR (6 / 2; BLANK() ) Результат: 3
В итоге возвратился результат вычисления самого выражения, так как само выражение «6 / 2» вычисляется без ошибок и равно 3.
Пример формулы 2: IFERROR (6 / 0; BLANK() ) Результат: пусто
Так как на 0 делить нельзя, то результатом вычисления выражения будет ошибка и в этом случае IFERROR выведет значение из второго параметра, где в нашем случае стоит функция BLANK, которая, в свою очередь, выводит пустое значение.
То есть, функцией IFERROR можно обрабатывать ошибки в формулах, где возможно деление на 0. Но, кроме этого, можно при помощи нее застраховываться и от любых других ошибок, возникающих при выполнении формул в DAX.
DAX функция ISERROR в Power BI и Power Pivot
ISERROR () — относится к информационным функциям DAX. Она выводит значение TRUE (Истина), если значение, входящее в ее параметр вычисляется с ошибкой, а также, значение FALSE (Ложь), если ошибок нет.
Синтаксис: ISERROR (Значение)
Пример формулы 1: ISERROR (6 / 2) Результат 1: FALSE (Ложь) Пример формулы 2: ISERROR (6 / 0) Результат 2: TRUE (Истина)
В первой формуле ISERROR выдала значение FALSE (Ложь), потому что выражение «6 / 2» вычисляется без ошибки. Тогда как, во втором случае выражение «6 / 0» вычисляется с ошибкой и поэтому ISERROR выдала значение TRUE (Истина).
Если ISERROR дополнить функцией условия «если» IF, то получится полный аналог DAX функции, которую мы рассматривали выше — IFERROR:
IFERROR = IF ( ISERROR (Выражение); "Значение Если Ошибка" Выражение )
На этом, с разбором функций обработок ошибок в Power BI и Power Pivot, все.
Пожалуйста, оцените статью:
- 5
- 4
- 3
- 2
- 1
(5 голосов, в среднем: 5 из 5 баллов)
Успехов Вам, друзья!
С уважением, Будуев Антон.
Проект «BI — это просто»
Если у Вас появились какие-то вопросы по материалу данной статьи, задавайте их в комментариях ниже. Я Вам обязательно отвечу. Да и вообще, просто оставляйте там Вашу обратную связь, я буду очень рад.
Также, делитесь данной статьей со своими знакомыми в социальных сетях, возможно, этот материал кому-то будет очень полезен.
Понравился материал статьи?
Добавьте эту статью в закладки Вашего браузера, чтобы вернуться к ней еще раз. Для этого, прямо сейчас нажмите на клавиатуре комбинацию клавиш Ctrl+D