我有一些带有 2 个表格和每个图表的报告。还有几个文本框用于标题、页眉和页脚。
我已经知道,如果我想在没有返回数据时设置自定义消息,我可以单击报告元素(表格、图表等)并在“属性”中将其写入NoRowsMessage
字段中。
但是,由于我的报告包含多个元素,因此该消息会重复多次。我觉得这看起来很难看。
此外,我的文本框、页眉和页脚仍然显示。
当没有数据时,是否有任何方法可以隐藏整个报告或阻止其呈现,而只是在屏幕上显示一条消息?
我有一些带有 2 个表格和每个图表的报告。还有几个文本框用于标题、页眉和页脚。
我已经知道,如果我想在没有返回数据时设置自定义消息,我可以单击报告元素(表格、图表等)并在“属性”中将其写入NoRowsMessage
字段中。
但是,由于我的报告包含多个元素,因此该消息会重复多次。我觉得这看起来很难看。
此外,我的文本框、页眉和页脚仍然显示。
当没有数据时,是否有任何方法可以隐藏整个报告或阻止其呈现,而只是在屏幕上显示一条消息?
我不知道 SSRS 中的任何特定功能,但您可以尝试各种解决方法来模仿这一点:
您可以根据数据集中的行隐藏报表中的所有元素,方法是向报表添加与Body大小相同的Rectangle,然后将所有报表对象添加到Rectangle中。
将RectangleHidden
的属性设置为:
=IIf(CountRows("DataSet1") = 0, true, false)
这意味着如果Dataset中没有行,则Rectangle及其所有子元素将被隐藏。
如果要显示一条消息,请在Rectangle之外的报表底部添加一个TextBox ,并将其属性设置为相反的表达式:Hidden
=IIf(CountRows("DataSet1") = 0, false, true)
因此,这样,当Dataset中没有行时,您将显示一条且只有一条消息。您还可以获得对 No Rows 消息格式进行更多控制的优势。
您可以对Header和Footer做类似的事情。在所有情况下都显示这些对我来说很有意义,但我想这取决于您的要求。
所以这是一组相当复杂的步骤,但可能会让你接近你想要的结果。