与RFC SAPFTPA一起使用时FTP_SERVER_TO_R3挂起

2020-09-10 17:46发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大师们,

我正在研究一个程序,该程序将从FTP服务器读取指定的文本文件到数据表中。 FM FTP_SERVER_TO_R3 似乎非常适合我的情况。

我使用RFC SAPFTPA 作为目标。 FTP_CONNECT 始终可以正常工作,但是当涉及 FTP_SERVER_TO_R3 时,程序有时会挂起。

有时在多次调用FM FTP_SERVER_TO_R3 的循环中,第一个和第二个间隔是好的,然后在下一个间隔中,它被挂起。

有时甚至是第一次挂起。

我的问题:谁能告诉我为什么使用 SAPFTPA 时会发生此错误?

如果有人能给我一个提示,那将很棒。

非常感谢!

我的代码如下:

"连接到FTP服务器
 ******************************************************  ******************
 通话功能'HTTP_SCRAMBLE'
   出口
     源= FTP_SERVERINFO-PWD
     SOURCELEN = LW_SRCLEN
     钥匙= 26101957
   输入
     目的地= SCRAMBLED_PW。
 CONCATENATE FTP_SERVERINFO-FTP_SERVER_NAME FTP_SERVERINFO-FTP_SERVER_PORT
 由空格分隔的INTO LW_HOST。
 通话功能'FTP_CONNECT'
     出口
       USER = FTP_SERVERINFO-USER_NAME
       密码= SCRAMBLED_PW"密码
       HOST = LW_HOST" FTP服务器
       RFC_DESTINATION = DEST" RFC目标
     输入
       手柄=手柄
     例外情况
       NOT_CONNECTED = 1
       其他= 2。
   如果SY-SUBRC <> 0。
     消息ID SY-MSGID类型SY-MSGTY编号SY-MSGNO
       与SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4。
   万一。
 遍历READ_FILES ASSIGNING FIELD-SYMBOL()。
   "向IT读取文件**************************************************  ********************
   通话功能'FTP_SERVER_TO_R3'
     出口
       手柄=手柄
       FNAME =  -FILE_NAME
       CHARACTER_MODE ='X'
     桌子
       TEXT = IT_TEXT []
     例外情况
       TCPIP_ERROR = 1
       COMMAND_ERROR = 2
       DATA_ERROR = 3"内部错误
       其他= 4。
   如果SY-SUBRC <> 0。
     出口。
   万一。
   "读完IT知识后,加载到透明表中并记录事务。***************************************  ****************
   数据:FILE_NAME(200)C型。
   FILE_NAME =  -FILE_NAME。
   使用FILE_NAME执行MAP_DATA表格IT_TEXT。
   刷新IT_TEXT []。
 结局。
   "断开FTP连接************************************************  ******************************************************  *****
   通话功能'FTP_DISCONNECT'
     出口
       处理程序=处理程序。
 "关闭RFC连接
 通话功能'RFC_CONNECTION_CLOSE'
   出口
     DESTINATION = DEST" RFC目标的名称
   例外情况
     DESTINATION_NOT_OPEN = 1"指定的目标未打开。
     其他= 2。
 如果SY-SUBRC <> 0。
   出口。
 万一。
 
如果有人可以给我提示的话,那会很棒。

非常感谢!

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大师们,

我正在研究一个程序,该程序将从FTP服务器读取指定的文本文件到数据表中。 FM FTP_SERVER_TO_R3 似乎非常适合我的情况。

我使用RFC SAPFTPA 作为目标。 FTP_CONNECT 始终可以正常工作,但是当涉及 FTP_SERVER_TO_R3 时,程序有时会挂起。

有时在多次调用FM FTP_SERVER_TO_R3 的循环中,第一个和第二个间隔是好的,然后在下一个间隔中,它被挂起。

有时甚至是第一次挂起。

我的问题:谁能告诉我为什么使用 SAPFTPA 时会发生此错误?

如果有人能给我一个提示,那将很棒。

非常感谢!

我的代码如下:

