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

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

Отчет включает в себя три типа полей, которые отображаются в области данных отчета: поля набора данных, поля, вычисляемые с помощью наборов данных, и встроенные поля.

  • Поля набора данных. Метаданные, представляющие коллекцию полей, возвращаемых при выполнении запроса набора данных в источнике данных.

  • Поля, вычисляемые с помощью набора данных. Дополнительные поля, создаваемые для набора данных. Все вычисляемые поля создаются при вычислении определяемого выражения.

  • Встроенные поля. Метаданные, представляющие коллекцию полей, указанную построителем отчетов, который используется для предоставления таких данных отчета, как имя отчета или время обработки отчета. Дополнительные сведения см. в разделе Встроенные глобальные значения и ссылки на пользовательские поля (построитель отчетов и службы SSRS).

Имена полей набора данных сохраняются как часть определения набора данных отчетов. Дополнительные сведения см. в разделе Внедренные и общие наборы данных отчета (построитель отчетов и службы SSRS).

Примечание

Создать и изменить определение для отчета на страницу (RDL-файл) можно с помощью построителя отчетов (Майкрософт), построителя отчетов Power BI и конструктора отчетов в SQL Server Data Tools.

Поля набора данных и очереди

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

  • Общий набор данных. Коллекция полей представляет собой список полей для запроса в определении общего набора данных во время добавления напрямую общего набора данных к отчету или во время добавления элемента отчета, включающей общий набор данных. Локальная коллекция полей не изменяется при изменении общего определения набора данных на сервере отчетов. Чтобы обновить коллекцию локальных полей, необходимо обновить список локального общего набора данных.

    Примечание

    Части отчетов являются устаревшими для всех выпусков SQL Server Reporting Services начиная с SQL Server Reporting Services 2019 года и для всех выпусков Сервер отчетов Power BI начиная с Сервер отчетов Power BI сентября 2022 г.

  • Внедренный набор данных. Коллекция полей представляет собой список полей, возвращаемых при выполнении текущего запроса в источнике данных.

Дополнительные сведения см. в разделе Добавление, изменение и обновление полей в области данных отчета (построитель отчетов и службы SSRS).

Вычисляемые поля

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

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

Дополнительные сведения см. в разделе Добавление, изменение и обновление полей в области данных отчета (построитель отчетов и службы SSRS).

Сущности и поля сущностей

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

Использование расширенных свойств поля

Источники данных, поддерживающие многомерные запросы, такие как службы SQL Server Службы Analysis Services, могут работать со свойствами полей. Свойства полей появляются в результирующем наборе запроса, но не видны на панели Данные отчета . Тем не менее, их можно использовать в отчете. Для обращения к свойству поля, перетащите поле в отчет и измените свойство по умолчанию Value на имя поля требуемого свойства. Например, в кубе служб Службы Analysis Services можно определить формат значений в ячейках куба. Значение форматируется с помощью свойства поля FormattedValue. Чтобы использовать значение напрямую, а не устанавливать свойство форматирования текстового поля, перетащите поле в текстовое поле и измените выражение по умолчанию =Fields!FieldName.Value на =Fields!FieldName.FormattedValue.

Примечание

Не все свойства Field можно использовать для всех источников данных. Свойства Value и IsMissing определены для всех источников данных. Другие стандартные свойства (например, Key, UniqueNameи ParentUniqueName для многомерных источников данных) поддерживаются только в случае поддержки этих свойств источником данных. Некоторые поставщики данных поддерживают пользовательские свойства. Дополнительные сведения см. в конкретных подразделах, посвященных расширенным свойствам полей для типа источника данных, в разделе Внедренные и общие наборы данных отчета (построитель отчетов и службы SSRS). Например, сведения об источнике данных SQL Server Analysis Services см. в разделе Расширенные свойства поля для базы данных служб Analysis Services (SSRS).

Основные сведения о выражениях по умолчанию для полей

Текстовое поле может быть элементом отчета Textbox в тексте отчета или текстовым полем в ячейке в области данных табликса. При связывании поля с текстовым полем, местоположение текстового поля определяет выражение по умолчанию для ссылки на это поле. В теле отчета выражение значения текстового поля должно задавать статистическое выражение и набор данных. Если в отчете имеется только один набор данных, такое выражение по умолчанию создается автоматически. Для поля, представляющего числовое значение, агрегатной функцией по умолчанию является Sum. Для поля, представляющего нечисловое значение, статистической функцией по умолчанию является First.

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

