满心记 我在人间混日子

开源在线设计报表工具JimuReport

分享一款正在使用的报表工具,真的是简化了不少工作,那么对比传统方式(poi-tl为例),积木简化了以下流程:
  1. 根据业务生成word;
  2. 缓存到本地,并上传到指定文件服务;
  3. 在线预览(并且无法预览生成前的样式);
  4. 导出、下载;

那么如果使用上积木报表,我只需要配置JSON数据集、API数据集、javaBean数据集、SQL数据集任意一种数据集进行数据解析,然后通过拖拽方式完成属性绑定,即可完成报表渲染,所以毫不夸张说,不懂代码,也完全可以使用积木报表,废话不多说,上干货。。。

前言

积木报表,是一款免费的企业级Web报表工具,像搭建积木一样在线设计报表!功能涵盖:数据报表、打印设计、图表报表、大屏设计等!

  • Web 版报表设计器,类似于excel操作风格,通过拖拽完成报表设计。
  • 秉承"简单、易用、专业"的产品理念,极大的降低报表开发难度、缩短开发周期、节省成本、解决各类报表难题。
  • 领先的企业级Web报表软件,采用纯Web在线技术,专注于解决企业报表快速制作难题。

项目相关

官方网站
视频教程
官方文档

积木优点

{% note info modern %}永久免费,支持各种复杂报表,并且傻瓜式在线设计,非常的智能,低代码时代,这个是你的首选!{% endnote %}

  • 采用SpringBoot+Mybatis-Plus的脚手架项目,都可以快速集成
  • Web 版设计器,类似于excel操作风格,通过拖拽完成报表设计
  • 通过SQL、API等方式,将数据源与模板绑定。同时支持表达式,自动计算合计等功能,使计算工作量大大降低
  • 开发效率很高,傻瓜式在线报表设计,一分钟设计一个报表,又简单又强大
  • 支持 ECharts,目前支持28种图表,在线拖拽设计,支持SQL和API两种数据源
  • 支持分组、交叉,合计、表达式等复杂报表
  • 支持打印设计(支持套打、背景打印等)可设置打印边距、方向、页眉页脚等参数 一键快速打印 同时可实现发票套打,不动产证等精准、无缝打印
  • 大屏设计器支持几十种图表样式,可自由拼接、组合,设计炫酷大屏
  • 可设计各种类型的单据、大屏,如出入库单、销售单、财务报表、合同、监控大屏、旅游数据大屏等

数据库兼容

{% checkbox blue checked, Mysql5.7 %}
{% checkbox blue checked, Oracle11g %}
{% checkbox blue checked, SqlServer2017 %}
{% checkbox blue checked, PostgreSQL %}
{% checkbox blue checked, MariaDB %}
{% checkbox blue checked, 达梦 %}
{% checkbox blue checked, 人大金仓 %}
{% checkbox blue checked, 神通 %}
{% checkbox blue checked, DB2 %}
{% checkbox blue checked, SQLite %}
{% checkbox blue checked, Derby %}
{% checkbox blue checked, H2 %}
{% checkbox blue checked, Hsqldb %}
{% checkbox blue checked, Redis %}
{% checkbox blue checked, MongoDB %}

报表截图

  • 报表设计器(完全在线设计,简单易用)
  • 打印设计(支持套打、背景打印)
  • 数据报表(支持分组、交叉,合计等复杂报表)
  • 图形报表(目前支持28种图表)

功能清单

