上传数据到FTP服务器

1.首先在SM59中配置TCP/IP类型的远程连接。

2.源码摘录如下:

  DATA:
    mc_password(20TYPE c,
    mi_key TYPE VALUE 26101957,
    mi_pwd_len TYPE i,

  mc_password =  pwd .
  DESCRIBE FIELD pwd LENGTH mi_pwd_len IN BYTE MODE .
*-- FTP_CONNECT requires an encrypted password to work
  CALL 'AB_RFC_X_SCRAMBLE_STRING'
       ID 'SOURCE' FIELD mc_password ID 'KEY' FIELD mi_key
       ID 'SCR'    FIELD 'X'         ID 'DESTINATION' FIELD mc_password
       ID 'DSTLEN' FIELD mi_pwd_len.

  CALL FUNCTION 'FTP_CONNECT'
    EXPORTING
      user            user                             "用户
      password        mc_password     "口令
      host            host                              "主机
      rfc_destination dest                      "RFC远程系统
    IMPORTING
      handle          hdl
    EXCEPTIONS
      not_connected   1
      OTHERS          2.
  IF sy-subrc 0.
    CALL FUNCTION 'FTP_COMMAND'
      EXPORTING
        handle        hdl
        command       cmd                      "打开某个目录,比如cd /ekpj/ekpfile/landray/kmss/resource/ldif/acrm/sap
      TABLES
        data          result
      EXCEPTIONS
        tcpip_error   1
        command_error 2
        data_error    3
        OTHERS        4.
    REFRESH result.

    CONCATENATE 'ACRM_SAP_' im_fname '_' sy-datum '.txt' INTO f_file. "编辑文件名
    CALL FUNCTION 'FTP_R3_TO_SERVER'                                                    "上传数据到FTP服务器
      EXPORTING
        handle         hdl
        fname          f_file
        character_mode 'X'
      TABLES
        text           t_table.
*   检查是否下载成功
    CALL FUNCTION 'FTP_COMMAND'
      EXPORTING
        handle        hdl
        command       'nlist'
      TABLES
        data          result
      EXCEPTIONS
        tcpip_error   1
        command_error 2
        data_error    3
        OTHERS        4.

*  Disconnect
    CALL FUNCTION 'FTP_DISCONNECT'
      EXPORTING
        handle hdl.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值