TRY CATCH – Ejemplo básico de excepción
Caso: se desea capturar y mostrar el error de la excepción al realizar una división por cero. Es un ejemplo básico que encontré, pero útil para usarlo cuando necesitemos capturar excepciones
Solución: Vamos primero a mostrar la división y el error que nos genera sin capturar la excepción:
REPORT zprueba_abap. * Prueba de división por cero sin capturar excepción DATA: resultado TYPE p DECIMALS 2, ref_exc TYPE REF TO CX_ROOT, error TYPE STRING. PARAMETERS: p_num1 TYPE i DEFAULT '10', p_num2 TYPE i DEFAULT '0'. resultado = p_num1 / p_num2. WRITE: 'El resultado es: ', resultado.
Ahora si agregamos la sentencia TRY-ENDTRY y con CATCH capturamos la excepción para que muestre un MESSAGE tipo Información:
REPORT zprueba_abap. * Prueba de división por cero capturando la excepción DATA: resultado TYPE p DECIMALS 2, ref_exc TYPE REF TO CX_ROOT, error TYPE STRING. PARAMETERS: p_num1 TYPE i DEFAULT '10', p_num2 TYPE i DEFAULT '0'. TRY. resultado = p_num1 / p_num2. WRITE: 'El resultado es: ', resultado. CATCH cx_sy_zerodivide INTO ref_exc. error = ref_exc->get_text( ). MESSAGE error TYPE 'I'. ENDTRY.
Links:
http://www.teknodatips.com.ar/sap-netweaver/267-abap-objects-tutorial-manejo-excepciones.html
Categorías: ABAP/4
BCD_ZERODIVIDE, CATCH, CX_SY_ZERODIVIDE, ENTRY, Excepción, EXCEPTION, TRY
Comentarios (0)
Trackbacks (0)
Deja un comentario
Trackback