Функция "Показать элементы без данных" в Power BI

ПРИМЕНИМО К: служба Power BI Power BI Desktop

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

Снимок экрана: меню

Определение соответствующих данных

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

1. Группы из одной таблицы:Product[Color] - Product[Size]

Product[Color] Product[Size]
Синий Большой
Синий Средний
Синий Малый
Красный Большой

В этом примере Power BI отображает сочетания групп [Color-Size], представленные в таблице [Product].

Теперь давайте рассмотрим другое сочетание:

2. Группы из разных, но непосредственно связанных таблиц и меры:ProductStyle[Finish] - Product[Color] - Sum(Sales[Quantity])

ProductStyle[Finish] Product[Color] Sum(Sales[Quantity])
Gloss Синий 10
Matte Синий 15

В этом примере Power BI отображает только существующие сочетания. Сочетания, которые не существуют в модели, например (None+Blue) или (Matte+Red), отображаться не будут. Условие, которое определяет, существующие сочетания, является непустым значением для Sum(Sales[Quantity]).

Теперь давайте рассмотрим другой пример:

3. Группы из разных, но связанных таблиц без меры:ProductStyle[Finish] - Product[Color]

ProductStyle[Finish] Product[Color]
Gloss Синий
Gloss Красный
Matte Синий

Так как нет явной меры и две таблицы связаны напрямую, Power BI пытается внедрить меру, чтобы ограничить результирующее сочетание. В этом случае Power BI внедряет меру CALCULATE(COUNTROWS('Product')) , которая не должна быть пустой, так как product является общим для обеих таблиц.

В этом случае Power BI отображает сочетания, которые имеют записи в таблице Product, исключая сочетания (None+Blue) и (Matte+Red) .

4. Группы из разных и несвязанных таблиц

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

Снимок экрана: диалоговое окно ошибки с сообщением Не удается определить связи между полями.

Отображение элементов без данных

В предыдущем разделе описывается, как Power BI определяет, какие данные являются релевантными для отображения. Однако в некоторых случаях может потребоваться отобразить элементы без данных.

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

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

  1. Выберите визуальный элемент.
  2. В разделе Значения щелкните поле правой кнопкой мыши и выберите Показать элементы без данных в открывшемся меню, как показано на следующем изображении:

Снимок экрана: меню

Функция Показать элементы без данных не работает в следующих случаях:

  • В визуальный элемент мера не включена, и сгруппированные столбцы принадлежат к одной таблице.
  • Группы не связаны. Power BI не выполняет запросы для визуальных элементов, которые включают несвязанные группы.
  • Мера не связана ни с одной из групп. В этом случае мера не будет пустой только для некоторых сочетаний групп.
  • Существует определяемый пользователем фильтр мер, исключающий пустые меры. Например: SalesAmount > 0

Внимание!

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

Использование функции "Показать элементы без данных"

Наиболее интересными вариантами использования отображения элементов без данных являются меры. Рассмотрим ситуацию, когда группы относятся к одной таблице или могут быть связаны с помощью пути в модели. Например, ProductStyle напрямую связан с Product и косвенно связан с Sales. ProductStyle и ProductCategory могут быть связаны с помощью таблицы Product .

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

1. Группирование столбцов из одной таблицы:Product[Color] - Product[Size] - Sum(Sales[Quantity])

Как она отображается при отключении функции Показать элементы без данных :

Product[Color] Product[Size] Sum(Sales[Quantity])
Синий Средний 15
Синий Малый 10

Как она отображается, когда включена функция Показать элементы без данных :

Product[Color] Product[Size] Sum(Sales[Quantity])
Синий Большой
Синий Средний 15
Синий Малый 10
Красный Большой

Обратите внимание на то, как отображаются два новых сочетания с включенной функцией: синий — большой и красный — большой. Для обеих этих записей нет соответствующего элемента Quantity в таблице Sales. Тем не менее они отображаются в таблице Product.

2. Группирование столбцов из связанных таблиц:ProductStyle[Finish] - Product[Color] - Sum(Sales[Quantity])

