I am using Integration Platform 6.0.1, Trading Networks and Sap BC,RFC calls my question when i am trying to connect to Remote SAP server i am in a total confusion either to choose IDOC or BAPI,Can some one help me which one too choose either BAPI or IDOC whats the main difference between the two,
It all depends upon the business scenario.In your case you are trying to connect to the Remote SAP server and invoke a Service(BAPI’s).Its like a Business Object or web Serives running on a Server where we can write Client program using programming languages like Java or C/C++ or VB.You can use Java, C/C++, Visual Basic to invoke RFCs in
SAP and get or update data. That’s how the BAPIs work since they
utimately are sets of RFC calls.
BAPIs in earlier versions are Sync,and in 4.+ they can be Async also.BAPIs are called from the outside-in.BAPIs provide a stable, standardized method for third-party applications and components to integrate into the Business Framework.
IDoc is a standard data structure for application programs written for the SAP business systems and an external program. IDocs are used for asynchronous transactions: each IDoc generated exists as a self-contained text file that can then be transmitted to the requesting workstation without connecting to the central database.
BAPI’s are used mainly for Sync data transfer where as IDoc’s for Async.