反馈已提交

网络繁忙

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

每页序号重新开始

  • 文档创建者:axing
  • 历史版本:10
  • 最近更新:Catqiu 于 2022-08-29
  • 1. 概述

    1.1 问题描述

    直接使用 seq( ) 的方法,分页预览会使序号承接上一页的序号继续递增。如下,第一页显示了 55 行,第二页序号直接从 56 开始了。如下图所示:

    222

    对报表进行分页预览时,如何让每一页的序号计数重新从 1 开始计算呢?效果如下图所示:

    222

    1.2 解决思路

    原有序号虽然是递增的,但是保证了每一行都是唯一性的。在原有序号的基础,判断当前序号在本页内的位置,即可重新得到从 1 开始的序号。

    2. 解决方案

    2.1 数据准备

    创建模板,新建数据查询:SELECT * FROM 订单明细

    222

    2.2 设计报表

    1)将字段拖到对应的单元格,A2 单元格插入公式为:seq(),A2 左父格设置为 B2,设置第一行重复标题行。

    222

    2)在序号后面再插入一列序号,在单元格 B2 内插入公式:if(COUNT({A2})=1,1,inarray(A2,{A2})), B2 左父格设置为 C2。公式解析:{A2} 可以获取当前页中 A2 单元格扩展出来的所有值,当扩展出来的值只有一个的时候,结果为 1,否则结果为当前 A2 单元格的值在 {A2} 数组中的位置。当一页只有一行时,{A2} 获取到的是一个值,不会当成数组来处理,而 inarray 第二个参数必须是数组,所以需要判断。

    3)将 C2 的左父格设置为无,然后隐藏 A 列,如下图所示:

    2.3 预览效果

    2.3.1 PC 端

    保存模板,选择「分页预览」,实现效果如 1.1 节中所示。

    2.3.2 移动端

    App 效果与 HTML5 效果相同,如下图所示:

    222

    3. 模板下载

    点击下载模板:每页序号重新开始.cpt


    附件列表


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

    售前咨询电话

    400-811-8890转1

    在线技术支持

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

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

    总裁办24H投诉

    热线电话:173-1278-1526