FTP方式实现从FTP服务器取文件到SAP 服务器目录

来源:互联网 发布:途牛和携程哪个好 知乎 编辑:程序博客网 时间:2024/06/06 17:57

项目中有以下接口场景:

通过后台作业,SAP ECC系统每天晚上从外部FTP服务器Get文本文件到SAP服务器目录/usr/sap/<SID>/SYS/global/data,然后处理这些文件中的数据,在SAP系统创建对应的业务单据。

本文只介绍一下SAP编程实现从远程FTP服务器读取文件的方法。

SAP中有大量的标准程序实现FTP的功能,主要是函数组SFTP,

最简单的处理流程如下:

首先,使用function FTP_CONNECT 创建与远程FTP服务器的ftp连接,

然后,使用function FTP_COMMAND 执行ftp命令,

最后,调用FTP_DISCONNECT断开与远程FTP服务器的连接。

一、在调用FTP_CONNECT 需要传入RFC Destination参数,FTP常用的有两个,SAPFTP和SAPFTPA,事务码SM59显示,并测试一下连接,确认连接正常。

需要注意的是:

1、SAPFTP用于SAP客户端前端执行,比如我们前台登录SAPGUI操作,要把ftp服务器上的文件get到本地电脑路径,或者上传本地文件等,需要使用这个

2、SAPFTPA 用于SAP服务器端执行,如本次需求,要把FTP服务器的文件get到sap服务器路径

二、在调用FTP_COMMAND时,需要熟悉FTP基本的命令格式,如LS、LCD、GET、PUT等命令

三、SAP有实例程序RSFTP002,可以测试上述功能。

另外,函数FTP_R3_TO_SERVER和FTP_SERVER_TO_R3可以实现FTP文件和ABAP内表的转换,要注意中文乱码问题,本次没有用到,有空测试补充一下。