├─报表设计器
│  ├─数据源
│  │  ├─支持多种数据源,如Oracle,MySQL,SQLServer,PostgreSQL等主流的数据库
│  │  ├─支持SQL编写页面智能化,可以看到数据源下面的表清单和字段清单
│  │  ├─支持参数
│  │  ├─支持单数据源和多数数据源设置
│  ├─单元格格式
│  │  ├─边框
│  │  ├─字体大小
│  │  ├─字体颜色
│  │  ├─背景色
│  │  ├─字体加粗
│  │  ├─支持水平和垂直的分散对齐
│  │  ├─支持文字自动换行设置
│  │  ├─图片设置为图片背景
│  │  ├─支持无线行和无限列
│  │  ├─支持设计器内冻结窗口
│  │  ├─支持对单元格内容或格式的复制、粘贴和删除等功能
│  │  ├─等等
│  ├─报表元素
│  │  ├─文本类型:直接写文本;支持数值类型的文本设置小数位数
│  │  ├─图片类型:支持上传一张图表;支持图片动态生成
│  │  ├─图表类型
│  │  ├─函数类型
│  │  └─支持求和
│  │  └─平均值
│  │  └─最大值
│  │  └─最小值
│  ├─背景
│  │  ├─背景颜色设置
│  │  ├─背景图片设置
│  │  ├─背景透明度设置
│  │  ├─背景大小设置
│  ├─数据字典
│  ├─报表打印
│  │  ├─自定义打印
│  │  └─医药笺、逮捕令、介绍信等自定义样式设计打印
│  │  ├─简单数据打印
│  │  └─出入库单、销售表打印
│  │  └─带参数打印
│  │  └─分页打印
│  │  ├─套打
│  │  └─不动产证书打印
│  │  └─发票打印
│  ├─数据报表
│  │  ├─分组数据报表
│  │  └─横向数据分组
│  │  └─纵向数据分组
│  │  └─多级循环表头分组
│  │  └─横向分组小计
│  │  └─纵向分组小计(预计2021.03.08)
│  │  └─合计
│  │  ├─交叉报表
│  │  ├─明细表
│  │  ├─带条件查询报表
│  │  ├─表达式报表
│  │  ├─带二维码/条形码报表
│  │  ├─多表头复杂报表(预计2021.03.08发布)
│  │  ├─主子报表(预计2021.03.08发布)
│  │  ├─预警报表(预计2021.03.08发布)
│  │  ├─数据钻取报表(预计2021.03.08发布)
│  ├─图形报表
│  │  ├─柱形图
│  │  ├─折线图
│  │  ├─饼图
│  │  ├─折柱图
│  │  ├─散点图
│  │  ├─漏斗图
│  │  ├─雷达图
│  │  ├─象形图
│  │  ├─地图
│  │  ├─仪盘表
│  │  ├─关系图
│  │  ├─图表背景
│  │  ├─图表动态刷新
│  │  ├─图表数据字典
│  ├─参数
│  │  ├─参数配置
│  │  ├─参数管理
│  ├─导入导出
│  │  ├─支持导入Excel
│  │  ├─支持导出Excel、pdf;支持导出excel、pdf带参数
│  ├─打印设置
│  │  ├─打印区域设置
│  │  ├─打印机设置
│  │  ├─预览
│  │  ├─打印页码设置
├─大屏设计器
│  ├─系统功能
│  │  ├─静态数据源和动态数据源设置
│  │  ├─基础功能
│  │  └─支持拖拽设计
│  │  └─支持增、删、改、查大屏
│  │  └─支持复制大屏数据和样式
│  │  └─支持大屏预览、分享
│  │  └─支持系统自动保存数据,同时支持手动恢复数据
│  │  └─支持设置大屏密码
│  │  └─支持对组件图层的删除、组合、上移、下移、置顶、置底等
│  │  ├─背景设置
│  │  └─大屏的宽度和高度设置
│  │  └─大屏简介设置
│  │  └─背景颜色、背景图片设置
│  │  └─封面图设置
│  │  └─缩放比例设置
│  │  └─环境地址设置
│  │  └─水印设置
│  │  ├─地图设置
│  │  └─添加地图
│  │  └─地图数据隔离
│  ├─图表
│  │  ├─柱形图
│  │  ├─折线图
│  │  ├─折柱图
│  │  ├─饼图
│  │  ├─象形图
│  │  ├─雷达图
│  │  ├─散点图
│  │  ├─漏斗图
│  │  ├─文本框
│  │  ├─跑马灯
│  │  ├─超链接
│  │  ├─实时时间
│  │  ├─地图
│  │  ├─全国物流地图
│  │  ├─地理坐标地图
│  │  ├─城市派件地图
│  │  ├─图片
│  │  ├─图片框
│  │  ├─轮播图
│  │  ├─滑动组件
│  │  ├─iframe
│  │  ├─video
│  │  ├─翻牌器
│  │  ├─环形图
│  │  ├─进度条
│  │  ├─仪盘表
│  │  ├─字浮云
│  │  ├─表格
│  │  ├─选项卡
│  │  ├─万能组件
└─其他模块
   └─更多功能开发中。。

快速集成

{% note info simple %}前提: 采用SpringBoot2的脚手架项目都可以集成JimuReport。{% endnote %}

  1. 引入依赖

    <dependency>
      <groupId>org.jeecgframework.jimureport</groupId>
      <artifactId>jimureport-spring-boot-starter</artifactId>
      <version>1.5.6</version>
    </dependency>

    mogodb/redis支持包(按需添加)

    <dependency>
     <groupId>org.jeecgframework.jimureport</groupId>
     <artifactId>jimureport-nosql-starter</artifactId>
     <version>1.5.6</version>
    </dependency>

    查询最新版本号

  2. 初始化脚本
    导入数据库脚本
  3. 排除权限拦截
    JimuReport自带权限控制,所以需要放开自己框架对JimuReport请求的权限拦截;
    JeecgBoot修改org.jeecg.config.shiro.ShiroConfig加入以下代码,其他项目参考修改

    //积木报表排除
    filterChainDefinitionMap.put("/jmreport/**", "anon");
  4. 访问项目
    http://ip+port/jmreport/list

部署

  1. 下载项目

    git clone https://gitee.com/jeecg/JimuReport.git
  2. 进入项目 jimureport-demo 根目录

    cd JimuReport/jimureport-example
  3. maven执行package

    mvn clean package
  4. 执行命令,生成镜像

    docker-compose up -d
  5. 访问
    http://localhost:8085/jmreport/list

当然积木报表还支持一些自定义的报表,同样不错,有兴趣可以去深入了解下

他们家同款的大屏设计器也可以了解下,也很实用,JimuReport

我这里就放几张截图吧,比较简单,拖拽式的,和报表很多地方是类似的


发表评论

提交评论