您的位置:首页 > 其它

快逸报表下多种序号生成方法详解

2013-01-21 10:42 169 查看
在使用报表工具制作报表的过程中,常常需要对报表中的记录进行序号的编排。无论是出于报表实际的需要,还是作为报表制作的中间过程,序号已经成了报表不可或缺的一部分,是web报表工具的一种广泛需求。

  

  基于这个需求的广泛存在,本文就来详细介绍一下快逸报表下的几种序号生成方法,在实际的制作过程中可选取不同的方法以达到相应的效果。

  

  一、 使用row()函数

  

  row()函数是快逸报表的一个内置函数,用其可以取得当前单元格所在行的行号。

  

  第一步:连接demo数据源并新建报表,在新建的报表文件中定义数据集ds1,ds2,SQL语句如下:

  

  ds1:SELECT 订单.订单ID,订单.客户ID,订单.发货日期,订单.到货日期,订单.货主城市,订单.运货商,订单.运货费 FROM 订单

  

  ds2:SELECT 客户.客户ID,客户.公司名称 FROM 客户

  

  第二步:设置单元格表达式:

  

  B3: =ds1.select(订单ID)

  

  C3:=ds1.客户ID

  

  设置显示值表达式为:ds2.select1(公司名称,客户ID==value())

  

  D3: =ds1.发货日期

  

  设置显示格式为:yyyy-MM-dd

  

  E3:=ds1.到货日期

  

  设置显示格式为:yyyy-MM-dd

  

  F3:=ds1.货主城市

  

  G3:=ds1.运货商

  

  H3:=ds1.运货费

  

  设置显示格式为:¥#0.00

  

  具体报表样式如图所示:

  

  

  

  第三步:设置主格:

  

  设置B3的左主格为:`0,A2的左主格为:B3

  

  第四步:在A2单元格中填入:=row()-2,由于A3单元格在第三行,所以要减2

  

  第五步:发布报表后预览如图所示:

  

  

  

  二、 使用临时变量

  

  设置A2单元格值表达式为:a=0,显示值为:序号;A3单元格值表达式为:a=a+1,如图所示:

  

  

  

  其他设置同第一种方法,生成序号效果也同上面方法的效果一样。

  

  三、使用”&”运算符

  

  对于组内序号,可以采用”&”运算符,如果报表未分组,则可以用其进行全部记录序号生成。在此不进行分组而沿用上面的例子。

  

  设置A3单元格表达式为:=&B3,如图所示:

  

  

  其他设置同第一种方法,生成序号效果同第一种方法的预览效果一样。

  

  总结:以上介绍了三种方法用于生成连续序号,其中的关键是要设置序号所在单元格跟随B3扩展,即将其左主格设为B3。而对于三种实现方法,可以在实际的应用中根据不同的需要而选择不同的实现方法。

引用连接:http://blog.tianya.cn/blogger/post_read.asp?BlogID=3530792&PostID=31537111
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: