Подготовка данных для отображения в области данных табликса в отчете с разбивкой на страницы (построитель отчетов)
Область применения: Построитель отчетов (SSRS) Power BI конструктор отчетов построитель отчетов в SQL Server Data Tools
В отчете с разбивкой на страницы область данных табликса отображает данные из набора данных отчета. Существует возможность как просматривать все данные, полученные из набора данных, так и создавать фильтры, позволяющие просматривать подмножество этих данных. Можно также добавить условные выражения для заполнения пустых значений или изменить запрос к набору данных, включив в него столбцы, определяющие порядок сортировки для существующих столбцов.
Примечание.
Создать и изменить определение для отчета на страницу (RDL-файл) можно с помощью построителя отчетов (Майкрософт), построителя отчетов Power BI и конструктора отчетов в SQL Server Data Tools.
Работа с пустыми значениями и значениями NULL в полях
Данные коллекции полей набора данных включают все значения, полученные из источника данных во время выполнения, в том числе значения NULL и пустые значения. Обычно эти два значения неотличимы. В большинстве случаев это приемлемо. Например, числовые агрегатные функции Sum и Avg не учитывают значения NULL. Дополнительные сведения см. в статье Функции построителя отчетов — справочник по агрегатным функциям в отчетах с разбивкой на страницы (построитель отчетов).
Если значения NULL необходимо обрабатывать каким-либо иным образом, то можно воспользоваться условными выражениями или пользовательским кодом для замены NULL другим значением. Например, следующее выражение производит подстановку текста Null
вместо значений NULL в столбце [Size]
.
=IIF(Fields!Size.Value IS NOTHING,"Null",Fields!Size.Value)
Дополнительные сведения о замене значений NULL при получении данных из источника данных SQL Server при помощи запросов Transact-SQL см. в разделе NULL и UNKNOWN (Transact-SQL).
Обработка имен полей со значением NULL
Прекрасным решением будет проверка на значения NULL в выражении, поскольку в таком случае поле будет существовать в результирующем наборе запроса. В пользовательском коде придется во время выполнения проверять, существует ли поле в коллекции полей, возвращенных источником данных. Дополнительные сведения см. в разделе Ссылки на коллекцию полей набора данных (построитель отчетов и службы SSRS).
Добавление столбца порядка сортировки
По умолчанию значения поля набора данных сортируются по алфавиту. Чтобы сортировка выполнялась в другом порядке, необходимо добавить в набор данных новый столбец, определяющий необходимый порядок сортировки области данных. Например, чтобы выполнить сортировку по полю [Color]
таким образом, чтобы сначала шли белые и черные предметы, необходимо добавить столбец [ColorSortOrder]
, показанный в следующем запросе.
SELECT ProductID, p.Name, Color,
CASE
WHEN p.Color = 'White' THEN 1
WHEN p.Color = 'Black' THEN 2
WHEN p.Color = 'Blue' THEN 3
WHEN p.Color = 'Yellow' THEN 4
ELSE 5
END As ColorSortOrder
FROM Production.Product p
Чтобы отсортировать область данных таблицы в соответствии с этим порядком сортировки, задайте для группы сведений выражение =Fields!ColorSortOrder.Value
. Дополнительные сведения см. в разделе Сортировка данных в области данных (построитель отчетов и SSRS).
См. также
Коллекция полей набора данных (построитель отчетов и службы SSRS)
Выражения (построитель отчетов и службы SSRS)
Фильтрация, группировка и сортировка данных (построитель отчетов и службы SSRS)