【FineReport的详细使用教程】

前言:
💞💞大家好,我是书生♡,今天主要和大家分享一下,BI报表中的FineRoport 的详细使用,以及它的优势!!!希望对大家有所帮助。
💞💞代码是你的画笔,创新是你的画布,用它们绘出属于你的精彩世界,不断挑战,无限可能!

个人主页⭐: 书生♡
gitee主页🙋‍♂:闲客
专栏主页💞:大数据开发
博客领域💥:大数据开发,java编程,前端,算法,Python
写作风格💞:超前知识点,干货,思路讲解,通俗易懂
支持博主💖:关注⭐,点赞、收藏⭐、留言💬

目录

  • 1. FineReport介绍
    • 1.1 FineReport的概述
    • 1.2 功能概述
    • 1.3 特点
    • 1.4 BI的基本概念
    • 1.5 FineReport与FineBI区别
    • 1.6 FineReport安装
  • 2. FineReport入门使用
    • 2. 1基础报表设计流程
    • 2.2 数据准备--连接mysql
    • 2.3 查看模版数据集、服务器数据集
  • 3. FineReport 基础使用
    • 3.1 表查询
  • 4. 使用FineReport制作普通报表
    • 4.1 表格设计
    • 4.2 柱状图设计
    • 4.3 表单
    • 4.4 结果展示
  • 5. 部署

1. FineReport介绍

1.1 FineReport的概述

  FineReport报表软件是一款纯Java编写的,集数据展示(报表)和数据录入(表单)功能于一身的企业级Web报表工具,它专业、简捷、灵活的特点和无码理念,仅需简单的拖拽操作便可以设计复杂的中国式报表,搭建数据决策分析系统。

  FineReport旨在帮助用户轻松构建灵活的数据分析和报表系统,通过表格、图表等形式动态展示数据,辅助企业进行数据分析和管理决策。它大大缩短了项目周期,降低了实施成本,有效解决了企业信息孤岛问题,使数据真正产生其应用价值。
在这里插入图片描述

FineReport报表系统主要由以下两部分构成:

  • 报表设计器:用于进行表格、图形、参数、控件、填报、打印、导出等报表中各种功能的设计。它是一个集“报表应用开发”、“调试”、“部署”于一体的平台,用户可以通过简单的拖拽操作完成复杂的报表设计。
  • 报表服务器:指用在web环境中解析报表的Servlet形式的服务器。用户通过浏览器与报表服务器进行交互,服务器负责解析并展现报表内容。

1.2 功能概述

  • 多样的报表模式:FineReport支持多种报表模式,包括普通报表模式、聚合报表模式、决策报表、大屏展示、Word报告等,满足不同企业的多样化需求。
  • 强大的数据处理能力:支持通过多种连接方式连接不同数据源,支持大数据量填报和智能数据提交控制设置,提供全方位的数据校验功能。
  • 丰富的图表类型:拥有自主研发的HTML5图表,同时支持接入Echarts等第三方控件,满足数据报表的可视化开发需求。图表类型丰富,交互功能强大,具有良好的视觉体验。
  • 完善的数据决策系统:可对报表、用户、系统配置进行统一管理,包括用户管理、目录管理、权限管理、系统管理、智能运维、安全管理等功能。
  • 灵活的部署和集成:支持各类项目的部署和集成,包括服务器部署、Web集群配置、Web页面集成、单点登录等功能。同时,提供丰富的API接口和插件开发支持,满足用户的个性化需求。

1.3 特点

  • 功能全面且专业:支持关系型数据库、BI多维数据库的连接取数,支持中国式复杂报表的处理,支持离线填报、多级上报、数据填报,有着安全、完善的权限控制方案等。
  • 设计报表简单高效:学习成本低类Excel的界面使用户不需任何额外学习成本,零编码开发报表,轻松的拖拽数据,一
    两分钟内就能完成报表制作。
  • 跨平台兼容性:支持各种操作系统和主流Web应用服务器,具有良好的跨平台兼容性。产品稳定性高,可靠性强。

1.4 BI的基本概念

BI(BusinessIntelligence)即商业智能,它是一套完整的解决方案,用来将企业中现有的数据进行有效的整合,快
速准确的提供报表并提出决策依据,帮助企业做出明智的业务经营决策。

