![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP Los Eventos
ABAP Los Eventos
![ABAP Los Eventos ABAP Los Eventos](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/344.jpg)
Eventos
Disparar y manejar eventos
En objetos ABAP hay ciertos metodos que se conocen como disparadores o trigger y otros que se conocen como manejadores o handlers. Los triggers son los metodos que disparan un evento, mientras que los handlers son los metodos que se ejecutan cuando ocurre un evento.
Para disparar un evento en una clase tiene que:
- Declarar el evento en la parte declarativa.
- Disparar el evento en uno de sus metodos.
Los eventos se declaran en la parte declarativa de una clase o en una interface. Para declarar eventos dependientes de instancia se usa la siguiente sentencia.
EVENTS <evt> EXPORTING... Value(<ei>) TYPE type [OPTIONAL]..
Para declarar eventos estaticos se usa la siguiente sentencia.
CLASS-EVENTS <evt>...
Cuando se declara un evento se puede usar la adicion EXPORTING para especificar parametros que se pasan al manejador del evento. Los parametros se pasan siempre por valor.
Los eventos dependientes de instancia en una clase puede ser disparada por cualquier metodo en la clase. Los eventos estaticos son disparados por metodos estaticos. Para disparar un evento en un metodo se usa la siguiente sentencia:
RAISE EVENT <evt> EXPORTING... <ei> = <f i>...
Para cada parametro formal que no este definido como opcional se tiene que pasar el correspondiente parametro real en la adicion EXPORTING. La referencia a si mismo ME es pasada automaticamente al parametro implicito SENDER.
Eventos manejadores
Los eventos se usan para ejecutar una serie de métodos. Estos métodos tienen que:
- Estar definidos como eventos manejadores (handler) de ese evento.
- Estar registrados en tiempo de ejecución para el evento.
Una clase puede contener métodos manejadores de eventos para eventos tanto de su propia clase como de otras clases. Para declarar un método manejador de eventos dependiente de instancia se usa la siguiente sentencia:
METHODS <meth> FOR EVENT <evt> OF <cif> IMPORTING..<ei>
Para métodos estáticos se usa la misma sentencia con CLASS-METHODS en vez de METHODS.
La interface de un método manejador de eventos sólo puede contener parámetros formales definidos en la declaración del evento. Los atributos de los parámetros también son adoptados por el evento.
El método manejador de eventos no tiene por que usar todos los parámetros pasados en la sentencia RAISE EVENT.
 
 
 
Sobre el autor
Publicación académica de Edward Henry Rosario Piezal, en su ámbito de estudios para la Carrera Consultor ABAP.
Edward Henry Rosario Piezal
Profesión: Ingeniero en Sistema - Republica Dominicana - Legajo: FM99R
✒️Autor de: 68 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime