【ABAP系列】SAP ABAP 实现FTP的文件上传与下载

公众号: SAP Technical
本文作者: matinal
 

 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分

在SAP的实际应用中,经常会需要将生成的文件上传到FTP,或从FTP下载相关文档数据。本例实现将本地指定文件上传到FTP,及从FTP下载文件到本地的功能。


从FTP复制文件共有两种方式,一种是直接复制文件,另一种方式是先从FTP读取文件数据到内表,拷贝再写入指定位置文件,不过该功能仅支持文本格式文件(*.TXT,*.DAT),一般不予推荐。


相关函数:


1)FTP_CONNECT:通过账号连接FTP。


2)FTP_COMMAND:执行FTP操作命令(注意,程序中所有命令必须为小写)。


1cd:指定本地文件夹路径;


cd:指定FTP文件夹路径;


put <filename>:上传文件;


get <filename>:下载文件;


3)FTP_SERVER_TO_R3:将FTP上的指定文本文件数据读取到内表。


4)FTP_DISCONNECT:关闭FTP连接。

REPORT ZR_EXAMPLE_07 .  
DATA: KEY TYPE I VALUE 26101957,  
    TRFCDEST   LIKE RFCDES-RFCDEST,  
    THANDLE    TYPE I.  
 
INCLUDE:<ICON>.  
*定义输入界面  
SELECTION-SCREEN:BEGIN OF BLOCK FTPLOGIN WITH FRAME TITLE TEXT-001.  
PARAMETERS: P_USER(45) LOWER CASE OBLIGATORY MEMORY ID USR,  
           P_PWD(45) MODIF ID PWD LOWER CASE OBLIGATORY MEMORY ID PWD,  
           P_HOST(15) MEMORY ID HOS OBLIGATORY,  
           FTP_PATH(30) MEMORY ID FPOS OBLIGATORY.  
SELECTION-SCREEN:END OF BLOCK FTPLOGIN.  
 
SELECTION-SCREEN:BEGIN OF BLOCK UPLOAD WITH FRAME TITLE TEXT-002.  
PARAMETERS: P_UPPATH(45),  
         P_FILE(20) .  
SELECTION-SCREEN: BEGIN OF LINE.  
SELECTION-SCREEN: PUSHBUTTON 1(20) PUBU USER-COMMAND UPLOAD.  
SELECTION-SCREEN: END OF LINE.  
SELECTION-SCREEN:END OF BLOCK UPLOAD.  
 
SELECTION-SCREEN:BEGIN OF BLOCK DOWNLOAD WITH FRAME TITLE TEXT-003.  
PARAMETERS: DL_PATH(45),  
           DL_FILE(20) .  
SELECTION-SCREEN: BEGIN OF LINE.  
SELECTION-SCREEN: PUSHBUTTON 1(20) GEBU USER-COMMAND DOWNLOAD.  
SELECTION-SCREEN: PUSHBUTTON 24(30) SHBU USER-COMMAND ITAB_DL.  
SELECTION-SCREEN: END OF LINE.  
SELECTION-SCREEN:END OF BLOCK DOWNLOAD.  
 
AT 
ABAP FTP链接文件服务器 *SAPFTPA:表示以SAP服务器为目的地,上传下载都会放在SAP服务器上;OUTPUT_LENGTH = LV_BINARY_LEN "编码后占多少字节。BLOB = LT_DATA_BINARY. "二进制输出。DESTINATION = LV_PWD. "加密密码。**将文本内表转换为某种编码格式的二进制码流内表。*关闭SAP其他系统的RFC连接.** 进入指定的FTP服务器目录。* 关闭SAP其他系统的连接。* 将密码转化为SAP的格式。 阅读详情

相关推荐

Ftp 的上传及下载

ftp 服务器配置 : SAPFTP_SERVERS 上传及下载

weixin_45879627的博客 661

ABAPFTP下载文件并解析到内表移动文件位置.zip

实现功能:利用ABAP语言连接FTP; 获取文件路径,解析ZIP文件到内表; 将已完成解析的文件备份到另一个文件夹; 删除原路径下的文件; 附件4个TXT,主程序和3个包含文件

sap abap 程序 中使用 FTP

 SPAN {font-family: "Courier New";font-size: 10pt;color: #000000;background: #FFFFFF;}.L0S31 {font-style: italic;color: #808080;}.L0S32 {color: #3399FF;}.L0S33 {color:

SAP 学习 3823

人脸识别应用初探-微软人脸识别在线SDK使用

微软人脸识别SDK使用 官方教程 微软Azure中包含了一些人工智能的相关组件,通过webapi请求的方式获取数据,下面是几个例子 document JQuery Web <!DOCTYPE html> <html> <head> <title>Detect Faces Sample</title> <!-- <script src="https://ajax.googleapis.com/ajax/libs/jquery

Three_ST的博客 3704

SAP_ABAP_FTP文件上传下载步骤

步骤如下: 1、FTP_CONNECTFTP服务器建立连接; 2、FTP_COMMANDFTP服务器执行命令(比如,cd dir更改FTP目录、lcd dir更改本地目录、put file上传文件); 3、FTP_DISCONNECT断开连接。...

SAP旅途 3151

ABAP FTP文件处理

ABAP FTP测试程序

m0_48421450的博客 3239

ABAP系列SAP ABAPFTP服务器读取文件到本地

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:【ABAP系列SAP ABAPFTP服务器读取文件到本地 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。 正文部分 ​ DATA: hdl TYPE i, ke...

ARICK2014的博客 947

SAP ABAP 实现FTP文件上传下载

操作步骤和代码,点击进入:SAP ABAP 实现FTP文件上传下载

matinal 當冬夜漸暖 。公众号:matinal 5831

SAP中使用FTP服务

1、SM59建立FTP的RFC destination.SAP中简单的FTP技术实现基本上如下几个步骤:    可以通过执行SAP的标准程序RSFTP005,自动创建两个名为SAPFTPSAPFTPA的TCP/IP的RFC连接 2、如果已经存在FTP服务器则本步骤省略(没有FTP服务器则需要创建FTP服务器) 3、ABAP相关的几个函数,按顺序调用。 FTP_CONNECT SAP服务器F...

cly_apple的专栏 3918

SAP FTP文件上传实战:从配置到代码实现的完整指南

本文提供了SAP系统通过ABAP程序实现FTP文件上传的完整实战指南。详细解析了从SM59配置RFC连接、维护SAPFTP_SERVERS权限表、解决SAPFTP.exe版本兼容性等四大先决条件,到编写交互式文件上传程序及将内表数据直接生成CSV上传的两种核心代码实现方案,并附有常见错误排查性能优化建议。

weixin_29276847的博客 268

SAP系统通过FTP上载*.txt文档到服务器

整体思路是从SAP系统内表抓取数据(PERFORM GET_DATA)进行整理之后(PERFORM DEAL_DATA)再进行转化为FTP上载用的格式(PERFORM GET_OUT.)也就是对数据的初始化,这里用到了CL_ABAP_CONV_OUT_CE这个类。接下来就是设置FTP了,分为有密码和没有密码的。代码如下:  START-OF-SELECTION.*-- crea

easyjosn的专栏 2908

ABAP连接FTP服务器

ABAP连接FTP服务器

SAP技术备份 2995

ABAP FTP操作

FTP下载文件的例子类似,只需把ftp命令put修改为get就可以了) FORM UPLOAD_SERVER   using value(F_HOST)                      “FTP服务器IP地址   value(F_USERNAME)                     “FTP服务器用户名   value(F_PASSWORD)           

1446

SAP ABAP-FTP操作记录&解析相关XML文件

文章目录前言一、连接FTP服务器二、关于FTP命令三、相关代码示例1.连接FTP服务器2.打开指定目录3.查询该目录下所有文件,并获取文件名4.解析相关文件5.上传相关文件6.剪切相关文件至其他目录7.关闭连接 前言 关于SAP-FTP上操作说明网上可参考的内容略显单薄,特此种下树苗,为后来人好乘凉 一、连接FTP服务器 在敲代码前,先进行连接测试,确保FTP服务器sap相通. 维护相关配置表 SM30->SAPFTP_SERVERS_V FTP服务器IP,PORT 由FTP团队提供 例如:I

大步甩起来 1647

SAP自定义开发实战:ABAP实现附件上传下载功能优化

本文深入探讨了SAP自定义开发中附件上传下载功能的优化实践。针对传统方案性能差、体验不佳的痛点,重点分析了将文件存储在应用服务器文件系统的核心架构优势,并提供了基于ABAP的详细代码实现,涵盖前端交互优化、高效文件处理、数据库设计及安全性加固,旨在打造高性能、易维护的附件解决方案。

pandas7gardener的博客 628

SAP ABAP FTP文件传输实战:从配置到代码的完整指南

文件传输协议(FTP)作为一种经典的数据交换方式,其核心原理是通过客户端服务器之间的命令和数据通道,实现可靠的文件上传下载。在SAP ABAP开发领域,利用FTP进行批量、非实时文件传输,是连接SAP系统外部环境的关键技术,尤其适用于处理供应商清单、客户报表、银行对账等结构化数据文件。其技术价值在于通过标准化的函数模块和集中化的RFC目的地配置,实现了安全、可维护的自动化数据交换流程。本文聚焦于SAP ABAP FTP处理,深入解析如何通过SM59事务码配置连接,并运用FTP_CONNECT、FTP_

weixin_33835103的博客 473
上一篇: 【ABAP系列】SAP ABAP 从FTP服务器读取文件到本地
下一篇: 【ABAP系列】SAP ABAP 开发中的SMARTFORMS 参数
ARICK2014
博客等级 码龄12年 96粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值