多语言展示
当前在线:650今日阅读:60今日分享:41

web报表组件Finereport中数据集函数的使用

一般情况下,我们直接使用数据列的拖拽就能制作出想要的报表,但对于习惯编程的用户或者希望根据不同的条件控制某个单元使用哪个数据列时,我们也同样支持直接在单元格中使用来实现,这样的函数我们称为数据集函数,以下通过web报表组件Finereport列出所有的数据集函数及用法。
工具/原料
1

web报表组件Finereport7.1.1

2

大小:148.2M 适用平台:windows/linux

方法/步骤
1

tablename.select(colname,筛选条件1&&筛选条件2&&......)说明:选出数据集某列中符合条件的数据,返回结果是一个数组,相同数据不会合并。其中tablename表示数据集名称,注意是报表数据集或者是服务器数据集名,而非数据库中的表名;colname表示列名,大小写不区分。示例:如数据集ds1取出内置FRDemo数据库中的销量表在单元格中输入=ds1.select(销售员),返回数据集ds1销售员列中的所有值。在单元格中输入=ds1.select(销售员, 地区 = '华东'&&销量 > 200),返回数据集ds1华东地区销售总额超过200的销售员。在单元格中输入=ds1.select(销售员,地区='华东'||地区='华北'),返回数据集ds1华东地区和华北地区的销售员。注:筛选条件中的判断既可以使用单等号,也可以使用双等号;字符串也同时可以使用单引号或者是双引号,对结果均没有影响。

3

tablename.select(#0)说明:返回数据集ds1中的行号。示例:如数据集ds1取出内置FRDemo数据库中的销量表在单元格中输入=ds1.select(#0),数据集ds1中一共有45条数据,因此返回行号1,2,3,......45。

4

tablename.value(row,col/colname)说明:获取数据集ds1中某行某列的值。示例:如数据集ds1取出内置FRDemo数据库中的销量表在单元格中输入=ds1.value(3,2),返回数据集ds1中第3行第2列的值。在单元格中输入=ds1.value(3,'销售员'),返回数据集ds1中第3行销售员列的值。

5

实例1:数据集函数返回的数据进行扩展直接将数据列拖拽到单元格时会自动从上到下扩展。但是使用数据集函数获得数据为一个数组,是显示在一个单元格中的,需要另外给单元格设置扩展属性,数据才会进行扩展。

6

实例2:根据不同条件选择使用哪个字段在单元格中输入如下公式:=if(条件,ds1.group(customerid),ds2.group(customerid))并设置其扩展属性为从上到下。说明条件为真,则单元格使用数据集ds1中的customerid列,否则使用ds2中的customerid列 。

7

实例3:对数据集函数返回的数据再进行运算如公式=sum(ds1.select(销量)),返回数据集ds1销量列的总和。sum求和公式也可以换用其他如count、max等。注:表单中暂不支持使用ds1.select(),ds1.group()等数据集函数。

推荐信息