ABAP EXCEL 转 PDF

news/2024/7/5 5:29:35

DATA: application TYPE ole2_object,
workbook TYPE ole2_object,
sheet TYPE ole2_object.
IF iv_pdf IS NOT INITIAL.
CREATE OBJECT application ‘EXCEL.APPLICATION’.
CALL METHOD OF application ‘WORKBOOKS’ = workbook.
CALL METHOD OF workbook ‘OPEN’
EXPORTING
#1 = output_path_xlsx.
CALL METHOD OF application ‘WORKSHEETS’ = sheet
EXPORTING
#1 = 1. "Sheet1
CALL METHOD OF sheet ‘ACTIVATE’.

  output_path_pdf = output_path_xlsx.
  REPLACE '.xlsx' WITH '.pdf' INTO output_path_pdf.
  REPLACE '.XLSX' WITH '.pdf' INTO output_path_pdf.
  CALL METHOD OF sheet 'ExportAsFixedFormat'
    EXPORTING
      #1 = 0
      #2 = output_path_pdf.


  CALL METHOD OF workbook 'CLOSE'.
  CALL METHOD OF application 'QUIT'.
  FREE OBJECT: application,workbook,sheet.

  CALL METHOD cl_gui_frontend_services=>file_exist
    EXPORTING
      file                 = output_path_pdf
    RECEIVING
      result               = DATA(l_res)
    EXCEPTIONS
      cntl_error           = 1
      error_no_gui         = 2
      wrong_parameter      = 3
      not_supported_by_gui = 4
      OTHERS               = 5.
  IF sy-subrc <> 0 OR l_res = space.
    MESSAGE |PDF另存失败| TYPE 'E'.
  ELSE.
    MESSAGE |PDF另存为{ output_path_pdf }| TYPE 'S'.
  ENDIF.


  CALL METHOD cl_gui_frontend_services=>file_delete
    EXPORTING
      filename             = output_path_xlsx
    CHANGING
      rc                   = l_dummy_rc
    EXCEPTIONS
      file_delete_failed   = 1
      cntl_error           = 2
      error_no_gui         = 3
      file_not_found       = 4
      access_denied        = 5
      unknown_error        = 6
      not_supported_by_gui = 7
      wrong_parameter      = 8
      OTHERS               = 9.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
          WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
ENDIF.

ENDMETHOD.


http://lihuaxi.xjx100.cn/news/1998767.html

相关文章

python18-Python的字符串序列相关方法

字符串本质上就是由多个字符组成的,因此程序允许通过索引来操作字符,比如获取指定索引处的字符,获取指定字符在字符串中的位置等。 Python字符串直接在方括号([])中使用索引即可获取对应的字符,字符串中第一个字符的索引为0、第二个字符的索引为1,后面各字符依此类推。 …

零基础也能学会平面图绘制?跟着大厂设计师一起学习吧!

绘制平面图是一种审美&#xff0c;“美”的感觉本身是主观的&#xff0c;我们很难定义“美”的具体标准&#xff0c;但绘制平面图的观众是人&#xff0c;人们对事物的感情有一个普遍的规则&#xff0c;人们普遍认为观众可以欣赏的平面图是一个很好的设计。因此&#xff0c;在绘…

优秀广大青年欢迎加入

在深在广 年龄在20-35左右 男生工作稳定&#xff0c;幽默&#xff0c;长相帅气&#xff0c;爱好旅行&#xff0c;健身&#xff0c;读书&#xff0c;做饭&#xff0c;摄像&#xff0c;养宠&#xff0c;人心公益等…… 女生青春美丽&#xff0c;暖心贴心&#xff0c;踏实过日子&a…

寒假刷题第17天

PTA甲级 1118 Birds in Forest #include<iostream> #include<vector> #include<set> #include<algorithm>using namespace std;const int N 1e4 10; int n , p[N]; set<int>se , st; int bird;int find(int x) {if(p[x] ! x) p[x] find(p[x]…

【工具】raw与jpg互转python-cpp

在工作中常常需要将图像转化为raw数据或者yuv数据&#xff0c;这里将提供 cpp 版本和 python 版本的互转代码 代码链接见文档尾部。 cpp 版本 jpg2raw.cpp #include <fstream> #include <iostream> #include <opencv2/core.hpp> #include <opencv2/hig…

☻C++ QA

0. 什么是“第一性原理”&#xff1f; 函数指针的定义泛式与原理&#xff1f;联合(union)的原理是怎样的&#xff1f;联合类型对象的指针是什么意思&#xff1f;命名空间在.h和.cpp中怎么定义和使用&#xff0c;是什么原理&#xff1f;静态变量/函数在.h和.cpp中怎么定义和使用…

如何安装配置HFS并实现无公网ip远程访问本地电脑共享文件

文章目录 前言1.下载安装cpolar1.1 设置HFS访客1.2 虚拟文件系统 2. 使用cpolar建立一条内网穿透数据隧道2.1 保留隧道2.2 隧道名称2.3 成功使用cpolar创建二级子域名访问本地hfs 总结 前言 在大厂的云存储产品热度下降后&#xff0c;私人的NAS热度快速上升&#xff0c;其中最…

.config配置文件解析(解析<appSettings>中key、value信息)

using System; using System.Text.RegularExpressions;public class Example {/// <summary>/// 解析<appSettings>中key、value信息/// using System.Text.RegularExpressions;/// </summary>/// <returns></returns>public static void Main()…