| Summary: | Upload mit Arbeitsverzeichnis schlägt fehl | ||
|---|---|---|---|
| Product: | [SCX/Suite] VMI | Reporter: | Hopmann, Peter <Peter.Hopmann> |
| Component: | Daten-Transfer | Assignee: | Hopmann, Peter <Peter.Hopmann> |
| Status: | VERIFIED FIXED | QA Contact: | Tilli, Benedikt <Benedikt.Tilli> |
| Severity: | normal | ||
| Priority: | P5 | Keywords: | Vorabkorrektur |
| Version: | 7.30 | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
| Kundennummer: | Bestellnummer: | ||
| PV Übergabe: | --- | Phase Roadmap: | --- |
| Erledigt mit: | Lupus | SAP Release: | --- |
| Transport: | M27K900084, P16K900047 | CRM-ID/Ticket: | |
| Bug Depends on: | 5982 | ||
| Bug Blocks: | 6392 | ||
|
Description
Hopmann, Peter
2016-05-10 11:30:22 CEST
. /GIB/CL_DCV_FTP_CONNECTION
neues Instanz-Attribut mf_logout type xfeld, protected.
METHOD ftp_logout.
DATA: lf_exit TYPE xfeld,
lf_handle TYPE i, "6131
lr_ftp TYPE REF TO /gib/cl_dcv_ftp_connection. "6131
FIELD-SYMBOLS: <ls_connection> TYPE /gib/dcv_obj_instance_s. "6131
lf_exit = call_badi_logout( ).
IF lf_exit = 'X'.
EXIT.
ENDIF.
*# vom FTP-Server abmelden
*#6131 erst dann abmelden, wenn alle Verbindungen nicht mehr benötigt werden.
*# sonst funktioniert FTP_COMMAND nicht mehr.
IF mf_logout = space.
mf_logout = 'X'.
READ TABLE gt_connection ASSIGNING <ls_connection> WITH KEY
data_r = me.
IF sy-subrc = 0.
<ls_connection>-keyval = 'LOGOUT'.
ENDIF.
READ TABLE gt_connection TRANSPORTING NO FIELDS WITH KEY
keyval = space.
IF sy-subrc <> 0.
*# dies war die letze Verbindung, jetzt sind alle Verbindungen inaktiv
LOOP AT gt_connection ASSIGNING <ls_connection>.
lr_ftp ?= <ls_connection>-data_r.
lr_ftp->ftp_logout( ).
ENDLOOP.
ENDIF.
ELSE.
READ TABLE gt_connection TRANSPORTING NO FIELDS WITH KEY
keyval = space.
IF sy-subrc <> 0.
*##6131
CALL FUNCTION 'FTP_DISCONNECT'
...
CLEAR: ms_vmi020.
ENDIF. "6131
ENDIF. "6131
ENDMETHOD.
Bei einer Verbindung per Badi tritt der Fehler nicht auf. Der Fehler tritt beim Einsatz von native FTP in Kombination mit einem Arbeitsverzeichnis auf. Das Arbeitsverzeichnis dient dazu, die Datei im UTF-8-Format zu erzeugen. Der Baustein FTP_R3_TO_SERVER versagt diesbezüglich. Der Baustein FTP_COMMAND wird deshalb mit dem entsprechenden PUT-Befehl aufgerufen. Wenn jedoch zwischendurch eine 2. FTP-Verbindung aufgebaut und anschließend abgebaut wird (Logout), dann funktioniert FTP_COMMAND auf der 1. Verbindung, die ja eigentlich noch aktiv sein sollte, nicht mehr. |