在实际报表开发中,有些页面的字段排序用sql处理开发比较难,有的有多个位置都需要实现排序,有的甚至涉及到对多单元格计算后的结果排序。
此处可以用字段的“扩展后排序”+“动态参数”,配合实现多字段排序、公式计算后结果排序等等,不涉及sql变更,更加快速便捷。
1、设置动态参数

在需要实现排序的表头上添加“超级链接”-“动态参数”:
| 参数 | 类型 | 值 |
| pa | 公式 | if(pa = 1 || isnull(pa), -1, 1) |
| asc | 字符串 | E3 |
此处A3是对应要排序的数据字段所在单元格,如果有多列需要排序,则照此操作给每次位置都做如上设置即可。
2、设置扩展后排序公式

对最顶层的父格(此处示例为B3单元格)B3单元格操作:
“扩展”-“高级”-“扩展后排序”-选择升序即可,并写入公式:
(特别注意!是在单元格属性中的扩展的“扩展后排序”,不是单元格元素中的“高级”的排列顺序)
if($pa = 1, eval($asc), eval($asc) * -1)
注意:
①此公式写一个地方即可;
②要写在首个父格字段,因为父格也会参与到排序结果,即使父格表头不提供排序功能
3、预览见效

分页报表和填报报表都可以在预览后,点击动态参数所在单元格,即可看到效果。
如果是分页报表,也会实现对全部页面数据的排序,并非只是当前分页的排序。
30

被折叠的 条评论
为什么被折叠?



