Mentor SAP
2017-07-05 Submitted by:- Admin
REPORT zevent_multihandler. *----------------------------------------------------------------------* * CLASS cls1 DEFINITION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS cls1 DEFINITION. PUBLIC SECTION. DATA v_cls1 TYPE char50. EVENTS evnt. METHODS: trig, evnthand1 FOR EVENT evnt OF cls1. ENDCLASS. "cls1 DEFINITION *----------------------------------------------------------------------* * CLASS cls2 DEFINITION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS cls2 DEFINITION. PUBLIC SECTION. DATA v_cls2 TYPE char50. METHODS evnthand2 FOR EVENT evnt OF cls1. ENDCLASS. "cls2 DEFINITION *----------------------------------------------------------------------* * CLASS cls1 IMPLEMENTATION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS cls1 IMPLEMENTATION. METHOD evnthand1. v_cls1 = 'Event Handler in Class One'. WRITE / v_cls1. SKIP. ENDMETHOD. "evnthand1 METHOD trig. v_cls1 = 'Event Triggers in Class One'. WRITE / v_cls1. RAISE EVENT evnt. ENDMETHOD. "trig ENDCLASS. "cls1 IMPLEMENTATION *----------------------------------------------------------------------* * CLASS cls2 IMPLEMENTATION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS cls2 IMPLEMENTATION. METHOD evnthand2. v_cls2 = 'Event Handler in Class Two'. WRITE / v_cls2. SKIP. ENDMETHOD. "evnthand2 ENDCLASS. "cls2 IMPLEMENTATION * Start of selection START-OF-SELECTION. * Data Declaration DATA: obj1 TYPE REF TO cls1, obj2 TYPE REF TO cls2. * Create object for classes CREATE OBJECT: obj1, obj2. * Set event handler and trigger method SET HANDLER obj1->evnthand1 FOR obj1. CALL METHOD obj1->trig. * Deactivate first event handler and set second event SET HANDLER: obj1->evnthand1 FOR obj1 ACTIVATION space, obj2->evnthand2 FOR obj1. * Trigger the event CALL METHOD obj1->trig.

 

Output