2008 Apr 10 9:21 PM
Hello,
Mainly for performance reasons, we are considering replacing a batch input custom-developed program with a program that either calls a BAPI or generates IDocs (data passed from an interface to a legacy system). However, because of a customer requirement, a screen exit with custom fields was added to the transaction in question.
If we just had to transfer data covered by the SAP standard provided fields, we can use a BAPI or IDoc with no problems (both have been tested, the decision on which method to use hasn't been made yet). However, how can we make sure that this customer-specific data, which is usually entered manually in the custom screen (or through batch input), is stored? BAPIs at least, usually do not provide a way to do this, or do they?
So as not to limit it to a specific SAP component, I have tried to keep this question as generic as possible, without mentioning the transaction codes, BAPIs or IDocs that we are using. However, I can provide these at any time if you think it may help.
In advance, thank you for your assistance.
Regards,
Don
Hello,
Mainly for performance reasons, we are considering replacing a batch input custom-developed program with a program that either calls a BAPI or generates IDocs (data passed from an interface to a legacy system). However, because of a customer requirement, a screen exit with custom fields was added to the transaction in question.
If we just had to transfer data covered by the SAP standard provided fields, we can use a BAPI or IDoc with no problems (both have been tested, the decision on which method to use hasn't been made yet). However, how can we make sure that this customer-specific data, which is usually entered manually in the custom screen (or through batch input), is stored? BAPIs at least, usually do not provide a way to do this, or do they?
So as not to limit it to a specific SAP component, I have tried to keep this question as generic as possible, without mentioning the transaction codes, BAPIs or IDocs that we are using. However, I can provide these at any time if you think it may help.
In advance, thank you for your assistance.
Regards,
Don
2008 Apr 11 7:21 PM
2008 Apr 11 10:24 PM
hi donald,
For one, Batch Data Communication (BDC) is older. Business Application Programming Interface (BAPI) came later, about 10 years ago (you can see this already from the name, which contains marketese like "business" ).
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
thanks
karthik
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |