反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

超链实现空值不参与排序

  • 文档创建者:知识库
  • 历史版本:3
  • 最近更新:Leo.Tsai 于 2021-09-14
  • 1. 概述

    1.1 应用场景

    数据集字段包含空值,排序时这些空值总是位于最下方且不参与排序。

    避免空值参与排序,显示在最上方,要翻好久才能看到有数据的行,影响查看体验。效果如下图所示:

    45E9102B-4BD7-42E7-87D6-EEC6E84F5798.GIF

    1.2 实现思路

    使用动态参数类型的超链配合扩展后排序,升序排序时,给空值赋值最大值+1,降序排序时,给空值赋值最小值-1。

    2. 示例

    2.1 设计模板

    1)新建一张普通报表,新建一个内置数据集 ds1 ,表设计如下图所示,两字段都是字符串类型。

    Snag_24419a55.png

    2)如下图设计表格,将数据集字段拖到对应单元格中。

    Snag_24438126.png

    2.2 添加超链

    选中 B1 单元格,新增一个动态参数类型的超链,设置参数a,其值为公式if($a = 1, -1, 1),如下图所示:

    Snag_2445551a.png

    2.3 设置扩展后排序

    选中 A2 单元格,如下图设置扩展后排序,公式为:if($a = 1, if(len(B2) = 0, max(value('ds1', 2)) + 1, 1*B2), if(len(B2) = 0, -(min(value('ds1', 2)) - 1), -1 * B2)),公式解析如下:

    判断 B2 单元格的值是否为空,为空时,升序排序给空值赋值最大值 +1 ;降序排序时,给空值赋值最小值 -1 。

    另外公式里不能直接用 -B2 ,会有报错,想把 B2 单元格的值变为负值应该用 -1*B2 。

    Snag_24495c3b.png

    2.4 效果预览

    保存并预览报表,效果如 1.1应用场景 中所示。

    支持 App 端和 HTML5 端预览。

    3. 模板下载

    已完成模板参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超链实现空值不参与排序.cpt

    点击下载模板:超链实现空值不参与排序.cpt

    附件列表


    主题: 报表专题
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526