我正在使用Business Intelligent Reporting Service来报告来自My MS SQL Database的一些数据。在ASP.NET中,我创建了新的报表查看器,它从BI获取数据并显示报表,然后我可以打印它。
我的问题是如何在没有报告查看器的情况下打印报告?
提前感谢:)
答案 0 :(得分:2)
我倾向于提供针对打印优化的报告作为.pdf响应。这假设客户端安装了.pdf阅读器。由于您的场景听起来像是以业务为中心的场景,因此这可能是合理的。
如果可直接访问报表服务器,则可以通过报表的URL访问报表(类似这样的内容):
"http://myserver/reportserver?/MyReports/MyPrintFriendlyReport&rs:Command=Render&rc:LinkTarget=main&rs:Format=PDF"
我通常不会这样做。为了克服安全访问/防火墙问题,我创建了一个页面来调用报告服务Web服务。 render方法根据您提供的参数返回一个字节数组(如果指定,则返回“pdf”)。然后修改内容类型标题和Response.BinaryWrite结果。
您应该可以谷歌搜索此示例代码(我现在无法访问)。