Hi Raymond,
I already declare all necessary step in Program, could you tell me how i can get the error message (207 / 209) from the COMMAND_ERROR.
Kindly find the below code.
All connection are working fine. Only while send the file command it's generating the error.
FUNCTION ZSEND_TO_FTP.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(USER) TYPE ZUSID
*" REFERENCE(PWRD) TYPE ZPWRD
*" REFERENCE(HOST) TYPE ZHOST
*" REFERENCE(RFC_DESTINATION) TYPE RFCDES-RFCDEST
*" REFERENCE(FNAME) TYPE ZFTPFL
*" TABLES
*" SOURCTAB TYPE STANDARD TABLE
*" EXCEPTIONS
*" NOT_CONNECTED
*" TCPIP_ERROR
*" COMMAND_ERROR
*" DATA_ERROR
*"----------------------------------------------------------------------
DATA: SOURCELEN TYPE I,
DESTINATION(30) TYPE C,
G_RECS TYPE I.
CONSTANTS KEY TYPE I VALUE 26101957.
DATA: PASSWORD(30) TYPE C,
HANDLE TYPE I,
COMMAND(40) TYPE C.
TYPES: BEGIN OF S_RESULT,
INFO TYPE C LENGTH 700,
END OF S_RESULT.
DATA: RESULT TYPE STANDARD TABLE OF S_RESULT,
GIT_TXT TYPE STANDARD TABLE OF S_RESULT,
GFL_TXT LIKE LINE OF GIT_TXT,
GIT_XLS TYPE TRUXS_T_TEXT_DATA.
DATA: GIT_STRUC TYPE REF TO CL_ABAP_STRUCTDESCR,
GIT_SCR TYPE ABAP_COMPDESCR_TAB,
GFL_SCR LIKE LINE OF GIT_SCR,
CL_ABAP TYPE REF TO CL_ABAP_TYPEDESCR.
DESCRIBE TABLE SOURCTAB LINES G_RECS.
IF G_RECS EQ 0.
RAISE DATA_NOT_FOUND.
EXIT.
ENDIF.
SOURCELEN = STRLEN( PWRD ).
CALL FUNCTION 'HTTP_SCRAMBLE'
EXPORTING
SOURCE = PWRD
SOURCELEN = SOURCELEN
KEY = KEY
IMPORTING
DESTINATION = PASSWORD.
CALL FUNCTION 'FTP_CONNECT'
EXPORTING
USER = USER
PASSWORD = PASSWORD
* ACCOUNT =
HOST = HOST
RFC_DESTINATION = RFC_DESTINATION
* GATEWAY_USER =
* GATEWAY_PASSWORD =
* GATEWAY_HOST =
IMPORTING
HANDLE = HANDLE
EXCEPTIONS
NOT_CONNECTED = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
RAISE NOT_CONNECTED.
EXIT.
ENDIF.
CONCATENATE 'delete' FNAME INTO COMMAND SEPARATED BY SPACE.
CALL FUNCTION 'FTP_COMMAND'
EXPORTING
HANDLE = HANDLE
COMMAND = command
TABLES
DATA = RESULT
EXCEPTIONS
TCPIP_ERROR = 1
COMMAND_ERROR = 2
DATA_ERROR = 3
OTHERS = 4.
IF SY-SUBRC <> 0.
** CASE SY-SUBRC.
** WHEN 1.
** RAISE TCPIP_ERROR.
** WHEN 2.
** RAISE COMMAND_ERROR.
** WHEN 3.
** RAISE DATA_ERROR.
** ENDCASE.
ENDIF.
CALL FUNCTION 'FTP_COMMAND'
EXPORTING
HANDLE = HANDLE
COMMAND = 'ascii'(003)
* COMPRESS =
* RFC_DESTINATION =
* VERIFY =
* IMPORTING
* FILESIZE =
* FILEDATE =
* FILETIME =
TABLES
DATA = RESULT
EXCEPTIONS
TCPIP_ERROR = 1
COMMAND_ERROR = 2
DATA_ERROR = 3
OTHERS = 4
.
IF SY-SUBRC <> 0.
CASE SY-SUBRC.
WHEN 1.
RAISE TCPIP_ERROR.
WHEN 2.
RAISE COMMAND_ERROR.
WHEN 3.
RAISE DATA_ERROR.
ENDCASE.
ENDIF.
CALL FUNCTION 'FTP_R3_TO_SERVER'
EXPORTING
HANDLE = HANDLE
FNAME = FNAME
* BLOB_LENGTH =
CHARACTER_MODE = 'X'
TABLES
* BLOB = SOURCTAB
TEXT = SOURCTAB[]
EXCEPTIONS
TCPIP_ERROR = 1
COMMAND_ERROR = 2
DATA_ERROR = 3
* OTHERS = 4
.
IF SY-SUBRC <> 0.
CASE SY-SUBRC.
WHEN 1.
RAISE TCPIP_ERROR.
WHEN 2.
RAISE COMMAND_ERROR.
WHEN 3.
RAISE DATA_ERROR.
ENDCASE.
ENDIF.
CALL FUNCTION 'FTP_DISCONNECT'
EXPORTING
HANDLE = HANDLE.
ENDFUNCTION.
Thanks & Regards.
Praveer.