Hallo zusammen,
ich nutze bisher die normale Dynprotechnologie für eine Anwendung und möchte diese jetzt auch als WebDynpro zur Verfügung stellen.
In meinem Modulpool erfolgt die Berechtigungsprüfung in der Methode einer globalen Klasse, die bei fehlender Berechtigung ein Event auslöst, das ich dann im Modulpool abfange und das Programm beende.
(Hier eine schematische Darstellung)
Code: Alles auswählen.
PROGRAM.
CLASS lcl_report DEFINITION.
PUBLIC SECTION.
METHODS:
constructor,
no_authorization FOR EVENT no_authorization OF zcl_class.
DATA go_class TYPE REF TO zcl_class.
ENDCLASS.
CLASS lcl_report IMPLEMENTATION.
METHOD constructor.
SET HANDLER no_authorization.
CREATE OBJECT me->go_class. "Berechtigungsprüfung im Konstruktor
ENDMETHOD.
METHOD no_authorization.
MESSAGE 'Keine Berechtigung' TYPE 'E'.
LEAVE TO SCREEN 0.
ENDMETHOD.
ENDCLASS.
DATA go_report TYPE REF TO lcl_report.
MODULE status_0100 OUTPUT. "PBO erstes Dynpro
CREATE OBJECT go_report.
ENDMODULE.
Jetzt ist die Frage, wie ich das mit einem Webdynpro hinbekomme.
Im COMPONENTCONTROLLER kann ich als Attribut eine Referenzvariable auf meine globale Klasse anlegen, die ich dann in der Methode WDDOINIT initialisiere.
Allerdings habe ich noch keinen Weg gefunden, eine Eventhandler Methode anzulegen.
Kann mir jemand erklären, wie ich das machen kann?
Gruß, Tommy