杰瑞科技汇

FineReport教程怎么学?从哪开始学?

FineReport 综合教程:从入门到精通

FineReport 是帆软软件出品的一款企业级 Web 报表工具,以其“拖拽式”的直观操作、强大的中国式复杂报表(如分组、分栏、多源、套打)制作能力以及优秀的数据可视化功能而闻名,它不仅是一个报表工具,更是一个商业智能(BI)平台,可以轻松构建数据决策系统。


第一部分:入门篇 - 基础概念与环境搭建

什么是 FineReport?

  • 核心定位:一款专业的企业级 Web 报表工具。
  • 主要功能
    • 制作各类报表:包括复杂的表格报表、卡片式报表、主子报表、分栏报表、中国式复杂报表等。
    • 数据可视化:内置丰富的图表组件,支持与报表无缝结合,制作炫酷的仪表盘。
    • 数据分析:支持参数查询、钻取、联动、排序、筛选等交互分析功能。
    • 零代码/低代码:通过拖拽组件即可完成报表设计,大大降低开发门槛。
  • 应用场景:企业日常业务报表(销售、财务、HR)、数据分析看板、大屏数据可视化、自助式数据分析平台等。

FineReport 的架构

理解其架构有助于你更好地使用它:

  • 设计器:在本地安装的桌面客户端,用于报表模板的设计、制作和调试。
  • 决策平台:部署在服务器上的 Web 应用,用于发布、管理和展示报表。
  • 数据库:报表的数据来源,如 MySQL, Oracle, SQL Server, PostgreSQL 等。
  • 用户:通过浏览器访问决策平台,查看和交互报表。

环境搭建

第一步:下载安装包 访问 FineReport 官网,下载最新版的“Windows 安装包”,这个包已经集成了 Tomcat(Web 服务器),无需单独配置。

第二步:安装与启动

  1. 解压安装包。
  2. 双击 fr 文件(或在命令行中进入解压目录,运行 fr.bat)。
  3. 等待启动,浏览器会自动打开登录页面。

第三步:登录与验证

  • 用户名/密码:默认为 admin / admin
  • 验证:成功登录后,你会看到 FineReport 的决策平台首页,这表明你的单机环境已经搭建完成。

第二部分:核心概念篇 - 报表设计的基石

在开始制作报表前,必须理解 FineReport 的几个核心概念:

模板

在 FineReport 中,你设计的每一个报表文件(.cpt)都被称为一个“模板”,模板定义了报表的样式、数据结构和交互逻辑。

数据集

数据集是连接报表与数据的桥梁,它定义了报表从哪个数据库的哪张表中获取数据,以及如何获取(即 SQL 语句)。

  • 类型:支持 SQL 查询、存储过程、API 接口等多种数据源。
  • 设计器位置:在左侧的“数据集”面板中管理。

单元格

单元格是报表设计区的最小单位,它不仅仅是用来放文字和数字的,还可以:

  • 显示数据(绑定数据集字段)。
  • 设置样式(字体、颜色、边框)。
  • 添加公式。
  • 作为组件的容器(如图表、图表)。

报表元素

报表元素是构成报表的基本组件,你可以通过从右侧“元素”面板中拖拽到设计区来添加它们。

  • 常用元素
    • 单元格:最基础的元素。
    • 用于显示静态文本。
    • 图表:用于数据可视化。
    • 图表:一个强大的容器,可以在其中放置多个图表、表格等,实现复杂布局。
    • 参数控件:如下拉框、按钮,用于实现交互。

分页与分片

  • 分页:当数据量很大时,报表需要分页显示,FineReport 会根据你设置的“分页预览”或“分页符”自动分页。
  • 分片:这是一个高级概念,用于将一张大报表拆分成多个小报表进行处理,解决大数据量下的性能瓶颈。

第三部分:实战篇 - 从零开始制作你的第一张报表

我们将以一个最简单的“产品销售清单”为例,走完整个流程。

步骤 1:准备数据源

假设我们有一个 MySQL 数据库,其中有一张 product_sales 表,结构如下: | product_id | product_name | sale_date | amount | |--------------|----------------|-------------|----------| | 1 | 手机A | 2025-10-01 | 5000 | | 2 | 笔记本B | 2025-10-01 | 8000 | | 1 | 手机A | 2025-10-02 | 6000 |

在 FineReport 设计器中:

  1. 点击菜单栏 服务器 -> 管理数据连接
  2. 添加一个新的 MySQL 数据连接,填写正确的 IP、端口、数据库名、用户名和密码。
  3. 测试连接成功后,保存。

步骤 2:创建数据集

  1. 在左侧的“数据集”面板中,右键点击,选择 新建数据集
  2. 数据类型选择 SQL
  3. 在下方的 SQL 编辑框中输入:SELECT * FROM product_sales
  4. 点击 预览数据 按钮,如果能正确看到数据,说明数据集创建成功。