通俗的说 : 商业智能是一整套方案,就是充分利用企业在日常经营过程中生产的大量数据,并将它们转化为信息和知识来免除
企业中的瞎猜行为和无知状态,让每一个决定、管理细节、战略规划都有数据参考。

1.5 FineReport与FineBI区别

在这里插入图片描述
在这里插入图片描述

使用场景

  • FineReport:适用于需要快速生成各类统计报表和数据分析系统的企业,特别是那些需要中国式复杂报表的企事业单位。通过FineReport,用户可以轻松地实现数据的多维度展示和深入分析,同时支持报表的自动化生成和分发。
  • FineBI:适用于需要构建自助式数据分析平台的企业,特别是那些希望业务人员能够直接参与数据分析过程,自主设计报表并辅助业务决策的场景。FineBI提供了丰富的数据可视化效果和自助式数据分析功能,让业务人员能够轻松地进行数据探索和洞察。

1.6 FineReport安装

FineReport的官方下载网址:https://www.finereport.com/

注意:注册之后会有一个2激活码一定要保存好,在我们下载好之后需要通过激活码进行激活

在这里插入图片描述
安装好之后就是下面这个样子:
在这里插入图片描述
调整分辨率:在桌面上右击“设计器图标”,选择「属性>兼容性>更改所有用户的设置>更改高 DPI 设置」,勾选「替代高DPI缩放行为」,下拉框选择「系统」 。
在这里插入图片描述

2. FineReport入门使用

2. 1基础报表设计流程

在这里插入图片描述

  1. 创建报表
    在这里插入图片描述
  2. 添加数据集
    在这里插入图片描述
    数据集分为:模板数据集和服务器数据集
  • 模板数据集:只能在当前报表模板中使用
  • 服务器数据集:可以在所有报表模块中使用

模版数据集:这个数据集只在此模版中生效可以使用
服务器数据集:数据可以在所有的模版中使用

  1. 向模版中添加数据
    将数据集的字段拖拽到相应的表格中。

在这里插入图片描述
4. 调整报表的格式
我们可以设置:调整单元格大小,边框设置,对齐方式设置等等。
在这里插入图片描述
5. 保存并预览报表
我们修改完报表要先进行保存,然后预览
在这里插入图片描述
6. 结果如下
在这里插入图片描述

2.2 数据准备–连接mysql

上述的数据是FineReport自带的数据,如果我们想要展示我们本地的数据库的数据或者是服务器中数据库的数据,我们就需要先链接对应的数据库。

  • 点击上方的服务器,选择‘定义数据连接’
    在这里插入图片描述
  • 选择左上角的‘+’,点击JDBC
    在这里插入图片描述
    在这里插入图片描述
  • 选择对用的数据库,填写ip,端口号,库名,用户名,密码
    在这里插入图片描述最后添加mysql的数据,我们点击“数据库查询”
    在这里插入图片描述

注意:.若是10.0.15及之后的版本,则跳过此步骤。
因为该数据连接使用FineReport自带的驱动包mysql-connector-java-5.1.49-bin.jar,不需要单独下载驱动包。
10.0.15及之前的版本需要下载驱动,将下载好的驱动包拷贝到D:\FineReport_11.0\webapps\webroot\WEB-INF\lib

2.3 查看模版数据集、服务器数据集

  • 服务器数据集:点击上方的服务器,点击服务器数据集,就可以看见我们的所有的服务器数据集
    在这里插入图片描述
  • 模版数据集:点击上方的模版,点击模版数据集,就可以看见我们的所有的模版数据集
    在这里插入图片描述

3. FineReport 基础使用

3.1 表查询

  • 点击左边窗口的的【+】按钮,选择【数据库查询】,然后给数据库查询命名,选择所需的数据连接。
    在这里插入图片描述
  • 将左边的表拖拽到右边选择select
    在这里插入图片描述

在这里插入图片描述

  • 选中查询编辑器,在其中输入SQL语句【selectfromproductwherepid= a r e a 】。这是一个带参数的 S Q L 查询,【 {area}】。这是一个带参数的SQL查询,【 area】。这是一个带参数的SQL查询,【{}】为参数的形式。点击【预览】,跳出提示框,输入参数【area=华东】,结果可以在预览组中看,实际就是执行【selectfromproductwhere area=华东】的SQL 查询。如下图所示:
    在这里插入图片描述
    输入:华东
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

