✒️ABAP POO Las Badis
ABAP POO Las Badis
BADIS
BAdI
A diferencia de los exits de cliente, los BAdI se optimizan para el proceso de entrega de software modificado. El proceso de suministro típico no consiste solo en proveedores y clientes, sino que varios proveedores intermedios están involucrados en la cadena de suministro del software. Por ejemplo, un interlocutor de SAP puede ampliar un programa de aplicación SAP con una solución industrial como unidad empresarial industrial (IBU). Luego el cliente puede extender el mismo programa.
BAdI: Fundamentos.
Con un BAdI, una aplicación de SAP proporciona la opción de ampliación a través de una interfaz y una clase de adaptador que implementa esa interfaz.
La interfaz puede ser implementada por varios posibles usuarios en la cadena de suministro, por lo tanto, es posible obtener múltiples implementaciones de BAdI. Además, una implementación de BAdI en sí puede proporcionar otro BAdI que pueden implementar los usuarios que aparecen más adelante en la cadena de suministro.
Definición de un BAdI – FundamentosFigura
Cuando define un BAdI, se debe especificar una interfaz (IF_EX_<badi>) con los correspondientes métodos definidos formalmente. La clase de adaptador que se genera automáticamente durante la definición de interfaz (CL_EX_<badi>) tiene, además de otras capacidades, la función de llamar todas las implementaciones activas del BAdI. Cuando dispone de varias implementaciones activas, no hay ninguna secuencia de procesamiento predefinida.
Para definir un BAdI
1.- Ejecute la transacción SE18 o, en la pantalla SAP Easy Access, seleccione Herramientas → Workbench ABAP → Utilidades → Add ins empresariales → Definición.
A partir de SAP Netweaver 7.0, no se puede crear un BAdI directamente. Primero se debe crear un Punto de ampliación.
2.- Indique el nombre del Punto de ampliación y seleccione el botón Crear.
Se visualizará la ventana de diálogo Crear punto de ampliación.
3.- En la ventana de diálogo Crear punto de ampliación, introduzca una descripción breve y seleccione el botón Creación de una ampliación. Grabe la ampliación de su paquete.
4.- Seleccione el botón Crear BAdI.
Se visualizará la ventana de diálogo Crear definición de BAdI.
5.- Introduzca una descripción breve y seleccione el botón Continuar.
6.- En el área de pantalla Definición de BAdI despliegue el nodo y haga doble clic en Interfaz.
7.- Introduzca su nombre de interfaz ZIF_BC401_00_BADI_DEMO y pulse INTRO.
Se visualizará la ventana de diálogo Clase/Interfaz.
8.- En la ventana de diálogo Clase/Interfaz, seleccione Sí para crear la interfaz. Grábela en su paquete y, a continuación, grabe el punto de ampliación.
El generador de clases se visualizará en la pestaña Método.
9.-Indique un método de instancia y una descripción y active la interfaz
El programa de llamada BAdI
Debe definirse una variable de referencia del tipo de BAdI.
Un objeto de la clase de adaptador es instanciado por la llamada del método estático GET_INSTANCE de la clase CL_EXITHANDLER. La variable gb_adapter apunta a esta instancia.
Los métodos de interfaz del BAdI pueden llamarse a través de la referencia de objeto gb_adapter.
 
 
 
Sobre el autor
Publicación académica de Enrique Horacio Lugo Lander, en su ámbito de estudios para el Máster ABAP POO.
Enrique Horacio Lugo Lander
Profesión: Tsu en Informática - Argentina - Legajo: GB93C
✒️Autor de: 30 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Enrique Lugo