SSRS:根据行数

时间:2017-01-10 16:18:08

标签: reporting-services calendar expression

Microsoft SQL Server Reporting Services设计者 版本13.0.1701.8

我有一份日历报告,当任何给定月份的周数小于6时,我试图在底部添加额外的行。这是因为如果少于6,那么其他部分报告溢出。我也试过设置分页符,但它总是添加额外的空白页面,所以现在我尝试这个。

包含6行的示例:

enter image description here

包含5行的示例:

enter image description here

目前我添加了一个额外的行,将其分组在WeekNumber并设置表达式以隐藏/显示它。

enter image description here

表达式:

=iif(CountRows(Fields!WeekNumber.Value, "DataSet1")=6,True,False)

错误:

  

严重级代码描述项目文件行抑制状态   错误[rsInvalidAggregateScope] Visibility.Hidden表达式   文本框'Textbox14'具有无效的范围参数   聚合函数。 scope参数必须设置为字符串   常量等于包含组的名称,   包含数据区域的名称或名称   数据集。

     

严重级代码描述项目文件行抑制状态   错误[rsInvalidAggregateRecursiveFlag] Visibility.Hidden   文本框'Textbox14'的表达式使用聚合表达式   带有无效的递归/简单标志。此标志的有效值   是'递归'和'简单'。

我也尝试了以下内容并得到了与上述相同的错误:

=iif(CountRows(Fields!WeekNumber.Value, "Simple")=6,True,False)

SOLUTION:

感谢大家的回答。所以在我的问题中我有两个Tablix,一个带有日历,另一个带有摘要数据。为了解决我的问题,我最终在我的Tablix所在的两个矩形上设置了添加分页符

1 个答案:

答案 0 :(得分:1)

您不必在表格中添加额外的行。组的整个要点是表格会扩展,无论发生什么数据。此外,这不会解决您的分页问题。

为了让分页符正常工作,我建议你做两件事。

  1. 将分页符设置为首先在页面上首先显示的内容。如果它只是表格,请使用它。如果您有某种标题,请将其放在矩形中,然后在矩形的开头设置分页符。这可以确保您不会在页面开头有不同数量的空白区域。

  2. 确保您的边距设置得很低,并且表格不会太宽。如果页面太宽,则会创建额外的空白页面。特别是如果您导出为PDF。

  3. 修改 由于您希望在每个页面上重复多个元素,因此可以将它们全部包装在一个分组的矩形中,然后将分页设置为实例之间。

    请参阅我的回答here,了解如何做到这一点。在您的情况下,您似乎会按月分组。