注意:=
在以${}为参数的时候,如果是整数类型,直接写,如果是字符串类型的需要加上‘’,即 ‘ ${} ’

注意1:FineReport数据库查询只支持一条自然SQL语句的查询,不支持多个自然SQL语句
注意2:create、drop等新建表、删除表不在官方支持范围内,官方只支持select
注意3:可以将数据连接中的表直接拖动到查询编辑器中

4. 使用FineReport制作普通报表

目标:制作如图的报表
这个分为三个部分:表单,表格,报表
在这里插入图片描述

4.1 表格设计

  1. 新建普通报表,将页面大小改为合适的大小
    在这里插入图片描述
    点击模版中的页面大小,选择合适的大小
    在这里插入图片描述
  2. 数据连接
    通过对这个图的观察,数据分为两部分。一个是原始的销量数据,一个是每一个销售员的总和。
    因此我们可以涉及两个数据集,一个是原始的,一个是通过对销售员分组聚合的结果数据集。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  3. 表格设计
    我们先按照需求将所有的数据都拖拽到表格中,然后在将每一个单元格进行设置
    7
  • C5单元格用于计算每个产品各自的总销量,所以要对C4单元格求和,选中C5单元格,点击上方快捷按钮中的插入公式,在弹出的公式编辑框中输入公式SUM(C4)

  • D5单元格用于计算总销量,所以要对D4单元格求和,选中C5单元格,点击上方快捷按钮中的插入公式,在弹出的公式编辑框中输入公式SUM(D4)
    在这里插入图片描述

  • 选中C3单元格,让产品字段的数据在表格中横向扩展,默认为纵向扩展,右边属性面板选择「单元格属性>扩展>基本>扩展方向>横向」。
    在这里插入图片描述

  • 选中C4单元格,由于A4、B4、C3单元格的扩展已经确定了唯一的销量值,故C4单元格无需扩展,扩展方向为不扩展。
    C5和D5单元格也都要设置扩展方向为不扩展。在这里插入图片描述

  • 地区是纵向显示的,因此设置为纵向
    在这里插入图片描述

  • 因为销售员要和地区相对应,因此他的左父格应该是地区(A4)
    在这里插入图片描述

  • 销量跟销售员和产品有关,每个销售员和产品的销量不一样,因此需要关联,即左父格为(B4),上父格为(C3)
    在这里插入图片描述

  • 以为综合销量,统计的是每一个销售员的总量,因此要和销售员对应上,因此左父格为(B4)

当报表中存在不同数据集的数据时,需要通过添加数据过滤条件,建立起不同数据集之间的联系。
我们制作的这张报表的数据来源于两个不同的数据集ds1和ds2,「销售员」字段是这两个数据集共有的字段,我们使用这个字段建立起他们之间的联系。
选中并双击D4单元格,弹出数据列对话框,选择过滤。给单元格增加一个普通条件,将ds2的销售员字段与ds1的销售员字段进行绑定,实现两个数据集之间的关联。

在这里插入图片描述

  • 结果如图所示
    在这里插入图片描述

4.2 柱状图设计

  • 先合并下方合并单元格再点击柱状图,选择想要的插入
    在这里插入图片描述

  • 柱形图是对表格中地区销售概况数据的图形化展示,所以无需再次设置标题,我们在图表样式中去掉柱形图的标题。选中图表,在右边属性面板选择「单元格元素>样式>标题」,不勾选标题可见。
    在这里插入图片描述

  • 如何将图与表格关联在一起呢,我们需要通过数据的设置关联

数据来源:单元格数据,分类名:=B4,系列名:=C3,值:=C4
注:分类名、系列名、值在设置的时候必须要有等号,否则单元格会被作为字符串处理。

在这里插入图片描述
选择图表,在右边属性面板选择「单元格属性>扩展>基本」,扩展方向设置为不扩展,左父格和上父格均设置为无。
在这里插入图片描述

  • 用户可以自定义柱形图中系列的柱形颜色,下面我们将系列一的柱形颜色从蓝色修改为紫色。选中柱形图,点击属性面板「单元格元素>特效>条件显示>添加条件」,双击条件修改条件名为「系列1柱形紫色」,点击「条件编辑」按钮,在弹出的条件编辑对话框中,点击「+」按钮,新增配色属性,下拉框选择紫色,设置普通条件系列序号等于1,点击「增加」按钮。即实现系列一柱形颜色的改变。
    在这里插入图片描述
    在这里插入图片描述

