✒️ABAP / Las Badis Por Alex Lemos Collazos

Selector Alummnos / Empresas

ABAP Las Badis

ABAP Las Badis

1 | ¿ Qué son las Badis ?

BADIS (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.

Mediante las Badis podremos realizar modificaciones al estándar de modo de poder satisfacer los requerimientos del cliente.

Utilizando Badis podremos definir filtros para la ejecución de forma tal de poder tener diferentes procesos para, por ejemplo, países diferentes.

Esto le permite a SAP poder utilizar las Badis para realizar localizaciones del sistema;

por eso es que el sistema estándar ya incluye varias implementaciones de Badis.

Mediante las implementaciones de las Badis se pueden hacer aplicaciones para negocios específicos como petroleras,

papeleras, químicas, etc. Esto hace que las Badis sean muy útiles debido a que poseen una arquitectura Multicapa

(SAP, partners, soluciones de clientes, localizaciones, soluciones específicas para industrias, etc).

2 | Tipos de Badis

Existen dos tipos de Badis:

Badis Clásicas: son las primeras que existieron.

Imagen 2.1 - Las badis clásicas

Badis Nuevas: también conocidas como Puntos de ampliación o Enhancement Spot que incorporan las últimas tecnologías de SAP.

Imagen 2.2 - Las badis nuevas

3 | Vistas de una Badi

Las Badis tienen dos vistas: la vista de definición y la vista de implementación. A continuación veremos en detalle estos dos conceptos.

La definición de las Badis viene definida en el sistema estándar y muy pocas veces será necesario crear una nueva definición.

4 | Definición de una Badi

Mediante la transacción SE18 accedemos a la vista de definición de las Badis.

Imagen 4.1 - Visualizamos una badi en la transacción SE18

Transacción SE18 (Definición de una Badis)

Utilizaremos la transacción estándar SE18 para visualizar la definición de una BADI.

Veamos la configuración correspondiente a un Punto de ampliación o Enhancement Spot.

En la solapa Definiciones elem.punto ampl. veremos las configuraciones generales de la Badi.

Imagen 4.3 - Configuraciones generales de la badi

En la solapa Enhancem.Implementations veremos si la Badi está implementada.

Imagen 4.4 - Verificamos si la badi se encuentra implementada

Si hacemos doble clic en Interface veremos cual es la Interface asociada a la Badi y cuales métodos están asociados a la definición de la Badi.

Imagen 4.5 - Visualizamos la interface y los métodos asociados

Si hacemos doble clic en un método veremos los parámetros de entrada y salida del método.

Imagen 4.6 - Visualizamos los parámetros de entrada y salida de un método

5 | Implementación de una Badi

A través de la transacción SE19 se accede a la implementación de las Badis.

Imagen 5.1 - Visualizamos la implementación de una badi nueva

Transacción SE19

Utilizaremos la transacción estándar SE19 para acceder a las implementaciones existentes de una BADI.

Podemos ver los métodos disponibles en la implementación.

Imagen 5.2 - Visualizamos los métodos que podemos utilizar de la implementación

Si hacemos doble clic en los métodos, podremos ver la lógica asociada a ellos,

por lo tanto se podrá elegir entre utilizar dicha lógica estándar o crear una nueva.

Imagen 5.3 - Visualizamos la lógica ABAP disponible en cada método

6 | Paso a paso en la creación de una implementación

En el siguiente ejemplo vamos a implementar una badi que permita mostrar un mensaje cuando se están modificando los datos

de dirección de un banco determinado mediante la transacción FI02.

Transacción FI02

La transacción estándar FI02 es utilizada para la modficación de los datos de los bancos existentes en el sistema SAP.

Esta transacción pertenece al módulo de Finanzas FI.

Para ello, implementaremos la badi ADDRESS_CHECK, en el método IS_ACTIVE_FOR_COUNTRY,

el cual permite ampliar la verificación del país.

Lo primero que haremos es acceder a la transacción SE19, tildamos "Badi clásico",

completamos el nombre de la definición y presionamos el botón Crear Implementación.

Imagen 6.1 - En la transacción SE19 creamos una nueva implementación de la badi

Luego introducimos el nombre de la implementación que será ZADDRESS_CHECK y presionamos Continuar.

Imagen 6.2 - Introducimos el nombre de la nueva implementación

En la siguiente pantalla introducimos un texto breve para la implementación.

También vamos a generar los filtros con los cuales se va a ejecutar la badi.

Imagen 6.3 - Introducimos una descripción y generamos los filtros

Para ello, agregamos una nueva entrada en la sección Valores de filtro.

Imagen 6.4 - Agregamos un nuevo registro para filtros

Generando una nueva entrada para el código de país AR. Es decir, la badi a implementar solo se ejecutará si el país es AR.

Finalmente guardamos los cambios.

Imagen 6.5 - Introducimos el código del país y el texto breve

La tabla de Valores de filtro está habilitada debido a que en la implementación de la badi está tildada la opción dependiente filtro.

Ahora vamos a introducir el código en el método IS_ACTIVE_FOR_COUNTRY.

Para ello, accedemos a la solapa Interface y hacemos doble clic en el método.

Imagen 6.6 - Accedemos al método IS_ACTIVE_FOR_COUNTRY

Para modificar la implementación de una badi activa primero debemos desactivarla.

Dentro del método introducimos el código ABAP. Para generar el mensaje en pantalla utilizamos la función POPUP_TO_INFORM.

Imagen 6.7 - Introducimos código ABAP en el método

Por último, guardamos y activamos la implementación de la badi.

Imagen 6.8 - Activamos la implementación

Para probar como funciona la implementación accedemos a la transacción FI02, introducimos el país del banco AR (Argentina), la clave de banco 014 y presionamos enter.

Imagen 6.9 - Ingresamos a la transacción FI02 e introducimos los datos en la pantalla

En la siguiente pantalla seleccionamos el botón Dirección o Address.

Imagen 6.10 - Presionamos el botón Dirección

Luego en el campo País elegimos AR y presionamos el botón Aceptar.

Imagen 6.11 - Introducimos el país

Y finalmente veremos el mensaje en pantalla.

Imagen 6.12 - Visualizamos el mensaje de información en pantalla

7 | Método para encontrar una Badi

Para encontrar los lugares en donde existe una Badi, se puede usar el siguiente método:

Ponemos un BREAKPOINT de sesión dentro del método GET_INSTANCE de la clase CL_EXITHANDLER.

Para acceder a una clase utilizaremos el Class Builder que es la transacción SE24.

Imagen 7.1 - Colocamos un breakponit en el método

Luego se ejecuta la transacción o programa que queremos verificar y el programa se detendrá en el BREAKPOINT,

en la variable EXIT_NAME se mostrarán los nombres de las Badis que implementa el programa.

Imagen 7.2 - En la variable EXIT_NAME visualzamos el nombre de la badi

Este método puede resultar un poco engorroso ya que se detiene muchas veces la ejecución,

pero nos aseguramos que si una Badi existe se detendrá en ese punto.

Lo que estamos haciendo es poner un BREAKPOINT en el momento en que SAP verifica si una definición de Badi tiene alguna

implementación activa; por lo tanto, aunque no exista ninguna implementación activa para esa Badi

particular el método detectará que existe una Badi en ese punto.

8 | Diferencias entre las BADIS y los Customer Exits

Las principales diferencias entre una Badi y un Customer Exit son:

Pueden existir varias implementaciones activas en el mismo sistema de una Badi pero solo una de un Customer Exit.

Mientras que los Customer Exits utilizan módulos de funciones,

las Badis utilizan métodos de objetos que se disparan en determinados momentos de los procesos.

Las Badis poseen una arquitectura Multicapa (SAP, partners, soluciones de clientes, localizaciones, soluciones específicas para industrias, etc)

mientras que los Customer Exits son doble capa únicamente (SAP y soluciones de cliente).


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Alex Francisco Lemos Collazos, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Avanzado.

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las Badis" de la mano de nuestros alumnos.

SAP Expert


Las Badis son un tipo avanzado de extensión del sistema SAP que permite realizar modificaciones al estándar para satisfacer requerimientos específicos del cliente sin necesidad de alterar el código fuente original. A diferencia de ampliaciones anteriores, las Badis se basan en la utilización de objetos ABAP para la implementación de validaciones y mejoras. 1. Arquitectura y Tipos de Badis Una de las características más potentes de las Badis es su arquitectura multicapa, lo que permite que coexistan soluciones de SAP, de partners, localizaciones geográficas y soluciones de cliente o de industrias específicas en un mismo flujo. Técnicamente, se dividen en dos tipos:...

Acceder a esta publicación

Creado y Compartido por: Gabriel José Luces González

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master


Las Badis Conceptos básicos de las BADIs Las BADIs (Business Add-Ins) son extensiones al sistema SAP para implementar validaciones y ampliaciones sin modificar el código estándar. Permiten satisfacer requerimientos del cliente y realizar modificaciones al estándar de forma flexible. Se pueden definir filtros para ejecutar diferentes procesos según criterios, como el país, facilitando localizaciones del sistema. SAP ya incluye implementaciones de BADIs para aplicaciones de negocio específicas y distintas industrias gracias a su arquitectura multicapa. Tipos y vistas de las BADIs Existen BADIs clásicas (las primeras) y BADIs...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Introducción: Las BAdIs (Business Add-Ins) son la evolución de las ampliaciones en SAP, utilizando tecnología orientada a objetos para ofrecer una forma más flexible, potente y organizada de personalizar el sistema sin modificar el código estándar. Teoría Esencial: ¿Qué son las BAdIs? Definición: Son puntos predefinidos en el código estándar de SAP donde se puede "enchufar" lógica personalizada, implementada a través de clases y métodos ABAP. Objetivo Principal: Permitir que SAP, partners y clientes amplíen la funcionalidad para industrias específicas (petrolera, química, etc.) o requisitos...

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert



Las BAdIs (Business Add‑Ins) son partes estándar del sistema SAP que permiten insertar lógica específica del cliente sin modificar el código original del sistema. Introducidas a partir de SAP 4.6c y plenamente integradas desde NetWeaver 7.0, están basadas en programación orientada a objetos ABAP, ofreciendo una arquitectura flexible y limpia para extensiones Su propósito es evitar modificaciones directas al código estándar de SAP y, a cambio, introducir “puntos de ampliación” donde se puede agregar funcionalidad personalizada sin comprometer la compatibilidad con futuras actualizaciones del sistema. Estructura de una BAdI Una BAdI consta de dos capas principales:...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

Lección: Las Badis 1 | ¿Qué son las Badis? • Descripción: Las Badis, cuyas siglas significan Business Add-Ins, son un nuevo tipo de extensión al sistema SAP basadas en la utilización de objetos ABAP para la implementación de validaciones y ampliaciones al código estándar de SAP, sin necesidad de modificar el código original. â—¦ Permiten modificar el estándar para satisfacer requerimientos específicos del cliente. â—¦ Facilitan la definición de filtros para la ejecución, permitiendo procesos diferenciados, por ejemplo, por país, lo que es clave para localizaciones del sistema. â—¦ Son muy útiles para aplicaciones de...

Acceder a esta publicación

Creado y Compartido por: Roberto Fluder Ahumada

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

-LAS BADIS: -Sus siglas significan " Business Adds-Ins " y son un nuevo tipo de extensión al sistema SAP. Las badis se encuentran basadas 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. -Existen dos tipos de badis: -Badis Clásicas: son las primeras que existieron. -Badis Nuevas: también conocidas como " Puntos de ampliación o Enhancement Spot" que significa las ultimas tecnologías de SAP.

Acceder a esta publicación

Creado y Compartido por: Luis Enrique Romero Pinto

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Dado que las Badis son un tipo de ampliacion de SAP es importante dejar claro que unicamente se implementan en el codigo estandar de SAP ya que el codigo Z, es decir, el codigo que nosotros como programadores creamos el cual no es estandar puede ser modificado sin convenientes ya sea por nosotros o por cualquier otro programador. Sin dudas una de las grandes ventajas que presentan las BADIS es la posibilidad de tener diferentes implementaciones de la misma BADIS en base a los valores del los filtro, por ejemplo, supongamos que deseamos implementar una BADIS que tiene relacion con un proceso contable poarticular de una empresa multinacional el cual es diferente segun el ¿pais donde nos encontremos, dado esta situacion podemos desarrollar...

Acceder a esta publicación

Creado y Compartido por: Jose Medina / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Badis: son un nuevo tipo de extensión al sistema SAP. Se encuentran basadas en la utilización de objetos de ABAP para la implementación de validaciones y ampliaciones al código estándar de SAP, sin tener que modificar código estándar. Mediante las implementaciones de las Badis se pueden hacer aplicaciones para negocios especificos como petroleras, papeleras, químicas, etc. Esto hace que las Badis sean muy útiles debido a que poseen una arquitectura Multicapa (SAP, partners, soluciones de clientes, localizaciones, soluciones especificas para industrias, etc). Existen dos tipos de Badis, ellas son: Badis Clásicas: son las primeras existieron. Badis Nuevas: también...

Acceder a esta publicación

Creado y Compartido por: Javier Miguel Angel Barcelo / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

LAS BADIS. Son un nuevo tipo de extensión al sistema SAP Estás se encuentran basadas 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. Mediante la implementación de la Badis se pueden hacer aplicaciones para negocios específicos como petroleras, papeleras, químicas, etc. Esto hace que las Badis sean muy útiles debido a que poseen una arquitectura Multicapa. LOS TIPOS DE BADIS. Badis clásicas: son las primeras que existieron. Badis nuevas: también conocidas como Puntos de ampliación o Enhancement Spot que incorpora las últimas...

Acceder a esta publicación

Creado y Compartido por: Gerardo Jose Campos Tovar / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


BADIs - Business Add-Ins BADIs, short for Business Add-Ins, represent a novel extension type within the SAP system. They leverage ABAP objects to implement validations and enhancements to SAP's standard code without requiring direct modifications to it. This versatility empowers developers to tailor SAP functionalities to meet specific client requirements seamlessly. By harnessing BADIs, developers can modify standard processes to meet varying customer needs. For instance, one could define filters to execute different processes based on parameters like country codes. This flexibility enables SAP to utilize BADIs for system localizations, explaining why standard SAP already incorporates BADI implementations. Furthermore, BADIs facilitate the...

Acceder a esta publicación

Creado y Compartido por: Jaime Eduardo Gomez Arango / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

🔎Buscador de Publicaciones:


🔎Googlear en CVOSOFT:
Googlear: "ABAP - Las Badis"

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!