The connector supports three kinds of BAPI business objects: business objects for single BAPI calls, business objects for BAPI transactions, and BAPI ResultSet objects.
A business object for a single BAPI call reflects a method on the BAPI interface. The business object uses the BAPI business object handler to map each business object attribute to a BAPI parameter. The connector, each business object, and the BAPI business object handler are metadata-driven. The application-specific information provided in the metadata of each business object and the business object handler allows you to add connector support for a new business object and the business object handler without modifying connector code. Instead:
The business object handler supports both single- and multiple-cardinality relationships between business objects.
A business object based on a BAPI can contain no more than two levels of hierarchy. Therefore, all BAPI simple parameters correspond to attributes of the top-level business object, and BAPI structure and table parameters correspond to child business objects.
BAPI interface parameter | WebSphere business object for SAP |
---|---|
Simple field | Attribute of the top-level business object |
Structure | Single-cardinality child business object |
Table | Multiple-cardinality child business objects |
Figure 48 illustrates the association between a business object and a BAPI. The figure illustrates a fragment of the sap_bapi_salesorder_createfromdat2 business object, which corresponds to the BAPI_SALESORDER_CREATEFROMDAT2 BAPI.
A business object representing a BAPI transaction is a wrapper object that contains multiple BAPI objects as children. Each individual child BAPI object within the wrapper BAPI transaction object represents the parameters of a single BAPI call. Note that SAPODA always adds a suffix of _txn to the BAPI transaction object names. For example, sap_BAPI_salesorder_txn.