码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 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.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    执行之后,可以成功把存储在 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 服务器上。

    下面是具体的步骤。

  • 相关阅读:
    .NET Core C#系列之XiaoFeng.Data.IQueryableX ORM框架
    Go语言的断点续传
    Vue 通过 Hash、Histroy 实现一个SPA、VueRouter 的简单实现(分享)
    【【萌新的SOC大学习之hello_world】】
    Selenium是什么,带你了解自动化测试的神奇之处
    护眼灯作用大吗?五款没有危害的护眼台灯推荐
    Java编程技巧-定义集合常量、定义数组常量的最佳方式
    Git的概念和使用方法
    计算机毕业设计之java+javaweb的烯烃厂压力管道管理平台
    1.9 关于小红书账号定位,这里有一整套定位方案【玩赚小红书】
  • 原文地址:https://blog.csdn.net/i042416/article/details/126241684
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号