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

BDC,RFC,BAPI

Former Member
0 Likes
681

Hello,

When do we go for BDC, RFC and BAPI. What is the nearest relationship among these three.Maninly when we go for RFC and BAPI.

Thank you

1 ACCEPTED SOLUTION
4 REPLIES 4
Read only

Former Member
0 Likes
589

hi ravi,

<b>Batch Data Communication: Batch Input</b>

Batch input is typically used to transfer data from non-R/3 systems to R/3 systems or to transfer data between R/3 systems.

It is a data transfer technique that allows you to transfer datasets automatically to screens belonging to transactions, and thus to an SAP system. Batch input is controlled by a batch input session.

Batch input session

Groups a series of transaction calls together with input data and user actions . A batch input session can be used to execute a dialog transaction in batch input, where some or all the screens are processed by the session. Batch input sessions are stored in the database as database tables and can be used within a program as internal tables when accessing transactions.

<b>BAPI</b>

BAPIs are standardized programming interfaces (methods) enabling external applications to access business processes and data in the R/3 System.

BAPIs provide stable and standardized methods to achieve seamless integration between the R/3 System and external applications, legacy systems and add-ons.

BAPIs are defined in the BOR(Business object repository) as methods of SAP business object types that carry out specific business functions.

BAPIs are implemented as RFC-enabled function modules and are created in the Function Builder of the ABAP Workbench.

<b>What is the main difference between BAPI and RFC and difference between BAPI and BDC?</b>

BAPI is used only when it is available for the particular transaction like Delivery Sales order. but BDC can be used for any

transaction which have screen and fields.

BAPI is directly updated the database instead BDC run through the screen flow.

So BAPI can't handle all the flow logic checking and enhancement put by programmer to faciliate the user requirement.

<b>Difference between BAPI and BDC:</b>

BAPI is a higher end usage for tranfering the data from SAP to non-SAP and vice-versa. for ex: if we are using VB application,where in that we want to connect to SAP and retireve the data,and then change and update the data in SAP for that purpose we can use that.

Apart from that, we can also use it for Uploading/Downloading the data from SAP to Non-SAP like BDC, provided we have an existing BAPI for that.

BAPI function modules will also do all the checks required for data integrity like Transactions for BDC.

There is one more advantage using BAPI instead of BDC. When we go for upgradation, there might be pozzibility to change the screen elements for transactions depending on the requirement. In that case,our BDC pgm may or may not work (depending on the screen changes they have made). Unless and until we prepare new BDC we cant use the old BDC pgm. But in BAPI, SAP promises that they are going to keep the old BAPI and for new functionality they will provide an upgraded BAPI. Until we write a new BAPI pgm, we can use the exisitng BAPI pgm.

<b>Hope this is helpful, Do reward.</b>

Read only

Former Member
0 Likes
589

Hi ravi,

check it out.

Regards,

Sachin Bhatnagar

Read only

Former Member
0 Likes
589

Hi ravi kumar,

BDC is upload data in mass transfer. its all depending upon the client requirement.

BAPI is Standard RFC . But RFC function module can be developed by us depending upon the clients requirement.

regards

karthik