✒️ABAP POO Los Eventos
ABAP POO Los Eventos
Lección Eventos.
1. Disparar y Manejar Eventos.
- Métodos disparadores (triggers), disparan un evento.
- Métodos manejadores (handlers), se ejecutan cuando ocurre un evento.
Para disparar un evento, una clase tiene que :
- Declarar el evento en la parte declarativa,
Para declarar eventos dependientes de instancia, es usa la siguiente sentencia:
EVENTS <evt> EXPORTING... VALUE(<ei>) TYPE type [OPTIONAL]..
Para declarar eventos estaticos se usa la sentencia : CLASS-EVENTS <EVT>...
- Disparar el evento en uno de sus métodos.
Para disparar un evento en un método, se usa la siguiente sentencia :
RAISE EVENT <evt> EXPORTING... <ei> = <fi>......
Los eventos dependientes de instancia soló pueden ser desencadenados en un método dependiente de instancia.
Todos los métodos pueden desencadenar eventos estáticos.
Los métodos estáticos solo pueden desencadenar eventos estáticos.
2. 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.
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.
3. Registro de métodos manejadores de eventos.
Se tiene que determinar en tiempo de ejecución el disparador al cual va a reaccionar. Para esto se usa la siguiente sentencia:
SET HANDLER..<hi>...[FOR].... para eventos dependientes de instancia.
SET HANDLER...<hi>... para eventos estáticos.
Relaciona los métodos manejadores de eventos con sus correspondientes métodos.
[FOR] se utliza en eventos dependientes de instancia para especificar la instancia para la cual se quiere registrar el manejador. Se puede especificar una sola o todas:
SET HANDLER...<hi>...FOR <ref>.
SET HANDLER..<hi>...FOR ALL INSTANCES.
4. Coordinación en el manejo de eventos.
Después de la sentencia RAISE EVENT, todos los métodos registrados son ejecutados antes de que la siguiente sentencia sea procesada (Manejo de eventos sincrónico).
Los métodos manejadores de eventos son ejecutados en el orden en que son registrados.
Actualmente los eventos sólo se pueden anidar 64 niveles.
 
 
 
Sobre el autor
Publicación académica de Rafael Humberto Quintero Pinto, en su ámbito de estudios para el Máster ABAP POO.
Rafael Humberto Quintero Pinto
Colombia - Legajo: XN81Z
✒️Autor de: 6 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Rafael Quintero