【帆软】固定样式汇总报表

文章目录


前言

【帆软FineReport】​ 聚焦企业级数据可视化与报表开发。本专栏深入解析 FineReport​ 与 FineBI​ 核心技巧,涵盖复杂报表设计、参数联动、填报功能及大屏可视化(决策平台)。

拒绝空谈理论,专注解决数据孤岛、报表自动化及性能优化等企业痛点。我将分享多年沉淀的帆软开发套路与 SQL 优化经验,助你快速从"取数工具人"进阶为"数据架构师"。关注我,用报表驱动业务增长!

一、需求描述

分类汇总报表,计算复卷率。

二、技术要点

${cboMachineId}:输入框传参

COALESCE​:SQL 中用于处理 NULL 值​ 的核心函数,它返回参数列表中第一个非空(NOT NULL)的值。如果所有参数都为 NULL,则返回 NULL。

三、解决方案

数据集脚本:

sql 复制代码
WITH
-- 淋膜产出
lm_output_links as (
	select tax0009.C_GROUP_LINE,top3230.*
	from Top_3230 top3230
	inner join tax_0009 tax0009 on tax0009.C_MACHINE_CD=top3230.C_MACHINE_ID
	inner join top_3240 top3240 on top3240.C_PAPERROLL_NO=top3230.C_PAPERROLL_NO
	where 
		top3230.C_PROC_CD='10028' and top3240.C_PAPERROLL_NO like 'L%' 
		and	(tax0009.C_GROUP_LINE='${cboMachineId}' or '${cboMachineId}'='')
		and (top3230.C_CLASS_GROUP='${cboClassGroup}' or '${cboClassGroup}'='')
		and top3230.D_OUTPUT_TIME > '${dateEditor0}' AND top3230.D_OUTPUT_TIME <= '${dateEditor1}' 
),
-- 淋膜产出汇总
lm_table as (
	select op.D_OUTPUT_TIME,op.C_GROUP_LINE,op.C_CLASS_GROUP,count(1) lmjs,sum(N_WGT) lmwgt
	from lm_output_links op
	group by op.D_OUTPUT_TIME,op.C_GROUP_LINE,op.C_CLASS_GROUP	
),
-- 复卷产出明细
fj_table AS (
	select mm.D_OUTPUT_TIME,mm.C_GROUP_LINE,mm.C_class_group,count(1) as fjjs,sum(N_WGT) as fjwgt 
	from (
		select distinct C.C_BAR_CODE,c.D_OUTPUT_TIME,tax0009.C_GROUP_LINE,a.C_class_group,c.N_WGT
		from top_3240 a  
		inner join top_3130 b on a.C_BAR_CODE =b.C_OLD_BAR_CODE 
		inner join top_3240 c on b.C_OUTPUT_NO =c.C_OUTPUT_NO
		inner join top_3230 d on d.C_BAR_CODE=c.C_BAR_CODE
		inner join tax_0009 tax0009 on tax0009.C_MACHINE_CD=a.C_MACHINE_ID 
		where c.C_PROC_CD ='10004' AND d.C_WORK_TYPE='复卷'
		and	(tax0009.C_GROUP_LINE='${cboMachineId}' or '${cboMachineId}'='')
		and (a.C_CLASS_GROUP='${cboClassGroup}' or '${cboClassGroup}'='')
		and c.D_OUTPUT_TIME > '${dateEditor0}' AND c.D_OUTPUT_TIME <= '${dateEditor1}' 
	) mm group by mm.D_OUTPUT_TIME,mm.C_GROUP_LINE,mm.C_class_group
),
-- 最终结果,合并淋膜和复卷数据
result_table as (	
	SELECT 
	    COALESCE(lm.D_OUTPUT_TIME, fj.D_OUTPUT_TIME) AS D_OUTPUT_TIME,
	    COALESCE(lm.C_GROUP_LINE, fj.C_GROUP_LINE) AS C_GROUP_LINE,
	    COALESCE(lm.C_CLASS_GROUP, fj.C_CLASS_GROUP) AS C_CLASS_GROUP,
	    COALESCE(lm.lmjs, 0) AS lmjs,
	    COALESCE(lm.lmwgt, 0) AS lmwgt,
	    COALESCE(fj.fjjs, 0) AS fjjs,
	    COALESCE(fj.fjwgt, 0) AS fjwgt
	FROM lm_table lm
	LEFT JOIN fj_table fj ON 
		lm.D_OUTPUT_TIME = fj.D_OUTPUT_TIME
	    AND lm.C_GROUP_LINE = fj.C_GROUP_LINE
	    AND lm.C_CLASS_GROUP = fj.C_CLASS_GROUP	   
),
result_table1 as (	
	select t.d_output_time,t.c_group_line,t.c_class_group,sum(t.lmjs) lmjs,sum(t.fjjs) fjjs,sum(t.lmwgt) lmwgt,sum(t.fjwgt) fjwgt
	from result_table t 
	group by t.d_output_time,t.c_group_line,t.c_class_group
)
select * 
,(select sum(t2.fjjs)/sum(t2.lmjs) from result_table1 t2 where t2.d_output_time=t1.d_output_time and t2.c_group_line=t1.c_group_line) as lmlv 
from result_table1 t1
order by t1.d_output_time,t1.c_group_line,t1.c_class_group

样式布局

四、效果展示

相关推荐
sugar__salt3 天前
从网页小游戏到数据可视化:掌握 HTML5 Canvas 核心能力
前端·信息可视化·html5
财经资讯数据_灵砚智能3 天前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年6月15日
大数据·人工智能·python·ai·信息可视化·自然语言处理·灵砚智能
hnult3 天前
在线笔试平台如何选型?考试云九重防作弊 + 六大 AI 能力 智能招聘笔试解决方案
人工智能·笔记·microsoft·信息可视化·课程设计
财经资讯数据_灵砚智能3 天前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年6月16日
人工智能·python·ai·信息可视化·自然语言处理·ai编程·灵砚智能
财经资讯数据_灵砚智能3 天前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年6月14日
大数据·人工智能·python·ai·信息可视化·自然语言处理·灵砚智能
AI玫瑰助手4 天前
Python模块:from...import...导入指定内容
开发语言·python·信息可视化
2601_954971134 天前
大数据管理与应用专业的选科要求
信息可视化
财经资讯数据_灵砚智能4 天前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年6月15日
大数据·人工智能·python·信息可视化·自然语言处理
YHHLAI4 天前
HTML5 Canvas 从入门到实战:画布绘图 · 帧动画 · 小游戏 · 数据可视化
前端·信息可视化·html5
by————组态4 天前
Ricon组态实时监控 - 毫秒级数据可视化
大数据·人工智能·物联网·信息可视化·架构·组态