BAPI:-Business Applications
Programming Interface
The integration can include both
components within a local network and components that are connected with one
another through the Internet. BAPIs allow integration at the business level,
not at the technical level. This provides greater stability in the link, and
independence from the underlying communication
Process Flow
Custom BAPI creation - Step-by-step Procedure
Scenario: Step-by-step creation of a BAPI to retrieve
fields from table T001.
Now we are done with the creation of a Structure.
++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++++++
Go to transaction SWO1 and enter the name of the BAPI you would like to create or as shown in the screen and click the create button.
The above screen is displayed. Go to the ABAP tab as shown below.
+++++++++++++++++++++++++++++++++++++++++++++++++++++
Now we are done with the creation of a BAPI.
+++++++++++++++++++++++++++++++++++++++++++++++++++++
Test Your BAPI.
SAP created the Business Framework to
allow the technical integration and exchange of business data among SAP
components and between SAP and non-SAP components. Important components of the
Business Framework are the Business Application Programming Interfaces (BAPIs),
which represent visible interfaces at the component boundaries and whose
properties serve to integrate these components.
The structure of the tools in the
ABAP Workbench determines how the BAPI is implemented.
- Defining the data structures (including domains and
data elements) in the ABAP Dictionary.
- Implementing the Function Module in the Function Builder
- Defining the Business Object Types And it’s methods
in the BOR
- The Business object Repository (BOR) is object
oriented repository in R/3 system. It contains SAP business objects and
their methods.
- Each parameter must refer to a data structure in the
ABAP Dictionary. In the case of structured parameters this is always to
the whole BAPI data structure. If the parameter consists of only one
field, it must refer to a field in a BAPI structure.
- You have to create separate data structures for
BAPIs, which are independent of the data structures generally, used in the
R/3 application.
- All data structure names must begin with
BAPI. - BAPI structure names should be as meaningful as
possible.
Custom BAPI creation - Step-by-step Procedure
Procedure: Go to transaction SE11 and create a
structure as shown or as per your requirement.
Give the name in the Data type field and click on create.
In the pop-up that comes up, select the radio button “structure”.
In the components tab of the structure, give the different
fields and their corresponding field types and press enter to check the
compatibility and creativeness.
Do not forget to save it in a package. You can even save it
as a local object. For my example, I save it in a package.
Check the structure (ctrl + F2) and activate (ctrl + F3) the
structure.
++++++++++++++++++++++++++++++++++++++++++++++++++++++Now we are done with the creation of a Structure.
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Go to transaction SE37 where you create function modules.
Click on create after you enter the name of the Function module.
A screen as shown above would pop-up where you mention the
function group to save the function module and also provide some short text
describing your function module.
In the next pop-up that follows, click on continue as shown
above.
The function module screen would look like the one
above.
Go to the Attributes tab and select the radio button reading
“remote-enabled module”. Come back to the imports tab and provide the import
parameters as shown or as per your requirement.
Now in the Export tab, provide the export parameters as
shown or as per your requirement.
In the tables tab, provide the information as shown or as
per your requirement.
The next screen you visit is the source code. It would look
like this.
In the source code tab, write the following code in order to
pick the data based on the input you provide.
Now, save and check the code and activate the function
module.
After successful activation, go to the attributes tab. Go to
Function moduleàReleaseàRelease.
+++++++++++++++++++++++++++++++++++++++++++++++
Now we are done with the creation of a Function Module. +++++++++++++++++++++++++++++++++++++++++++++++
Go to transaction SWO1 and enter the name of the BAPI you would like to create or as shown in the screen and click the create button.
Give the name of the BAPI as above and click on
create.
Give the above-mentioned details and click on the continue
icon.
Save in a package.
The resulting screen is as follows.
Now click on the methods to drop down and see what methods
are provided by default. There would be two methods, showing in red color which
comes by default while creating the BAPI.
Click or select the method as shown above and go to the path
“UtilitiesàAPI
methodsàAdd
methods”. On the screen that follows, provide the function module name
and click on the continue icon.
In the ultimate pop-up, click the next step icon. We observe
that the information is predefined in the fields. This is the next screen where you would just click on the
“next” icon.
Click on Yes. You can see an information message reading “ZBAPIFMT001”
inserted.
Now save after you add the method. Select & Double click
on the API method.
Go to Tab: ABAP Check 'API Function'.
The above screen is displayed. Go to the ABAP tab as shown below.
Select the Radio button reading “API Function” as already
said above.
click on the continue icon to proceed further.
Now select the Object “ZBAPI_T001” as shown below.
Go to : EditàChange Release StatusàObject type àTo
Modeled.
The above shown screen will be displayed. Click on yes.
The message shows, ‘The object type status set to modeled’.
(Or already modeled)
Go to: EditàChange Release StatusàObject type à
To Implemented.
You can see a message reading “Object type status set to
implemented”
Now, go to: EditàChange Release StatusàObjectàTo
Released.
There would be two pop ups coming up. Click on continue on
the Pop Ups.
Keep the cursor on the 'Method'.
Go to: EditàChange Release StatusàObject type componentàTO
Modeled.
You can see the message reading “status for method
‘zbapifmt001’ set to modeled”.
Now, go to: EditàChange Release StatusàObject
type componentà
TO Implemented
You can see the message reading “status for method
‘zbapifmt001’ set to implemented”.
Now go to: EditàChange Release Status à
Object type component à To Released
You can see the message reading “status for method
‘zbapifmt001’ set to Released”.
Click on Generate Button. (The red ball kind of button is
the Generate button)
After clicking on the generate button, you can see the
message reading “Object type 'ZBAPI_T001' generated successfully”.
Now go to BAPI Tcode (BOR) there we can find the BAPI (our
BAPI)
The BAPI browser would look like the screen below.
You can click on the Alphabetical tab so that you can browse
the BAPI’s in an alphabetical order. Find your BAPI as shown.
+++++++++++++++++++++++++++++++++++++++++++++++++++++
Now we are done with the creation of a BAPI.
+++++++++++++++++++++++++++++++++++++++++++++++++++++
Test Your BAPI.
Enter the name of your BAPI in the transaction SWO1 and
click on ‘Test’.
The above screen is displayed. Click on the Execute icon
against the BAPI as shown.
The above screen is displayed where you would require
entering the data against the empty input fields.
We have entered some data in the Field.
After entering the data, click on the execute icon as shown
below.
The following screen is displayed which has some values as
is indicated by the ITEMTAB.
Click on the Edit table icon as shown below.
The results as per our input are as shown below.
By this, we would get it confirmed that our BAPI is working
properly.
We can even check it by passing different values again. Come
back to the input and execution screen.
After executing the BAPI based on the input provided, we get
the following screen.
Hit on the execute icon.
In the above shown screen, hit on the edit table icon.
The above is the output we get from the input we
provided.
We are now done with the creation and successful execution
of a BAPI.
No comments:
Post a Comment