1
3
不幸的是,除了IE之外,其他浏览器不支持print按钮。 我想你意识到了这一点,并做了一个变通,我们还没有想出一个像样的解决方案。虽然我们的大多数用户更喜欢直接从Excel打印,所以我们允许他们导出文件,然后进行打印。 这个问题是一个很好的链接: |
2
5
下面是我为创建一个伪打印按钮所做的工作,该按钮模拟了Internet Explorer中报表查看器的打印功能,可以用于其他浏览器。 请注意,下面的解决方案需要JQuery。不需要安装ActiveX。 这是台阶。 第一步。 在报表查看器所在的页面中添加“打印”按钮。
请确保将版本号更改为RS版本。如果html代码有问题,可以使用internet explorer打开页面,检查print元素并复制它。 第二步。 添加一个div,您的PDF将在其中呈现。
第三步。 添加脚本。
代码说明: 首先,我们创建了一个变量来检测浏览器是否是IE。 通过在Reserved.ReportViewerWebControl.axd中使用getInternalViewer()方法,我们可以请求PDF版本的报表作为请求,该请求最初是在单击“导出”按钮时检索的。 然后,我们将contentDisposition变量指定为'AlwaysInline',因为我们希望将报告请求为PDF格式,而不是作为附件,而是作为可以在html元素中呈现的PDF格式。 https://msdn.microsoft.com/en-us/library/microsoft.reporting.webforms.reportviewer.exportcontentdisposition.aspx src_new变量将默认的导出按钮内容处理请求(默认设置为AlwaysAttachment)替换为我们的新请求“AlwaysInline”。 接下来,我们将iframe的src设置为新的url,当加载时,它将以PDF格式显示reportviewer中的报告。 iframe中的链式命令包括隐藏pdf元素、呈现它并在加载完pdf后立即打印它。 结束语 我希望有人会发现这段代码很有用,因为我很难在网上找到一个像样的解决方案,这是我做了一些研究后得出的结论。 |
3
2
请查找SSRS报表的代码,该报表具有用于Firefox和Chrome的打印功能的打印图标:
|
4
0
我对上面做了一些修改,在Chrome和Firefox上都很好。
|
Albert Laure · 在SSRS中的不同数据集中添加值字段 11 年前 |
RollTide · 监视SSRS订阅错误 11 年前 |
omkar patade · 滚动时冻结列标题 11 年前 |