帆软报表(finereport)入门-2 动态报表

动态表实现了不同的人根据需要选择不同的表进行查看,从而提高查询效率

在定义数据集时,通过if函数来判断参数的值从而来实现调用不同的数据表
如直接将SQL语句定义成: SELECT * FROM ${if(table='table1','table1','table2')},即若参数 table='table1'时,查询的是“table1”表,若 table!='table1'时,查询的是“table2”表。
 
例如报表的自带数据集中的 “订单表”与“销量表”  可写为 SELECT * FROM ${if(table='订单','订单','销量')}
 

模板设计:拖入数据列到单元格中

在B3单元格设置单元格属性-形态,选择数据字典,数据库为FRDemo,数据库表为客户,实际值选择列名:客户ID,显示值选择列名:公司名称

将E3单元格设置单元格属性-形态,选择数据字典,数据库为FRDemo,数据库表为运货商,实际值选择列名:运货商ID,显示值选择列名:公司名称

进入参数面板设置界面,在右侧的属性栏中点击全部添加:
222
参数面板中会自动添加三个控件,点击中间的控件,选择‘文本控件’
222
摁住Ctrl选择A1、A2、A3单元格,设置条件属性: 行高为0,类型选择 公式,输入公式: LEN(A3)=0,点击 增加,当公式出现在下方时 条件才能生效
 

同样操作A4、A5、A6单元格设置条件属性:行高为0,类型选择公式,需将公式改为:LEN(A6)=0

设置完成后,预览。报表会根据输入的 表名展示相应的表数据

猜你喜欢

转载自www.cnblogs.com/Williamls/p/10522533.html