✒️ABAP POO Los Eventos
ABAP POO Los Eventos
Hice el ejercicio un poco diferente. Pero es con apenas unos detalles. Esencialmente es lo mismo
SPAN {
font-family: "Courier New";
color: #000000;
background: #FFFFFF;
}
.L0S31 {
font-style: italic;
color: #808080;
}
.L0S32 {
color: #3399FF;
}
.L0S33 {
color: #4DA619;
}
.L0S52 {
color: #0000FF;
}
.L0S55 {
color: #800080;
}
.L0S70 {
color: #808080;
}
*&---------------------------------------------------------------------*
*& Report ZPRUEBA_EVENTOS_RQ48L
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRUEBA_EVENTOS_RQ48L.
CLASS DEUDA DEFINITION.
PUBLIC SECTION.
METHODS:
CONSTRUCTOR,
INCREMENTAR_DEUDA IMPORTING pMonto Type I.
EVENTS: VALOR_CRITICO EXPORTING VALUE(pDiferencia) Type I.
PRIVATE SECTION.
DATA:
SUM_DEUDAS Type I,
UMBRAL Type I Value 100.
ENDCLASS.
CLASS DEUDA IMPLEMENTATION.
METHOD CONSTRUCTOR.
SUM_DEUDAS = 0.
ENDMETHOD.
METHOD Incrementar_deuda.
Data:
nDifer Type I.
SUM_DEUDAS = SUM_DEUDAS pMonto.
if SUM_DEUDAS > UMBRAL.
nDifer = SUM_DEUDAS - UMBRAL.
RAISE EVENT VALOR_CRITICO EXPORTING pDiferencia = nDifer.
Endif.
ENDMETHOD.
ENDCLASS.
CLASS MANEJADOR DEFINITION.
PUBLIC SECTION.
METHODS:
MANEJAR_EXCESO FOR EVENT VALOR_CRITICO of DEUDA
IMPORTING pDiferencia.
ENDCLASS.
CLASS MANEJADOR IMPLEMENTATION.
METHOD MANEJAR_EXCESO.
Write: / 'Exceso en Deuda:', pDiferencia.
ENDMETHOD.
ENDCLASS.
Data:
oDeuda Type REF TO Deuda,
oManejador Type REF TO Manejador.
START-OF-SELECTION.
CREATE OBJECT oDeuda.
CREATE OBJECT oManejador.
SET HANDLER oManejador->manejar_exceso FOR ALL INSTANCES.
Do 15 times.
oDeuda->Incrementar_deuda( pMonto = sy-index ).
EndDo.
 
 
 
Sobre el autor
Publicación académica de Alfredo César, en su ámbito de estudios para el Máster ABAP POO.
Alfredo César
Profesión: Analista de Sistemas - Argentina - Legajo: RQ48L
✒️Autor de: 33 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Alfredo César