首先,我用的是birt2.6.2.zip版本,在做交叉报表时发现日期字符串排序不对,我的实际遇到的问题来说的,比如在sqlserver里查询得到的结果是这样的排序
年月
2011-1
2011-10
2011-11
2011-2
2011-3
但报表里显示是也这个排序,这样就不对了,一开始我以为只要改一下sql语句,让它在查询的时候就排序正确,但发现在报表还是一样的,排序不对。这样我就在报表的自定义排序里加js,报表自定义排序找法:把鼠标放到你的交叉报表框内,在左下角会出现一个带有交叉表方框,右点击它,选择属性,然后你会在属性编辑器中看到排序选项卡,选择它,下面就自己添加吧。
想了半天,结果是这样写的new Number(new String(dimension["月份"]["nianyue"]).substr(5,2));其中substr就是从一个字符串中按位置取子字符串,这样排序就OK。