0

详情:

我有一个显示发票信息的报告。多张发票之间有一个分页符(每张发票都有自己的页面)。我在报告标题中想要的是这个表达式的结果(例如“2009 年 6 月”):

=MonthName(Month(ReportItems!textbox1.Value)) & ", " & cstr(Year(ReportItems!textbox1.Value))

但我得到了这个异常(textbox2 在标题中):

错误 1 ​​[rsMultiReportItemsInPageSectionExpression] 文本框“textbox2”的值表达式引用了多个报表项。页眉或页脚中的表达式只能引用一个报表项。

首先……这有什么关系?!其次...我该如何解决这个奇怪的限制?


大图:

我从另一个文本框中获取文本的原因是为了解决不能在页眉或页脚中使用数据字段的限制。所以有一个隐藏列显示每笔交易旁边的发票日期。然后表头有表达式:

=First(Fields!InvoiceDate.Value, "table1_Group1")

这看起来很荒谬,我希望我只是做错了什么。是的,我意识到我可以简单地在标题中添加一个“月”和“年”文本框,但是对于在报告标题中显示发票日期的简单要求而言,这将复杂性推得太高。

4

2 回答 2

0

一个疯狂的猜测是textbox1报告的每一页都存在这种情况。因此,如果您有两张发票,您将有两页,因此 2 x textbox1,因此 SSRS 不知道要参考哪一张。

您可以尝试使用此处描述的报告参数。如果没有其他帮助,我想您必须将发票 ID 放入报告正文中。

于 2009-06-09T09:13:26.363 回答
0

我回到这个问题并找到了解决 SSRS 中错误行为的方法。

所有格式都可以在列标题内完成,而不是在页眉中完成。页眉中的文本框只是一次从列标题中获取已经格式化(和完整)的文本。不再有多重引用。

这是针对奇怪限制的 hackish 解决方法,这是针对另一个奇怪限制的 hackish 解决方法的结果。但它有效。

于 2009-07-09T08:59:05.013 回答