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

相关推荐
文慧的科技江湖9 小时前
2026年10月7日充电桩行业招投标早报:软件在招标里是附件,在场景征集里是主角 | 慧知开源充电桩平台
开源·新能源·充电桩·招投标·车网互动
优选资讯10 小时前
标签打印软件怎么对接 Excel 数据
前端·excel
冬奇Lab11 小时前
一天一个开源项目(第231篇):MiniMind —— 花3块钱、2小时,从零训练一个 64M 参数的大语言模型
人工智能·开源·资讯
IT大白鼠12 小时前
DeepSeek Harness 详解开源插件化 AI Agent 运行时:架构、模式、安装与生态
人工智能·架构·开源
m4Rk_13 小时前
【论文阅读】Agent 记忆机制(94):MemGen——在推理过程中动态生成并织入潜在记忆
论文阅读·人工智能·学习·开源·github
caoerzhong13 小时前
仓库数字化成熟度分级:JeeWMS 开源 Java 仓库管理系统如何支撑从可见到自治的四级跃迁
java·开源
泡海椒14 小时前
JQuick-Excel 实战:FORMAT 管理日期与数字的 Excel 显示
开发语言·python·excel
wflynn14 小时前
GitHub 今日推荐|ts-rust:把微软 TypeScript-Go 编译器逐行移植成 Rust 实现
rust·typescript·开源·github·compiler·tsc
SL_staff14 小时前
Excel如何自动升级为可搜索的知识节点:JVS文档平台的语义解析实践
开源·github·全栈
miofly14 小时前
GitHub 今日推荐|wordcraft:用 Rust 重写 Word 内核并开放给 AI 调用
rust·开源·github