Finereport帆软连接数据库编写查询报表

您所在的位置:网站首页 帆软报表连接oracle数据库 Finereport帆软连接数据库编写查询报表

Finereport帆软连接数据库编写查询报表

2023-11-26 19:17| 来源: 网络整理| 查看: 265

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录 前言一、FineReport是什么?二、使用步骤1.下载 FineReport 112.使用navicat连接数据库3.安装好后,打开软件,连接数据库4.写sql查询语句5.设计报表,将sql语句查询出来的列拖拽到列表中6.增加页面查询条件7.增加查询条件的sql查询语句7.点击确定按钮,点击保存按钮,点击填报预览按钮 总结

前言

本文章主要是记录使用FineReport连接数据库,编写sql,显示查询报表的操作步骤

一、FineReport是什么?

报表生成工具,仅仅拖拽即可完成复杂报表的设计

二、使用步骤 1.下载 FineReport 11

官网:https://www.finereport.com/

2.使用navicat连接数据库

在这里插入图片描述

3.安装好后,打开软件,连接数据库

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 注意:在FineReport中连接时,数据库名就写要使用的那个

4.写sql查询语句

建议先在Navicat中写好,能正确查询出来再粘贴在FineReport中 在这里插入图片描述 在这里插入图片描述 代码如下(示例):

select a.*,b.* from (select distinct a.order_id,(MAX(real_end_time)-MIN(real_start_time))/3600,DATE_FORMAT(MAX(real_end_time),'%Y-%m-%d') as worktime from mes_produce_process a join (select order_id from mes_work_order where order_status='finish') b on a.order_id = b.order_id group by order_id) a join (select name,b.* from blade_user a join (select complete_amount,b.*,order_status from mes_work_order a join (select item_unit,item_specifications,b.*,CONCAT(b.order_project,'、',item_specifications) as '项目名称' from mes_item a join (select b.*,dept_name from blade_dept a join (select id,order_code,erp_order_row,create_time,case order_type when '1' then '普通订单' when '2' then '一般订单' when '3' then '加急订单' when '4' then '改制订单' when '5' then '返修订单' when '2' then '二次加工订单订单' end ,site_id,dept_id,product_code,product_name,plan_amount,order_project,create_user from mes_order) b on a.dept_code=b.site_id) b on a.item_code = b.product_code) b on a.order_id=b.id) b on a.id=b.create_user) b on a.order_id=b.id 5.设计报表,将sql语句查询出来的列拖拽到列表中

在这里插入图片描述 将左侧下拉列表列名拉拽到右侧列表中应该显示的位置

6.增加页面查询条件

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 注意:时间输入框的控件值需修改该为””,这样初始化的时候才会显示列表所有值 在这里插入图片描述 注意:查询按钮一定要使用类型为查询按钮的控件,使用普通按钮无法实现查询功能

7.增加查询条件的sql查询语句

在这里插入图片描述 代码如下(示例):

WHERE 1=1 ${if(len(order_code)==0,"","and b.order_code='"+order_code+"'")} ${if(len(worktimestart)==0,"","and a.worktime between'"+worktimestart+"'"+"and '"+worktimeend+"'")} ${if(len(worktimeend)==0,"")} ${if(len(product_code)==0,"","and b.product_code='"+product_code+"'")}

注意:其中order_code、worktimestart,worktimeend,product_code都是输入条件的控件名称(一定要一致) 下方的参数填写的值只是参数显示示例

7.点击确定按钮,点击保存按钮,点击填报预览按钮

在这里插入图片描述 在这里插入图片描述 首次登录需要注册账号,注册完毕,输入用户名,密码点击登录按钮 在这里插入图片描述 其中页面显示样式可以在软件中进行调整

总结

本文只是简单的介绍了一下如何使用FineReport连接数据库呈现最基础样式的报表



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3