zoukankan      html  css  js  c++  java
  • 如何使用序号函数给报表加序号(润乾报表)

    润乾报表提供了一个可以给可扩展的单元格自动加序号的函数-&函数,本文就来给大家介绍一下此函数的用法。

    首先,看一下函数解释和功能效果

    表达式:&Cellx (例如:&A2 )
    返回值:整数,当前格所属的Cellx主格在所有扩展出来的格子中的排序
    说明:Cellx必须是当前格的主格,这样&Cellx才能够正确运算,其返回值相当于是当前格所属的Cellx主格的位置

    效果见下图:(图中B2为A2的主格,即为B2的扩展格排列序号)

    lizi.png

    下面我们就用一个简单的例子来体验一下这个函数

    正常需求:给报表的每一行都加上序号

    第一步:新建报表

    连接润乾自带的demo数据源,在订单表上建立数据集ds1,并生成网格式报表,其sql语句为:SELECT 订单.订单ID,订单.货主名称,订单.货主城市,订单.运货费 FROM 订单

    网格报表设计如下:

    rq_71.png

    预览效果如下:

    rq_72.png

    第二步:加序号

    在A列前插入新列,在新列的单元格中写入下面的表达式
    A1:序号 A2:=&B2
    然后把A2的左主格设为B2(这个操作很重要,A2中的序号是根据B2的扩展排列的)

    rq_73.png

    设置完成后预览就可以看到我们想要的效果了,如下图:

    rq_74.png

    需求扩展:报表分页后每页都重新从1开始排列序号

    上面的设置产生的序号不管报表分页与否都是连续的,但是有些用户想要分页以后序号重新从1开始排,也就是每页都是重新排列序号的效果。下面就来看润乾报表如何解决这个特殊需求。一般这样的分页报表发布展示后每页显示的行数是固定的,像我们这个报表每页显示就是29行,我们可以用给序号取模的原理来让每页都从1开始排序,具体操作是把A2单元格中的表达式换成:=&B2%29,然后我们看一下发布后的效果:

    rq_75.png

    这样,需求就解决了。下面说一下应该注意的地方:

    此方法只能用在每页的数据区行数固定的情况下(报表头必须每页显示或者都不显示),如果每页行数不是固定的29行,对29取模就没有意义了,就不能保证每页从1开始排序号了。

    希望这个序号使用的小技巧可以帮的上润乾报表用户的忙,让报表开发更方便一些。

  • 相关阅读:
    [模板] 循环数组的最大子段和
    [最短路][几何][牛客] [国庆集训派对1]-L-New Game
    [洛谷] P1866 编号
    1115 Counting Nodes in a BST (30 分)
    1106 Lowest Price in Supply Chain (25 分)
    1094 The Largest Generation (25 分)
    1090 Highest Price in Supply Chain (25 分)
    树的遍历
    1086 Tree Traversals Again (25 分)
    1079 Total Sales of Supply Chain (25 分 树
  • 原文地址:https://www.cnblogs.com/wdmwj626/p/4864053.html
Copyright © 2011-2022 走看看