finereport---FineReport入门常见疑难点

一、入门介绍

二、入门需知

注意:开发人员可以设置DEBUG级别,有助于测试

 三、数据准备

数据集sql中可以使用参数宏${}动态地生成过滤条件,${}中的语句在FineReport报表中执行,将${}的执行结果与sql语句拼接起来形成最终的查询语句,传递给数据库执行,可以使用多个${}。

${}中可以使用所有内置的FR公式,如if函数;
${}中除了FR内置的函数名、常量外,其他变量就是数据集参数。

SELECT * FROM 订单 where 1=1 ${if(len(area) == 0,"","and 货主地区 = '" + area + "'")} ${if(len(province) == 0,"","and 货主省份 = '" + province + "'")}

如上SQL语句,if公式是FR内置的公式,变量area就是数据集参数,如果len(area)!=0,即area参数不为空,比如说area的值为华东,那么if语句的执行结果为and 货主地区='华东',然后再把这句话拼接到SQL语句当中,SQL语句就变成:
SELECT * FROM 订单 where 1=1 and 货主地区='华东'
 

参数:

是否显示参数界面:

有时用户希望能够自己控制是否显示参数界面,用户可以在访问报表时,在URL后面添加参数&__pi__=false来控制不显示参数面板。
通过__pi__参数控制
访问报表时在URL后面加上&__pi__=false 就可以强制报表不显示参数界面(报表定义了参数界面且设置了显示参数窗体);
例如:http://localhost:8075/WebReport/ReportServer?reportlet=GettingStarted.cpt&__pi__=false
注:pi前后都是两个英文的下划线
 
 
不同数据库下的不同实例
1)关联数据集:
2)报表直接过滤条件
 

四、 部署

原文地址:https://www.cnblogs.com/michellexiaoqi/p/8886205.html