
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.
|
|
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 |
|---|---|---|---|
|
STRING |
(automatisch) |
nein |
|
|
WDY_BOOLEAN |
false |
nein |
|
|
WDUI_CONTEXT_MENU_BEHAVIOUR |
inherit |
nein |
|
|
WDY_MD_UI_ELEMENT_REFERENCE |
nein |
||
|
XSTRING |
ja |
||
|
WDY_BOOLEAN |
true |
ja |
|
|
Übersetzbarer Text |
nein |
||
|
STRING |
ja |
||
|
STRING |
ja |
||
|
WDUI_STATE |
normal |
ja |
|
| styleClassName | STRING | ja | |
|
WDUI_TEXT_DIRECTION |
inherit |
ja |
|
|
Übersetzbarer Text |
ja |
||
|
VSCAN_PROFILE |
|
ja |
|
|
WDUI_VISIBILITY |
visible |
ja |
|
|
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 |
|---|---|---|
|
ACTIVATE_ACCESS_KEY |
WDY_BOOLEAN |
|
|
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 |
|
|
CONTEXT_MENU_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
DATA |
XSTRING |
|
|
ENABLED |
WDY_BOOLEAN |
|
|
EXPLANATION |
WDY_MD_TRANSLATABLE_TEXT |
|
|
FILE_NAME |
STRING |
|
|
MIME_TYPE |
STRING |
|
|
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 |
|
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 |
WDY_MD_TRANSLATABLE_TEXT |
|
|
VIRUS_SCAN_PROFILE |
VSCAN_PROFILE |
|
|
VISIBLE |
WDUI_VISIBILITY |
|
|
visible: none |
CL_WD_FILE_UPLOAD=>E_VISIBLE-NONE |
|
|
visible: visible |
CL_WD_FILE_UPLOAD=>E_VISIBLE-VISIBLE |
|
|
WIDTH |
STRING |
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.