Krypton Solid

La última tecnología en raciones de 5 minutos

¿Qué es SAP BAPI (interfaz de programación de aplicaciones empresariales)?

SAP BAPI (Interfaz de programación de aplicaciones comerciales) es una interfaz estándar para los modelos de objetos comerciales en los productos SAP.

Las BAPI son el método principal a través del cual el código del cliente y las aplicaciones de terceros interactúan con los productos SAP. Las BAPI envuelven las capas internas del modelo de objetos comerciales de SAP para garantizar que toda la lógica comercial, las validaciones y las verificaciones de autorización se ejecuten correctamente al acceder o cambiar los objetos comerciales.

Cómo funciona BAPI

Las BAPI se implementan como módulos de funciones que llaman al código interno de SAP. Dependiendo del conjunto de BAPI que se utilice, pueden llamar a modelos de objetos comerciales definidos mediante el marco de procesamiento de objetos comerciales (BOPF) o modelos heredados definidos mediante programas, tablas y módulos de funciones.

Las BAPI exponen una interfaz formal y estable que los desarrolladores de código de clientes y de terceros pueden utilizar para acceder e interactuar con los objetos comerciales de SAP de una manera que las garantías de SAP funcionarán en el futuro. El acceso a tablas subyacentes y módulos de funciones, programas y clases que no son BAPI también es posible en los sistemas SAP, pero no viene con la misma garantía de que el código funcionará en el futuro o de que los objetos a los que se accede existirán.

Dicho uso de interfaces que no son BAPI puede provocar problemas durante las actualizaciones o requerir pequeños parches si cambia la firma de un módulo de función interno, lo que invalida el código que se basa en él.

Usos de SAP BAPI

Se supone que las BAPI solo deben ser utilizadas por desarrolladores de terceros o clientes si han sido lanzadas, lo que significa que SAP las ha designado como listas para su uso y garantiza que permanecerán estables en el futuro. El estado de la versión se puede verificar mirando la fecha de Publicación en la sección de atributos del módulo de funciones BAPI. Si ese campo está en blanco, entonces SAP no ha publicado la BAPI y no debe utilizarse.

Para usar un SAP BAPI en el lenguaje de Programación de aplicaciones comerciales avanzadas (ABAP), un desarrollador usa la FUNCIÓN DE LLAMADA DE ABAP para invocar el módulo de función (ver captura de pantalla 1). Alternativamente, la mayoría de las BAPI están habilitadas de forma remota, lo que significa que se pueden invocar a través de Remote Function Call (RFC), servicios web o el conector Java de SAP.

FUNCIÓN DE LLAMADA ABAP
Captura de pantalla de la FUNCIÓN DE LLAMADA ABAP utilizada para cambiar una dirección

Funciones de SAP BAPI

Hay BAPI que permiten la automatización completa de la mayoría de los procesos comerciales en cada producto de SAP que se basa en la plataforma ABAP. La documentación de cada producto de SAP ofrece información sobre las BAPI disponibles. También puede ser útil buscar módulos de función que comiencen con BAPI en los códigos de transacción de SAP SE37 y SE80 o ABAP para Eclipse.

Cada módulo de función BAPI debe tener una amplia documentación disponible en varios idiomas accesible a través de la opción Documentación del módulo de función en SE37. Es importante leer esta documentación detenidamente porque las BAPI varían mucho en su estructura y comportamiento, y a veces pueden funcionar de manera inesperada o fallar con mensajes de error crípticos si no se cumplen sus requisitos.

Código SAP BAPI para cambiar una dirección
Código BAPI para cambiar una dirección

Muchas BAPI tienen estructuras complejas que imitan las estructuras de objetos comerciales subyacentes. La BAPI para modificar la dirección de un socio comercial que se muestra en la captura de pantalla 2, la misma FUNCIÓN DE LLAMADA que se muestra en la captura de pantalla 1, incluye múltiples estructuras de importación, así como una gran cantidad de parámetros de tablas, que pueden pasar información adicional hacia y desde la BAPI.

Dos de los parámetros importantes en la captura de pantalla 2 son ADDRESSDATA y ADDRESSDATA_X. Este tipo de emparejamiento es típico de las BAPI, donde la segunda estructura _X es un conjunto de indicadores que indican exactamente qué campos deben actualizarse.

BAPI en la práctica

Debido a que las BAPI se implementan como módulos de funciones, no encajan naturalmente en el paradigma de clases, métodos e interfaces de programación orientada a objetos (OOP) de ABAP. No obstante, normalmente se implementan de forma orientada a objetos, ya que son interfaces para los objetos de negocio de SAP.

En ABAP, estos módulos de función se pueden llamar desde programas, módulos de función o clases. A menudo es preferible envolver las llamadas BAPI en objetos de acceso a datos (DAO), que son clases que encapsulan las llamadas a las BAPI. Hacer esto permite realizar pruebas unitarias con una versión simulada del DAO, lo que permite probar el código del desarrollador por separado de las pruebas de las propias llamadas BAPI.

Deja un comentario

También te puede interesar...

RealNetworks corrige reproductores para socios

RealNetworks emitió una actualización de seguridad a sus socios el miércoles para abordar las vulnerabilidades en RealPlayer y Helix Player. Ambos reproductores multimedia están en peligro, ya que se ha publicado el código de funcionamiento

Definición del intervalo de acumulación

¿Qué es un intervalo de acumulación? Un intervalo de acumulación es un producto estructurado basado en un índice subyacente cuya rentabilidad se maximiza si dicho índice se mantiene dentro del rango definido por el inversor.

Revisión total de la tarjeta de crédito Visa

La tarjeta de crédito Total Visa no es una de las tarjetas de crédito mejor calificadas de Investopedia. Aquí hay una lista de las mejores tarjetas de crédito que creemos que ofrecen las mejores opciones.

Siete desafíos que enfrenta iWatch

Según los siempre ajetreados rumores, Apple se está preparando para iniciar la producción del tan esperado iWatch. Aunque no sabemos nada oficial sobre este mítico dispositivo, se dice en la calle que tendrá una pantalla

Apple trae los juegos de iOS a Corea

Apple ha levantado las restricciones a la venta de juegos en la App Store de Corea del Sur, justo a tiempo para el inminente lanzamiento del iPhone 4S. En los últimos años, Apple eliminó la

El logo de Microsoft cambia de look

Microsoft tiene actualizó su logotipo corporativo por primera vez en 25 años. Ta-da: Al no ser una persona muy orientada al diseño visual, no tengo mucho que decir sobre el cambio de look. Al igual

Ventajas y desventajas de los fondos de liquidez oscura

Los fondos de liquidez oscura son bolsas de valores privadas diseñadas para negociar grandes bloques de valores lejos del ojo público. Estos lugares de negociación se denominan «oscuros» debido a su falta total de transparencia,

Conductor Canon | Krypton Solid

compraste una impresora Canon pero después de conectarlo a su computadora a través de un cable USB, ¿Windows no lo reconoce? ¿Intentó conectar una cámara o videocámara Canon a su Mac, pero un mensaje de

Futuros gigantes del IoT

Mi colega Jon Brown, vicepresidente de inteligencia de mercado aquí en Krypton Solid, planteó una pregunta interesante el otro día. ¿Cuál fue el gran avance de miles de millones de dólares que posibilitó el Internet

Nokia lanza Nokia PC Phone

Hoy temprano, una versión gratuita y descargable Teléfono Nokia para PC la solicitud fue publicada en Laboratorios Beta de Nokia sitio web. Parece una especie de softphone. Dado que Nolia PC Phone solo funciona con