Подготовка данных для отображения в области данных табликса (построитель отчетов и службы SSRS)
Область данных табликса отображает данные из набора данных. Существует возможность как просматривать все данные, полученные из набора данных, так и создавать фильтры, позволяющие просматривать подмножество этих данных. Можно также добавить условные выражения для заполнения пустых значений или изменить запрос к набору данных, включив в него столбцы, определяющие порядок сортировки для существующих столбцов.
Примечание |
---|
В построителе отчетов или конструкторе отчетов SQL Server Data Tools можно создавать и изменять определения отчета (RDL). В каждой среде разработки существуют различные способы создания, открытия и сохранения отчетов и связанных элементов. Дополнительные сведения см. в разделе Разработка отчетов в построителе отчетов и конструкторе отчетов (SSRS) на веб-сайте microsoft.com. |
Работа с пустыми значениями и значениями NULL в полях
Данные коллекции полей набора данных включают все значения, полученные из источника данных во время выполнения, в том числе значения NULL и пустые значения. Обычно эти два значения неотличимы. В большинстве случаев это приемлемо. Например, числовые агрегатные функции Sum и Avg не учитывают значения NULL. Дополнительные сведения см. в разделе Справочник по агрегатным функциям (построитель отчетов и службы SSRS).
Если значения NULL необходимо обрабатывать каким-либо иным образом, то можно воспользоваться условными выражениями или пользовательским кодом для замены NULL другим значением. Например, следующее выражение производит подстановку текста Null вместо значений NULL в столбце [Size].
=IIF(Fields!Size.Value IS NOTHING,"Null",Fields!Size.Value)
Дополнительные сведения об обработке значений NULL при получении данных из источника данных SQL Server при помощи запросов Transact-SQL см. в разделах «Значения NULL» и «Значения NULL и соединения» в документации по SQL Server в электронной документации по SQL Server.
Обработка имен полей со значением 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)