Подготовка данных для отображения в области данных табликса в отчете с разбивкой на страницы (построитель отчетов)

Применимо к: Microsoft Report Builder (SSRS) Power BI Report Builder конструктор отчетов в 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)