Ansicht
Dokumentation

ABAPMETHODS_EVENT_HANDLER - METHODS EVENT HANDLER

ABAPMETHODS_EVENT_HANDLER - METHODS EVENT HANDLER

RFUMSV00 - Advance Return for Tax on Sales/Purchases   PERFORM Short Reference  
This documentation is copyright by SAP AG.
SAP E-Book

METHODS, FOR EVENT

Short Reference



METHODS meth $[ABSTRACT$|FINAL$]
            $|$[DEFAULT IGNORE$|FAIL$]

   FOR EVENT evt OF ${class$|intf$}
   $[IMPORTING p1 p2 ... $[sender$]$].

Addition:

... IMPORTING p1 p2 ... $[sender$]

Effect

This statement declares the instance method meth as an event handler for the event evt of the class class or interface intf. For class and intf, all classes and interfaces can be specified that are visible in this position and that contain an event evt as a component that is visible here.

The visibility section of the event handler cannot be more general than the visibility section of the event because otherwise properties of the method would be defined in a visibility section more restricted than the method itself.

If the event evt is an instance event, the event handler meth can handle it for all objects whose classes match class or that are subclasses of class or which implement the interface intf directly or by using a superclass. If the event is a static event, the event handler meth can handle it for the class class and its subclasses or for all classes that implement the interface intf.

Notes

  • To ensure that an event handler handles a raised event, it must be registered with the statement SET HANDLER.
In event handlers, no class-based exceptions can be declared using RAISING. See Class-Based Exceptions in Event Handlers.
  • When declaring event handlers for static events, note that these events are generally raised in static methods as well. In such a method, the class in which the method is declared is always the raising class, and not the subclass in which or with whose name the method was called.

Addition

... IMPORTING p1 p2 ... $[sender$]

Effect

The addition IMPORTING defines the input parameters of the event handler. For p, only those names of formal parameters can be specified that are defined as output parameters of the event by using the addition EXPORTING of the statement EVENTS or CLASS-EVENTS in the declaration of the event evt in the class class or in the interface intf. The additions TYPE or LIKE and OPTIONAL or DEFAULT are not possible. The typing of the input parameters and whether they are optional, and any replacement parameters, are inherited from the declaration of the event. Not all output parameters of the event need to be specified.

If evt is an instance event, a formal parameter called sender can be defined as an input parameter of an event handler in addition to the explicitly defined output parameters of the event. The formal parameter sender is an implicit output parameter of every instance event. It is completely typed as a reference variable, which itself has the class class or the interface intf as a static type, as specified in the declaration of the event handler after EVENT evt OF. If the event handler is called by an instance event, it is passed a reference to the raising object in sender.

Note

Each event handler determines the type of its formal parameter sender.

Example

The class picture contains an event handler handle_double_click for the instance event picture_dblclick of the global class cl_gui_picture. The event handler inherits two explicit output parameters of the event and the implicit parameter sender as input parameters.






BAL_S_LOG - Application Log: Log header data   Vendor Master (General Section)  
This documentation is copyright by SAP AG.

Length: 5720 Date: 20240419 Time: 063938     sap01-206 ( 97 ms )