积木报表工具的使用
TIP
积木报表,是一款免费的数据可视化报表,含报表、打印、大屏和仪表盘,像搭建积木一样完全在线设计!功能涵盖:复杂报表、打印设计、图表报表、门户设计、大屏设计等! 分两大模块:JimuReport侧重传统复杂报表和打印、 JimuBI侧重数据大屏和仪表盘可视化设计!
1.1 为啥使用
不同的客户需要的报表数据与格式不同,如果针对不同的客户的定制化费时费力
1.2 环境搭建
依赖集成
xml
<properties>
<!-- jdk版本号-->
<java.version>1.8</java.version>
<!-- DB驱动 -->
<postgresql.version>42.2.6</postgresql.version>
<ojdbc6.version>11.2.0.3</ojdbc6.version>
<sqljdbc4.version>4.0</sqljdbc4.version>
<mysql-connector-java.version>5.1.14</mysql-connector-java.version>
<minio.version>8.0.3</minio.version>
</properties>
<!-- 配置远程仓库-->
<repositories>
<repository>
<id>aliyun</id>
<name>aliyun Repository</name>
<url>https://maven.aliyun.com/repository/public</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>jeecg</id>
<name>jeecg Repository</name>
<url>https://maven.jeecg.org/nexus/content/repositories/jeecg</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<dependencies>
<!--web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--freemarker-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
<!-- minio oss-->
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>${minio.version}</version>
<optional>true</optional>
</dependency>
<!-- JimuReport -->
<dependency>
<groupId>org.jeecgframework.jimureport</groupId>
<artifactId>jimureport-spring-boot-starter</artifactId>
<version>${version}</version>
</dependency>
<!-- 最新版本可以从 http://jimureport.com/doc/log 中查询到 -->
<!-- 数据库驱动 -->
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.20</version>
<optional>true</optional>
<scope>runtime</scope>
</dependency>
<!-- sqlserver-->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>${sqljdbc4.version}</version>
<scope>runtime</scope>
</dependency>
<!-- oracle驱动 -->
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>${ojdbc6.version}</version>
<scope>runtime</scope>
</dependency>
<!-- postgresql驱动 -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>${postgresql.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>数据库脚本初始化: jimureport.sql
yaml配置
server:
port: 9000
spring:
#配置静态资源
mvc:
static-path-pattern: /**
resource:
static-locations: classpath:/static/
#配置数据库
datasource:
url: jdbc:mysql://127.0.0.1:3306/jimureport?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
#JimuReport[minidao配置]
minidao :
base-package: org.jeecg.modules.jmreport.desreport.dao*
db-type: mysql
#JimuReport[上传配置]
jeecg :
jmreport:
# 自动保存
autoSave: true
# 单位毫秒 默认5*60*1000
interval: 10000
# local|minio|alioss
uploadType: local
# local
path :
#文件路径
upload: D:\images
# alioss
oss:
endpoint: oss-cn-beijing.aliyuncs.com
accessKey: ??
secretKey: ??
staticDomain: ??
bucketName: ??
# minio
minio:
minio_url: http://minio.jeecg.com
minio_name: ??
minio_pass: ??
bucketName: ??
#输出sql日志
logging:
level:
org.jeecg.modules.jmreport : debug包扫描
@SpringBootApplication(scanBasePackages = {"org.jeecg.modules.jmreport","com.jimureport.demo"})如果存在权限框架方向相关url

测试访问: 访问报表工作台:
{项目前缀}/jmreport/list

1.3 使用介绍
数据集管理:主要是报表的数据来源:可以是数据库,API接口,JSON


1.3.1 模版制作
配置数据源,生成我们需要的数据


这里相当于我们写sql 查询报表需要的数据,与等一下我们制造模版进行对应

这里没啥难度,主要是模版的制作需要美观,我们可以预览效果

1.3.2 查询条件
我们需要的查询条件在数据集中配置

1.3.3 字典配置
我们的后台查询的数据有很多字典,导出数据时不可能时字典值,这个时候需要翻译,点击数据字典进行维护


1.3.4 其他用法


