🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP POO Los Eventos

ABAP POO Los Eventos

ABAP POO Los Eventos

1) DISPARAR Y MANEJAR EVENTOS

Triggers (Disparadores) son los metodos que disparan un evento.

Handlers (Manejadores) son los metodos que se ejecutan cuando ocurre un evento.

Para disparar un evento una clase tiene que:

  • Declarar el evento en la parte declarativa de una clase o interface.
  • Disparar el evento en uno de sus metodos.

Declarar eventos dependientes de instancia:

EVENTS <evt> EXPORTING.... VALUE(<ei>) TYPE type [OPTIONAL]...

Declarar eventos estaticos CLASS-EVENTS <evt>...

La adicion EXPORTING se usa para especificar parametros que se pasan al manejador de eventos. Los parametros siempre se pasan por valor.

Los eventos dependientes de instancia siempre contienen el parametro implicito SENDER, el cual tiene el tipo de una referencia al tipo o a la interface en el cual el evento es declarado.

Los eventos dependientes de instancia solo pueden ser desencadenado en un metodo dependiente de instancia.

Todos los metodos (dependientes de instancia y estaticos) pueden desancadenar eventos estaticos.

sentencia para disparar un eventos en un metodo:

RAISE EVENT <evt> EXPORTING... <ei> = <f i> ...

Por 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.

2) EVENTOS MANEJADORES

Los eventos se usan para ejecutar una serie de metodos. Estos metodos tienen que:

Estar definidos como eventos manejadores (handler) de ese evento.

Estar registrados en tiempo de ejecucion para el evento.

Sentencia para declarar metodo manejador evento dependiente de instancia:

METHODS <meth> FOR EVENT <evt> OF <cif> IMPORTING... <ei> ...

Para metodos estaticos se usa la sentencia CLASS-METHODS.

La interface de un metodo manejador de eventos solo puede contener parametros formales definidos en la declaracion del evento. Los atributos de los parametros tambien son adoptados por el evento.

El metodo manejador de eventos no tiene por que usar todos los parametros pasados en la sentencia RAISE EVENT.

3) REGISTRO DE METODOS MANEJADORES DE EVENTOS

Para permitir a un metodo manejador de eventos reaccionar a un evento, se tiene que determinar en tiempo de ejecucion el disparador al cual va a reaccionar. esto se hace con la siguiente sentencia: SET HANDLER ... <hi>... [FOR]..... Esta sentencia relaciona los metodos manejadores de eventos con sus correspondientes metodos.

Existen 4 tipos de eventos:

  1. Eventos dependientes de instancia declarados en una clase.
  2. Eventos dependientes de instancia declarados en una interface.
  3. .Eventos estaticos declarados en una clase.
  4. Eventos estaticos declarados en una interface.

Para un evento dependiente de instancia se usa la sentencia FOR para especificar la instancia para la cual se quiere registrar el manejador SET HANDLER... <hi>... FOR <ref>. o se puede registrar el manejador para todas las instancias que puedan disparar el evento. SET HANDLER... <hi>... FOR ALL INSTANCE.

No se puede usar la adicion FOR para los eventos estaticos. SET HANDLER ... <hi> ...

4)COORDINACION EN EL MANEJO DE EVENTOS

Despues de la sentencia RAISE EVENT, todos los metodos manejadores registrados son ejecutados antes de que la siguiente sentencia sea procesada (manejo eventos sincronico).

Si un metodo manejador de eventos desencadena eventos, los correspondientes metodos manejadores de eventos son ejecutados antes que el metodo manejador original continue.

LOS METODOS MANEJADORES DE EVENTOS SON EJECUTADOS EN EL ORDEN EN EL QUE SON REGISTRADOS.


 

 

 


Sobre el autor

Publicación académica de Juan Jose Pujol Diaz, en su ámbito de estudios para el Máster ABAP POO.

Juan Jose Pujol Diaz

Profesión: Ingeniero en Gestión en Informatica - Chile - Legajo: CJ71Z

✒️Autor de: 22 Publicaciones Académicas

🎓Egresado de los módulos:

Certificación Académica de Juan Pujol

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los Eventos" de la mano de nuestros alumnos.

SAP Expert


Eventos: algunos métodos son disparadores (triggers) y otros manejadores (handlers). Los triggers disparan un evento, mientras que los handlers se ejecutan al ocurrir este. Para disparar un evento, se debe declarar el mismo, y dispararlo en uno de sus métodos. Para declarar eventos dependientes de instancia se usa EVENTS. Los estáticos se definen con CLASS-EVENTS. Los eventos tienen siempre un parámetro SENDER que tiene una referencia a la interfaz en el que el evento es declarado. Los eventos dependientes de la instancia sólo pueden desencadenarse con métodos dependientes de instancia. Todos los métodos pueden desencadenar eventos estáticos (desde un método estático es RAISE...

Acceder a esta publicación

Creado y Compartido por: Daniel Alejandro Monteros Segura

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

1) DISPARAR Y MANEJAR EVENTOS Triggers (Disparadores) son los metodos que disparan un evento. Handlers (Manejadores) son los metodos que se ejecutan cuando ocurre un evento. Para disparar un evento una clase tiene que: Declarar el evento en la parte declarativa de una clase o interface. Disparar el evento en uno de sus metodos. Declarar eventos dependientes de instancia: EVENTS <evt> EXPORTING.... VALUE(<ei>) TYPE type [OPTIONAL]... Declarar eventos estaticos CLASS-EVENTS <evt>... La adicion EXPORTING se usa para especificar parametros que se pasan al manejador de eventos. Los parametros siempre se pasan por valor. Los eventos dependientes de instancia siempre contienen el parametro implicito SENDER, el cual tiene...

Acceder a esta publicación

Creado y Compartido por: Juan Jose Pujol Diaz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Triggers: Metodos que disparan eventos. Handlers: Metodos que se ejecutan cuando un evento ocurre. El evento se declara en la parte declarativa de una clase. El evento se dispara en uno de sus metodos (triggers). Declaracion de un evento: EVENTS <evento> EXPORTING VALUE(<EJ>) TYPE type [OPTIONAL]... Declaracion de un evento estatico CLASS-EVENTS <evento> EXPORTING VALUE(<EJ>) TYPE type [OPTIONAL]... Metodos dependientes de instancia disparan eventos estaticos y de instancia. Metodos estaticos disparan solo eventos estaticos. Triggering de un evento: RAISE EVENT <evt> EXPORTING ... <ei> = <fi>.. Manejadores...

Acceder a esta publicación

Creado y Compartido por: Regulo Argotte

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!