ABAP 生成word文档

1.创建模板

通过开发工具->空间->格式文本为word添加变量

选中要设为变量的文本,点击格式文本,然后在属性页签设置变量名

模板使用示例参考ZABAPDOCX包下的模板

2. 代码生成

参考ZABAPDOCX包下示例程序,可直接执行下载word文档

如果需要做格式转换,建议借助OLE或者其它工具进行格式转换

如下示例为OLE方式转换为PDF文件

复制代码
DATA: lv_wordapp  TYPE ole2_object,

      lv_worddoc  TYPE ole2_object,

      lv_wordadoc TYPE ole2_object,

      lv_wordcont TYPE c LENGTH 8,

      lv_path     TYPE string VALUE 'C:\Users\X\Desktop\DOXC.docx',

      lv_path1    TYPE string VALUE 'C:\Users\X\Desktop\DOXC.pdf'.



CREATE OBJECT lv_wordapp 'WORD.APPLICATION'.

PERFORM errorhandler.

SET PROPERTY OF lv_wordapp 'Visible' = 0.

CALL METHOD OF lv_wordapp 'Documents' = lv_worddoc.

PERFORM errorhandler.

CALL METHOD OF lv_worddoc 'Open'

  EXPORTING

    #1 = lv_path.

PERFORM errorhandler.

CALL METHOD OF lv_wordapp 'ActiveDocument' = lv_wordadoc.

PERFORM errorhandler.

CALL METHOD OF lv_wordadoc 'Content' = lv_wordcont.

PERFORM errorhandler.

CALL METHOD OF lv_wordadoc 'SaveAs'

  EXPORTING

    #1 = lv_path1

    #2 = 17.

PERFORM errorhandler.

CALL METHOD OF lv_wordapp 'Quit'.

FREE OBJECT lv_wordapp .

 

FORM errorhandler.

  IF sy-subrc <> 0.

    WRITE: / 'OLE- Error:', sy-subrc.

    CALL METHOD OF lv_wordapp 'Quit'.

    FREE OBJECT lv_wordapp.

    STOP.

  ENDIF.

ENDFORM.
3. 适用场景

需要下载word文档以供打印签字或者查看

简单文件的输出,对于下载后不需要数据处理的文件来说,更优于excel文件的生成

附ZABAPDOCX包地址:

GGitHub - AntonSikidin/zcl_docx: Best way to create Microsoft Word docx from abap

相关推荐
_处女座程序员的日常4 小时前
如何预览常见格式word、excel、ppt、图片等格式的文档
前端·javascript·word·excel·开源软件
LilySesy7 小时前
ABAP+如果在join的时候需要表1的字段某几位等于表2的字段的某几位,需要怎么做?
服务器·前端·数据库·sap·abap·alv
学会用脚编程1 天前
word转Pdf,在window正常,放在linux服务器上就转出来中文是空白
pdf·word
跟着珅聪学java1 天前
在Java中判断Word文档中是否包含表格并读取表格内容,可以使用Apache POI库教程
java·开发语言·word
CodeCraft Studio2 天前
国产化Excel处理控件Spire.XLS教程:如何使用 Java 将 TXT 文本转换为 Excel 表格
java·word·excel·spire·文档格式转换·txt转excel
开开心心就好3 天前
电子报纸离线保存:一键下载多报PDF工具
网络·笔记·macos·pdf·word·音视频·phpstorm
书中自有妍如玉3 天前
Node.Js 实现模板生成Word、Word转Pdf文件、Excel生成、上传和下载
pdf·node.js·word
格兰芬多呼神护卫4 天前
python实现Latex格式的公式转OMML并写入word
python·c#·word
不坑老师5 天前
利用不坑盒子在WPS中插入网页,放映的电脑无需安装插件,直接就能显示网页!
microsoft·word·powerpoint·wps
ljh_learn_from_base5 天前
【spring boot 使用apache poi 生成和处理word 文档】
java·spring boot·word·apache