Show TOC

HintergrundAcfUpDownload Dieses Dokument in der Navigationsstruktur finden

 

Das AcfUpDownload ermöglicht den Up- und Download großer Dateien von einem KPro Content Server. Vom AcfUpDownload können Dateien von bis zu 2 GB gesendet bzw. empfangen werden.

Hinweis Hinweis

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.

Ende des Hinweises.

Achtung Achtung

Beachten Sie, dass die Integration von AcfUpDownload in Web-Dynpro-ABAP-Dialogfenster (Popups) nicht unterstützt wird.

Ende der Warnung.

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:

SAP Content Server

Knowledge Provider (KPro)

Active Component Framework (ACF)

Methoden

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

Hinweis Hinweis

Ein Up- bzw Download von großen Dateien aus dem Applikationsserver ohne KPro ist derzeit nicht realisiert.

Ende des Hinweises.
Dateiauswahldialog

Einige Eigenschaften des AcfUpDownload-UI-Elements werden nicht über die Eigenschaften des UI-Elements, sondern mit Hilfe des Interface IF_WD_ACFUPDOWNLOAD_SWFS gesetzt. Hiermit können Sie einen Dateiauswahldialog anzeigen lassen.

Hinweise

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.

FAll 1

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.

Fall 2

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.

Fall 3

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.

Fall 4

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.

Implementierungsdetails

Laufzeit-Klasse

CL_WD_ACF_UP_DOWNLOAD

Eigenschaften im View Designer

Name

Typ

Anfangswert

Bindbar

id

STRING

(automatisch)

nein

archives

STRING

ja

class

STRING

ja

contextMenuBehaviour

WDUI_CONTEXT_MENU_BEHAVIOUR

inherit

nein

contextMenuId

WDY_MD_UI_ELEMENT_REFERENCE

nein

enabled

WDY_BOOLEAN

true

ja

height

STRING

ja

lifeTime

WDUI_LIFE_TIME

whenVisible

ja

tooltip

Übersetzbarer Text

ja

visible

WDUI_VISIBILITY

visible

ja

width

STRING

ja

Events im View Designer

Name

onCompleted

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

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

archives

ARCHIVES

STRING

class

CLASS

STRING

contextMenuBehaviour

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

contextMenuId

CONTEXT_MENU_ID

WDY_MD_UI_ELEMENT_REFERENCE

enabled

ENABLED

WDY_BOOLEAN

height

HEIGHT

STRING

lifeTime

LIFE_TIME

WDUI_LIFE_TIME

 lifeTime: whenAlive

CL_WD_ACF_UP_DOWNLOAD=>E_LIFE_TIME-WHEN_ALIVE

 lifeTime: whenVisible

CL_WD_ACF_UP_DOWNLOAD=>E_LIFE_TIME-WHEN_VISIBLE

tooltip

TOOLTIP

WDY_MD_TRANSLATABLE_TEXT

visible

VISIBLE

WDUI_VISIBILITY

visible: none

CL_WD_ACF_UP_DOWNLOAD=>E_VISIBLE-NONE

visible: visible

CL_WD_ACF_UP_DOWNLOAD=>E_VISIBLE-VISIBLE

width

WIDTH

STRING

Dynamische Programmierung der Ereignisse

View Designer Name

Laufzeitname

onCompleted

ON_COMPLETED

Voraussetzungen

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

Beispiel

Ein Test-Beispiel für dieses Oberflächenelement finden Sie im System im Paket SWDP_TEST_ACTIVE_COMPONENT in der Component WD_TEST_APPL_ACFUPDOWN.