"连接到FTP服务器
 ******************************************************  ******************
 通话功能'HTTP_SCRAMBLE'
   出口
     源= FTP_SERVERINFO-PWD
     SOURCELEN = LW_SRCLEN
     钥匙= 26101957
   输入
     目的地= SCRAMBLED_PW。
 CONCATENATE FTP_SERVERINFO-FTP_SERVER_NAME FTP_SERVERINFO-FTP_SERVER_PORT
 由空格分隔的INTO LW_HOST。
 通话功能'FTP_CONNECT'
     出口
       USER = FTP_SERVERINFO-USER_NAME
       密码= SCRAMBLED_PW"密码
       HOST = LW_HOST" FTP服务器
       RFC_DESTINATION = DEST" RFC目标
     输入
       手柄=手柄
     例外情况
       NOT_CONNECTED = 1
       其他= 2。
   如果SY-SUBRC <> 0。
     消息ID SY-MSGID类型SY-MSGTY编号SY-MSGNO
       与SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4。
   万一。
 遍历READ_FILES ASSIGNING FIELD-SYMBOL()。
   "向IT读取文件**************************************************  ********************
   通话功能'FTP_SERVER_TO_R3'
     出口
       手柄=手柄
       FNAME =  -FILE_NAME
       CHARACTER_MODE ='X'
     桌子
       TEXT = IT_TEXT []
     例外情况
       TCPIP_ERROR = 1
       COMMAND_ERROR = 2
       DATA_ERROR = 3"内部错误
       其他= 4。
   如果SY-SUBRC <> 0。
     出口。
   万一。
   "读完IT知识后,加载到透明表中并记录事务。***************************************  ****************
   数据:FILE_NAME(200)C型。
   FILE_NAME =  -FILE_NAME。
   使用FILE_NAME执行MAP_DATA表格IT_TEXT。
   刷新IT_TEXT []。
 结局。
   "断开FTP连接************************************************  ******************************************************  *****
   通话功能'FTP_DISCONNECT'
     出口
       处理程序=处理程序。
 "关闭RFC连接
 通话功能'RFC_CONNECTION_CLOSE'
   出口
     DESTINATION = DEST" RFC目标的名称
   例外情况
     DESTINATION_NOT_OPEN = 1"指定的目标未打开。
     其他= 2。
 如果SY-SUBRC <> 0。
   出口。
 万一。
 
如果有人可以给我提示的话,那会很棒。

非常感谢!
付费偷看设置
发送
9条回答
微wx笑
1楼 · 2020-09-10 18:20.采纳回答

大家好,

抱歉,迟到了。

由于其影响是巨大的,因此我必须制定一种解决方案,以保持连接和断开连接,并减少超时(非常糟糕的方法)。

经过日复一日的斗争,我想出了一个适合我的情况的解决方案。

通过在调用FM'FTP_CONNECT'时添加参数'PASSIVE_MODE ='X',它解决了挂起问题。 现在,我可以打电话给多个FM'FTP_SERVER_TO_R3',而不必关闭和重新打开连接或遇到任何挂起的问题。

请注意。

最诚挚的问候,

TuanNQ

南山jay
2楼-- · 2020-09-10 18:16

该注释并没有说明SAPFTPA可能已损坏,需要使用您提到的程序重新创建,但是该注释却说有时会超时,并且 可以通过要在SM59中启动的跟踪(文件dev_ftp)开始分析它。

xfwsx85
3楼-- · 2020-09-10 18:23

请参阅此说明93042 。 您可能必须按照说明中的建议删除旧的连接,然后使用程序RSFTP005重新创建它。

ZJXianG
4楼-- · 2020-09-10 18:37

您好,我的基础小组告诉我,所有版本都是最新的(他还手动更新了 服务器上的sapftp.exe),但没有帮助。

顺便说一句,我已经找到解决方案并将其发布。 谢谢您的关注。

一只江湖小虾
5楼-- · 2020-09-10 18:22

亲爱的Ngo

我建议将您的appl服务器上的sapftp更新到最新的可用版本。

最诚挚的问候

JozsefH

野沐沐
6楼-- · 2020-09-10 18:41

我已经找到解决方案并将其发布为上述答案。 如果有帮助,请尝试并回答。

小熊yu生菜
7楼-- · 2020-09-10 18:23

Hellow〜
我也遇到过同样的情况。 (有时在多次调用FM FTP_SERVER_TO_R3 的循环中,第一个和第二个间隔是好的,然后在下一个间隔中,它会被挂起。)

我将sapftp更新为最新的可用版本。 但这不起作用。

如果有人可以给我另一个提示,那将很好。
非常感谢!

一周热门 更多>