AcfUpDownload
Das AcfUpDownload ermöglicht bei eingeschaltetem Parameter WDLIGHTSPEED den Up- und Download großer Dateien. Vom AcfUpDownload können Dateien von bis zu 5 GB gesendet bzw. empfangen werden.

Beachten Sie, dass auf Seiten des Backends (Content Server) eine Einschränkung für die Dateigrößen besteht: Der Content Server unterstützt zur Zeit bis zu 2 GB große Dateien.

Beachten Sie, dass die Integration von AcfUpDownload in Web-Dynpro-ABAP-Dialogfenster (Popups) nicht unterstützt wird.
Up- und Download geschehen von einem KPro Content Server auf das lokale Dateisystem. Der eigentliche Datenaustausch zwischen dem Content Server und Web Dynpro geschieht dabei über das ACF-Protokoll.
Weitere Informationen:
·
Knowledge Provider
(KPro)
Wie beim OfficeControl können Methoden ausgeführt werden, dazu wird der ACF-Methodenhandler CL_WDR_ACFUPDOWNLOAD_HNDL benötigt.
Das AcfUpDownload ist im Gegensatz zu anderen Web Dynpro ABAP UI-Elementen so implementiert, dass die Aktion nur durch einen Methodenaufruf getriggert wird. Das heißt, für AcfUpDownload erfolgt ein Upload bzw Download nur beim einem Methodenaufruf von:
IF_WD_ACFUPDOWNLOAD_SCMS~HTTP_PUT
IF_WD_ACFUPDOWNLOAD_SCMS~HTTP_GET

Ein Up- bzw Download von großen Dateien aus dem Applikationsserver ohne KPro ist derzeit nicht realisiert.
Für das reibungslose Funktionieren des AcfUpDownload auf einem Client müssen die folgenden Voraussetzungen erfüllt sein:
· Installation eines Sun Java Plug-Ins (Java 5 oder höher)
Siehe auch SAP Hinweis 1178747
·
Vorhandensein einer validen Whitelist
XML-Datei.
Unter Microsoft Windows ist dies %APPDATA%\SAP
Da in Web Dynpro die gerenderten Seiten üblicherweise in einem Web Browser dargestellt werden, der mit dem Internet verbunden ist, müssen bei einem UI-Element wie AcfUpDownload Sicherheitsaspekte berücksichtigt werden, insbesondere aufgrund der Generik des AcfUpDownload.
Daher gibt es die folgenden Sicherheitsmaßnahmen für das AcfUpDownload:
· AcfUpDownload kommuniziert nur mit autorisierten Servern
· Daten können nur in autorisierte Verzeichnisse abgelegt werden
· Daten können nur aus autorisierten Verzeichnissen ausgelesen werden
Die autorisierten Server und Verzeichnisse stehen in einer Whitelist, d.h. ein Administrator hat diese Informationen lokal hinterlegt (Transaktionen WDR_ACF_WLIST und ACF_WHITELIST_SETUP). Wenn per HTTP oder HTTPS angefragt wird, auf Verzeichnisse zuzugreifen oder mit einem Server zu kommunizieren, prüft das Control zunächst, ob es dies überhaupt darf. Dazu gleicht es die Verzeichnisse oder Server mit den Daten aus der lokalen Whitelist-Datei ab. Nur wenn die Berechtigung mittels der Whitelist gesetzt ist, führt es die entsprechenden Methoden aus.
Weitere Informationen finden Sie im SAP Referenz-Einführungsleitfaden (IMG). Wählen Sie dazu in der Transaktion SPRO SAP–Referenz-IMG anzeigen. Der Pfad im Einführungsleitfaden SAP NetWeaver ist folgendermaßen: Application Server ® Web Dynpro ABAP ® Whitelist für aktive Controls einrichten und Whitelist für aktive Controls aktivieren.
Beachten Sie Folgendes, wenn die Applikation beim AcfUpDownload "get" aufruft und die Datei bereits am Client vorhanden ist:
● Pro Methode können sehr viele Dateien heruntergeladen werden, bei jeder Datei könnte es einen anderen Fehler geben.
Es gibt jedoch nur einen Fehlerstring mit einem Fehlercode, also wird im Fehlerfall stets nur der erste Fehler zurückgegeben und in den Context geschrieben.
● Es gibt zwei verschiedene get-Methoden: mit und ohne override-Flag
● Es gibt einen onCompleted Event, auf den sich eine Anwendung mittels Action registrieren kann oder nicht.
Die Applikation ruft get ohne override-Flag auf und hat sich nicht auf onCompleted registriert.
● In diesem Fall steht im Fehler-String des Contexts der Wert 210 (FILE_PRESENT), gefolgt von einem Blank und einer komma-separierten Liste der vorhandenen Dateien.
● Trat zuvor ein anderer Fehler auf, so steht stattdessen dieser andere Fehler im Context
Die Applikation ruft get ohne override-Flag auf und hat sich auf onCompleted registriert.
● In diesem Fall steht im Fehler-String des Contexts der Wert 210 (FILE_PRESENT), gefolgt von einem Blank und einer komma-separierten Liste der vorhandenen Dateien.
Zusätzlich bekommt die Applikation einen Event mit Status 210 und der komma-separierten Liste als statusMessage.
● Trat zuvor ein anderer Fehler auf, so steht der andere Fehler im Event.
Die Applikation ruft get mit override-Flag = true auf.
● Die lokale Datei wird durch eine frisch heruntergeladene Datei ersetzt
● Dies hat weder Einfluss auf den Fehler-String des Contexts, noch auf den Wert des Events.
Die Applikation ruft get mit override-Flag = false auf.
● Die bestehende lokale Datei bleibt erhalten
● Dies hat weder Einfluss auf den Fehler-String des Contexts, noch auf den Wert des Events.
Laufzeit-Klasse |
CL_WD_ACF_UP_DOWNLOAD |
Eigenschaften im View Designer
Name |
Typ |
Anfangswert |
Bindbar |
id |
STRING |
(automatisch) |
nein |
STRING |
|
ja |
|
STRING |
|
ja |
|
WDUI_CONTEXT_MENU_BEHAVIOUR |
inherit |
nein |
|
WDY_MD_UI_ELEMENT_REFERENCE |
|
nein |
|
WDY_BOOLEAN |
true |
ja |
|
STRING |
|
ja |
|
Übersetzbarer Text |
|
ja |
|
WDUI_VISIBILITY |
visible |
ja |
|
STRING |
|
ja |
Events im View Designer
Name |

