Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation Arbeiten mit der Assistance-Klasse  Dokument im Navigationsbaum lokalisieren

Zu jeder Web-Dynpro-Component können Sie eine eindeutig zugeordnete Assistance-Klasse anlegen. Diese Klasse sollte von der abstrakten Klasse CL_WD_COMPONENT_ASSISTANCE erben. Die Assistance-Klasse einer Component bietet folgende Vorteile:

      Sie können dort Coding hinterlegen, das im Rahmen der Component benötigt wird, das jedoch nicht direkt mit dem Layout oder mit der Funktion eines Controllers in Zusammenhang steht. Dies könnte z.B. ein Aufruf der Anwendungsschicht oder die UI-gerechte Aufbereitung der Daten sein.

Hinweis 

Methodenaufrufe der Assistance-Klasse sind aus Sicht der Performance wesentlich günstiger als Aufrufe von Methoden eines Web-Dynpro-Controllers.

      Die zweite, wichtige Funktion der Assistance-Klasse ist die Verwaltung von dynamischen Texten. Texte, die erst zur Laufzeit zusammengesetzt werden und/oder Variable enthalten, können im Text-Pool der Assistance-Klasse als Textsymbole abgelegt werden.

Die Assistance-Klasse wird automatisch beim Aufruf einer Component instanziiert. Die Instanz steht jedem Controller der Component über das Attribut WD_ASSIST zur Verfügung.

Gemeinsame Nutzung einer Assistance-Klassen-Instanz

Zusätzlich ist es im Rahmen einer Component-Verwendung möglich, die Assistance-Klassen-Instanz der Haupt-Component auch der verwendeten Component zur Verfügung zustellen. Dazu müssen Sie bei der Erzeugung der Instanz der verwendeten Component als Wert für den Parameter ASSISTANCE_CLASS die Referenz auf die aktuelle Instanz der Assistance-Klasse der Haupt-Component (also die Referenzvariable wd_assist) übergeben. Im Paket SWPD_DEMO in Ihrem System finden Sie die Web-Dynpro-Anwendung DEMO_COMMON_ASSISTANCE1 in der Sie die Implementierung in der Methode WDDOINIT des Component-Controllers der Haupt-Component DEMO_COMMON_ASSISTANCE1 nachvollziehen können.

Arbeiten mit Textsymbolen in Web Dynpro ABAP 

Die Klasse CL_WD_COMPONENT_ASSISTANCE stellt zentrale Funktionen zur Verfügung über die eine Web-Dynpro-Component Zugriff auf die Textsymbole der Assistance-Klasse erhält. Mit Hilfe des Instanz-Attributs WD_ASSIST sowie der Methode IF_WD_COMPONENT_ASSISTANCE~GET_TEXT( ) können Sie aus jedem Controller Ihrer Component auf Textsymbole der Assistance-Klasse zugreifen. Beim Aufruf der Methode wird die dreistellige Kennung des Textsymbols dem Parameter KEY übergeben:

 method MY_CONTROLLER_METHOD .

 

data: my_text type string.

 

   my_text = WD_ASSIST->IF_WD_COMPONENT_ASSISTANCE~GET_TEXT( KEY = '001').

  

..

endmethod.

 

Achtung 

Der Zugriff auf Textsymbole aus einer Web-Dynpro-Component heraus  unterscheidet sich von der in ABAP Objects üblichen Weise ( Textsymbole in der allgemeinen ABAP-Programmierung).

Die Pflege der Textsymbole der Assistance-Klasse ist von jedem Controller aus möglich. Wählen Sie dazu im Menü den Eintrag Springen   Textsymbole.

Hinweis 

Grundsätzlich kann jede beliebige ABAP-Klasse als Assistance-Klasse dienen, jedoch stehen die im Web-Dynpro-Framework integrierten Services nur dann zur Verfügung, wenn sich die Assistance-Klasse von der Klasse CL_WD_COMPONENT_ASSISTANCE ableitet.

Beachten Sie dabei, dass die Assistance-Klasse keine Required-Parameter im Constructor besitzen darf.

 

Ende des Inhaltsbereichs