我需要一些帮助来弄清楚如何在SSRS中的堆叠图表中准确显示标签;我需要在下图中对上层堆栈进行单次表示。
图表本身有两种状态,它可以基于红色或绿色数据,两者都在同一个数据源中。
目前,图表看起来像这样(这是基于绿色数据):
您可以清楚地看到图表内的标签和图例绝对杂乱无章。我们的想法是在图例中有两个项目(延迟发行和未完成发行);一个显示任何未完成的问题,另一个显示任何超出预计截止日期的未完成问题。
作为参考:上图应有1个非未决问题和5个未决问题(3个进行中和2个未决问题,有关阶段的更多信息,请参见下文)。
在图表中,我们希望得到上述要求的数值表示。基本上是一个代表未决问题的数字和一个显示任何未完成问题的数字。
这是红色表示的样子:
在这一点上,我不确定什么是错误的了。如前所述,它们都在同一数据集上运行,但值略有不同。
红色跟踪器具有一个简单的 True/False 值,它从中运行其大部分数据,而绿色跟踪器具有三个值 (5-7) 的数字表示形式。它所代表的数据是:5 - 开放,6 - 进行中,7 - 已关闭。
我试图只得到绿色的数据,当系列是上面提到的三个数字中的任何一个时,以及当它只得到任何非封闭的数据时(5,6,而不是7)。
这是为图表的栗色部分设置标签的代码(这只是一个可行的代码片段。):
IIF(Count(IIF(Fields!Outstanding.Value = 1 AND
Fields!TRK_TrackerStatus_LKID2.Value <> 7, 1, Nothing)) = 0, "",
Count(IIF(Fields!Outstanding.Value = 1 AND
Fields!TRK_TrackerStatus_LKID2.Value <> 7, 1, Nothing))))
基本上,它所做的是检查是否有超过0项未完成且未完成(不是7项)。如果超过0,则设置标签。如果计数项为0,则标签应为空字符串。
我认为你想要做的是根据状态编号对系列数据进行分组。您可以在数据集查询中以< code>case语句的形式执行此操作,也可以在系列组中使用表达式:
我在这里使用的表达式如下:< br> =switch(Fields!状态。Value = 5,“组1”,字段!状态。Value = 6,“组2”,字段!状态。Value = 7,“组2”,TRUE,“组3”)
这将根据字段中的值为数据分配分组值。在这种情况下,5
的状态
,变为1组
,6
或7
的Status
,变为2组
,所有其他值变为3组
,以确保不良数据在报告中明显。
这样做的是将图表与原始数据一起显示(左侧),并将其转换为我认为您希望看到的方式(右侧):
您也需要将相同的逻辑应用于您的图表标签。出于这个原因,我建议您在原始SQL脚本中添加一列来为您执行此分组,因此您只需进行一次更改。
问题内容: 我在ssrs折线图中使用以下查询。它根据每个订单日期计算每月记录的订单数量。 我的问题是,当一个月没有订单时,而不是说零或为空,它将一起删除该月的行。我希望它将其计为零,但也可以使用null。 基本上,无论是否包含信息,我都希望总是有十二行。 我怎样才能解决这个问题?有没有可以使用的表达方式?还是我遗漏了一些显而易见的东西? 问题答案: 通过删除where子句并在count聚合中进行过
问题内容: 我可以在Sql Server Reporting Services中使用表达式来组合组中列的所有值吗?我正在尝试完成MySQL的group_concat函数的功能,但是要在报告中(而不是在查询中)。 例子。我要制作以下数据: 在报告中查看以下内容: 问题答案: 尝试这样的事情(适用于SQL Server 2005及更高版本): 输出:
我试图找到一种算法,为我正在编写的图表引擎生成Y轴,并且处于拔毛阶段。 四处搜索会产生各种解决方案,但我很难找到一个适合所有数据范围的解决方案。 这是我到目前为止得到的: 这给了我一个新的范围,我想为它生成一个Y轴。 我计算每个YAxis标签之间的距离,如下所示: 我还尝试使用更简单的算法计算滴答声: 前一种方法适用于小范围,例如23- 在0的情况下- 我通过循环labelCount(在我的例子中
问题内容: 打开报表管理器时,我得到的是空白页:我有一个标题-“ … Reporting … HOME”,然后只有空白。 我使用的是SQL 2008和Windows Server 2008 R2 Standard。 任何想法如何解决?我已经确认我以本地管理员身份登录。我尝试将URL添加到受信任的站点,但这似乎也无济于事。 更新 当我转到ReportServer URL时,出现以下错误消息: 问
我有一份广泛的报告,在SSR中可达5000多页。我想要这个报告导出为PDF,保存并发送给用户。我报告抛出“系统内存不足异常”错误尝试导出到PDF。我尝试使用订阅服务,但失败的原因是:“发送邮件失败:在呈现报告期间发生错误。邮件将不会被重新发送”(failure send mail:rendering of the report.mail will not resent)。错误。对于如何将此报告导出
问题内容: 我正在使用创建饼图,我想像在中那样分别设置值和标签。换句话说,我希望图表在饼图中显示的结果与图例中显示的结果不同。有什么办法可以做到这一点? 问题答案: 所述 ArgumentIndex 值对应于 系列名 , 域 和 范围 。您可以为基础中的每个系列或所有系列设置不同的生成器。 附录:对于,值的含义略有不同- 系列名称 , 值 和 百分比 。