2013-10-03 65 views
0

我在ssrs报告中有几个柱形图。 x轴(类别)是过去6个月。图表上没有排序 - 我在SQL查询中完成所有操作,只是希望它们按查询顺序显示。SSRS:类别组随机更改订单

它通常是这种情况,即,为了: 四月,五月,六月,七月,八月,九月,十月

但有时它会显示: 十月,四月,五月,九月,军,Jul,Aug

经过一段时间后,它会跳回到它应该如何。 有没有人有任何洞察,为什么它会突然改变?

该报告没有被任何东西过滤。

回答

0

您需要按类别组排序。在图表数据选项中,选择类别组的下拉列表并转至Category Group Properties

在左侧,您会看到一个名为“排序”的部分。将日期列添加到排序中,并且应该始终正确排序。

或者,您可以在查询中使用ORDER BY,以确保您按正确的顺序获取行。但是,如果您在图表中对行进行分组和汇总,我不能100%确定行为是否会持续。

即使您返回Jan,Feb等,您可以使用SWITCH()语句来获得正确的顺序,但这会很痛苦。最好返回一个包含数字或日期的列,以便确保您正确订购图表。

+0

事情是,在这种情况下,我带回“1月”,“2月”等,而不是日期。我的老板是首先在SQL中格式化所有东西的粉丝。我可以改变查询 - 但由于这在大多数情况下都有效,所以看起来有点愚蠢。 – nicV

+1

我很喜欢在SQL中做大部分事情,但格式化文本是SSRS非常擅长的。但是,就代码而言,不能对老板做太多的事情。你说它大部分时间都适用,但这是由于SQL决定给你的结果集的运气所致。如果在查询中使用ORDER BY,则可以确定结果的顺序,并在SQL中执行所有操作以使老板满意。 –

+0

我同意,不是SSRS的忠实粉丝,但它确实格式化文本!我会添加一个额外的ORDER BY,虽然不知道SQL如何改变周围的结果...如果它再也没有这样做,那么我会知道!感谢您的意见。 – nicV