我在SSRS报告中有以下文本字段:
Private Sub Workbook_Open( )
Application.OnTime TimeValue("23:00:00"), "Unshare"
End Sub
我想以交互方式对此字段进行排序。我该怎么做?
按升序排序后,报告应显示
Version
2.0.0.0
1.0.0.0
1.2.0.0
2.1.8.8
2.2.32.7
1.4.11.0
提前谢谢
答案 0 :(得分:0)
要使用交互式排序,请右键单击列标题并查看文本框属性。
单击交互式排序选项卡,然后选中“启用交互式排序”框。
通常您会使用Detail Row,但您也可以指定使用Group。
在Sort By表达式中放置要排序的字段或表达式。
您需要为要排序的任何其他列执行相同的操作。
对于您的数据,您拥有的字段将按文字排序,而不是数字。这适用于您列出的数据,但如果您有两位数的版本,则可能会出现问题。排序列表将订购如下列表:
如果这是一个潜在的问题,你需要找到一种方法来处理它。你可以使用一个表达式将零添加到第一个数字来处理这个:
=RIGHT("000" & LEFT(FIELDS!Version.VALUE, INSTR(FIELDS!Version.VALUE) - 1) & MID(FIELDS!Version.VALUE, INSTR(FIELDS!Version.VALUE) + 1, LEN(FIELDS!Version.VALUE))
欲了解更多信息: Interactive sorting In SSRS on Values - Matrix report
答案 1 :(得分:0)
我找到了解决方法。我分解字符串并添加尾随零并使其长度为8(在我的情况下)。例如' 1.2.11.0'成为' 01021100'依此类推。然后将其转换为Integer,然后在交互式排序中,使用此整数字段进行排序。