✒️ABAP Las BAPIS
ABAP Las BAPIS
BAPI's - Business Application Programming Interface
Las BAPI's son funciones que sirven para realizar acciones sobre los objetos de negocios de SAP. Son en realidad métodos de los objetos de negocios, y gracias a ellos podemos realizar cargas evitando utilizar Batch Inputs por Call Transaction.
Básicamente las BAPI's son funciones como cualquier otra función en ABAP, así que poseen las mismas características: parámetros de entrada, de salida, tablas, excepciones..
Todas las BAPI's cumplen con lo siguiente:
- Soportan el protocolo Remote Function Call (RFC)
- Son métodos de un Objeto de Negocios
- Se procesan sin devolver ventanas de diálogo al programa que las invoca
La mayor ventaja de utilizar BAPI's por sobre los métodos tradicionales de carga de datos (por ejemplo, CALL TRANSACTION) es que como éstas son un estándar de SAP, nos aseguramos que los desarrollos propios que utilicen BAPI's serán compatibles con las futuras versiones de SAP. Esto no sucede con los CALL TRANSACTION, porque entre versiones es muy común que se modifiquen algunas dynpros de una transacción y esto hace que el Batch Input falle.
En la transacción BAPI se encuentran todas las BAPI's que hay en el sistema SAP.
Veamos una BAPI ejemplo. Navegamos el árbol hasta encontrar la bapi BAPI_SALESORDER_CREATEFROMDAT2.
Esta BAPI se utiliza para crear pedidos de venta. Por lo tanto, abrimos el nodo SalesOrder en el índice alfabético y ahí aparece nuestra BAPI.
Si hacemos doble click en el nodo SalesOrder nos despliega la información del objeto de negocio:
Si desplegamos los métodos del objeto de negocio BUS2032 Pedido de Cliente vemos todas las BAPI's del mismo (recordar que las BAPI's son los métodos de los Objetos de Negocio):
Como podemos ver, nuestra BAPI está dentro de las listadas. Las que aparecen en rojo son BAPI's que no están activas. A la derecha de la BAPI tenemos un ícono: el cuadrado verde indica que esa BAPI está activa y es recomendada para su uso. En cambio, si tiene el símbolo rojo STOP no se debe usar esa BAPI; sólo está en el sistema por cuestiones de compatibilidad con versiones anteriores.
Veamos ahora la BAPI en cuestión:
Como podemos ver, la BAPI es un módulo de funciones de la SE37, como cualquier otro. Si quisiéramos ver qué otras BAPI's existen para el objeto de negocio, a veces basta con ir al grupo de funciones de la BAPI. De no ser así, habrá que ir al objeto de negocio y ver sus métodos.
Los objetos de negocio se pueden navegar con la transacción SWO1. Esta transacción nos permite ver los objetos de negocio diferenciados por componente de aplicación.
Busquemos la BAPI en cuestión mediante la SWO1:
Como vemos, con ambas transacciones llegamos al objeto de negocio BUS2032 - Pedido de Cliente.
 
 
 
Sobre el autor
Publicación académica de Juan Carlos Ayala Chira, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Carlos Ayala Chira
Profesión: Ingeniero de Sistemas E Informática - Peru - Legajo: KQ70J
✒️Autor de: 97 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Juan Ayala