【问题标题】:Reporting Services 2008: Is there a way to change item properties, depending on how a report is being rendered?Reporting Services 2008:是否可以根据报表的呈现方式更改项目属性?
【发布时间】:2009-02-06 08:34:53
【问题描述】:
我正在写一份报告,它可以很好地导出为 PDF。但是,它不能正确导出到 Word 文档 (.doc)。
(页眉区域的边距被忽略,这会弄乱分页符、页脚文本丢失等)
要解决此问题,我想根据报告是呈现为 PDF 还是 Word 文档来禁用、启用和/或调整报告中的一些项目的大小。
有没有办法根据报告的呈现方式设置项目属性?
【问题讨论】:
标签:
sql-server
reporting-services
reporting
export-to-word
【解决方案2】:
我有一个类似的场景,我需要在 asp.net 应用程序中使用报表查看器控件。我想出的解决方案是将工具栏隐藏在报表查看器控件中,并为各种格式(PDF、Excel 是我们目前使用的两种格式)创建自己的下拉选择器。
解决方法是,在加载报表查看器控件时,我将一个附加参数传递给我的报表,指示“RenderType=HTML”。当请求说 PDF 版本时,我使用相同的方法,除了我使用 ServerReport.Render() 函数并传递“PDF 作为 RenderType 参数,与 Excel 相同。
这允许我在我的报告中针对各种报告格式进行条件格式化/显示/隐藏内容。
因为报表查看器 Web 控件支持从后面的代码渲染特定页面/缩放等功能,所以很容易构建我们自己的“工具栏”来操作报表,并为我们提供了更适合我们的样式的优势应用程序,(尽管无论如何这都可以用 css 完成)。它解决的另一个问题是需要活动 x 组件的奇怪打印功能,我们实现了自己的打印机制以打印机友好的方式写出报告。
希望这会有所帮助。