1. 描述
决策报表中想要实现点击标题进行排序,并且可以刷新报表块。速度飞快。大数据量的除外。
2. 参考
这种实现的需要根据数据量,正常一般五秒左右。因此想着有没有跟快的方式。
然后再网上还发现了其他的排序方式:点击表头字段实现排序功能(绝对好用),这个也是很好的,适合数据量大,但是需要改动数据查询。参数也多。
3. 实例
3.1 数据查询
新建决策报表并拖入报表块,新建数据查询 ds1:SELECT * FROM S订单 limit 30

3.2 报表样式

3.3 设置 超级链接 -> 当前决策报表对象
先找到当前的表单对象(如果有多个的话),然后设置参数,点击小 + 号就行。
添加参数:
a:用来判断点击下次怎么排序,if( $a = 1 ,0 ,1 );flag:判断点击的标题是哪个。

然后给发货日期和运货费同样排序方式:


3.4 在父格上设置 扩展后排序
排序公式:
switch($flag,
1, if($a = 1, tointeger(A2), -tointeger(A2)),
2, if($b = 1, tointeger(format(C2, "yyyyMMdd")), -tointeger(format(C2, "yyyyMMdd"))),
3, if($c = 1, E2, -E2)
)
字符串需要转int排序,日期也需要转换,数字和金额是不需要的。
公式含义:先判断flag,点击的是哪个标题,然后判断对应参数是1还是0, 1就正排,0就倒排。
如果只需要其中一个,就只设置一个,多个就多个。参照3.3 设置方式

3.5 演示