Как она отображается при отключении функции Показать элементы без данных :

ProductStyle[Finish] Product[Color] Sum(Sales[Quantity])
Gloss Синий 10
Matte Синий 15

Как она отображается, когда включена функция Показать элементы без данных :

ProductStyle[Finish] Product[Color] Sum(Sales[Quantity])
Gloss Синий 10
Gloss Красный
Matte Синий 15
None

Обратите внимание, что пустое и глянцево-красное и пустое отображаются в виде сочетаний. Вот почему они появились:

  • Power BI сначала рассматривает ProductStyle[Finish] и выбирает все отображаемые значения, что приводит к глянцам, матовым, нет.
  • Используя каждое из этих значений, Power BI выбирает все соответствующие записи Product[Color] .
  • Так как None не соответствует записям Product[Color] , отображается пустое значение.

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

Теперь рассмотрим пример изменения порядка и его влияния на результаты. Этот пример совпадает со вторым элементом в этом разделе с измененным порядком.

Product[Color] — ProductStyle[Finish] — Sum(Sales[Quantity])

Вот как он отображается при отображении элементов без данных в:

Product[Color] ProductStyle[Finish] Sum(Sales[Quantity])
Синий Gloss 10
Синий Matte 15
Красный Gloss

Обратите внимание на то, что в таблице не отображается ProductStyle[Finish]=None. В этом случае Power BI сначала выбирает все значения Color в таблице Product . Затем для каждого цвета Power BI выбирает соответствующие значения Finish , содержащие данные. Так как значение None не отображается в сочетаниях Color, оно не выбрано.

Поведение визуальных элементов в Power BI

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

Снимок экрана: пункты меню

Например, в визуальном элементе матрицы с четырьмя полями в контейнере Строки , если в одном поле включен параметр Показывать элементы без данных , то для всех элементов матрицы он включен. На приведенном ниже рисунке функция Показать элементы без данных включена для первого поля в контейнере Строки, то есть поля SupplierID (Код поставщика). В других полях в контейнере "Строки " она также включена автоматически.

Снимок экрана: меню полей с выделенным пунктом Показать элементы без данных из контекстного меню SupplierID.

В отличие от этого для поля Continent (Континент) в контейнере Столбцы функция Показать элементы без данных не включена автоматически.

Такое поведение визуального элемента часто наблюдается при преобразовании визуального элемента в другой тип, например при преобразовании матричного визуального элемента в визуальный элемент таблицы. При таких преобразованиях функция Показать элементы без данных автоматически включается для любого поля, перемещаемого в контейнер с полем, для которого эта функция уже включена. В предыдущем примере, если в Параметре SupplierID включена функция Показать элементы без данных , а визуальный элемент преобразуется в таблицу, поле "Континент " из контейнера "Столбцы " перемещается (вместе с полями в контейнере "Строки ") в единственный контейнер, используемый в визуальном элементе таблицы , контейнер "Значения ". В результате для всех полей в контейнере Значения включено отображение элементов без данных .

Экспорт данных

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

Пример модели данных

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

Модель. Схема связей в модели данных.

Данные:

Product[ProductId] Product[ProductName] Product[Color] Product[Size] Product[CategoryId] Product[StyleId]
1 Prod1 Синий Малый 1 1
2 Prod2 Синий Средний 2 2
3 Prod3 Красный Большой 1 1
4 Prod4 Синий Большой 2 2
ProductCategory[CategoryId] ProductCategory[CategoryName]
1 Номер телефона
2 Камера
3 TV
ProductStyle[StyleId] ProductStyle[Finish] ProductStyle[Polished]
1 Gloss Да
2 Matte Нет
3 Нет Нет
Sales[SaleId] Sales[ProductId] Sales[Date] Sales[Quantity]
1 1 1/1/2012 0:00 10
2 2 1/1/2013 0:00 15

Дальнейшие действия

В этой статье описано, как включить функцию Показать элементы без данных в Power BI. Рекомендуем также ознакомиться со следующими материалами: