‎2007 May 28 4:13 PM
Hello,
I would like know from l which is the best way to deal with data transfer?
when we need to use BAPI? what is the ideal situation to use ALE & EDI.
What are the pros and cons of above methods for data transfer?
Please share your thoughts, it would be very usefull for my upcoming project.
Thanks,
vidya
‎2007 May 30 5:23 AM
hi,
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).
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.
The Business Add-In enhancement technique differentiates between enhancements that can only be implemented once and enhancements that can be used actively by any number of customers at the same time. In addition, Business Add-Ins can be defined according to filter values. This allows you to control add-in implementation and make it dependent on specific criteria (on a specific Country value, for example).
it is bette to use BAPI because it support enchancements where ad BDc won't.
ALE and EDI : used to transfer data from remote or distributed systems.
‎2007 May 30 5:27 AM
HI,
1)EDI
Electronic Data Interchange
Cross-company exchange of electronic data (for example business documents) between domestic and international business partners who use a variety of hardware, software, and communication services. The data involved is formatted according to predefined standards. In addition to this, SAP ALE technology is available for data exchange within a company.
Refer
http://www.erpgenie.com/sapedi/index.htm
2) ALE
A means of creating and operating distributed applications.
Application Link Enabling (ALE) guarantees a distributed, but integrated, R/3 installation. This involves business-controlled message exchange using consistent data across loosely linked SAP applications.
Applications are integrated using synchronous and asynchronous communication - not by using a central database.
ALE consists of the following layers:
Application services
Distribution services
Communication services
Refer
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
BAPI
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.
check these links
http://searchsap.techtarget.com/ateQuestionNResponse/0,289625,sid21_cid558752_tax293481,00.html
http://www.sap-img.com/abap/interview-question-on-bapi-rfc-abap-objects-tables.htm
http://www.sap-img.com/fu033.htm
http://www.sap-img.com/abap/ale-bapi.htm
Regards,
Priyanka.
‎2007 May 30 5:40 AM
Hi,
BAPI: is used to update R/3 data base tables.
DB tables can be updated using standard transactions which involves screen navigations.
where as the BAPI do the same job but without any screen, BAPI is just a Function module which is remote enabled.
we have to import some parametrs and table parameters (if required) nad BAPI will return a value in RETURN paremeter with a message .(which can be success or error or warning).
most of the time BAPI is recommended in real time situations rather than BDC(whic do the same job), as BDC involves risks as it mostly deals with screen resolutions and movements.
ALE : is application linke enable.ALE acts as path thru which idoc(data container)
is transferrd to the other R/3 system.
ALE acts as interface between diffrent R/3 systems.
outbound idoc:
it mean data is transferred frm our R/3 system to anothe R/3 system.
we have to craeat a IDOC type , then thru FM MASTER_IDOC_DISTRIBUTE the idoc will be passed to ALE layer and then external system.
Inbound idoc:
it mean data is frm exteranl R/3 to our R/3 system.
we will get idoc (data conatiner) frm external sytem where the data is read from idoc .
After the data is raed , it shud be update our R/3 sytem data bsse tables.
after reading the data from idoc to internal table, a BAPI(if exists for our requirement) or a BDC programm is called which will update our sytem DB tables.
EDI: EDI comes inti pictuer to transfer the data from R/3 to Non R/3 or from Non R/3 to R/3.
for example: if Purcahse order is created in our R/3 sytem, an idoc shdu be generated and passed to the external Non R/3 sytem.
in ME23N Tcode we will have messges tab, in that we can set the medium as EDI.
EDI requires mostly settings rather than programming part.
Revert back if nay issues.
Reward with points if helpful.
Regards,
Naveen.