Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

BAPI & BDC

Former Member
0 Likes
602

HI GURU,

We can upload Material data Using BAPI and through BDC also. Please tell me some real time difference between these two methods.....

thanks........

5 REPLIES 5
Read only

Former Member
0 Likes
557

Hi Rajesh,

More important though, they are different technologies. With BDC you build the "batch input transaction" yourself, with an ABAP program which creates the "batch input session" ("Batch-Input-Mappe" in german). You then take that session, like an object, and "run" it on a system (most of the time, this is done on a local system by the administrators, after it has been tested for correctness).

With BAPI, a system (local or remote) exposes its interface to you through some kind of Remote Function Call (RFC). Practically, it tells you: "What do you want to do? Insert that data into Materials Management? Here is the function and the the parameters you have to use for each record". You only work with the Interface - the exposed function. How this function works does not have to interest you. You don't have sessions to "run", you fire your function calls filled with data, one after another and you're done.

BAPI can be run remotely. With BDC, you probably have to call the administrators of the remote system and send them the session you created for them to run. With BDC you go through the whole transaction in one BDC session, with BAPI you may need more than one "BAPI calls" to do this.

With BAPI you don't fill obcure field names with values, you just fill the parameters. You can use a BAPI from inside your ABAP program to let a "business object" do some clearly defined work for you, then you can continue with your code doing other things. You don't do this with BDC. With BDC you write a dedicated program that creates the "session", which is then executed separately.

Regards,

Vinay

Read only

0 Likes
557

thanks vinay for ur answer.....One line I could not understand here it is..

"With BAPI you don't fill obcure field names with values."

plz clarify it..

thanx

Read only

Former Member
0 Likes
557

Diff b/w BAPI and BDC

BDC:-

1. Its a report program so that we can use in that PC only

2. Its purely procedural

3. Data Uploading may be synchronous or asynchronous

4. We can upload data in the same app server it is stored

5. Only used to upload data

6. Scope is limited to that version

BAPI:-

1. Its basically defined to work with Data from other interfaces like Java, .Net, Webmethods....

2. It is Object Oriented

3. Purely Synchronous

4. We can do it by cross Platform also

5. We can use it for other purposes like reporting and soon

6. Works fine with version upgrades also.

Read only

Former Member
0 Likes
557

bapis r useful in upgradations also.

but bdcs r not useful in upgradations.

Read only

0 Likes
557

Means

If i created a BDC program in 4.6C to upload data, it is not useful to upload data in Higher and lower versions.

When compared to BDC's BAPI programs are very very less effected by version changes