¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo manejar excepciones en ABAP: guía completa

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 133 Vistas
0
Cargando...
Hola abapers, saludos a todos,

En esta publicación del blog, puedes aprender cómo usar la clase de excepción a nivel de informe, espero que esta publicación sea útil para los nuevos abapers. Primero discutiremos qué son exactamente las excepciones.

Excepciones: La excepción es un problema que surge durante la ejecución del programa. Cuando ocurre una excepción, el flujo normal de ejecución se interrumpe y la aplicación del programa se termina de forma anormal, lo cual no se recomienda. Al evitar esto, puedes manejar los errores. Cuando fallas en capturar el error, el sistema en tiempo de ejecución abortará el programa (es decir, se bloqueará).



Siempre que se produzcan excepciones en ABAP, el programa se cortará, lo cual no es lo correcto. Como desarrollador, debes pensar en las excepciones, de dónde se originan y dónde necesitas capturarlas. Las excepciones siempre juegan un papel importante en el desarrollo de la aplicación.



¿Qué es el manejo de excepciones?

El manejo de excepciones es un proceso para manejar una excepción de tal manera que se evite el corte abrupto de un programa y se logre la terminación normal del mismo. Si la excepción generada se maneja correctamente, se logrará la terminación normal del programa y el rendimiento del software no se verá afectado.



¿Cómo manejar las excepciones?

Las excepciones proporcionan una forma de transferir el control de una parte de un programa a otra. El manejo de excepciones en ABAP se basa en 3 palabras clave: RAISE, TRY, CATCH. Suponiendo que un bloque generará una excepción, un método captura una excepción usando una combinación de las palabras clave Try y Catch.

Un bloque Try se coloca alrededor del código que podría generar una excepción.

Try: El bloque Try contiene el código de la aplicación cuyas excepciones se van a manejar; el bloque de instrucciones se procesa secuencialmente. Puede contener estructuras de control adicionales y llamadas a procedimientos u otros programas ABAP.

Catch: El bloque Catch se utiliza para capturar las excepciones que podrían generarse en el bloque Try.


Jerarquía de Excepciones




Manejo de excepciones en objeto ABAP con la ayuda de la Clase de Excepción - Desarrollo ABAP - Wiki de la Comunidad



CX_ROOT: Es la clase principal de todas las excepciones generadas por SAP.

CX_DYNAMIC_CHECK: Se comprueba solo en el sistema en tiempo de ejecución. Todas las excepciones generadas por el sistema entran en esta excepción.

CX_STATIC_CHECK: Se comprueba tanto por el compilador como por el sistema en tiempo de ejecución. Si ocurre alguna excepción en esta categoría, no se maneja internamente, necesitamos declarar la cláusula RAISING de la interfaz del procedimiento.

CX_NO_CHECK: Estas excepciones CX_NO_CHECK siempre se declaran implícitamente.



Aquí te mostraré,

  1. Cómo crear una clase de excepción y cuáles son los pasos a seguir.

  2. Diferentes formas de crear una clase de excepción.




Al crear la clase de excepción en se24, la superclase de esa clase de excepción es CX_STATIC_CHECK.

Hay 2 formas de crear la clase de excepción en se24.

  1. Clase de excepción con mensajes.

  2. Clase de excepción sin mensajes.




Primero permíteme discutir la clase de excepción sin clase de mensaje



Pasos para crear la clase de excepción sin seleccionar la clase de mensaje.

1. Ir a SE24

2. Proporcionar un nombre de tipo de objeto que comience con 'ZCX'



Figura: 1




3. Hacer clic en el botón de crear y se mostrará el cuadro de diálogo a continuación



Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?