Печать отчета без ReportViewer в ASP.NET

Я использую службы отчетов Business Intelligent для создания отчетов о некоторых данных из моей базы данных MS SQL. В ASP.NET я создаю новое средство просмотра отчетов, которое берет данные из BI и отображает отчет, после чего я могу его распечатать.

Мой вопрос: как я могу распечатать отчет без просмотра отчетов?

заранее спасибо :)


person ecleel    schedule 15.11.2008    source источник


Ответы (1)


Обычно я предоставляю отчеты, оптимизированные для печати, в виде ответов в формате .pdf. Это предполагает, что у клиента установлена ​​программа для чтения .pdf. Поскольку ваш сценарий звучит как бизнес-ориентированный, это может быть разумным.

Если сервер отчетов доступен напрямую, вы можете получить доступ к отчету через URL-адрес отчета (что-то вроде этого...):

"http://myserver/reportserver?/MyReports/MyPrintFriendlyReport&rs:Command=Render&rc:LinkTarget=main&rs:Format=PDF"

У меня обычно не получается это сделать. Чтобы преодолеть проблемы с безопасным доступом/брандмауэром, я создаю страницу для вызова веб-службы службы отчетов. Метод рендеринга возвращает массив байтов на основе предоставленных вами параметров («pdf», если вы укажете). Затем вы изменяете заголовки типа содержимого и Response.BinaryWrite результат.

Вы должны иметь возможность поискать в Google пример кода для этого (сейчас у меня нет доступного).

person HectorMac    schedule 15.11.2008