扩展后多列按先后排序

  • 文档创建者:axing
  • 编辑次数:3次
  • 最近更新:Kevin-s 于 2019-06-18
  • 1. 描述

    在 SQL 中,我们可以用 order by A,B 语句将结果先按照 A 排序,再按照 B 来排序。

    那么,在设计器的扩展后排序功能中如何实现呢?

    如下,扩展后结果先按照销售员排序,再按照销量排序:

    222


    2. 思路

    1)字符类型的数据可以通过 INARRAY(字符, SORTARRAY(UNIQUEARRAY(扩展的所有字符)))获得排序位置

    2)数值类型的数据直接通过本身的大小排序

    将 1)和 2)的结果经过运算处理得出一个新的排序数,按照新数扩展排序


    3. 操作步骤

    1)创建数据集 ds1:SELECT * FROM 销量 where 地区='华北'

    222

    2)报表设计如下,A2设置为列表

    222

    3)A2单元格添加扩展后排序公式,公式为:INARRAY(B2,SORTARRAY(UNIQUEARRAY(B2[!0])))*POWER(10, LEN(MAX(E2[!0])))+E2

    222


    4. 预览效果

    4.1 PC 端预览效果

    保存预览,实现效果如描述中所示


    4.2 移动端预览效果

    1)App 效果

    222

    2)H5效果

    222


    5. 已完成模板

    已完成模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\OrderReport\扩展后多列排序.cpt

    点击下载模板


    附件列表


    主题: 报表应用
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!