0

我在矩阵中有一组图表。每个图表都根据特定的过滤器集显示数据。在当前场景中,如果图表中没有数据,则显示为空白。我已经验证了“NoDataMessage”,但没有运气。

为了解决这个问题,我添加了带有文本“无可用数据”的文本框,并根据特定图表中的数据控制其显示。

每个图表都有三个过滤器。任何人都可以帮我制定文本框隐藏属性的表达式吗?三个过滤器中的每一个都会检查特定数据。

4

3 回答 3

1

我发布此解决方案,以便将来可能对某人有所帮助。

  1. 在单元格内,添加一个矩形。
  2. 在 Rectangle 内,添加所需的图表和带有文本“No Data Available”的 TextBox。
  3. 设置图表的隐藏属性以及文本框以切换可见性,如下所示。

下面的示例公式可用于在检查数据时考虑所需的行。隐藏属性:

=IIF( 
IsNothing( SUM( IIF(Fields!TypeOfSection.Value = "Win",Fields!USD_EXT_PRICE1.Value,Nothing ))) 
AND IsNothing( SUM( IIF(Fields!TypeOfSection.Value = "Win",Fields!USD_EXT_PRICE2.Value,Nothing ) ))
AND IsNothing( SUM( IIF(Fields!TypeOfSection.Value = "Win",Fields!USD_EXT_PRICE3.Value,Nothing )))
,**false,true**
)

在这里,我正在检查列的值TypeOfSection,以便只考虑所需的行值SUM

因此,通过交换假值和真值,上述公式可用于图表和文本框。

于 2012-12-31T11:05:00.537 回答
0

只是为了帮助其他有类似问题的人......

如果您使用子报表来显示图表,那么您看不到任何消息的原因是,如果子报表的每个数据集都没有返回任何内容,SSRS 会隐藏子报表。

为了显示子报表并查看“无可用数据”消息,您必须添加一个虚拟数据集(到子报表),返回至少一个元素(即 SELECT 1 AS DUMMY)。

于 2013-02-18T22:47:57.073 回答
0

如果您使用子报表在表格或矩阵中显示图表并希望显示“无数据”消息,请转到父报表,单击子报表,然后打开子报表的属性窗口并将 NoRowsMessage 设置为所需的消息。您还可以将一些样式应用于消息,例如颜色和字体。

有关非常好的教程,请查看此博客文章: Dattatrey Sindol 的 SQL Server Reporting Services 提示和技巧

于 2013-10-24T13:59:02.173 回答