Службы Reporting Services 2008: есть ли способ изменить свойства элемента в зависимости от способа представления отчета? - PullRequest
3 голосов
/ 06 февраля 2009

Я пишу отчет, который хорошо экспортируется в PDF. Однако он не экспортируется в документ Word (.doc) должным образом.

(Поля игнорируются в области заголовка, которая портит разрывы страниц, отсутствует текст нижнего колонтитула и т. Д.)

Чтобы обойти это, я хочу отключить, включить и / или изменить размер нескольких элементов в моем отчете в зависимости от того, отображается ли он в виде документа PDF или Word.

Есть ли способ задать свойства элементов, основанные на том, как отображается отчет?

Ответы [ 2 ]

3 голосов
/ 06 февраля 2009

Я думаю, что единственное решение вашей проблемы заключается в следующем: в вашем отчете вы можете получить доступ к Globals.ReportServerUrl. При вызове отчета вы можете указать его тип рендеринга (и даже другие вещи, такие как размеры и т. Д.) В URL. Все, что вам нужно сделать, это написать собственный код для извлечения типа рендеринга из URL, и все готово.

Для получения дополнительной информации обо всех возможных параметрах URL перейдите сюда: http://technet.microsoft.com/en-us/library/ms154040.aspx

1 голос
/ 23 сентября 2009

У меня был похожий сценарий, мне нужно было использовать элемент управления просмотра отчетов в приложении asp.net. Решением, которое я придумал, было скрытие панели инструментов в элементе управления средством просмотра отчетов и создание собственного выпадающего селектора для различных форматов (PDF, Excel - это те два, которые мы используем в настоящее время).

Обходной путь заключается в том, что при загрузке элемента управления средства просмотра отчетов я передаю дополнительный параметр своим отчетам, указывающий «RenderType = HTML». Когда делается запрос на получение, скажем, версии PDF, я использую ту же методологию, за исключением того, что я использую функцию ServerReport.Render () и передаю «PDF в качестве параметра RenderType, то же самое для Excel.

Это позволяет мне выполнять условное форматирование / показ / скрытие вещей в моих отчетах для различных форматов отчетов.

Поскольку Webcontrol Report Viewer поддерживает функциональность для рендеринга определенных страниц / масштабов из кода и т. Д., Было довольно легко создать нашу собственную «панель инструментов» для манипулирования отчетом, и это дало нам преимущество в том, чтобы сделать его более подходящим для приложение, (хотя это может быть сделано с помощью CSS в любом случае). Еще одна проблема, которую он решил, - это странная функция печати, требующая активного компонента x, мы реализовали наш собственный механизм печати, чтобы выписать отчет в удобном для печати виде.

Надеюсь, это поможет.

...