Close

junio 3, 2013

Crear break points dinamicos en ABAP para debug de programas.

Los break-points en ABAP son sentencias de código que activan el modo debug de sap, usualmente los usamos como BREAK-POINT. o BREAK USUARIO, sin embargo estos métodos presentan algunos inconvenientes que mencionaremos más adelante, personalmente prefiero usar otro tipo de break points que son más dinámicos y se pueden activar o desactivar sin necesidad de modificar el programa.

Sentencia Break-point.

Esta sentencia no es recomendable para mi, ya que se activa para cualquier usuario y puede llegar a ser muy molesto para otros programadores que ejecuten el programa.

Sentencia Break Nombre-usuario.

Lo bueno de este método es que solo se activa para el usuario que se indica, lo malo es que si no eliminamos la sentencia antes de liberar la orden de transporte, se nos activará el modo debug cuando estemos en calidad, y cuando deseamos quitarlo debemos generar una nueva orden de transporte.

Sentencia BREAK-POINT ID

Esta es mi favorita por que se puede activar y desactivar en cualquier mandante sin necesidad de modificar el programa, ademas se puede activar para una lista de usuarios, esto es muy útil para hacer debug en programas en el mandante de producción (aun para usuarios que no crearon el break point.)

Para usarlos primero debemos ingresar en la transacción SAAB de sap y crear un punto de verificación indicando un nombre y presionando el botón crear.

Crear un break point dinamico en ABAP.

Ahora debemos activarlo para nuestro usuario, para ello hacemos clic en el botón Usuarios

Agregar usuario a break point.

Y en la siguiente pantalla, hacemos clic sobre el icono de agregar, ingresamos nuestro usuario y luego hacemos clic derecho en la columna Breakpoint y seleccionamos Interrumpir, tal y como se muestra en la siguiente imagen:

Activar el break point para nuestro usuario.

Hasta ahora ya tenemos un break point dinámico ahora solo debemos agregarlo en nuestros programas usando una sentencia como la siguiente:

También podemos deshabilitar el break point seleccionando la opción Inactivo del menú mostrado en la imagen anterior