Поделиться через


Ссылки на коллекцию ReportItems (построитель отчетов и службы SSRS)

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

ПримечаниеПримечание

В построителе отчетов или конструкторе отчетов SQL Server Data Tools можно создавать и изменять определения отчета (RDL). В каждой среде разработки существуют различные способы создания, открытия и сохранения отчетов и связанных элементов. Дополнительные сведения см. в разделе Разработка отчетов в построителе отчетов и конструкторе отчетов (SSRS) на веб-сайте microsoft.com.

Использования свойства значения ReportItems

Элементы коллекции ReportItems имеют только одно свойство: Value. Значение элемента ReportItems может использоваться для отображения или вычисления данных из другого поля отчета. Чтобы получить доступ к значению текущего текстового поля, можно использовать встроенное в Visual Basic глобальное выражение Me.Value или просто Value. Однако в функциях отчета, таких как First и агрегатных функциях, необходимо использовать полный синтаксис.

Например.

  • Это выражение, помещенное в текстовое поле, отображает значение текстового поля ReportItem с именем Textbox1:

    =ReportItems!Textbox1.Value

  • Это выражение, помещенное в текстовое поле ReportItem свойства Color, отображает текст черным цветом, если значение > 0, в ином случае — красным:

    =IIF(Me.Value > 0,"Black","Red")

  • Это выражение, помещенное в текстовое поле верхнего или нижнего колонтитула, отображает на каждой странице отчета, готового для просмотра, первое значение текстового поля LastName:

    =First(ReportItems("LastName").Value)

Выражения колонтитулов в стиле словаря

Можно создать верхний колонтитул, который будет отображать на странице первого и последнего клиентов. Так как текстовое поле в верхнем колонтитуле может ссылаться на встроенную коллекцию ReportItems только один раз в выражении, необходимо добавить в верхний колонтитул два текстовых поля: одно для имени первого клиента (=First(ReportItems!textboxLastName.Value), а второе для имени последнего клиента (=Last(ReportItems!textboxLastName.Value).

В разделе верхнего или нижнего колонтитула только текстовые поля текущей страницы доступны как члены коллекции ReportItems. Например, если выражение ReportItems!textboxLastName.Value ссылается на текстовое поле, которое появляется только на первой странице многостраничной области данных, значение видно для первой страницы, но на всех других страницах отображается #Ошибка, показывая, что выражение не может быть оценено в том виде, в каком оно записано.

Область коллекции ReportItems

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

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

См. также

Справочник

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

Примеры выражений (построитель отчетов и службы SSRS)

Основные понятия

Разбиение на страницы в службах Reporting Services (построитель отчетов и службы SSRS)

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