还在为报表写复杂 SQL 抓耳挠腮?报表制作太复杂不会用?来试试积木报表吧,通过 AI 30 秒即可生成报表和图表,真的是超简单。
积木报表 v1.9.6 + 版本新增了 AI 助手功能,AI 助手可以帮助用户快速生成 sql 语句、快速生成报表和图表,极大的提高了报表设计的效率
一、效果
1.1 AI 根据业务描述生成 sql 语句:
![]()
1.2 AI 根据业务描述生成报表设计:
![]()
1.3 AI 根据业务描述生成图表设计
![]()
二、实现方式
2.1 前置条件
积木报表的 AI 助手功能依赖于 JeecgBoot 系统的 AI大模型模块,所以若想使用该功能,需要运行 JeecgBoot 系统,并且在系统中配置好 AI大模型模块的相关参数;或者将积木报表集成在 JeecgBoot 系统中使用。
2.2 JeecgBoot 配置
在 JeecgBoot 系统中,需要配置自己的 LLM 模型,并且更新 AI 工作流中 LLM 节点的配置参数,具体配置步骤如下:
-
进入 JeecgBoot 系统的 AI大模型模块,点击左侧菜单中的 AI模型配置,进入配置页面
-
点击左上角的添加模型按钮,添加自己的模型配置 ![]()
-
在弹出的对话框中,选择模型供应商(本例使用千问),下一步。 ![]()
-
输入模型名称、选择模型类型(语言模型)、填写基础模型 (qwen-coder-plus)、模型地址、鉴权等信息,点击保存按钮。 ![]()
-
点击左侧菜单中的 AI工作流,进入工作流配置页面,点击内置的工作流:JimuReport AI引擎,进入编排页面。
![]()
- 在编排页面中,点击
LLM 节点,进入节点配置页面;
- 分别点击大模型节点,将模型修改为刚刚我们创建的模型。
![]()
- 点击
保存按钮,完成工作流的配置。
2.3 积木报表配置
如果积木报表是独立使用的,或者集成在其他系统中使用,需要在积木报表的配置文件中配置 AI 助手的相关参数,具体配置步骤如下:
- 打开积木报表的配置文件
application.yml,在 jeecg.jmreport.ai.service-url 节点配置 JeecgAI服务的地址,格式为 http://domain/url,例如:http://localhost:8080/jeecgboot/airag/flow/run
jeecg:
jmreport:
ai:
service-url: http://localhost:8080/jeecgboot/airag/flow/run
如果积木报表是集成在 JeecgBoot 系统中使用的,则不需要配置该参数。
三、使用方式
3.1 AI 根据业务描述生成 sql 语句:
- 进入积木报表的设计页面,点击左侧数据集新建按钮,进入 Sql 数据集新建页面。
- 先选定数据源 (若不选择,则默认使用系统的数据源)
![]()
- 然后点击 sql 语句输入框右上的
AI生成SQL 按钮,弹出 AI 生成 SQL 语句对话框 ![]()
- 在对话框中输入业务描述,例如:
查询2018年1月到2019年12月的入库记录,点击生成SQL 按钮,AI 助手会分几个步骤完成生成 SQL 语句的过程:
- 分析理解用户输入的业务描述
- 从数据库中选择符合业务需求的数据库表
- 生成 Sql 语句
- 执行 Sql 语句,返回结果
![]()
- 若对生成的 sql 语句不满意,可以修改需求描述,再次点击
生成SQL 按钮,AI 助手会重新生成 sql 语句
- 若生成的 sql 语句符合预期,点击
使用此SQL 按钮,完成 sql 语句的生成
3.2 AI 根据业务描述生成报表设计:
- 进入积木报表的设计页面,确保已经维护好数据集数据。
- 点击右下角的
AI助手按钮,弹出 AI 助手对话框 ![]()
- 在对话框中输入业务描述,例如:
展示物料列表,需要展示物料的名称、分类、供应商、库存数量,点击确定按钮,AI 助手会分几个步骤完成生成报表设计的过程:
- 分析理解用户输入的业务描述
- 从多个数据集 (若有) 中选择一个最合适的数据集
- 生成报表设计
- 将报表设计渲染到页面上
![]()
- 生成完成后系统会自动将设计渲染到设计页面上
![]()
3.3 AI 根据业务描述生成图表设计:
- 进入积木报表的设计页面,确保已经维护好数据集数据。
- 点击添加图表按钮,打开添加图表弹窗。
![]()
- 在弹窗左上角点击
AI生成按钮,弹出 AI 助手对话框。 ![]()
- 在对话框中输入业务描述,例如:
展示物料列表库存的柱状图,点击确定按钮,AI 助手会分几个步骤完成生成图表设计的过程:
- 分析理解用户输入的业务描述
- 从多个数据集 (若有) 中选择一个最合适的数据集
- 生成图表设计
- 将图表设计渲染到页面上
![]()
- 生成完成后,系统会自动将设计渲染到设计页面上.
![]()