Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation Web-Dynpro-Laufzeit-APIs Dokument im Navigationsbaum lokalisieren

Mit den Web-Dynpro-APIs erhält der Anwendungsentwickler ein Set an Interfaces mit deren Hilfe die Controller-Programmierung gestaltet werden kann. Der Zugriff auf die verschiedenen APIs erfolgt auf sehr unterschiedliche Weise. Eine vollständige Liste aller Klassen und Interfaces des Frameworks und ihrer Zugriffsmethoden finden Sie daher im Referenzhandbuch dieser Dokumentation.

Die Laufzeit-Interfaces bietet Ihnen eine Vielzahl von Methoden zu unterschiedlichen Programmierbereichen. Einige Beispiele hierfür sind

     Zugriff auf das Window-Manager-API IF_WD_WINDOW_MANAGER zur Erzeugung von Popups aus bestehenden Web-Dynpro-Windows

     Zugriff auf das Portal-Integrations-API IF_WD_PORTAL_INTEGRATION

     Bearbeitung des Contexts

     Erzeugung von Meldungen

Im Rahmen der dynamischen Programmierung kommen weitere Bereich hinzu. Als Beispiele seien genannt:

     Dynamische Manipulation des Layouts

     Dynamische Steuerung der Navigation

 

Beispiel für den Zugriff auf ein Laufzeit-API

Im Kapitel Die Referenzvariable WD_THIS wurde bereits das Laufzeit API der verschiedenen Controller-Typen angesprochen. Je nach Typ des Controllers ist der Rückgabewert der Methode WD_GET_API des lokalen Controllers-Interfaces eine Referenzvariable des Interfaces

     IF_WD_VIEW_CONTROLLER (für alle View-Controller),

     IF_WD_COMPONENT (für alle Component-Controller) oder

     IF_WD_CONTROLLER (für alle Interface- oder Custom-Controller).

 

Diese Grafik wird im zugehörigen Text erklärt Das folgende Beispiel zeigt den Zugriff auf das Laufzeit-API vom Typ des eigenen Controllers, in diesem Fall ein View-Controller:

method MY_VIEW_CONTROLLER_METHOD .

 

data:    L_RUNTIMEAPI     type ref to      IF_WD_VIEW_CONTROLLER.

 

L_RUNTIMEAPI = WD_THIS->WD_GET_API( ) .

.

 

endmethod.

Innerhalb dieser Beispielmethode können Sie nun mit Hilfe des Attributs L_RUNTIMEAPI die Methoden des Laufzeit-APIs IF_WD_VIEW_CONTROLLER nutzen.

Diese Grafik wird im zugehörigen Text erklärt Sie können jedoch auch auf das Laufzeit-API vom Typ eines verwendeten Controllers zugreifen. Das folgende Beispiel soll dies verdeutlichen:

method MY_CONTROLLER_METHOD .

 

data:     L_COMP_INTF      type ref to      IG_COMPONENTCONTROLLER,

          L_RUNTIMEAPI     type ref to      IF_WD_COMPONENT.

 

L_COMP_INTF = WD_THIS->GET_COMPONENTCONTROLLER_CTR( ).

 

L_RUNTIMEAPI = L_COMP_INTF->WD_GET_API( ) .

.

endmethod.

In diesem Fall wird zunächst eine Referenzvariable des Component-globalen Interfaces des Component-Controllers erzeugt. Anschließend wird mit Hilfe der Methode WD_GET_API ein Referenzvariable des Laufzeit-APIs des Component-Controllers erzeugt.

Diese Grafik wird im zugehörigen Text erklärtDa für jeden View-Controller das Attribut WD_COMP_CONTROLLER vom Typ IG_COMPONENTCONTROLLER bereits von der Entwicklungsumgebung angelegt wird, verkürzt sich in diesem Fall das Coding für den Zugriff auf das Laufzeit-API des Component-Controllers

method MY_VIEW_CONTROLLER_METHOD .

 

data:     L_RUNTIMEAPI     type ref to      IF_WD_COMPONENT.

 

L_RUNTIMEAPI = WD_COMP_CONTROLLER->WD_GET_API( ) .

.

endmethod.

 

Alle andere APIs der Web-Dynpro-Laufzeit werden über andere Wege zugänglich gemacht. Zwei Beispiele:

     Das API IF_WD_VIEW ist ausschließlich über das Attribut VIEW der Methode WDDOMODIFYVIEW des lokalen View-Controller-Interfaces erreichbar.

     Auf die APIs IF_WD_CONTEXT_NODE und IF_WD_CONTEXT_NODE_INFO kann über das das Attribut WD_CONTEXT vom Typ IF_WD_CONTEXT zugegriffen werden. Sie werden benötigt um Festwerte von Attributen zu setzen.

 

Eine vollständige Liste aller Klassen und Interfaces des Frameworks und ihrer Zugriffsmethoden finden Sie im Referenzhandbuch dieser Dokumentation.

 

Ende des Inhaltsbereichs