Как отобразить данные в заголовке отчета служб отчетов SQL 2005? - PullRequest
8 голосов
/ 15 сентября 2008

В готовых отчетах SSRS данные не отображаются в заголовке страницы. Есть ли способ получить эти данные, чтобы показать?

Ответы [ 7 ]

6 голосов
/ 15 сентября 2008

Одна из вещей, которую я хочу в своих отчетах, - иметь хорошие заголовки для моих отчетов. Мне нравится иметь логотип и параметры отчета пользователя вместе с другими данными, чтобы показать больше информации о бизнес-потребностях, которые отчет должен прояснить. Одна из вещей, которую Microsoft SQL Server 2005 Reporting Services не может сделать изначально, - это отображение данных из набора данных в заголовке. Этот пост расскажет, как обойти это и насколько это просто.

Создайте проект сервера отчетов в разделе «Проекты бизнес-аналитики» и назовите его AdventureWorksLTReports. Я использую образец базы данных AdventureWorksLT от CodePlex.

альтернативный текст http://www.cloudsocket.com/images/image-thumb.png

Затем отобразите верхний колонтитул страницы, щелкнув правой кнопкой мыши в области отчета с конструктором.

альтернативный текст http://www.cloudsocket.com/images/image-thumb1.png

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

альтернативный текст http://www.cloudsocket.com/images/image-thumb2.png

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

  • Дата заказа
  • Номер заказа на продажу
  • Компания
  • Продавец
  • Общая сумма

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

альтернативный текст http://www.cloudsocket.com/images/image-thumb3.png

В теле отчета поместите TextBox для каждого поля данных, необходимого в заголовке страницы. В видимости для каждого TextBox выберите True для скрытого. Это будет заполнитель для данных, необходимых в заголовке страницы.

альтернативный текст http://www.cloudsocket.com/images/image-thumb4.png

Ваш отчет должен выглядеть примерно так, как показано на скриншоте ниже.

альтернативный текст http://www.cloudsocket.com/images/image-thumb5.png

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

= ReportItems! .Value

Ваш отчет должен выглядеть примерно так:

альтернативный текст http://www.cloudsocket.com/images/image-thumb6.png

В предварительном просмотре отчета теперь должны быть данные заголовка заказа на продажу в заголовке отчета.

альтернативный текст http://www.cloudsocket.com/images/image-thumb7.png

4 голосов
/ 15 сентября 2008

Вы должны сделать это через Параметры. Добавьте параметр для каждого фрагмента данных, который вы хотите отобразить, затем установите для параметра значение Скрытый. Затем установите значение по умолчанию «Из запроса» и установите для поля «Набор данных и значение» соответствующие значения.

1 голос
/ 31 января 2012

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

0 голосов
/ 01 августа 2012

Я хотел показать поле, общее для всех возвращаемых строк, в заголовке, и для этого сценария я выбрал решение для связанной таблицы (поместив таблицу, содержащую поле в теле, и связав текстовое поле в заголовке с этим Таблица).

Я сделал это, потому что, если вы используете решение для параметров и данные не возвращаются в рассматриваемое поле, вместо пустой таблицы отображается текст «Параметр пропускает значение». Я считал, что этот текст может запутать пользователей (так как параметр даже не виден).

0 голосов
/ 02 ноября 2008

Я здесь с Орионом Адрианом. Параметры отчета - это путь.

0 голосов
/ 24 сентября 2008

Этот метод не будет работать, если ваш отчет охватывает несколько страниц, вместо этого используйте запрашиваемые параметры и установите значение текстового поля равным = Параметры! Имя. Значение согласно этой статье .

0 голосов
/ 15 сентября 2008

Вот два возможных обходных путей :

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

  2. Попробуйте использовать параметры отчета для хранения данных и используйте эти параметры для доступа к данным в заголовке.

...