开箱即用的SSRS报告无法在页眉中显示数据。有没有办法让这些数据显示出来?
答案 0 :(得分:6)
我在报告中想要的一件事就是为我的报告提供漂亮的标题。我希望有一个徽标和用户的报告参数以及其他数据,以便为报告需要澄清的业务需求提供更多信息。 Microsoft SQL Server 2005 Reporting Services无法本机执行的操作之一是显示标头中数据集的数据。这篇文章将解释如何解决这个问题以及它是多么容易。
在Business Intelligence Projects部分中创建Report Server项目,并将其命名为AdventureWorksLTReports。我使用CodePlex的AdventureWorksLT示例数据库。
alt text http://www.cloudsocket.com/images/image-thumb.png
接下来,使用设计器右键单击“报告”区域,显示页眉。
alt text http://www.cloudsocket.com/images/image-thumb1.png
将出现页眉。如果要显示页脚,可以从与页眉相同的菜单访问它。
alt text http://www.cloudsocket.com/images/image-thumb2.png
我创建了一个存储过程,该过程返回要在页眉中显示的销售订单的数据。我将在页眉中显示有关销售订单的以下信息:
我为Page Header中的每个数据字段创建一个TextBox以及相应标签的TextBox。请勿更改要在其中输入销售订单数据的文本框中的表达式。
alt text http://www.cloudsocket.com/images/image-thumb3.png
在报表正文中,为页眉中所需的每个数据字段放置一个TextBox。在每个TextBox的Visibility中,选择True for Hidden。这将是页眉中所需数据的占位符。
alt text http://www.cloudsocket.com/images/image-thumb4.png
您的报告应与下面显示的屏幕截图类似。
alt text http://www.cloudsocket.com/images/image-thumb5.png
最后一步,最重要的是引用位于页眉中的TextBox中的隐藏文本框。我们使用以下表达式来引用所需的TextBox:
= ReportItems!.value的
您的报告现在应该类似于以下内容:
alt text http://www.cloudsocket.com/images/image-thumb6.png
您的报告预览现在应该在报告标题中包含销售订单标题数据。
答案 1 :(得分:4)
你必须通过参数来做到这一点。为要显示的每个数据添加一个参数,然后将参数设置为Hidden。然后将默认值设置为“From Query”,并将Dataset和Value字段设置为适当的值。
答案 2 :(得分:1)
我认为最好的选择是创建一个内部参数,默认值是您要显示的数据集的字段。
答案 3 :(得分:0)
以下是两种可能的解决方法:
您可以将数据绑定字段作为隐藏文本框放在报表正文中,然后在标题中放置另一个文本框,其值指向隐藏在正文中的文本框。
尝试使用报告参数存储数据,并使用这些参数访问标题中的数据。
答案 4 :(得分:0)
如果您的报告跨越多个页面,使用查询的参数,并将文本框值设置为= Parameters!Name.Value,则this article将无法使用此技术。
答案 5 :(得分:0)
我和猎户座阿德里安在这里。报告参数是要走的路。
答案 6 :(得分:0)
我想在标题中显示所有返回行共有的字段,对于这种情况,我选择了链接表解决方案(将包含字段的表放在正文中并将标题中的文本框链接到此表)。
我之所以这样做,是因为如果您正在使用参数解决方案且没有数据返回到相关字段,则文本"参数缺少值"显示而不是只是一个空白表。我认为这个文本会让用户感到困惑(因为参数甚至不可见)。