Buscar BADI con SAP Debugger

1.      BADIs

Las BAdIs (Business Add-Ins) son una herramienta de programación ABAP orientada a objetos que se utilizan en SAP para implementar validaciones y ampliaciones en el código standard de SAP en versiones a partir de la 4.6c.

Es posible usar el depurador para encontrar BAdIs que están disponibles en un programa SAP. SAP tiene dos tipos de business Add-ins, son BAdI clásico y nuevo BAdI estas últimas han sido rediseñadas para ser una parte importante del Enhancement Framework.                                                                                              

2.      BADIs Clásicas

Los BAdI clásicos se instancian con el método estático GET_INSTANCE de la clase CL_EXITHANDLER, abrimos la clase CL_EXITHANDLER desde Eclipse ingresamos al método GET_INSTANCE.

1 1
Buscar BADI con SAP Debugger 15

También es posible acceder desde la transacción “SE24” a la clase CL_EXITHANDLER.

2 2
Buscar BADI con SAP Debugger 16

Fijamos el punto de interrupción en la llamada del método estático.

3 1
Buscar BADI con SAP Debugger 17

Ejecutamos cualquier transacción, en el ejemplo ejecutamos la “SE11” y realizamos la búsqueda de alguna tabla, observamos que el depurador detiene la ejecución en el punto de interrupción.

4 2
Buscar BADI con SAP Debugger 18

El depurador se ejecuta y en el parámetro “EXIT_NAME” del método podemos observar el nombre de los objetos de negocio que se invocan durante la ejecución.

5 5
Buscar BADI con SAP Debugger 19

Podemos buscar el objeto de negocio desde Eclipse.

6 3
Buscar BADI con SAP Debugger 20

O desde la transacción “SE18” como se muestra a continuación.

7 3
Buscar BADI con SAP Debugger 21
8 4
Buscar BADI con SAP Debugger 22

3.      Nuevas BADIs

La forma de encontrar un nuevo BAdI es diferente al método de BAdI clásico, los nuevos BAdI se instancian usando la declaración ABAP “GET BADI”, esta vez necesita crear un punto de interrupción para detenerse en el comando GET BADI, realizamos la ejecución de alguna transacción (en el ejemplo la transacción “SE11”) y antes de realizar alguna actividad sobre la dynpro activamos el depurador con el comando “/h” en el campo de comandos.

9 1
Buscar BADI con SAP Debugger 23

Creamos un punto de interrupción con un “ABAP statement” buscando la instrucción “GET BADI”.

10
Buscar BADI con SAP Debugger 24
11
Buscar BADI con SAP Debugger 25

Presionamos F8 para continuar con la ejecución y el depurador se detenga en donde encuentre la instrucción “GET BADI”.

12
Buscar BADI con SAP Debugger 26

Con CTRL+Clic navegamos a la referencia “lb_ae” para conocer el tipo del objeto de negocio.

13
Buscar BADI con SAP Debugger 27

Podemos tomar el objeto de negocio y buscarlo en eclipse como se realizó el caso de las BAdI clásicas.

14
Buscar BADI con SAP Debugger 28

2 comentarios de “Buscar BADI con SAP Debugger

  1. Borja M dice:

    Hola,

    En la parte que describes las nuevas Badis hablas del Enhancement Framework. Puedes extender que es Enhancement Framework y porque las nuevas Badis son parte importante de el.

    Muchas Gracias

    • Jesús Hernández dice:

      Hola Borja,

      El Enhancement Framework en SAP ABAP es el nuevo concepto de mejora que ayuda a los clientes y consultores a dar la opción de mejorar la base de código estándar con el código personalizado que desean agregar.

      Este Framework se compone de:

      * Mejoras implícitas.
      * Mejoras explícitas.
      * Puntos de mejora.
      * Secciones de mejora.
      * BADIs.

      Saludos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.