【发布时间】:2009-03-10 20:49:18
【问题描述】:
我有一个包含一组(办公室名称)的报告,每个组之间有分页符 - 因此只有一个办公室的数据可以显示在给定页面上。如何让该办公室名称出现在页眉中?
我尝试在报告的详细信息部分中创建一个隐藏的文本框,该文本框具有办公室名称值,然后在页眉中引用该文本框,但我在第 1 页上获得了最后一个办公室名称值,然后它每隔一个都是空白的页面。
【问题讨论】:
标签: sql-server-2008 reporting-services
我有一个包含一组(办公室名称)的报告,每个组之间有分页符 - 因此只有一个办公室的数据可以显示在给定页面上。如何让该办公室名称出现在页眉中?
我尝试在报告的详细信息部分中创建一个隐藏的文本框,该文本框具有办公室名称值,然后在页眉中引用该文本框,但我在第 1 页上获得了最后一个办公室名称值,然后它每隔一个都是空白的页面。
【问题讨论】:
标签: sql-server-2008 reporting-services
今天,我终于找到了另一种方法。
在您指定分页符的组上,在属性窗口中展开Group 部分。
见Pagination in Reporting Services (Report Builder and SSRS)
您可以在 Tablix 属性中设置 BreakLocation 属性, 矩形属性或组属性对话框,但您必须 设置 Disabled、ResetPageNumber 和 PageName 属性 报表生成器属性窗格。
您应该会看到一个PageName 字段。此字段可以设置为 tablix 使用的数据集中的字段数据值之一。
设置PageName 字段后,您可以向页眉/页脚添加一个文本框,并将表达式设置为使用PageName 字段。 Built-in Globals and Users References (Report Builder and SSRS)
=Globals!PageName
这应该会随着每个组的变化而变化,并且在每个页面上都可见。
我真的很难找到一个好的解决方案,所以如果我需要澄清答案,请随时提出建议。
【讨论】:
我得到了它的工作,我会发布答案,以防其他人遇到这个问题。
由于某种原因引用文本框不起作用,但是当我在表中放置一个具有相同值的隐藏列时,我可以在页眉中引用它。
【讨论】:
我实际上是在页脚中执行此操作,并且成功了!谢谢!只是想添加,如果您尝试在页眉或页脚中显示多个值,您可以将它们与页面名称表达式中的分隔符串在一起,例如
=Fields!FIELD1.Value + "|" + Fields!FIELD2.Value + "|" + Fields!FIELD3.Value + "|" + Fields!FIELD4.Value
然后您可以创建新字段(每个值一个)并解析出每个字段,如
=(Split(Globals!PageName, "|")).GetValue(0)
=(Split(Globals!PageName, "|")).GetValue(1)
=(Split(Globals!PageName, "|")).GetValue(2)
=(Split(Globals!PageName, "|")).GetValue(3)
【讨论】: