Ejecucion de BADI

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Jamez Betancourt
    Junior Member
    • jul
    • 6

    #1

    Ejecucion de BADI

    Tengo una duda sobre la ejecución de una BADI en una transaccion estandar que se ejecuta en fondo, se ejecuta o no se ejecuta la impolementacion?
    en modo interactivo si se ejecuta pero no veo resultado alguno cuando corro la transaccion en fondo (VF01)

    Saludos a todos
  • abapconsultoria
    Senior Member
    • ene
    • 101

    #2
    Podes probar poner dentro de la BADI la funcion TH_POPUP. Si pasa por la BADI le pedis a la funcion que te envie un mensaje.

    Espero que te sirva.

    Saludos.

    Javier.
    ABAPCONSULTORIA@GMAIL.COM

    www.consultoriaabap.blogspot.com

    Lo importante no es saber sino saber quien es el que sabe

    Comentario

    • ballan
      Senior Member
      • oct
      • 671

      #3
      LO que yo hago para ver las badis es lo siguiente

      1.- Voy a la transaccion SE24 introduzco la clase CL_EXITHANDLER, pulso F7 para visualizar y hago doble click en el metodo GET_INSTANCE para ver su codigo, pongo un break point despues de la instruccion
      CALL METHOD cl_exithandler=>get_class_name_by_interface

      2.- Me voy a la transaccion en la que quiero ver que badis hay y cada vez que intente instanciar una implementacion de una badi se me parara en el break-point, en el parametro exit_name llevas el nombre de la badi

      3.- Una vez que se te ha parado en el break point y has visto el nombre de la badi, en el debugeador pulsas F7 para que salga de ese modulo y a continuacion debe haber una llamada del estilo

      CALL METHOD lr_bapi->metodo

      Si entra dentro del metodo es que la badi esta implementada sino pasara a la siguiente linea

      Comentario

      • Jamez Betancourt
        Junior Member
        • jul
        • 6

        #4
        Gracias por la respuesta, aunque el caso es que la badi ya esta implementada y funciona bien, la duda que tengo es en realidad si la badi se ejecuta cuando ejecuto la transaccion que la llama en fondo, con un call transaction.
        esto porque cuando ejecuto la transaccion en dialogo si entra a ejecutar la implementacion y cuando ejecuto con un call transaction aparentemente no entra.

        Comentario

        • ballan
          Senior Member
          • oct
          • 671

          #5
          Muchas transacciones standar siguen caminos distintos a lo largo del codigo dependiendo de si la ejecutas online o en fondo, o por ejemplo si ejecutas el programa en modo batch input

          Si miras la ayuda de sap para el call transaction veras que le puedes pasar una tabla de opciones donde hay un parametro que no recuerdo como se llamaba pero que es para que lo ejecute SIN MODO BATCH INPUT (en la grabadora de BI transaccion SHDB cuando empiezas una nueva grabacion ves que tb aparece ese flag)

          Prueba a ejecutar el call transaction o el juego de datos SIN MODO BATCH INPUT aver si asi te funciona bien y pasa por la badi

          Comentario

          Trabajando...