✒️ABAP Las Badis
ABAP Las Badis
También conocidas como Business Adds-Ins, son un nuevo tipo de extensión al sistema SAP basado en la utilización de objetos ABAP para la implementación de validaciones y ampliaciones al código estándar de SAP sin tener que modificar el código estándar.
Las BADIS presentan 2 aspectos, uno de ellos es su definición y por otro lado tenemos la implementación de la badi.
Para trabajar con BADIS existen 2 transacción imprescindibles que debemos conocer, ellas son:
- SE18
- SE19
Utilizaremos la transacción SE18 para crear, modificar o visualizar la defición de una BADI existente en el sistema SAP.
Utilizaremos la transacción SE19 para crear, modificar o visualizar la implementación de una BADI existente en el sistema SAP.
TIPOS DE BADIs.
- Badis Clásicas. Son las primeras que existeron
- Badis Nuevas. Conocidas también como Puntos de ampliación o Enhacement Spot que incorporan las últimas tecnologías de SAP.
VISTAS DE UNA BADI.
Tienen 2 vistas:
- La vista de definición . Esta viene definida en el sistema estándar y muy pocas veces será necesario crear una nueva definición-
- La vista de implementación
DEFINICIÓN DE UNA BADI
Se accesa la definición a través de la transacción SE18, con las pestañas
- Definiciones elem punto ampl. Se ven las configuraciones generales de la BADI
- Enhancem.Implementations. Se puede ver si la Badi esta implementada
- Si se le da click a INTERFACE, se verá cual es la interface asociada a la Badi y cuales métodos están asociados a la Badi.
- Se se da click en los métodos, se verán los parámetros de entrada y salida del método.
5) IMPLEMENTACIÓN DE UNA BADI.
Se hace a través de la transacción SE19, en donde se pueden ver los métodos disponibles en la implementación. Si se hace doble click en los métodos, se podrá ver la lógica asociada a ellos por lo que se podrá decidir si se utiliza la lógica estándar o se crea una nueva.
PASOS PARA LA CREACIÓN DE UNA IMPLEMENTACIÓN
- Entrar a las SE19
- Marcar Badi Clásico
- Se colova el nombre de la definición ( que previamente se busco), en este ejemplo es ADDRESS_CHECK
- Presionar el botón Crear Implementación
- Se introduce el nombre de la nueva implementación : ZADDRESS_CHECK
- Se presiona en continuar
- En la siguiente pantalla se introduce el texto de la implementación.
- Se generan los filtros con los cuales se va a ejecutar la BADI.
- Se agregan los valores de los filtros.
- Se va a introducir el nombre del método que se va a programar, en este caso IS_ACTIVE_FOR_COUNTRY
- Se entra en la pestaña Intercafe y se le da doble click al método
- Para modificar la implementación de una BADI activa primero se debe descativar.
- Se introduce el código Abap en el método.
- Se graba y se activa la BADI,
MÉTODO PARA ENCONTRAR UNA BADI.
Para encontrar una BADI se puede usar el siguientes Método:
- Entrar en la transacción que trata las clases SE24 ( Class Builder)
- Colocar un Break-point de sesión dentro del método GET_INSTANCE de la clase CL_EXITHANDLES exactamente en la llamada al método get_class_name_by_interface
- Se ejecuta le transacción o programa que queremos verificar, y este se detendrá en el break-point
- En la variable EXIT_NAME ese almacenará losnombres de las BADIS que implementa el programa
Se está colocando un breakpoint en el momento que SAP verifica si una definición de BADI tiene alguna implementación activa, por lo tanto , si no existe ninguna implementación activa para esa BADI, el método detectará que existe una BADI en ese punto.
DIFERENCIAS ENTRE BADIS y CUSTOMER EXIT.
- Pueden existir varias implementaciones activas de una Badi pero solo habrá una de Customer Exit.
- Los Customer Exit utilizan Módulos de funciones y las BADIS utilizan método de objetos que se disparan en determinados momentos del proceso.
- Las BAdis con Multicapa, y los customer exits son doble capa (SAP y soluciones de cliente)
 
 
 
Sobre el autor
Publicación académica de Cesar Armando Gutierrez Gomez, en su ámbito de estudios para la Carrera Consultor ABAP.
Cesar Armando Gutierrez Gomez
Profesión: Ingeniero en Sistemas y Redes Infor - El Salvador - Legajo: KQ36J
✒️Autor de: 89 Publicaciones Académicas
🎓Egresado de los módulos:
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Certificación Académica de Cesar Gutierrez