历史版本2 :排序场景方案 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

本文列出用户在使用排序功能时的具体需求及对应方案。

2. 单列排序编辑

2.1 指定升序或降序

场景描述效果实现参考方案
数据列按照升序或降序排列
4.png

方案一:数据集中的排序

方案二:高级排序-单列排序

方案三:扩展后排序

2.2 动态排序

场景描述效果实现参考方案
通过 SQL 直接在数据库查询时排序2.gif

数据集中的排序 

有些情况下无法用到数据集排序,例如制作报表时有一列是通过其他数据列计算得出的4.gif点击某一列标题改变排序
前提条件:最父格的数据设置是列表6.gif扩展后排序

3. 多列排序编辑

设计报表时,希望有多个列可以实现点击变换升序降序的功能。

3.1 指定升序或降序

场景描述效果实现
参考方案

1)场景:

数据先按 A 列升序排序,B 列再按对应的 A 列升序排序

2)前提:

通过 SQL 直接在数据库查询时排序

2.png数据集中的排序

1)场景:

数据按照订购日期字段降序排序的同时,相同订购日期的数据可以按照运货费升序排序

2)前提:

最父格的数据设置是列表

3.png

方案一:高级排序-多列排

方案二:扩展后排序

场景:

扩展后结果先按照「销售员」排序,相同的销售员再按照「销量」排序

8.png扩展后多列按先后排序

3.2 多列动态排序

场景描述效果实现参考方案
1)场景:

数据按照订购日期字段降序排序的同时,相同订购日期的数据可以按照运货费升序排序

2)前提:

最父格的数据设置是「列表」

3.png扩展后排序
点击第一列,则根据第一列升序或降序排列;点击第二列,则根据第二列升序或降序排列7.gif多列动态排序
列标题是根据字段横向扩展得来的,点击列标题,实现升序或降序8.gif横向扩展列多列排序
部分用户希望在动态列的基础上,能够对每列进行单独的排序10.gif动态列实现多列排序
决策报表的报表块在多列排序的基础上可以实现:点第一下降序,点第二下升序,点第三下恢复原状13.gif特殊多列排序

4. 自定义排序编辑

场景描述效果实现参考方案
自定义数据列中具体项的排序
11.png利用内置数据集实现自定义排序

5. 图表排序编辑

FineReport 报表一般包括纯粹的数据展示、图表展示和控件展示,排序一般应用在数据展示中比较多,但是图表中也会稍微涉及到一点,那么在图表中的排序需要注意以下几点:

1)图表数据来源于「数据集」,故对图表排序就需要对数据集中的数据进行排序,则需要使用 数据集中的排序

2)图表数据来源于单元格,故对图表排序就是对单元格中的数据进行排序,即可以 高级排序 和 扩展后排序

3)图表排序还提供接口,详细示例请查看 [新]图表排序接口

注:图表在不同分类下分别排序请参见:图表不同分类下分别排序

6. 分组排序编辑

场景描述效果实现参考方案
按分组汇总结果排序:先对「销售员小计」排序,再对「产品类型小计」排序,最后对「产品列表」排序12.png按分组汇总结果排序
实现分组动态排序且互不影响的效果:例如当点击华东的销量时,华东的销量改变排序,华北的销量不受到影响;当点击华北的销量时,华北的销量改变排序,华东的销量不受到影响11.gif分组内排序互不干扰

7. 其他场景编辑

场景描述效果实现参考方案
想要在标题上设置「箭头」以体现当前是哪一列排序,是升序还是降序12.png排序添加动态箭头
在对报表进行扩展后排序之后,若直接使用单元格插入公式 seq() 或者 &cell 这两种方法获取序号,序号的顺序是乱序的,如何让它变成正常的排序呢9.png扩展后排序重新编号
按照中文的拼音先后顺序进行排序10.png扩展后中文按拼音排序
「序号」是用汉字数字来表示的,那么要如何对它进行排序呢13.png汉字数字排序
当报表中存在多级项目符号时,如何对它进行排序14.png多级项目符号排序