Weitere Eigenschaften, die über Vererbung zur Verfügung stehen, sind in den dazugehörigen übergeordneten Klassen definiert. Die dazugehörigen Oberflächenelemente sind:
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 |
ARCHIVES |
STRING |
|
CLASS |
STRING |
|
CONTEXT_MENU_BEHAVIOUR |
WDUI_CONTEXT_MENU_BEHAVIOUR |
|
contextMenuBehaviour: inherit |
CL_WD_ACF_UP_DOWNLOAD=>E_CONTEXT_MENU_BEHAVIOUR-INHERIT |
|
contextMenuBehaviour: provide |
CL_WD_ACF_UP_DOWNLOAD=>E_CONTEXT_MENU_BEHAVIOUR-PROVIDE |
|
contextMenuBehaviour: suppress |
CL_WD_ACF_UP_DOWNLOAD=>E_CONTEXT_MENU_BEHAVIOUR-SUPPRESS |
|
CONTEXT_MENU_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
ENABLED |
WDY_BOOLEAN |
|
HEIGHT |
STRING |
|
TOOLTIP |
WDY_MD_TRANSLATABLE_TEXT |
|
VISIBLE |
WDUI_VISIBILITY |
|
visible: none |
CL_WD_ACF_UP_DOWNLOAD=>E_VISIBLE-NONE |
|
visible: visible |
CL_WD_ACF_UP_DOWNLOAD=>E_VISIBLE-VISIBLE |
|
WIDTH |
STRING |
|
Dynamische Programmierung der Ereignisse
View Designer Name |
Laufzeitname |
ON_COMPLETED |
Ein Beispiel für dieses Oberflächenelement finden Sie im System im Paket SWDP_TEST_ACTIVE_COMPONENT in der Component WD_TEST_APPL_ACFUPDOWN.