The Java BAPI Proxy Classes are Java classes generated using the BAPI Wizard component of the SAP Assistant, utilizing R/3 Business Object Repository metadata. The BAPI Proxy Classes enable Java application and applet programmers to create proxy objects that correspond to and communicate with already and newly created business objects that exist in R/3 database. For example, when an applet or a web-based application gathers data for a job applicant and intends to store the collected data in R/3, the applet or application can simply use the Java BAPI proxy class for the business object Applicant to create a proxy object, fill the parameters and call the appropriate method exposed by the business object for creating a new instance of Applicant in R/3 database. Once the new Applicant instance is created in R/3, the proxy object that runs on the desktop application can be used to correspond with the business object in R/3 for data retrieval and modification. Each business object that exists in R/3 is identified by its key, consisting of one or more fields(keyfields). A proxy object that runs in a desktop application can establish itself as the proxy object of a particular instance of business object in R/3 by identifying itself using the same key as the intended instance in R/3.
The classes produced by the BAPI Wizard for each business object fall in several categories, and the following topics discuss the class categories in more detail.
To use the proxy classes, the application program must compile with the class files from the Java RFC classes (packages
com.sap.rfc and com.sap.rfc.exception) , which are part of the SAP Automation package.Classes Generated for each Business Object
The following list shows the files/classes generated for R/3 Business Object ProfitCenter by the BAPI Wizard:
Class |
File |
Category |
jboProfitCenter |
jboprofitcenter.java |
(1) |
jboProfitCenterGetlistParams |
jboprofitcentergetlistparams.java |
(2) |
jboProfitCenterGetdetailParams |
jboprofitcentergetdetailparams.java |
(2) |
jboBapi0002_3Structure |
jboBapi0002_3Structure.java |
(3) |
jboBapi0015_1Table |
jboBapi0015_1Table.java |
(4) |
jboBapi0015_1TableRow |
jboBapi0015_1TableRow.java |
(5) |
jboBapi0015_2Structure |
jboBapi0015_2Structure.java |
(3) |
jboBapireturnStructure |
jboBapireturnStrucure.java |
(3) |
The 'Category' column in the above table lists the class category each class belongs to. The numbers denote the following:
Category |
Denotes |
(1) |
The Business Object Proxy Classes |
(2) |
The Parameter Container Classes |
(3) |
The Structure Parameter Classes |
(4) |
The Table Parameter Classes |
(5) |
The Table Row Classes |