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.
Table 9. Correspondence between BAPIs and business objects for SAP
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.
Figure 48. Mapping between a business object and a 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.
A business object that represents a BAPI ResultSet is a wrapper object used for ResultSet support with DB2 Information Integrator. When performing a RetrieveByContent verb operation, the connector returns an array of multiple result business objects that match certain selection criteria. The ResultSet wrapper object corresponds to the array.
The wrapper business object contains two attributes of the object type: BAPI_Query and BAPI_Result. The BAPI_Query attribute represents the Get List BAPI on the ASI parameter. For example, bapi=BAPI_CUSTOMER_GETLIST. The BAPI_Result attribute represents the Get Detail BAPI on the ASI parameter. Note that SAPODA always adds a suffix of _rs to the name of the child business objects of the BAPI_Query and BAPI_Result. For example, sap_BAPI_addressdata_rs.
For details about the attribute-level ASI of a BAPI ResultSet object, see Attribute-level ASI for BAPI ResultSets.
For more information about ResultSet processing, consult the DB2 Information Integrator documentation.