Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8556

Re: How to connect SFTP server through ABAP program

$
0
0

Hi Vinod,

     It is possible check the below sample program......

 

-Satheesh

 

 

 

REPORT  zftp_backgroud_app.

DATA:BEGIN OF mtab_data OCCURS 0,
line(132) TYPE c,
END OF mtab_data.

DATA:l_host(64) TYPE c VALUE 'XXX.XXX.XXX.XXX',
       cmd(80) TYPE c,
       cmd1(80) TYPE c,
       compress(20) TYPE c ,
       cmd2(80) TYPE c,
       pwd(30) TYPE c,
       key TYPE i VALUE 26101957,
       slen TYPE i,
       mi_handle TYPE i.

pwd = 'password'.

cmd1 = 'put d:\test\test2.txt'.

cmd = 'ascii'.

cmd2 = 'cd /tmp'.

compress  = 'N'.

SET EXTENDED CHECK OFF.
slen = strlen( pwd ).

AUTHORITY-CHECK OBJECT 'S_ADMI_FCD'
          ID 'S_ADMI_FCD'
          FIELD 'SFTP'.
IF sy-subrc <> 0.
   MESSAGE 'no_authorization' TYPE 'E'.
   EXIT.
ENDIF.

CALL FUNCTION 'HTTP_SCRAMBLE'
   EXPORTING
     source      = pwd
     sourcelen   = slen
     key         = key
   IMPORTING
     destination = pwd.


CALL FUNCTION 'FTP_CONNECT'
   EXPORTING
     user            = 'root'
     password        = pwd
     host            = l_host
     rfc_destination = 'SAPFTPA' "'ZRFC_PV'  "'SAPHTTPA'
   IMPORTING
     handle          = mi_handle
   EXCEPTIONS
     not_connected   = 1
     OTHERS          = 2.



IF cmd2 NE ' '.
   CALL FUNCTION 'FTP_COMMAND'
     EXPORTING
       handle        = mi_handle
       command       = cmd2
       compress      = compress
     TABLES
       data          = mtab_data
     EXCEPTIONS
       tcpip_error   = 1
       command_error = 2
       data_error    = 3
       OTHERS        = 4.
   LOOP AT mtab_data.
*    WRITE AT / mtab_data.
   ENDLOOP.
   REFRESH mtab_data.
ENDIF.

IF cmd NE ' '.
   CALL FUNCTION 'FTP_COMMAND'
     EXPORTING
       handle        = mi_handle
       command       = cmd
     TABLES
       data          = mtab_data
     EXCEPTIONS
       tcpip_error   = 1
       command_error = 2
       data_error    = 3
       OTHERS        = 4.
   LOOP AT mtab_data.
*    WRITE AT / mtab_data.
   ENDLOOP.
   REFRESH mtab_data.
ENDIF.

IF cmd1 NE ' '.
   CALL FUNCTION 'FTP_COMMAND'
     EXPORTING
       handle        = mi_handle
       command       = cmd1
     TABLES
       data          = mtab_data
     EXCEPTIONS
       tcpip_error   = 1
       command_error = 2
       data_error    = 3
       OTHERS        = 4.
   LOOP AT mtab_data.
*    WRITE AT / mtab_data.
   ENDLOOP.
   REFRESH mtab_data.
ENDIF.


CALL FUNCTION 'FTP_DISCONNECT'
   EXPORTING
     handle = mi_handle
   EXCEPTIONS
     OTHERS = 1.

CALL FUNCTION 'RFC_CONNECTION_CLOSE'
   EXPORTING
     destination 'SAPHTTPA'  "'SAPFTP' " 'ZRFC_PV'  "'SAPHTTPA'
   EXCEPTIONS
     OTHERS      = 1.


Viewing all articles
Browse latest Browse all 8556

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>