
Jeder Controller verfügt über ein lokales Interface, das innerhalb des Controllers angesprochen werden kann.
Das Controller-Attribut WD_THIS stellt eine Referenz auf dieses lokale Interface dar und ist je nach Controller eine Referenzvariable vom Typ
IF_COMPONENTCONTROLLER
IF_<MY_CUSTOM_CONTROLLER>
IF_<MY_VIEW>
IF_<MY_WINDOW>
Über diese Referenzvariable können Sie auf die Methoden und Attribute des lokalen Controller-Interfaces zugreifen. Dazu gehören:
Alle Methoden, die ein Anwendungsentwickler für den aktuellen Controller frei angelegt und implementiert hat.
Da die Implementierung vom Anwendungsentwickler beeinflusst werden kann, sind diese Methoden auf der Registerkarte Methoden des Controller Editors aufgelistet. Durch Doppelklicken des Methoden-Namens verzweigen Sie zur Erstellung von Quelltext in den ABAP Editor. Siehe auch Die Methoden des lokalen Controller-Interfaces.
Eine andere Gruppe von Methoden kann vom Anwendungsentwickler gerufen werden, er hat jedoch keinerlei Einfluss auf die Implementierung.
Sie finden allgemeine Informationen zu den verschiedenen Interface-Typen sowie deren Sichtbarkeit im Rahmen einer oder mehrer Web-Dynpro-Components unter Die verschiedenen Controller einer Web-Dynpro-Component.
Eine dritte Gruppe von Methoden wiederum kann von Anwendungsentwickler zwar implementiert werden, wird jedoch ausschließlich von der Laufzeit gerufen.
Alle Attribute des Controllers werden über die Referenzvariable WD_THIS angesprochen.
Rufen Sie Methoden immerüber WD_THIS und nieüber ME auf. Sonst werden Pre- und Post-Exit-Methoden nicht durchlaufen.
Zugriff auf das Web-Dynpro-Laufzeit-API
Das generierte Interface eines Controllers (lokal wie global) ist mit einer beschränkten Menge an Methoden ausgestattet. Es enthält nur solche Methoden und Attribute, die der Anwendungsentsickler direkt oder indirekt definieren oder implementieren kann. Die Web-Dynpro-Laufzeit stellt darum für jeden Controller-Typ ein generisches Laufzeit-API zur Verfügung, in welchem eine Reihe von häufig verwendeten Methoden implementiert sind und vom Anwendungsentwickler genutzt werden können. Über diese Interfaces erhalten Sie Zugriff auf allgemeine Funktionen wie z.B. den Portal-Manager oder den Message-Manager des Frameworks. Den Zugriff auf das jeweilige Laufzeit-API erhalten Sie mit Hilfe der Methode WD_GET_API, die in allen generierten Controller-Interfaces enthalten ist.
Attribut WD_COMP_CONTROLLER des View-Controllers
Da es in nahezu jedem Anwendungsfall sinnvoll ist, für einen View-Controller die Verwendung des Component-Controllers zu deklarieren, wurde dieser Schritt von der Entwicklungsumgebung bereits vorweggenommen. Jeder View-Controller verfügt auch bereits über das Attribut WD_COMP_CONTROLLER, eine Referenzvariable vom Typ IG_COMPONENTCONTROLLER. Sie haben also in jedem View-Controller über das Attribut WD_COMP_CONTROLLER Zugriff auf alle öffentlich zugänglichen Methoden des Component-globalen, generierten Interfaces des zugehörigen Component-Controllers.