Дополнительные сведения о выражениях см. в разделе Выражения (построитель отчетов и службы SSRS).

Типы полей данных

При создании набора данных типы данных полей в источнике данных могут не совпадать с типами данных, которые используются в отчете. Типы данных могут проходить через один или два уровня сопоставления. Модуль обработки данных или поставщик данных может сопоставить типы данных из источника данных типам данных среды CLR. Типы данных, которые возвращаются модулями обработки данных, сопоставляются с подмножеством типов данных среды CLR платформы .NET Framework.

Источник данных поддерживает только определенные типы данных. Например, данные в базе данных SQL Server должны принадлежать к одному из поддерживаемых типов данных SQL Server , таким как nvarchar или datetime При получении данных из источника данных, они поступают в модуль обработки данных или поставщик данных, связанным с этим типом источника данных. В зависимости от модуля обработки данных, данные могут преобразовываться из типа данных, который поддерживается источником данных, в тип данных, поддерживаемый модулем обработки данных. Службы Reporting Services используют типы данных, которые поддерживаются версией CLR, устанавливаемой со средой SQL Server Data Tools (SSDT). Поставщик данных преобразует каждый столбец результирующего набора из собственного типа данных .NET Framework в тип данных среды CLR.

На каждом этапе данные представляются типами данных, приведенными в следующем списке.

  • Источник данных Типы данных, поддерживаемые версией типа источника данных, с которым выполняется соединение.

    Например, стандартные типы данных для источника данных SQL Server включают int, datetimeи varchar. Типы данных, появившиеся в SQL Server 2008 (10.0.x), добавили поддержку даты, времени, datetimetz и datetime2. Дополнительные сведения см. в разделе Типы данных (Transact-SQL).

  • Поставщик данных или модуль обработки данных. Типы данных, поддерживаемые версией поставщика данных или модуля обработки данных, которые выбираются при соединении с источником данных. Поставщики данных, основанные на платформе .NET Framework , используют типы данных, поддерживаемые средой CLR. Дополнительные сведения о типах данных поставщиков данных платформы .NET Framework см. в разделе Сопоставления типов данных (ADO.NET) и Работа с базовыми типами на сайте MSDN.

    Например, стандартные типы данных, поддерживаемые платформой .NET Framework , включают Int32 и String. Календарные даты и время поддерживаются структурой DateTime . Платформа .NET Framework 2.0 с пакетом обновления 1 (SP1) обеспечивает поддержку структуры DateTimeOffset для дат со смещением часового пояса.

    Примечание

    Сервер отчетов использует поставщики данных, установленные и настроенные на сервере отчетов. Клиенты разработки отчетов в режиме предварительного просмотра используют модули обработки данных, установленные и настроенные на клиентском компьютере. Отчет необходимо тестировать как в среде клиента, так и в среде сервера отчетов.

  • Обработчик отчетов . Типы данных основаны на версии среды CLR, установленной при установке Службы Reporting Services.

    Например, типы данных, которые обработчик отчетов использует для новых типов даты и времени, появившиеся в SQL Server 2008 (10.0.x), приведены в следующей таблице:

    Тип данных SQL Тип данных CLR Описание
    Date DateTime Только тип данных Date
    Time TimeSpan Только тип данных Time
    DateTimeTZ DateTimeOffset Дата и время со смещением часового пояса
    DateTime2 DateTime Дата и время с долями миллисекунд

Дополнительные сведения о типах баз данных SQL Server см. в разделах Типы данных (компонент Database Engine) и Типы данных и функции даты и времени (Transact-SQL).

Дополнительные сведения о включении ссылок на поле набора данных из выражения см. в разделе Типы данных в выражениях (построитель отчетов и службы SSRS).

Обнаружение отсутствующих полей во время выполнения

Когда отчет обрабатывается, результирующий набор для набора данных может не содержать значений для всех указанных столбцов, так как в источнике данных столбцы более не существуют. Можно использовать свойство поля IsMissing, чтобы выяснить, были ли возвращены значения для поля во время выполнения. Дополнительные сведения см. в разделе Ссылки на коллекцию полей набора данных (построитель отчетов и службы SSRS).

См. также:

Диалоговое окно «Свойства набора данных» — «Поля» (построитель отчетов)
Элементы отчета и наборы данных в построителе отчетов
Внедренные и общие наборы данных отчета (построитель отчетов и службы SSRS)