根据范围隐藏tablix

时间:2019-04-17 20:48:42

标签: ssrs-2008 ssrs-tablix

我有一个包含4页的报告(其中包含无数的Tablix和子报告)。最后两页应仅在有数据时显示。我每个页面都是它自己的组(组名= PAGE1,PAGE2,PAGE3,PAGE4)。我也有一个针对第3页和第4页的群组(群组名称=“ EXTRA”)。我有一个包含整个报告的父组(组名=“ LRSN”)。

我一直试图根据Tablix(“ Tablix2”)中是否存在数据来隐藏第3页和第4页,该数据属于“ PAGE3”组和“ EXTRA”父组。我尝试将行,tablix和整个组“ EXTRA”隐藏起来。似乎应该可以,但是...没有运气。

我曾尝试在组,Tablix和/或行级别隐藏页面;我已经尝试过许多条件语句的组合,例如:

=CountRows("Tablix2")=0; 
=RowNumber("EXTRA")<0; and 
=IIF(CountRows("EXTRA")<0, True, False)

我收到错误消息(例如“分组“ EXTRA”的隐藏表达式的范围参数对于聚合函数无效……等等)。

我尝试混合作用域和容器,但似乎没有任何效果。

我应该如何编写条件语句以及在什么级别上(组?tablix?)。预先谢谢你!

1 个答案:

答案 0 :(得分:0)

使用CountRowsRowNumber函数似乎步入正轨,但是我认为您需要从数据集中进行计数,而不是从特定的组或tablix进行计数。如果您没有Tablix2的单独数据集(用作隐藏页面的参数),则应专门为Tablix2中的数据创建一个数据集。然后,您应该可以使用以下表达式在Tablix级别上设置可见性。

=IIF(CountRows("YourTablix2DatasetHere") > 0, False, True)

当数据集中没有返回行时,此表达式应将每个Tablix隐藏在所需的页面中。