我使用Report Builder 2012创建报告。我在列表框中插入了多个文本框和其他控件,这样我只需隐藏列表框就可以立即隐藏所有控件。我使用SQL Server存储过程来获取数据行。我使用下面的表达式来隐藏/显示列表框。
=iif(Fields!certificateType.Value = "CT", False, True)
它工作正常,但它只检查第一行数据。如果certificateType字段是" CT"在第一行数据中,它显示了列表框,但它没有为下一行数据隐藏列表框,其中certificateType不是" CT"。列表框可见性似乎只检查第一行数据并将其应用于所有其他行。如何查看所有数据行的列表可见性?
答案 0 :(得分:0)
好的,基于我们的聊天,我已经更新了这个解决方案。
我模拟了一些看起来像这样的数据:
certificateType
---------------
AT
BT
CT
DT
ZT
我用列表创建了一个快速而脏的报告。在那里,我添加了一个带有文本框的矩形。我将列表的数据集设置为主数据集(在我的情况下为DataSet1)。我将文本框的表达式设置为:
=Fields!certificateType.Value
设计模式下的图片:
我点击了列表,在“行组”窗格中,右键单击“详细信息”行,然后选择“组属性”。在“常规”部分,我单击“添加”以添加新的组表达式。然后我从下拉列表中选择certificateType
。
我移动到“组属性”对话框的“分页符”部分,并勾选在组的每个实例之间复选框。单击“确定”。
现在,报告将针对数据集中包含的证书类型的每个实例中断。因此,如果数据中有十种不同的证书类型,则每个证书都会有一个页面。
您无法在下面的图片中看到它,但现在有5页。
希望这会有所帮助!!