miércoles, 20 de enero de 2010

Como buscar BADIs

Para buscar las badis que pasan en algún momento dado. Debemos poner un break point en la Clase. SE24 -> CL_EXITHANDLER
Doble click en el método GET_INSTANCE.

Poner un break en la llamada del metodo get_class_name_by_interface.

METHOD get_instance.

CLASS cl_badi_flt_data_trans_and_db DEFINITION LOAD.

DATA: exit TYPE REF TO object,
type_ref TYPE REF TO cl_abap_typedescr,
class_name TYPE seoclsname,
abs_type_classname TYPE string,
def_impl TYPE seex_boolean VALUE seex_false.

CALL METHOD cl_exithandler=>get_class_name_by_interface
EXPORTING
instance = instance
IMPORTING
class_name = class_name
CHANGING
exit_name = exit_name
EXCEPTIONS
no_reference = 1
no_interface_reference = 2
no_exit_interface = 3
data_incons_in_exit_managem = 4
class_not_implement_interface = 5
OTHERS = 6.

Cuando salte el break point hay que ver el valor de exit_name, ahi pasarán todos los nombres de las BADIS. en la SE18 encontramos esos nombres, en la SE19 se implementa.

Otra forma para buscar las BADI, es buscando por Paquete (clase de desarrollo) obtener el paquete de la tx que deseamos en la se93 -> visualizar tomamos el paquete y en la se18 después en la búsqueda ampliada buscamos por paquete y nos devuelve todas las BADIS del paquete.

No hay comentarios:

Publicar un comentario