MODO DEBUGGING:
Un programa Abap/4 puede ejecutarse paso a paso o pueden insertarse breakpoints para parar en cualquier sentencia la ejecución del mismo. Para activar la ejecución en "modo debugging" al testear una transacción o durante la ejecución de un programa hay que ir a la función debugging, por el menú: Sistema – Utilidades – Debugging Abap/4, o bien introducir '/H' en la barra de comandos. Con esto también se saltan los procesos PBO (Process Before Output) y se pasa directamente a la pantalla de selección. Empieza la ejecución paso a paso o con breakpoints.
Los breakpoints pueden fijarse desde el editor pulsando el botón Fijar Breakpoint. Para ver los que hay definidos, por menú ir a Utilidades – Breakpoints – Visualizar. También se pueden codificar breakpoints en el programa de forma estática, usando la sentencia Abap/4:
BREAK–POINT.
Al depurarse un programa, cuando se llega a un breakpoint la ejecución se detiene. En ese momento se puede conocer el contenido actual de todos los campos, variables, tablas internas, sus cabeceras, y bases de datos referenciadas en el report (incluso campos del sistema). Para ello hacer doble clic sobre el campo a ver, o bien pulsar el botón Seleccionar, o incluso escribir su nombre directamente. Para ver todas las entradas de una tabla interna, pulsar el botón Tabla y escribir su nombre. Su registro de cabecera se distingue con el símbolo: >>>>>.
También se puede cambiar el contenido de los campos o variables en ese momento, forzando la ejecución del programa para ver cómo responde éste, o para corregir valores incorrectos. Para ello teclear el nuevo valor para una variable, y pulsar el botón Retener para 'guardarlo'.
La línea actual en proceso en modo debugging está marcada con un '>' (es el punto de ejecución). En modo "paso a paso" se puede ejecutar una subrutina, función o bloque de programa todo seguido, pulsando el botón Ejecutar, o bien hacerlo paso a paso, con el botón Paso-a-paso.
Los breakpoints dentro de un SELECT. ENDSELECT. pueden dar problemas, pues el acceso a la base de datos no puede ser interrumpido. Mejor ponerlos antes o después, y saltar hasta él, o bien ejecutar paso a paso. Se pueden seleccionar breakpoints que dependan del código de retorno dado por SY-SUBRC. Se pueden grabar breakpoints para la duración de la sesión de diálogo (con Grabarfunción). Para parar el proceso en ciertas rutinas, eventos o palabras clave, ir a: Breakpoints – Breakpoint at – At event / form / keyword. Para que el control de programa vuelva al llamante, elegir Debugging Return.