para obtener un ejemplo práctico de un bapi aquí hay un enlace
www.erpgenie.com/abap/bapi/example.htm
¿Qué son los BAPIs?
Las Interfaces de Programación de Aplicaciones Empresariales (BAPIs) permiten el acceso a funciones de SAP a través de interfaces formales, estables y sin diálogo. Estas interfaces pueden ser utilizadas por aplicaciones externas desarrolladas por clientes y socios de software complementarios, así como por otras aplicaciones de SAP.
Los BAPIs se definen como métodos de API de Tipos de Objetos Empresariales de SAP. Estos tipos de objetos se utilizan dentro del Marco Empresarial para permitir la comunicación basada en objetos entre componentes. Los objetos empresariales y sus BAPIs permiten que se utilice la orientación a objetos en el procesamiento central de información en las empresas. Por ejemplo, se pueden reutilizar funciones y datos existentes, se puede lograr una interoperabilidad técnica sin problemas y se pueden implementar componentes no SAP.
Las aplicaciones pueden utilizar BAPIs para acceder directamente a la capa de aplicación del Sistema R/3 y, como clientes, las aplicaciones pueden utilizar la lógica empresarial del Sistema R/3. Los BAPIs proporcionan al cliente una vista orientada a objetos de los objetos de la aplicación, sin necesidad de conocer los detalles de implementación.
Los BAPIs siempre se desarrollan definiendo escenarios. Estos escenarios se utilizan para mapear e implementar procesos empresariales a nivel de sistema.
Grupo objetivo para la documentación
Esta documentación describe las pautas que SAP utiliza para desarrollar e implementar BAPIs para garantizar que el desarrollo de BAPIs sea lo más estándar posible. Estos estándares hacen que los BAPIs sean fáciles de usar.
Esta guía de programación está dirigida a desarrolladores, socios y clientes de SAP que deseen implementar BAPIs.
Esta documentación ha sido escrita para la Versión 4.6C. A menos que se indique lo contrario, estas pautas también se aplican a versiones anteriores, incluidas las versiones 4.0.
http://help.sap.com/saphelp_46c/helpdata/en/43/b46c4853c111d395fa00a0c94260a5/frameset.htm
Diseño del BAPI
Una vez identificados el escenario, los tipos de objetos empresariales y los BAPIs utilizados en él durante el análisis, se define conceptualmente la firma del BAPI en la fase de diseño. El contenido debe ser descrito y se deben definir los nombres de los parámetros y la estructura de los parámetros.
Debido a que los BAPIs son interfaces empresariales y no interfaces técnicas, al desarrollar un BAPI, se debe cumplir con el requisito central de que:
Un usuario debe poder implementar correctamente una llamada a un BAPI en una aplicación externa, utilizando solo su conocimiento de la aplicación y la documentación del BAPI. No se espera que los usuarios tengan ningún conocimiento de R/3, para que puedan ver el Sistema R/3 como una "caja negra".
En esta fase también se debe decidir a partir de las funciones de los BAPIs si el BAPI es un método de instancia o un método de clase y si se puede implementar como un BAPI estandarizado.
Los métodos de instancia se refieren a una instancia específica de un tipo de objeto empresarial, por ejemplo, el BAPI SalesOrder.GetDetail recupera los detalles de precisamente una orden de venta. Estos métodos se definen como dependientes de la instancia en el BOR.
Los métodos de clase no se refieren a una instancia específica de un tipo de objeto empresarial, por ejemplo, el BAPI SalesOrder.GetList suministra una lista de todas las órdenes de venta existentes que coinciden con criterios específicos. Los métodos de creación estandarizados también pertenecen a los métodos de clase. Un método de creación crea una nueva instancia, por ejemplo, el BAPI SalesOrder.Create crea una nueva orden de venta en el Sistema R/3. Estos métodos se definen como independientes de la instancia en el BOR.
Las instancias específicas de un tipo de objeto empresarial se identifican por sus campos clave, por lo que juegan un papel especial en este contexto. En la fase de diseño, las claves de los BAPIs dependientes de la instancia deben identificarse como parámetros especiales. Para más detalles, consulte Definir la Interfaz.
Al diseñar la firma del BAPI, debes tener en cuenta:
El diseño del método (BAPI) y los parámetros deben cumplir con ciertas convenciones. Ver también Convenciones.