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

Posted michellexiaoqi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)报表直接过滤条件
 

四、 部署

 

以上是关于finereport---FineReport入门常见疑难点的主要内容,如果未能解决你的问题,请参考以下文章

国内报表工具有哪些,要牛逼的

入门设计模式之汇总篇

loj数列分块入门

如何快速入门C++

数列分块入门7 解题报告

数列分块入门9 解题报告