步骤 3:设计报表布局

  1. 在右侧的“元素”面板中,拖拽 4 个“标签”4 个“单元格” 到设计区的 A1, B1, C1, D1 和 A2, B2, C2, D2 位置。
  2. 修改 A1, B1, C1, D1 单元格中的文本为:“产品ID”、“产品名称”、“销售日期”、“销售金额”。
  3. 选中 A2, B2, C2, D2 单元格,在右侧的“属性”面板中,设置它们的边框样式为“全部”。

步骤 4:绑定数据

这是最关键的一步!

  1. 选中 A2 单元格。
  2. 在右侧“属性”面板的“数据”选项卡中,找到“数据列”一项。
  3. 点击下拉框,选择 product_id 字段。
  4. 同理,将 B2 单元格绑定 product_name,C2 绑定 sale_date,D2 绑定 amount

步骤 5:预览报表

  1. 点击设计器工具栏上的 分页预览 按钮(一个带页码的图标)。
  2. 如果一切顺利,你将看到一张完整的数据报表!

恭喜!你已经成功制作了你的第一张 FineReport 报表!


第四部分:进阶篇 - 让报表“活”起来

一张静态的报表价值有限,FineReport 的强大之处在于其交互能力。

参数查询

让用户可以自己选择查询条件。

  • 操作
    1. 在“参数”面板中,右键新建一个参数,p_date,类型为“日期”。
    2. 在“数据集”面板中,双击你的数据集,修改 SQL 语句为:SELECT * FROM product_sales WHERE sale_date = '${p_date}'
    3. 在报表的某个位置(如页眉)拖入一个“日期控件”,并将其与 p_date 参数绑定。
    4. 分页预览,你会发现报表上方多了一个日期选择框,选择不同日期,报表数据会随之改变。

图表与联动

将表格与图表结合,并通过点击实现联动。

  • 操作
    1. 在设计区拖入一个 图表(如柱状图)。
    2. 为图表配置数据:在图表的“数据”配置中,选择数据集,并设置“类别”为 product_name,“系列”为 amount
    3. 确保你的表格也绑定了同样的数据集。
    4. 选中图表,在“属性”面板的“事件”选项卡中,找到“点击”事件。
    5. 点击“添加”,在弹出的窗口中,选择“改变过滤条件”,将过滤条件设置为 product_name = {图表点击类别}
    6. 分页预览,点击图表中的某个柱子,表格会自动筛选出该产品的数据。

中国式复杂报表

  • 分组报表:通过“分组”功能,将数据按某个字段(如产品类别)进行分组汇总,并可以添加分组小计和总计。
  • 分栏报表:使用“分栏”功能,将报表内容在页面上横向排列,类似于杂志排版。
  • 主子报表:在一个主报表中嵌入一个子报表,常用于“订单-订单详情”这类一对多场景。

第五部分:部署与发布篇

当你完成报表设计后,需要将其部署到服务器上供他人使用。

发布模板

  1. 在设计器中,点击工具栏的 发布 按钮。
  2. 选择要发布的模板(如我们刚才做的 产品销售清单.cpt)。
  3. 选择发布到决策平台的哪个目录(如“我的报表”)。
  4. 点击“发布”。

独立部署

如果你需要将 FineReport 部署到自己的服务器上(如 Linux 服务器):

  1. 从官网下载 linux 版本的安装包。
  2. 将其上传到服务器并解压。
  3. 修改 tomcat 相关的配置文件(如 setenv.sh),配置 JVM 内存大小。
  4. 启动 ./fr.sh
  5. 之后就可以通过 http://你的服务器IP:端口号/webroot/decision 访问决策平台了。

第六部分:学习资源与路径规划

官方资源(首选)

  • FineReport 帮助文档:最权威、最全面的资料,遇到任何问题,第一反应应该是查帮助文档,地址:https://help.fanruan.com/finereport/doc-view-1.html
  • FineReport 示例中心:包含了上百个各行各业的报表和仪表盘模板,是学习最佳实践的绝佳来源,地址:https://example.fanruan.com/
  • FineReport 视频教程:官方提供了大量视频教程,从入门到精通,非常系统,地址:https://v.fanruan.com/
  • FineReport 社区:可以提问、交流经验、获取最新动态,地址:https://bbs.fanruan.com/

学习路径建议

  • 第1周:入门与基础
    • 目标:掌握环境搭建、核心概念、数据集配置。
    • 行动:跟着官方“快速入门”教程,亲手制作 3-5 张简单的明细表和分组表。
  • 第2-3周:交互与可视化
    • 目标:熟练掌握参数、图表、钻取、联动等交互功能。
    • 行动:尝试模仿示例中心中的仪表盘,将多个图表和报表组合在一起,并实现联动效果。
  • 第4周:高级与部署
    • 目标:学习中国式复杂报表技巧,了解模板的部署和权限配置。
    • 行动:制作一张包含主子报表、分栏、套打的复杂报表,并学习如何将其发布到服务器。
  • 长期:实践与精通
    • 目标:结合实际业务需求,解决复杂问题,并探索 FineReport 的高级功能(如决策报表、JavaScript 扩展等)。
    • 行动:在工作中不断应用,多逛社区,学习他人的优秀案例。

希望这份详细的教程能为你开启 FineReport 的大门,祝你学习愉快!

分享:
扫描分享到社交APP
上一篇
下一篇