ABAP 报表中如何以二进制方式上传本地文件试读版

网友投稿 318 2022-11-03


ABAP 报表中如何以二进制方式上传本地文件试读版

零基础 ABAP 学习教程系列文章的目录

​​ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍​​​​ABAP 标准培训教程 BC400 学习笔记之二:Cross-client 和 Client-specific 的区别​​​​ABAP 标准培训教程 BC400 学习笔记之三:ABAP 编程语言的特性和基本构成要素​​​​ABAP 标准培训教程 BC400 学习笔记之四:ABAP 编程语言的数据类型​​​​ABAP 标准培训教程 BC400 学习笔记之五:ABAP 编程语言的变量,常量和字面量,以及文本符号​​

ABAP 基础知识

​​通过实际的例子,介绍 SAP ABAP 里的 Repository Information System 的使用技巧​​​​ABAP function module 的使用​​​​ABAP subroutine 的定义和使用​​​​ABAP 中的变量和常量​​​​ABAP 编程语言中的系统字段(System Fields)​​​​什么是 ABAP Field Symbol​​​​ABAP 引用类型介绍​​​​最浅显易懂的 SAPGUI 里 ABAP 调试器的使用方法介绍​​​​如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上)​​​​如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (下)​​​​用 ABAP 读取本地文本文件内容​​​​26 行 ABAP 代码使用 HTTP_GET 函数下载百度网站的首页数据​​​​ABAP 如何解析 JSON 数据​​​​如何从本地文件里拷贝某个 ABAP 类到 SAP 系统​​​​面向对象的 ABAP 编程初探 - 什么是类,实例,和 Public 方法​​​​SAP ABAP 报表的用户输入功能​​​​使用 ABAP 事物码 SM59 创建 Destination 来读取外网的数据​​​​通过一个具体的例子,讲解 SAP BDC 技术的使用步骤​​​​从解读 BDC 自动生成的代码谈起,讲解 SAPGUI 的程序组成部分​​​​如何查询 SAPGUI 屏幕上某个字段对应的数据库表存储​​​​如何使用事物码 SAT 查找某个 SAPGUI 屏幕字段对应的后台存储数据库表的名称​​​​一步步创建包含自定义 Screen 的 ABAP 程序的详细步骤​​​​SAP ABAP 字符串变量容易疏忽和混淆的一些知识点​​​​SAP ABAP 处理 Excel 的标准函数 TEXT_CONVERT_XLS_TO_SAP 介绍​​​​授人以渔-在 SAP MM 物料显示界面上看到一个字段,如何查找哪张数据库表的哪个字段进行的存储​​​​SAP ABAP 系统进行数据库表查询的几种常用方法​​​​如何让 ABAP 服务器能够响应通过浏览器发起的自定义 HTTP 请求​​​​一个 15 年 SAP ABAP 开发人员分享的 SAPGUI 一些个性化设置和实用小技巧​​​​如何使用 saplink 安装其他网站上提供的 ABAP 程序​​​​ABAP 报表中如何给报表的输入参数增添 F4 Value Help​​​​ABAP 报表中如何以二进制方式上传本地文件​​更多文章正在写作中

Office 专题

​​用 ABAP 新建本地 Excel 文件并写入数据​​​​如何使用 ABAP 创建包含不同字体大小的 Word 文档​​更多文章正在写作中

ALV 开发专题

​​27 行代码开发一个最简单的 SAP ALV 报表​​​​48 行代码给 ABAP ALV 报表的数据行增添颜色效果​​​​77 行代码实现ABAP ALV 中的双击事件处理​​更多文章正在写作中

更多文章正在写作中

本教程的这个步骤,​​用 ABAP 读取本地文本文件内容​​,我们介绍了使用 Function Module GUI_UPLOAD 来上传文本文件,整个报表不过 18 行代码。

REPORT zreduce1.DATA: lv_file_name TYPE string VALUE 'C:\temp\1.txt', lv_file_length TYPE i, lt_content TYPE string_table, lv_content TYPE string.CALL FUNCTION 'GUI_UPLOAD' EXPORTING filename = lv_file_name IMPORTING filelength = lv_file_length TABLES data_tab = lt_content.LOOP AT lt_content INTO lv_content. WRITE:/ lv_content.ENDLOOP.

执行之后,可以成功把存储在 C 盘的文本文件 1.txt 的内容打印出来。

我们在 SE37 里打开 ​​GUI_UPLOAD​​,发现其参数 FILETYPE 是可选参数(optional),默认值为 ASC 即以文本方式上传本地文件内容。

显然,在实际项目中,我们需要上传到 ABAP 服务器的文件,除了文本文件之外,肯定还包含其他类型的文件,比如 jpg,pdf,docx 这种文件。这些类型的文件,通过普通的文本编辑器显然无法打开,并且也不适合通过 ASC 即文本方式进行上传。因此,我们需要使用另一种 BIN 模式即二进制模式进行上传。

本步骤我们介绍另一个有用的 ABAP 工具类,CL_GUI_FRONTEND_SERVICES,它的 GUI_UPLOAD 方法,同样能够实现文件上传。其实如果查看这个方法的源代码,就发现它其实只是简单的调用了 Function Module GUI_UPLOAD,后者我们早已经学习过了:

本文我们演示如何通过二进制的方式,将本地的文本文件上传到 ABAP 服务器上。

​​下面​​是具体的步骤。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:企业信息查询系统官网API(企业信息查询系统官网山东)
下一篇:日出日落时间查询API(日出日落时间查询表)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~