帆软FineReport的无数据页面展示方案


在日常工作中,使用到帆软报表工具进行数据的展示,以下记录日常使用的过程,方便备查。

需求描述

用帆软报表展示销量的信息,选择不同的订单状态,展示其订单数和总金额。

第一步、设置控件

添加下拉框控件,在右侧的编辑菜单,设置控件名称,数据字典,类型设置为【自定义】,建立映射关系。
在这里插入图片描述
新建子查询,绘制主显示区,展示字段等如下图所示
在这里插入图片描述

第二步、设置数据集

根据 下拉框选择的 订单状态,通过 变量【${orderstatus}】传递,对应的SQL如下所示。

SELECT
	'${orderstatus}' as orderstatus,
	count( * ) AS cnt,
	sum( pay_amount ) AS totalAmount 
FROM
	tb_order 
WHERE
	order_status = '${orderstatus}';

在帆软的编辑器中配置如下。
在这里插入图片描述

优化改进

通过以上发现,选择订单状态下没有订单信息,在页面展示不出来,需求中要求的是没有订单也要展示为 0
解决方案
可使用 ifnull 函数,为空是默认展示为0,实现SQL如下所示。

SELECT
	'${orderstatus}' as orderstatus,
	ifnull(count( * ),0) AS cnt,
	ifnull(sum( pay_amount ),0) AS totalAmount 
FROM
	tb_order 
WHERE
	order_status = '${orderstatus}';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值