4.3 表单

参数的作用在于通过设置参数,可以在参数面板中给参数添加控件,再将控件与报表数据进行绑定,进而实现根据用户输入的参数查询指定的数据。菜单栏选择「模板>模板参数」,打开模板参数设置对话框。

在这里插入图片描述

模板参数对话框点击「增加」按钮,新建一个模板参数,双击该参数将它重命名为「地区」,设置默认值为「华东」。点击「确定」完成模板参数的定义

  • 模板参数
    点击参数面板的编辑按钮,进入参数面板设置界面。
    在这里插入图片描述

  • 右上角控件设置面板会显示没有添加控件的参数,点击地区或者点击全部添加,将参数的默认控件添加到参数面板。
    在这里插入图片描述

  • 选中下拉框控件,在右边的控件设置面板选择「属性」,点击数据字典「编辑」按钮,类型设置为「数据库表」,数据库为「FRDemo」,选择数据库表为「销量」,列名的实际值和显示值为「地区」
    在这里插入图片描述
    设置好控件后还不能实现根据下拉框中的参数查询指定地区的表格和柱形图信息,需要给表格设置数据过滤条件,当用户下拉选择地区参数点击查询时,表格和柱形图只显示该地区的数据。
    双击A4单元格,在弹出的数据列对话框中选择「过滤」,添加一个普通条件,让地区等于参数$地区,点击「增加」按钮,点击「确定」。即将地区单元格与参数绑定起来,当下拉框选择地区参数查询时只显示该地区下的表格和图表信息。
    在这里插入图片描述

这个我们选择对应的地区会筛选出对应的数据,当我们不选择时,会返回全部数据

4.4 结果展示

在这里插入图片描述

5. 部署

  • 点击服务器,选择报表平台管理,进入到数据决策系统,进行报表部署。
    在这里插入图片描述
  • 点击管理系统,点击目录管理,添加目录,创建FRDemo目录,将报表放在此目录下。点击添加模版,部署报表
    在这里插入图片描述
    报表展示
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/45942.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# Winform布局控件的几种方式

在 C# WinForms 应用程序中,布局控件和布局管理器可以帮助开发者创建响应式的用户界面,即使在窗口大小改变时也能保持控件的正确位置和尺寸。 通常我们采用Panel和Dock,辅助Anchor实现类似如下的布局。 以下是几种常见的布局控件和方法&…

计算机网络通信

1、最原始的hub结构 2、局域网的交换机:mac和交换机端口路由表-数据链路层 mac地址 3、不同局域网之间进行通信,主要是路由器-网络层-ip 源ip到目标ip的不变化,但是mac地址在一直变化

Linux--信号量

线程系列: Linux–线程的认识(一) Linux–线程的分离、线程库的地址关系的理解、线程的简单封装(二) 线程的互斥:临界资源只能在同一时间被一个线程使用 生产消费模型 信号量 信号量(Semaphore)是在多线程…

基于PyTorch深度学习实践技术应用

近年来,Python语言由于其开源、简单等特点,受到了广大程序开发者的偏爱,丰富的函数库使得其在各行各业中得到了广泛的应用。伴随着新一轮人工智能(尤其是深度学习)的快速发展,许多深度学习框架应运而生&…

通义千问Qwen-VL-Chat大模型本地训练(二)

目录 前言 环境准备 软件安装 数据准备 模型训练 模型名称修改 数据集修改 模型参数修改 数据读取编码修改 output_dir修改 模型调用 验证 小结 前言 人工智能大模型是一种能够利用大数据和神经网络来模拟人类思维和创造力的人工智能算法。它利用海量的数据和深度学习技…

中职网络安全B模块Cenots6.8数据库

任务环境说明: ✓ 服务器场景:CentOS6.8(开放链接) ✓ 用户名:root;密码:123456 进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root&#x…

【C++深度探索】全面解析多态性机制(二)

🔥 个人主页:大耳朵土土垚 🔥 所属专栏:C从入门至进阶 这里将会不定期更新有关C/C的内容,欢迎大家点赞,收藏,评论🥳🥳🎉🎉🎉 前言 我…

Debezium日常分享系列之:Debezium 3.0.0.Alpha1 Released

