我有一份SSRS 2008报告,该报告生成了几个月的列以及基于年份的其他数据。我有[Mon]的tablix列组和排序集,并且生成的一年的前半部分很好但是当我运行下半部分的报告时它没有按顺序显示:
MonthNumber 10 11 12 7 8 9
MonthName October Movember December July August September
使用的SQL代码生成以月号顺序显示的以下行。
Mon
7
8
9
10
11
12
答案 0 :(得分:1)
我会说Mon
被视为字符串值,无论出于何种原因,即从查询或数据集定义中,您可以看到在您的示例中,列被排序为字符串,即,当按文本排序时,10将在7之前,而不是数值。
您有两种选择:
首先是按照=CInt(Fields!Mon.Value)
之类的表达式进行排序,即显式排序为整数,如果Mon
被视为文本,则解决问题。
另一个选择是确保Mon
在数据集级别被视为整数 - 无论哪种方式都应该没问题。