finereport 报表工具传参

本文介绍了使用FineReport进行复杂查询时的一种传参技巧,并通过一个具体示例展示了如何利用此技巧来解决因字段可能为空而导致的数据缺失问题。

最近使用的finereport  ,使用了神奇的传参功能。。。。。。

代码如下

select t.title,t.code,
Decode(t.status,0,'草稿',1,'已提交',2,'已批准',3,'已发布',4,'已提交',5,'已注销') as status
,u.username,   --执行人
r.keycode as category, --类别
d.keycode as assettype,   --资产类型
Decode(t.apply_type,'1','安全作业','2','符合性检查','3','事件管理') as apply_type,
t.version,t.standard,t.description
from smp_policy t,tb_user u,
(select * from tb_dictionary where type = 'assettype' ) d ,
(select * from tb_dictionary where type ='policy.type') r where t.op_id = u.id and d.value(+) = t.assettype and r.value = t.category
${if(len(code) == 0,"","and t.code like '%"+code+"%'")}
${if(len(title) == 0,"","and t.title like '%"+title+"%'")}

 

 

其中(+) 是一个表关联外面一个表的时候 如果该字段为空导致查询缺少数据的问题,

上面的查询中的assettype 就有可能为空,导致查询缺少数据

 

如图所示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值