Show TOC

FileUploadLocate this document in the navigation structure

Verwendung

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.

Beispiel für FileUpload mit Label

Hinweise zur Verwendung des FileUpload

  • 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 dem 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.

  • Beachten Sie die Sicherheitshinweise für FileUpload-UI-Elemente.

Technische Browser-Details außerhalb der Kontrolle von WDA

Aufgrund von Browser-Restriktionen, auf die 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. Auch mögliche Einschränkungen für beispielsweise Dateinamen oder Dateinamenserweiterungen werden nicht angezeigt. Die Auswahl des Dateinamens ist also bei neueren Browser-Versionen ausschließlich über den Browse...-Schalter möglich; d.h. weder die manuelle Eingabe eines Dateinamens (über Tastatur, Copy&Paste...) noch das Setzen des Dateinamens vom Backend aus (direkt oder via Context-Binding) ist möglich.

Implementierungsdetails

Laufzeit-Klasse

CL_WD_FILE_UPLOAD

Name

Typ

Anfangswert

Bindbar

id

STRING

(automatisch)

nein

activateAccessKey

WDY_BOOLEAN

false

nein

contextMenuBehaviour

WDUI_CONTEXT_MENU_BEHAVIOUR

inherit

nein

contextMenuId

WDY_MD_UI_ELEMENT_REFERENCE

nein

data

XSTRING

ja

enabled

WDY_BOOLEAN

true

ja

explanation

Übersetzbarer Text

nein

fileName

STRING

ja

mimeType

STRING

ja

state

WDUI_STATE

normal

ja

styleClassName STRING   ja

textDirection

WDUI_TEXT_DIRECTION

inherit

ja

tooltip

Übersetzbarer Text

ja

virusScanProfile

VSCAN_PROFILE

ja

visible

WDUI_VISIBILITY

visible

ja

width

STRING

ja

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

Barrierefreiheit

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.

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.

View Designer Name

Laufzeitname

Typ

activateAccessKey

ACTIVATE_ACCESS_KEY

WDY_BOOLEAN

contextMenuBehaviour

CONTEXT_MENU_BEHAVIOUR

WDUI_CONTEXT_MENU_BEHAVIOUR

contextMenuBehaviour: inherit

CL_WD_FILE_UPLOAD=>E_CONTEXT_MENU_BEHAVIOUR-INHERIT

contextMenuBehaviour: provide

CL_WD_FILE_UPLOAD=>E_CONTEXT_MENU_BEHAVIOUR-PROVIDE

contextMenuBehaviour: suppress

CL_WD_FILE_UPLOAD=>E_CONTEXT_MENU_BEHAVIOUR-SUPPRESS

contextMenuId

CONTEXT_MENU_ID

WDY_MD_UI_ELEMENT_REFERENCE

data

DATA

XSTRING

enabled

ENABLED

WDY_BOOLEAN

explanation

EXPLANATION

WDY_MD_TRANSLATABLE_TEXT

fileName

FILE_NAME

STRING

mimeType

MIME_TYPE

STRING

state

STATE

WDUI_STATE

state: normal

CL_WD_FILE_UPLOAD=>E_STATE-NORMAL

state: required

CL_WD_FILE_UPLOAD=>E_STATE-REQUIRED

styleClassName STYLE_CLASS_NAME 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

virusScanProfile

VIRUS_SCAN_PROFILE

VSCAN_PROFILE

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

Test-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.