当前位置: 首页 > news >正文

ABAP EXCEL 转 PDF

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_existEXPORTINGfile                 = output_path_pdfRECEIVINGresult               = DATA(l_res)EXCEPTIONScntl_error           = 1error_no_gui         = 2wrong_parameter      = 3not_supported_by_gui = 4OTHERS               = 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_deleteEXPORTINGfilename             = output_path_xlsxCHANGINGrc                   = l_dummy_rcEXCEPTIONSfile_delete_failed   = 1cntl_error           = 2error_no_gui         = 3file_not_found       = 4access_denied        = 5unknown_error        = 6not_supported_by_gui = 7wrong_parameter      = 8OTHERS               = 9.IF sy-subrc <> 0.MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgnoWITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.ENDIF.
ENDIF.

ENDMETHOD.

相关文章:

  • node.js基础--01
  • 用C#实现最小二乘法(用OxyPlot绘图)
  • 用Python库pillow处理图像
  • Linux操作系统权限相关问题(一站式速通权限)
  • gdp调试—Linux
  • redis复习笔记05(小滴课堂)
  • 【乳腺肿瘤诊断分类及预测】基于LVQNN学习向量量化神经网络
  • OllyDebug的使用方法. IDA Pro分析程序的控制流图,可以找到不同的函数入口点. 在汇编代码中定位特定函数可能是一个耗时且复杂的过程
  • [C语言][C++][时间复杂度详解分析]二分查找——杨氏矩阵查找数字详解!!!
  • win wsl2 Ubuntu-22.04 设置时间为国内时间
  • 微信小程序如何实现实时显示输入内容
  • C# OpenCvSharp DNN Gaze Estimation 视线估计
  • 桌面型物联网智能机器人设计(预告)
  • uniapp本地存储日志
  • 【Java基础】之进程与线程
  • C语言笔记(第一章:C语言编程)
  • Github访问慢解决办法
  • Kibana配置logstash,报表一体化
  • Lsb图片隐写
  • node学习系列之简单文件上传
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • PHP那些事儿
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • SpingCloudBus整合RabbitMQ
  • TypeScript迭代器
  • ViewService——一种保证客户端与服务端同步的方法
  • 给初学者:JavaScript 中数组操作注意点
  • 缓存与缓冲
  • 聊聊redis的数据结构的应用
  • 前端设计模式
  • 如何合理的规划jvm性能调优
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 深度解析利用ES6进行Promise封装总结
  • 通过npm或yarn自动生成vue组件
  •  一套莫尔斯电报听写、翻译系统
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • (2)STM32单片机上位机
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (二)c52学习之旅-简单了解单片机
  • (二)hibernate配置管理
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (十五)使用Nexus创建Maven私服
  • .Net mvc总结
  • .net wcf memory gates checking failed
  • .NET/MSBuild 中的发布路径在哪里呢?如何在扩展编译的时候修改发布路径中的文件呢?
  • .net打印*三角形
  • .Net调用Java编写的WebServices返回值为Null的解决方法(SoapUI工具测试有返回值)
  • /etc/skel 目录作用
  • /var/spool/postfix/maildrop 下有大量文件
  • ??在JSP中,java和JavaScript如何交互?
  • @for /l %i in (1,1,10) do md %i 批处理自动建立目录
  • @Transactional 详解
  • [ linux ] linux 命令英文全称及解释
  • [ SNOI 2013 ] Quare