Debezium日常分享系列之:Debezium 3.0.0.Alpha1 Released 一、重大改变Java 和 Maven 要求已更改 二、新的特征和提高MongoDB 三、更多内容 Debezium 3 的第一个预发布版本 3.0.0.Alpha1。这个版本虽然比正常的预版本要小,但高度关注几个关键点&#xff…

《财经日报》︱揭秘随身WiFi市场乱象与格行的破局之路 格行如何树立行业清流新标杆? 随身WiFi真的靠谱吗?

在移动互联网高速发展的今天,随身WiFi以其便捷性和高性价比迅速成为市场宠儿。然而,随着行业的迅速扩张,一系列乱象与套路也逐渐浮出水面:从虚假宣传到限速虚量,随身WiFi行业中的种种套路让消费者防不胜防。商家利用信…

c语言题目之求两个整数的二进制位数的不同个数

文章目录 一、题目二、分析三、代码实现 提示:以下是本篇文章正文内容,下面案例可供参考 一、题目 二、分析 首先看到这道题我们是求两个整数的二进制位不同位的个数,在操作符中我们详细学到到了按位操作符相关的内容,首先看到要…

三相感应电机建模仿真(5):考虑铁耗时静止dq坐标系的数学模型及其仿真模型

1.概述 2.考虑铁耗时的三相感应电机数学模型 3.考虑铁耗时的三相感应电机仿真模型 4.仿真实例 5.总结 6.参考文献 1.概述 电机的铁心损耗主要包括涡流损耗和磁滞损耗,这些损耗以热的形式消耗能量,减少了电动机的有效输出功率,对电机效率产生影响;铁心损耗会导致电机内…

【教程】Vue2中使用svg矢量图

1.npm导包 npm i svg-sprite-loader --save2.创建目录放入svg文件,创建SvgIcon.js 3.SvgIcon.js const req require.context(./svg, false, /\.svg$/) const requireAll requireContext > requireContext.keys().map(requireContext) requireAll(req)4.vue.c…

【前端】零基础学会编写CSS

一、什么是CSS CSS (Cascading Style Sheets,层叠样式表)是一种是一种用来为结构化文档(如 HTML 文档)添加样式(字体、间距和颜色等)的计算机语言,能够对网页中元素位置的排版进行像素级别的精…

【数据结构取经之路】二叉搜索树的实现

目录 前言 二叉搜索树 概念 性质 二叉搜索树的实现 结点的定义 插入 查找 删除 二叉搜索树完整代码 前言 首先,二叉搜索树是一种数据结构,了解二叉搜素树有助于理解map和set的特性。 二叉搜索树 概念 二叉搜索树又称二叉排序树&#xff0c…

【Caffeine】⭐️SpringBoot 项目整合 Caffeine 实现本地缓存

目录 🍸前言 🍻一、Caffeine 🍺二、项目实践 2.1 环境准备 2.2 项目搭建 2.3 接口测试 ​💞️三、章末 🍸前言 小伙伴们大家好,缓存是提升系统性能的一个不可或缺的工具,通过缓存可以避免大…

java基础之接口

接口和抽象类很像,接口是把行为给抽象化,可以理解成一个抽象类抽象到极致的情况下,形成的类,也就是一个抽象类有且只有抽象方法的时候,就可以用接口来写。 一、抽象类与接口在书写上的异同 这是一个抽象类 public abst…

五、 计算机网络(考点篇)

1 网络概述和模型 计算机网络是计算机技术与通信技术相结合的产物,它实现了远程通信、远程信息处理和资源共享。计算机网络的功能:数据通信、资源共享、管理集中化、实现分布式处理、负载均衡。 网络性能指标:速率、带宽(频带宽度或传送线路…

什么是人力资源管理审计

企业管理者可以通过会计审计了解公司的财务状况,对企业同样重要的人力状况如何要怎样了解呢?要怎样提高人力资源部门的运行能力?如何实施各种人力资源功能? 相对与财务、会计审计而言,人力资源审计在我国管理层中还是一…

驱动电机液冷冷却系统

1.自然冷却 自然冷却也可以看作是被动散热,它是依靠驱动电机自身的硬件结构,把热量从里经由金属材料向外散热,所以也就不会造成太多的成本支出,但是整体的散热效果并不太好。 考虑到低成本的原因,自然冷却就不能加装…