kettle+report designer导出带样式的excel包含多个sheet页

场景介绍:

运用pentaho report designer报表设计器,查询数据库字典表生成带有样式的excel,通过kettle pentaho报表输出组件导出形成数据字典,最终形成的数据字典样式如下图:

案例适用范围:

pentaho report designer报表设计器使用可参考,kettle生成带有样式的excel,PDF等可参考,kettle生成多个sheet页可以参考,多个sheet页合并成一个excel文件可参考

整个job设置如下设计:

generate_dictionary_job中包含generate_dictionary_summary,get_table_name,generate_dictionary,MERGE EXCEL转换和步骤如图:

步骤分解

pentaho report designer报表设计器部分

报表设计器分成两部分:数据库下所有表总览和单个表结构信息

  1. 总览部分,列出了数据库下所有表清单,及数据表字段信息,数据量,数据容量等信息
  1. 表信息部分,列出了该表所有字段信息,包括字段名,字段类型,字段约束,字段范围,默认值等

使用kettle报表输出部分

  1. 使用组件:生成记录,pentaho 报表输出具体设置如下图

  2. 生成记录设置

    生成一条常量数据即可,包括报表设计文件路径及文件名,传入报表参数,生成excel的路径及文件名,这里也可建立配置表,在表中控制

  3. pentaho 报表输出设置

    报表定义文件:此.prpt后缀结尾的文件为pentaho report designer报表设计器生成

    输出文件:此步骤定义了输出文件的类型和位置

    命名参数:这里的参数是传入到.prpt的变量

    输出类型:选择Excel 2007

多个sheet页合并成一个excel部分

这里是自定义开发了一个合并sheet页的jar包,使用时只需指定路径就可合并路径下所有excel的文件到一个文件中,具体使用方法如图

结果展示

  1. 第一个sheet页为数据库下所有表清单
  2. 除目录sheet页外,其它sheet页以数据库表名命名,第一行为excel超链接函数,可实现超链接功能返回到目录页,具体函数为:=HYPERLINK("#目录!A1","返回目录"),其余sheet页均类似

如内容有错欢迎大家指正!!!

读后有疑问请加QQ群,来聊一聊开源kettle+pentaho report designer那些事!作者个人qq:420773639

相关推荐
“码”力全开3 小时前
解耦异构算力与多协议接入:基于Docker与源码交付的开源企业级GB28181/RTSP边缘计算AI视频管理平台架构深度解析
人工智能·docker·开源
小北的AI科技分享3 小时前
指尖上的工业革命:Open Claw如何重塑现代抓取技术
开源·抓取·
zgl_200537794 小时前
源代码:跨数据库通用SQL语法解析与标注拆解
大数据·数据库·数据仓库·sql·etl·源代码管理
冬奇Lab4 小时前
每日一个开源项目(第117篇):Recordly - 零剪辑基础也能制作电影级产品演示视频
开源·资讯
FIT2CLOUD飞致云6 小时前
支持AI网关和Skills Hub,1Panel企业版正式发布
ai·开源·1panel
lzguornzhang6 小时前
VMware Workstation Pro 25H2 安装 openEuler 24.03 LTS SP3 操作系统完整教程
开源
cup117 小时前
[开源] 全屏时钟 / Full Clock:放弃 time.is,用 Svelte 5 写了一个极致纯净的全屏时钟,解决秒数焦虑
开源·工具·时钟·效率·svelte
java_cj8 小时前
数据库范式化设计与性能优化全攻略
数据库·后端·性能优化·架构·开源
Lethehong8 小时前
拒绝吃灰!手把手教你把“全能AI助理”无缝塞进微信/QQ,打造属于你的数字分身
人工智能·开源·蓝耘元生代·蓝耘maas·qwenpaw
kTR2hD1qb9 小时前
近期使用Claude Code + Opus4.7设计开发了一个开源项目:Qianyuan AI Agentic Framework
人工智能·开源