✒️ABAP Las BAPIS
ABAP Las BAPIS
Unidad n°7: Los Batch Inputs vs las BAPIS y temas avanzados
Lección n°6: Las BAPIS
BAPIS (Business Application Programming Interfaces):
Son métodos estandarizados que nos permiten hacer acciones sobre los objetos de negocios de SAP, como crear un pedido o un equipo, hacer un movimiento de mercancías, etc.
Son las interfaces estándar de SAP, es decir, son piezas de código en forma de mód. de fun., usadas en la integración entre componentes de SAP, así como componentes externos.
Todos los procesos que hicimos mediante los BI, podemos hacerlos mediante la ejecución de BAPIS.
Todas las BAPIS tienen una serie de características en común:
- Son métodos de un objeto de negocio SAP.
- Todas están definidas como mód. de fun. RFC (Remote Function Call).
- Evitan las ventanas de diálogo durante el procesamiento.
Los objetos de negocio son parecidos a las clases de la POO, que es una serie de atributos, métodos, eventos y campos clave para un apalicación de negocio o escenario específico.
Podemos ver los objetos de negocio en un repositorio (BOR - Business Object Repository) accesible desde la trans. SWO1. Como parte de ese repositorio, se pueden ver los métodos de cada objeto de negocio, que corresponden a distintos BAPIS del sist.
Las BAPIS tienen varias funciones:
- Generar reportes.
- Crear objetos en el sist. (como una solicitud de pedido).
- Como comunicación entre sist. SAP o entre sist. SAP y sist. no SAP.
- Para la migración de datos.
Las BAPIS presentan una alternativa a los métodos tradicionales como los BI.
Ventajas de las BAPIS sobre los Batch Input:
- Usando BAPIS nos aseguramos de que los programas que hagamos, serán compatibles con las prox. versiones de SAP. Lo cual no pasa con los BI, ya que entre las distintas versiones de SAP, es común que se modifiquen las pantallas de las trans, por ende la ejecución del BI fallará.
- Se pueden usar BAPIS desde cualquier plataforma de desarrollo que soporte el uso de los mód. de fun. RFC.
- Las BAPIS usan las mismas validaciones que se usan en las trans. estándar del sist. por lo tanto, usarlas es seguro a nivel de integridad de datos y los resultados que deseamos obtener con la ejecución del sist.
Desventajas de las BAPIS:
- La mayor dificultad está en encontrar la BAPI adecuada para lo que necesitamos hacer en el sist.
- A veces se vuelve difícil saber cómo cargar bien los param. de entrada de las BAPIS de modo que lso resultados sean los que deseamos.
Si bien las BAPIS son mód. de fun. RFC, no todos los mód. de fun. RFC son BAPIS.
Principales diferencias entre las BAPIS y los mód. de fun. RFC:
- Una BAPI puede comunicarse con otra, mientras que un mód. de fun. RFC no puede comunicarse con otro.
- Las BAPIS usan conceptos propios de la POO mientras que los mód. de fun. RFC usan conceptos orientados a procedimientos o subrutinas.
- Una BAPI tiene una interfaz y funcionalidad fija que no se ve afectada por posibles upgrades, mientras que un mód de fun. RFC (dependiendo del status) puede sufrir cambios en la interfaz y en el funcionamiento.
La transacción BAPI:
Para ver las BAPIS usaremos la trans. BAPI, denominada "Explorador BAPI", podremos acceder a todas las BAPIS existentes.
EJ: veremos la BAPI BAPI_USER_GET_DETAIL, que se usa para obtener los datos personales de los usuarios de SAP.
- Para buscarla, dentro de la trans, vamos al menú Tratar -> Buscar.
- En el buscador escribimos el nombre del objeto "USER" y clic en continuar.
- Dentro del menú que vemos, a la izq. de la pantalla, vamos a User y seleccionamos GetDetail.
- Si accedemos a la BAPI desde la trans SE37 y la ejecutamos con nuestro usuario de SAP, podremos acceder a los datos personales de nuestro usuario.
Las BAPIS estándar:
Existen BAPIS estándar y se pueden usar en la mayoría de los objetos de negocio. Estas tienen funciones específicas y pueden ser:
Las BAPIS estándar para la lectura de datos:
- GetList(): se puede seleccionar un rango de objetos como pueden ser sociedades o nros de materiales.
- GetDetail(): para recuperar los datos de una instancia de un objeto de negocio.
- GetStatus(): para obtener el status de un objeto de negocio.
- ExistenceCheck(): chequea si existe una entrada determinada de un objeto de negocio.
Las BAPIS estándar para crear o modificar datos:
- Create() o CreateFromData(): para crear instancias de objetos de negocios.
- Change(): para modificar una instancia de un objeto de negocio.
- Delete() o Undelete(): para borrar y para cancelar el borrado de una instancia de un objeto de negocio.
Las BAPIS estandar para procesamiento masivo:
- Para crear o modifcar datos pueden usarse para procesamiento masivo, es decir, para procesar grandes cantidades de datos. Para ello, será necesario agregar el sufijo Múltiple al nombre de los métodos. Por ej: ChangeMultiple(), CreateMultiple(), etc.
Las BAPIS estándar para replicar instancias de objetos:
- Las BAPIS Replicate() y SaveReplicate() son usadas para copiar instancias de objetos de un sistema a otro.
 
 
 
Sobre el autor
Publicación académica de Candela Estefanía Calzada, en su ámbito de estudios para la Carrera Consultor ABAP.
Candela Estefanía Calzada
Profesión: Técnica Electrónica - Argentina - Legajo: JW91W
✒️Autor de: 160 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Me encuentro estudiando la ingeniería en sistemas de información. poseo amplia experiencia en edición de videos. tengo bases entorno a la programación que quiero continuar consolidando.
Certificación Académica de Candela Calzada