Generell werden mit Hilfe von Attributen und Methoden die programmatischen Abläufe von Web-Dynpro-Anwendungen gesteuert und die im Context enthaltenen Daten bearbeitet. Einige einfache Beispiele für solche programmatischen Abläufe sind bereits in den Kapiteln Ereignisbehandler von Aktionen und Controller-übergreifender Methodenaufruf angesprochen worden. Im Rahmen dieses Kapitels finden Sie allgemeine Informationen zur Programmierung mit Hilfe von Methoden des Web-Dynpro-Frameworks. Außerdem werden häufig verwendete Methoden vorgestellt und mit Programmtext-Beispielen erläutert.
Weitere Informationen zu den einzelnen Controller-Methoden finden Sie im Dokument Controller: Methoden des Werkzeuge-Handbuches sowie im Kapitel Controller-Klassen und -Interfaces im Referenzteil dieser Dokumentation.
Mit jeder neu angelegten Web-Dynpro-Component wird für diese automatisch ein Component-Controller angelegt. Wenn Sie für eine Web-Dynpro-Component eine View anlegen, wird auch zu dieser automatisch ein zugehöriger View-Controller erzeugt. Zudem verfügt jedes Window einer Component über einen Window-Controller und für spezielle Zwecke ist es möglich, sogenannte Custom-Controller anzulegen.
Jedem Controller sind automatisch mindestens zwei Attribute bekannt: Die Objektreferenzen
● WD_CONTEXT und
● WD_THIS.
Sie können jedoch für jeden Controller auch eigene Attribute anlegen. Diese Attribute werden genutzt, um alle nicht UI-relevanten Anwendungsdaten abzulegen (alle UI-relevanten Daten werden im Context abgelegt).
Sie finden ausführliche Hinweise zum programmatischen Umgang mit speziell Contexten im Abschnitt Weiterführende Konzepte im Kapitel Programmierung des Contexts.
Der zusätzlich in der Entwicklungsumgebung aufgelistete Interface-Controller ist kein eigenständiges Objekt sondern eine spezielle Untermenge des Component-Controllers:
Der Interface-Controller definiert die Schnittstelle einer Web-Dynpro-Component für die Nutzung innerhalb einer anderen Component. Die Implementierung der Methoden erfolgt im Component-Controller. Durch Setzen des Flags Interface für Methoden/Ereignisse/Context-Knoten im Component-Controller werden diese Elemente in den Interface-Controller übernommen.