ABAP 连接ftp 上传文件

15 篇文章 1 订阅

DATA :  
        p_host   TYPE char64 VALUE '192.168.100.64 21',"  IP
        p_folder TYPE char255 VALUE '/aa/bb/',  "ftp 路径
        p_uname  TYPE char30 VALUE 'sys' , "用户名称
        p_pwd    TYPE char30 VALUE 'psword' . "用户密码

    DATA : dest     LIKE rfcdes-rfcdest  VALUE 'SAPFTP',
           compress TYPE c  VALUE 'N'.

    DATA: hdl     TYPE i,
          key     TYPE i VALUE 26101957,
          slen    TYPE i,
          cmd(80) TYPE c.

    slen = strlen( p_pwd ).

* "获取加密密码 保存到P_PWD
    CALL FUNCTION 'HTTP_SCRAMBLE'
      EXPORTING
        source      = p_pwd
        sourcelen   = slen
        key         = key
      IMPORTING
        destination = p_pwd.

* 连接ftp服务器
    CALL FUNCTION 'FTP_CONNECT'
      EXPORTING
        user            = p_uname
        password        = p_pwd
        host            = p_host
        rfc_destination = dest
      IMPORTING
        handle          = hdl.  "连接的句柄

"打开ftp目录文件
      CALL FUNCTION 'FTP_COMMAND'
        EXPORTING
          handle        = hdl
          command       = 'cd /aa/' "比如上传aa路径下  就这么写 /aa/
          compress      = compress
        TABLES
          data          = result
        EXCEPTIONS
          command_error = 1
          tcpip_error   = 2.

"备注!!!自己打印 打开ftp目录文件 返回结果如果不会请看其他关于ftp的文档里面有!!在这里不写了。
"上传文件
      CALL FUNCTION 'FTP_COMMAND'
        EXPORTING
          handle        = hdl
          command       = ' put 11.DOCX'  "' 执行 这个命令是上传的意思 注意put后面有空格   这句话意思就是上传11.DOCX文件
          compress      = compress
        TABLES
          data          = result
        EXCEPTIONS
          command_error = 1
          tcpip_error   = 2.

"备注!!!自己打印 上传文件 返回结果如果不会请看其他关于ftp的文档里面有!!在这里不写了。。
        IF SY-SUBRC <> 0.
         "失败
        ELSE.
         "成功
        ENDIF.

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值