AMDP + XLSX Workbench 报表开发模式
目录
REPORT zhr_report . ************************************************************************ * INCLUDES ************************************************************************INCLUDE zhr_report_top. "//数据定义INCLUDE zhr_report_s01. "//选择屏幕```````````INCLUDE z_ole_excel_hr. "//通用EXCEL操作子程序INCLUDE zhr_report_m01. "//事件INCLUDE zhr_report_f01. "//通用模块INCLUDE zhr_report_ex01. "//Sheet1INCLUDE zhr_report ex02. "//Sheet2INCLUDE zhr_report_ex03. "//Sheet3INCLUDE zhr_report_ex04. "//Sheet4
INCLUDE zhr_report_ex05. "//Sheet5
示意图:
通过将通用的OLE方法封装到一个包含文件中,并使sheet页的处理放到不同的包含文件,可以使对它们的同时编辑成为可能。但是,这种做法也是有问题的:
- 包含文件不是单独的程序,这意味着只要有一个include文件中有语法错误,语法检查时就会给出提示,从而无法激活整个程序。
- 命名空间相同,这意味着定义子程序或FORM名时,很容易发生冲突
- 只能通过增加包含文件实现程序的横向扩展,较难实现程序的纵向扩展。通用部分一旦确定,再想修改会比较困难。
- OLE的性能较差。
为了解决这些问题,我们引入了AMDP + XLSX Workbench的报表开发模式。
改进后的模式示意图:
本文链接:http://www.cnblogs.com/hhelibeb/p/8422711.html
名词解释
AMDP
全称ABAP-Managed Database Procedure,一种ABAP on HANA的实现方式,提供了在ABAP中运行SQL Script的可能,并且与ABAP中的类和数据类型有良好的集成。之前的有关AMDP的文章:
ABAP中的AMDP(ABAP-Managed Database Procedures )
XLSX Workbench
一种可视化表单生成工具,相比复杂的OLE,可以用少量代码+一些拖拽和配置来生成EXCEL报表,性能更好。按XLSX Workbench的文档介绍,它有九大特性:
- 无需ABAP编程技能
- 可视化设计方式
- 高性能
- 支持后台处理
- 强大的表单格式特性支持
- 支持公式
- 支持图片
- 支持图表
- 支持树
官方文档:https://sites.google.com/site/sapxlwb/home
代码例子
注意,本部分内容会假设读者已经有使用AMDP的XLSX Workbench的初步经验(至少是能输出Hello World的水平)。如果不是这样的话,可能会对其中的某些内容感到困惑。
1,首先,创建一个接口ZIF_XLSX_REPORT。