✒️ABAP POO - El manejo de excepciones en los Objetos ABAP

ABAP POO El manejo de excepciones en los Objetos ABAP

MANEJO DE EXCEPCIONES

EXCEPCION: situación que sucede cuando un programa se está ejecutando y por alguna razón ocurre una situación anormal en el programa, la cual es tratada ya que previamente fue contemplada en el mismo programa.

Se introduce el concepto de excepciones de los objetos ABAP: Excepciones basadas en clases. Pueden ser clases de excepción predefinidas o creadas por nosotros.

RAISE EXCEPTION: Sentencia para lanzar excepciones basadas en clases.

OBJETO EXCEPCION: representa una situación de excepción y es una instancia de la clase excepcion. Atributos = información de la situación del error.

Transacción SE24 (class builder) para crear nuestras clases de excepciones globales, o localmente en los programas.

Al producirse una excepción basada en clases el sistema interrumpe el flujo del programa busca el manejador adecuado. Si no lo encuentra produce error en tiempo de ejecución.

CX_ROOT (superclase de excepciones) // CX_NO_CHECK, CX_DYNAMIC_CHECK, CX_STATIC_CHECK (subclases de excepciones) // todas las clases de excepciones son derivadas de las anteriores

GET_SOURCE_POSITION: método que devuelve nombre pgm ppal, includes ylinea de código de la excepción.

GET_TEXT: devuelve texto de la excepción en formato STRING

KERNEL_ERRID (atributo heredado de CX_ROOT): nombre del error en tiempo de ejecución disparado por el entorno de ejecución.

Si CX_SY_ZERODIVIDE (división por cero) ---> BDC_ZERODIVIDE

Excepcion se captura si bloque TRY-ENDTRY la sentencia CATCH maneja la excepción y se pueden especificar la cantidad de clases de excepciones necesitadas. Si no se encuentra un manejador de excepciones dentro de TRY-ENDTRY, se ejecuta CLEANUP.

EJEMPLO:

Report ZTEST_EXCEPCIONES

PARAMETERS: v_num1 TYPT i, v_num2 TYPE i.

DATA: v_resultado TYPE i, text TYPE string, ref_exc TYPE REF TO cx_root.

START-OF-SELECTION.

TRY. v_resultado = v_num1 / v_num2. WRITE: 'El resutado es: ', v_resultado.i'.

CATCH cx_sy_zerodivide INTO ref_exc. text = ref_exc->get_text ( ). MESSAGE text TYPE 'I'. ENDTRY


Sobre el autor

Publicación académica de Juan Ignacio De Tejada Santiago, en su ámbito de estudios para el Máster ABAP POO.

SAP Expert

Juan Ignacio De Tejada Santiago

Profesión: Informatico - España - Legajo: NW89P

✒️Autor de: 219 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Certificación Académica de Juan De

 

:: Al igual que Juan ¿Usted está dispuesto a aprender ABAP?

El lunes 29 Noviembre 2021 comenzamos la 🎓Carrera Consultor ABAP.
Juntos para realizar sus más grandes desafíos!

 Cargando presentación, aguarde unos instantes...

 

 

+Recursos Gratuitos en CVOSOFT:

¡Lo importante es aprender!, por eso en CVOSOFT la comunidad SAP más grande de habla hispana, ponemos a su alcance los siguientes recursos abiertos libres y gratuitos:

Buscador de Publicaciones:

 

 

Consultas y Soporte

👋Hola! Estamos listos para ayudarle con el soporte que su carrera merece.

Acceda sección contacto y seleccione canal de comunicación más cómodo para usted.

🤝Aguardamos su mensaje, ¡Éxitos!

 


 

👉Que las empresas tomen en serio sus estudios es muy importante para que su inversión educativa tenga sentido.
Las empresas líderes de United States y del Mundo confían a CVOSOFT su recurso más valioso, la formación de su gente.

¿Quieres conocerlas?