‎2007 May 28 6:50 PM
‎2007 May 28 6:55 PM
Hi Rohit.
BAPIs (Business Application Programming Interfaces) are the standard SAP interfaces. They play an important role in the technical integration and in the exchange of business data between SAP components, and between SAP and non-SAP components. BAPIs enable you to integrate these components and are therefore an important part of developing integration scenarios where multiple components are connected to each other, either on a local network or on the Internet.
BAPIs allow integration at the business level, not the technical level. This provides for greater stability of the linkage and independence from the underlying communication technology.
BAPI is a Remote enabled function module.
Just follow this simple procedure or steps to create a BAPI.
1. Defining BAPI Data structures in SE11
2. Program a RFC enabled BAPI function module for each method
3. Create a Business object for the BAPI in the BOR
4. Documentation the BAPI
5. Generate ALE interface for asynchronous BAPIs
6. Generate and release
IDocs are text encoded documents with a rigid structure that are used to exchange data between R/3 and a foreign system. Instead of calling a program in the destination system directly, the data is first packed into an IDoc and then sent to the receiving system, where it is analyzed and properly processed. Therefore an IDoc data exchange is always an
asynchronous process. The significant difference between simple RFC-calls and IDoc data exchange is the fact, that every action performed on IDocs are protocolled by R/3 and IDocs can be reprocessed if an error occurred in one of the message steps.
While IDocs have to be understood as a data exchange protocol, EDI and ALE are typical use cases for IDocs. R/3 uses IDocs for both EDI and ALE to deliver data to the receiving system. ALE is basically the scheduling mechanism that defines when and between which partners and what kind of data will be exchanged on a regular or event triggered basis. Such a set-up is called an ALE-scenario.
There are basically two types of IDOCs.
Basic IDOCs
Extended IDOCs
Idoc Components
Basic Idoc
Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.
Extension Idoc
Extending the functionality by adding more segments to existing Basic IDOCs.
Reward if useful.
Thanks
Aneesh.
‎2007 May 28 7:08 PM
Hi Rohit,
BAPI:
BAPI is a well defined interface to processess the data of the business application system
implemented as business object in the BOR.
Confusing?? It is like a door to the SAP System thru which other systems(Not Just SAP Systems) can access the functionality of the SAP System.
Usage:
Depiction of the individual SAP Functions in the internet/intranet.
IDoc:
IDoc stands for intermediate documents.It is a data container which will carry the
data between different systems.It is used in ALE and XI Scenarios.
Conclusion::
BAPIs are function modules thru which the SAP Functions can be accessed from the outside
world.IDocs are data containers thru which the data is exchanged between SAP systems or
between SAP and Non-SAP Systems.
Cheers,
Hakim
Mark all useful answers..
‎2007 May 30 11:16 AM
Hi,
There are many differences between IDOCs and BAPIs.
BAPIs in 3.1 are synchronous; in 4.+ they can be asynchronous (and I
believe they then drive certain ALE/IDOCs).
BAPIs are called from the outside-in. That is, an external program
invokes a BAPI that gets data from SAP to display or updates data in
SAP. The BAPI concept does not include an event concept -- you cannot
tell SAP that when certain events happen to a "business object", to fire
a message or a file to an external system.
BAPIs are invokable from Java or C/C++ or Visual Basic (and I think some
people are using Delphi).
In 3.1x there are very few BAPIs to use. In 4.+ SAP has added a large
number.
BAPIs are not totally immune to upgrades but if they are to be retired
you supposedly will have them supported for two releases. Whether those
are point or letter releases, I don't know. I believe that IDOCs may
be more changable from release to release.
BAPIs are reasonably well documented and there is a common place to look
to see what is available. IDOCs -- I have heard -- are poorly
documented in terms of finding them, and IDOCs were done differently by
different groups in SAP.
BTW, you can also 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 (written to a design spec for BAPIs).
Hope I haven't misstated any of the details.
Regards,
Bhaskar
‎2007 May 30 11:25 AM
Hi,
BAPI-
http://help.sap.com/saphelp_nw2004s/helpdata/en/7e/5e114a4a1611d1894c0000e829fbbd/frameset.htm
http://www.sapgenie.com/abap/bapi/example.htm
http://help.sap.com/saphelp_46c/helpdata/en/9b/417f07ee2211d1ad14080009b0fb56/frameset.htm
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
http://techrepublic.com.com/5100-6329-1051160.html#
http://www.sap-img.com/bapi.htm
http://www.sap-img.com/abap/bapi-conventions.htm
http://www.sappoint.com/abap/bapiintro.pdf
http://www.sapgenie.com/abap/bapi/example.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCFESDE8/BCFESDE8.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
http://techrepublic.com.com/5100-6329-1051160.html#
http://www.sap-img.com/bapi.htm
http://www.sap-img.com/abap/bapi-conventions.htm
http://www.sappoint.com/abap/bapiintro.pdf
IDOC Convertion
/people/kevin.wilson2/blog/2005/12/07/changing-fields-in-an-idoc-segment
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/ale/configuration.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapdevelopment.co.uk/training
http://www.sapgenie.com/ale/why_ale.htm
http://www.sapdevelopment.co.uk/training
****DO REWARDS IF USEFULL
REGARDS,
VIJAY
‎2007 May 30 11:30 AM
Hi,
IDOC is a intermediate document to exchange data between two SAP Systems.
*IDocs are structured ASCII files (or a virtual equivalent).
*Electronic Interchange Document
*They are the file format used by SAP R/3 to exchange data with foreign systems.
*Data Is transmitted in ASCII format, i.e. human readable form
*IDocs exchange messages
*IDocs are used like classical interface files
IDOC types are templates for specific message types depending on what is the business document, you want to exchange.
WE30 - you can create a IDOC type.
An IDOC with data, will have to be triggered by the application that is trying to send out the data.
FOr testing you can use WE19.
how to create idoc?
*WE30 - you can create a IDOC type
For more information in details on the same along with the examples can be viewed on:
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm
http://www.sappoint.com/presentation.html
http://www.allsaplinks.com/idoc_search.html
http://www.sapgenie.com/sapedi/idoc_abap.htm
BAPI
BAPI stands for Business API(Application Program Interface).
A BAPI is remotely enabled function module
ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
You can make your function module remotely enabled in attributes of Function module but
A BAPI are standard SAP function modules provided by SAP for remote access.
Also they are part of Businees Objest Repository(BOR).
BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects.
You create business objects and those are then registered in your BOR (Business Object Repository)
which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA.
In this case u only specify the business object and its method from external system
in BAPI there is no direct system call. while RFC are direct system call.
Some BAPIs provide basic functions and can be used for most SAP business object types.
These BAPIs should be implemented the same for all business object types.
Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs.
Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.
http://help.sap.com/saphelp_46c/helpdata/en/9b/417f07ee2211d1ad14080009b0fb56/frameset.htm
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
Checkout !!
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
http://techrepublic.com.com/5100-6329-1051160.html#
http://www.sap-img.com/bapi.htm
http://www.sap-img.com/abap/bapi-conventions.htm
http://www.sappoint.com/abap/bapiintro.pdf
http://www.sapgenie.com/abap/bapi/example.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCFESDE8/BCFESDE8.pdf
Regards,
Priyanka.