2006 Sep 18 12:02 PM
Hi all,
I am using the command
" CALL 'AB_RFC_X_SCRAMBLE_STRING'
ID 'SOURCE' FIELD PWD ID 'KEY' FIELD KEY
ID 'SCR' FIELD 'X' ID 'DESTINATION' FIELD PWD
ID 'DSTLEN' FIELD DSTLEN. "
for FTP connection.
When i key in my usrname and password it shows connection failed.
Does my password has to be always encrypted to make login.Can my present password(w/o encryption) keyed in work anyway.
Appreciate your ideas.
Thanks,
Stock.
Hi
Scrambling the pwd might not be the reason for the FTP connection to be failing.
There could be some other reason.
Regards,
Raj
Find the RFC destination
IF sy-batch IS INITIAL.
l_rfc = 'SAPFTP'.
ELSE.
l_rfc = 'SAPFTPA'.
ENDIF.
Encrypt the password, Required for FTP connection
CALL 'AB_RFC_X_SCRAMBLE_STRING'
ID 'SOURCE' FIELD v_ftppwd
ID 'KEY' FIELD l_key
ID 'SCR' FIELD 'X'
ID 'DESTINATION' FIELD v_ftppwd
ID 'DSTLEN' FIELD l_dstlen.
Open the FTP connection
CALL FUNCTION 'FTP_CONNECT'
EXPORTING
user = v_ftpusr
password = v_ftppwd
host = v_ftpsrv
rfc_destination = l_rfc
IMPORTING
handle = v_hdl
EXCEPTIONS
not_connected = 01
OTHERS = 02.
IF sy-subrc NE 0.
MESSAGE e200(zhr) WITH 'Failed to open FTP connection!'(020).
ELSE.
FTP the file
PERFORM send_file.
Close the FTP connection
PERFORM close_ftp_connection.
ENDIF.
ENDFORM. " open_ftp_connection
&----
*& Form send_file
&----
FTP the file
----
FORM send_file .
DATA: l_cmd(80) TYPE c,
l_fil(80) TYPE c,
l_loc TYPE i,
l_lng TYPE i.
DATA: BEGIN OF t_result OCCURS 0,
line(100) TYPE c,
END OF t_result.
Change remote directory
CLEAR l_cmd.
CONCATENATE 'cd' v_ftploc INTO l_cmd SEPARATED BY space.
CALL FUNCTION 'FTP_COMMAND'
EXPORTING
handle = v_hdl
command = l_cmd
TABLES
data = t_result
EXCEPTIONS
tcpip_error = 01
command_error = 02
data_error = 03
OTHERS = 04.
2006 Sep 18 12:06 PM
Hi
Scrambling the pwd might not be the reason for the FTP connection to be failing.
There could be some other reason.
Regards,
Raj
Find the RFC destination
IF sy-batch IS INITIAL.
l_rfc = 'SAPFTP'.
ELSE.
l_rfc = 'SAPFTPA'.
ENDIF.
Encrypt the password, Required for FTP connection
CALL 'AB_RFC_X_SCRAMBLE_STRING'
ID 'SOURCE' FIELD v_ftppwd
ID 'KEY' FIELD l_key
ID 'SCR' FIELD 'X'
ID 'DESTINATION' FIELD v_ftppwd
ID 'DSTLEN' FIELD l_dstlen.
Open the FTP connection
CALL FUNCTION 'FTP_CONNECT'
EXPORTING
user = v_ftpusr
password = v_ftppwd
host = v_ftpsrv
rfc_destination = l_rfc
IMPORTING
handle = v_hdl
EXCEPTIONS
not_connected = 01
OTHERS = 02.
IF sy-subrc NE 0.
MESSAGE e200(zhr) WITH 'Failed to open FTP connection!'(020).
ELSE.
FTP the file
PERFORM send_file.
Close the FTP connection
PERFORM close_ftp_connection.
ENDIF.
ENDFORM. " open_ftp_connection
&----
*& Form send_file
&----
FTP the file
----
FORM send_file .
DATA: l_cmd(80) TYPE c,
l_fil(80) TYPE c,
l_loc TYPE i,
l_lng TYPE i.
DATA: BEGIN OF t_result OCCURS 0,
line(100) TYPE c,
END OF t_result.
Change remote directory
CLEAR l_cmd.
CONCATENATE 'cd' v_ftploc INTO l_cmd SEPARATED BY space.
CALL FUNCTION 'FTP_COMMAND'
EXPORTING
handle = v_hdl
command = l_cmd
TABLES
data = t_result
EXCEPTIONS
tcpip_error = 01
command_error = 02
data_error = 03
OTHERS = 04.
2006 Sep 18 12:10 PM
Hi,
See the below code, Bold ones
REPORT ZFTPSAP LINE-SIZE 132.
DATA: BEGIN OF MTAB_DATA OCCURS 0,
LINE(132) TYPE C,
END OF MTAB_DATA.
DATA: <b>MC_PASSWORD(20) TYPE C,</b>
MI_KEY TYPE I VALUE 26101957,
MI_PWD_LEN TYPE I,
MI_HANDLE TYPE I.
START-OF-SELECTION.
*-- Your SAP-UNIX FTP password (case sensitive)
<b>MC_PASSWORD = 'password'.</b>
DESCRIBE FIELD MC_PASSWORD LENGTH MI_PWD_LEN.
*-- FTP_CONNECT requires an encrypted password to work
<b>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.</b>
CALL FUNCTION 'FTP_CONNECT'
EXPORTING
*-- Your SAP-UNIX FTP user name (case sensitive)
USER = 'userid'
<b> PASSWORD = MC_PASSWORD</b>
*-- Your SAP-UNIX server host name (case sensitive)
HOST = 'unix-host'
RFC_DESTINATION = 'SAPFTP'
IMPORTING
HANDLE = MI_HANDLE
EXCEPTIONS
NOT_CONNECTED = 1
OTHERS = 2.
CHECK SY-SUBRC = 0.
CALL FUNCTION 'FTP_COMMAND'
EXPORTING
HANDLE = MI_HANDLE
COMMAND = 'dir'
TABLES
DATA = MTAB_DATA
EXCEPTIONS
TCPIP_ERROR = 1
COMMAND_ERROR = 2
DATA_ERROR = 3
OTHERS = 4.
IF SY-SUBRC = 0.
LOOP AT MTAB_DATA.
WRITE: / MTAB_DATA.
ENDLOOP.
ELSE.
do some error checking.
WRITE: / 'Error in FTP Command'.
ENDIF.
CALL FUNCTION 'FTP_DISCONNECT'
EXPORTING
HANDLE = MI_HANDLE
EXCEPTIONS
OTHERS = 1.
When you call 'AB_RFC_X_SCRAMBLE_STRING' the password will be encrypted and will be passed to the Function Module..
Regards
Sudheer
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |