
In diesem einfachen Beispiel wird beschrieben, wie Sie vorgehen müssen, um ein Microsoft-Office-Dokument mit Hilfe des OfficeControl in eine Web-Dynpro-Anwendung integrieren zu können.
Hinweis
Hierbei handelt es sich um ein reines Anzeige-Szenario (OfficeControl.expertMode=false), das sich insbesondere für Prototyping anbietet. Beachten Sie, dass es bei derartigen Szenarios eventuell zu Performance-Engpässen kommen kann. Komplexere Beispiele finden Sie im System im Paket SIOS.
Das OfficeControl wird in einer Web-Dynpro-Anwendung benutzt, die für einen definierten Benutzerkreis verwendet wird, da die Installation des jeweiligen Office-Programms auf dem Client vorausgesetzt wird.
Hinweis
Bei eventuell möglichen Anzeigeproblemen des OfficeControl stellen Sie sicher, dass das Active Component Framework ACF korrekt installiert ist. Siehe auch SAP Hinweis 846952.
Web-Dynpro Component, Window und View für Ihre Anwendung
In diesem Beispiel wird eine Datei ausgelesen, die den Namen test.doc hat und im MIME-Repository abgelegt ist.
Verzweigen Sie in den Context Ihrer View und definieren Sie dort einen Context-Knoten mit einem Context-Element vom Typ XSTRING, das für das Speichern des Inhalts verwendet werden soll.
Definieren Sie ein weiteres Context-Element für die Sichtbarkeit, z.B. VISIBLE vom Typ WDUI_VISIBILITY.
Um Ihre Office-Datei im Context abzulegen, verwenden Sie die WDDOMODIFYVIEW-Methode.
Syntax
METHOD wddomodifyview.
DATA:
mime_repository TYPE REF TO if_mr_api,
content TYPE xstring,
url TYPE string VALUE
'/SAP/BC/WebDynpro/SAP/PUblic/BC/ssr/uuielibs/office_integration' &
'/test.doc'.
* just do it once
CHECK first_time = abap_true.
mime_repository ?= cl_mime_repository_api=>get_api( ).
CALL METHOD mime_repository->get
EXPORTING
i_url = url
IMPORTING
e_content = content.
wd_context->set_attribute( name = 'DATAS' value = content ).
wd_context->set_attribute( name = 'visible' value =
cl_wd_office_control=>e_visible-visible ).
...
endmethod.Sichern Sie Ihre Eingaben.
Fügen Sie in Ihrer View ein OfficeControl-UI-Element ein.
Binden Sie die Eigenschaft OfficeControl.dataSource an das Context-Attribut für den Inhalt.
Binden Sie die Eigenschaft OfficeControl.visible an den Context-Knoten für die Sichtbarkeit.
Sichern Sie Ihre Eingaben.