Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation FileUpload Dokument im Navigationsbaum lokalisieren

Das FileUpload-Oberflächenelement dient dazu, Dateien vom Client auf den Server hochzuladen. Das Oberflächenelement wird mit einem InputField, in welchem der Verzeichnispfad und der Name der Datei angezeigt wird, und einem Button zum Suchen der Datei dargestellt.

Achtung

Beachten Sie, dass bei einem FileUpload-UI-Element immer der voll qualifizierte Pfad angegeben werden muss. Sie können also keine URLs angeben (siehe auch http://support.microsoft.com/kb/892442/en-us).

Technische Browser-Details außerhalb der Kontrolle von WDA

Aufgrund von Browser-Restriktionen, auf die das Web Dynpro ABAP keinerlei Einfluss hat, kann es sein, dass beim Anklicken eines FileUpload UI-Elements der vorher angegebene Dateipfad verschwindet. Bei neueren Browser-Versionen ist es daher unmöglich, den Dateinamen in das Eingabefeld zurück zu schreiben, das Feld bleibt immer leer. Lesen Sie hierzu alle Sicherheits-relevanten Informationen des Internet Explorer 6 über das Handling von <input type=file>.

Der Browser akzeptiert aus Sicherheitsgründen nur absolute Pfadangaben oder eine Pfadauswahl über den Browse… Schalter. Bei falschen Pfadangaben wird der Request vom Browser erst gar nicht weitergeleitet.

Vorgehensweise

Es gibt keine Action, um einen FileUpload zu erkennen. Generell empfiehlt es sich, für den Upload einen dedizierten Screen oder ein Popup zu verwenden, da ein Upload durch jede Benutzerinteraktion, die einen Roundtrip erfordert, ausgelöst wird, z.B. auch durch Blättern einer Tabelle, und dies zu Irritation des Benutzers führen kann.

Prüfen Sie bei jeder Action, ob Daten hochgeladen wurden, indem Sie die Daten aus den Context lesen.

Löschen Sie die Daten danach gleich aus dem Context. Andernfalls würde die Datei bis zum Abbau des Contexts oder einem erneuten Upload im Speicher gehalten.

Hinweis

Beachten Sie auch die StrukturlinkSicherheitshinweise für FileUpload-UI-Elemente.

Hinweis

Bei der Kopie von XSTRING zu XSTRING wird aufgrund des ABAP-String-Sharings keine Kopie der Daten erstellt. Eine Kopie entsteht erst, wenn die Daten in einem der XSTRINGs modifiziert werden.

Details

Hinweis

Um die Entwicklung barrierefreier Anwendungen zu ermöglichen, wird im Rahmen des Syntaxchecks die Eigenschaft label überprüft.

Wenn kein label gesetzt wurde und auch für das entsprechende gebundene Context-Element im ABAP-Dictionary kein Beschreibungstext angegeben wurde, findet eine Überprüfung auf die Eigenschaft tooltip statt.

 

Beispiele (mit Label)

Diese Grafik wird im zugehörigen Text erklärt

Diese Grafik wird im zugehörigen Text erklärt

 

Laufzeit-Klasse

CL_WD_FILE_UPLOAD

 

Eigenschaften im View Designer

Name

Typ

Anfangswert

Bindbar

id

STRING

(automatisch)

nein

data

XSTRING

 

muss

enabled

WDY_BOOLEAN

true

ja

explanation

Übersetzbarer Text

 

nein

fileName

STRING

 

ja

mimeType

STRING

 

ja

textDirection

WDUI_TEXT_DIRECTION

inherit

ja

tooltip

Übersetzbarer Text

 

ja

visible

WDUI_VISIBILITY

visible

ja

width

STRING

 

ja

Hinweis

Weitere Eigenschaften, die über Vererbung zur Verfügung stehen, sind in den dazugehörigen übergeordneten Klassen definiert. Die dazugehörigen Oberflächenelemente sind:

        UIElement

        ViewElement

Dynamische Programmierung

Für die dynamische Programmierung stehen dieselben Eigenschaften, Ereignisse und Aggregationen zur Verfügung wie im View Designer. Beachten Sie dabei die unterschiedlichen Schreibweisen.

Dynamische Programmierung der Eigenschaften

View Designer Name

Laufzeitname

Typ

data

DATA

XSTRING

enabled

ENABLED

WDY_BOOLEAN

explanation

EXPLANATION

WDY_MD_TRANSLATABLE_TEXT

fileName

FILE_NAME

STRING

mimeType

MIME_TYPE

STRING

textDirection

TEXT_DIRECTION

WDUI_TEXT_DIRECTION

 textDirection: inherit

CL_WD_FILE_UPLOAD=>E_TEXT_DIRECTION-INHERIT

 textDirection: ltr

CL_WD_FILE_UPLOAD=>E_TEXT_DIRECTION-LTR

 textDirection: rtl

CL_WD_FILE_UPLOAD=>E_TEXT_DIRECTION-RTL

tooltip

TOOLTIP

WDY_MD_TRANSLATABLE_TEXT

visible

VISIBLE

WDUI_VISIBILITY

 visible: none

CL_WD_FILE_UPLOAD=>E_VISIBLE-NONE

 visible: visible

CL_WD_FILE_UPLOAD=>E_VISIBLE-VISIBLE

width

WIDTH

STRING

 

Beispiel

Beispiele für dieses Oberflächenelement finden Sie im System in der Web-Dynpro-Applikation WDR_TEST_UI_ELEMENTS sowie in der Component WDR_TEST_EVENTS in der View FileUpload.

 

Ende des Inhaltsbereichs