Any body explain me the differrence between BAPI and RFC
Hi gurues,
The main difference between rfc and bapi is calling the non sap system. Other than that what r the differrence . How sap modules works other machine without sap is installed.
The difference is not importat while you understand the concept.
I think, RFC is the protocol for calling functions from external systems in R/3.
I understand like BAPI a series of complet functions that SAP offers you for use and model a business use.
But if I need program a function that can be called for external system i would call it RFC_NAME, because is a unique function that makes a single task.
In other words, the difference i think is about work idea more than another thing.
RFC
A remote function call is a call to a function module running in a system different from the caller's. The remote function can also be called from within the same system (as a remote call).
RFC consists of two interfaces : A calling interface for ABAP Programs and a calling interface for Non-SAP programs.
The RFC Interface takes care of :-
Converting all parameter data to the representation needed in the remote system
Calling the communication routines needed to talk to the remote system.
Handling communications errors, and notifying the caller, if desired ( using EXCEPTIONS paramater of the CALL FUNCTION).
BAPI
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.
The most critical difference btwn BAPI and FM is that BAPI can be wrapped in Business objects whereas RFC cant.
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.
The following standardized BAPIs are provided:
Reading instances of SAP business objects
GetList ( ) With the BAPI GetList you can select a range of object key values, for example, company codes and material numbers.
The BAPI GetList() is a class method.
GetDetail() With the BAPI GetDetail() the details of an instance of a business object type are retrieved and returned to the calling program. The instance is identified via its key. The BAPI GetDetail() is an instance method. BAPIs that can create, change or delete instances of a business object type
The following BAPIs of the same object type have to be programmed so that they can be called several times within one transaction. For example, if, after sales order 1 has been created, a second sales order 2 is created in the same transaction, the second BAPI call must not affect the consistency of the sales order 2. After completing the transaction with a COMMIT WORK, both the orders are saved consistently in the database.
Create( ) and CreateFromData! ( )
The BAPIs Create() and CreateFromData() create an instance of an SAP business object type, for example, a purchase order. These BAPIs are class methods.
Change( )
The BAPI Change() changes an existing instance of an SAP business object type, for example, a purchase order. The BAPI Change () is an instance method.
Delete( ) and Undelete( ) The BAPI Delete() deletes an instance of an SAP business object type from the database or sets a deletion flag.
The BAPI Undelete() removes a deletion flag. These BAPIs are instance methods.
Cancel ( ) Unlike the BAPI Delete(), the BAPI Cancel() cancels an instance of a business object type. The instance to be cancelled remains in the database and an additional instance is created and this is the one that is actually canceled. The Cancel() BAPI is an instance method.
Add<subobject> ( ) and Remove<subobject> ( ) The BAPI Add<subobject> adds a subobject to an existing object inst! ance and the BAPI and Remove<subobject> removes a subobject from an object instance. These BAPIs are instance methods.
Check these Links out
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
Refer following SDN threads:
Diff. Between BAPI and RFC
Re: BAPI and RFC
difference between RFC and BAPI
Re: Difference Between BAPI and RFC?
Reward all the helpful answers.
Similar Messages
-
Can any one explain me the relation between BDC and reports events?
hi experts.....
can any one explain me the relation between BDC and reports events? we are using report events in BDC programmes why?\
Is reports events occurs in each and every concept in ABAP i.e creating custom idocs, smart forms, sap scripts, dialog programmes, module pool technics?
thanks in advanceThe forums are expert forums. So the first thing I would do is change your name.
It's like entering a grand prix in a car with a "Student Driver" sign.
Rob -
What is the diffrence between BAPI and RFC and business object
Hi Experts,
Can anybody tel me what is the diffrence between RFC and BAPI , and also what is ther relation with business object?
Thanx in advance.
Nilesh HiwaleHi,
BAPI's are associated with Business Objects and also they are RFC enabled.
But RFC's are the FM's which can be called from external systems, those FM's can be used in many places based on the applications..
Check these Links
whats the difference between BAPI and RFC??
Diff. Between BAPI and RFC
Regards
Kiran -
Difference between BAPI and RFC?
Difference between BAPI and RFC?
also where to use BAPI and where to use RFC?Hi,
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.
The following standardized BAPIs are provided:
Reading instances of SAP business objects
GetList ( ) With the BAPI GetList you can select a range of object key values, for example, company codes and material numbers.
The BAPI GetList() is a class method.
GetDetail() With the BAPI GetDetail() the details of an instance of a business object type are retrieved and returned to the calling program. The instance is identified via its key. The BAPI GetDetail() is an instance method. BAPIs that can create, change or delete instances of a business object type
The following BAPIs of the same object type have to be programmed so that they can be called several times within one transaction. For example, if, after sales order 1 has been created, a second sales order 2 is created in the same transaction, the second BAPI call must not affect the consistency of the sales order 2. After completing the transaction with a COMMIT WORK, both the orders are saved consistently in the database.
Create( ) and CreateFromData! ( )
The BAPIs Create() and CreateFromData() create an instance of an SAP business object type, for example, a purchase order. These BAPIs are class methods.
Change( )
The BAPI Change() changes an existing instance of an SAP business object type, for example, a purchase order. The BAPI Change () is an instance method.
Delete( ) and Undelete( ) The BAPI Delete() deletes an instance of an SAP business object type from the database or sets a deletion flag.
The BAPI Undelete() removes a deletion flag. These BAPIs are instance methods.
Cancel ( ) Unlike the BAPI Delete(), the BAPI Cancel() cancels an instance of a business object type. The instance to be cancelled remains in the database and an additional instance is created and this is the one that is actually canceled. The Cancel() BAPI is an instance method.
Add<subobject> ( ) and Remove<subobject> ( ) The BAPI Add<subobject> adds a subobject to an existing object inst! ance and the BAPI and Remove<subobject> removes a subobject from an object instance. These BAPIs are instance methods.
Regards,
Prakash -
Difference Between BAPI And RFC in ABAP
Hi,
i want to know difference between BAPI and RFC in SAP,
can we call SAP GUI screen from NON SAP System Using BAPI.
Reg,
HariharanHi Ravishankar,
The difference is not importat while you understand the concept.
I think, RFC is the protocol for calling functions from external systems in R/3.
I understand like BAPI a series of complet functions that SAP offers you for use and model a business use.
But if I need program a function that can be called for external system i would call it RFC_NAME, because is a unique function that makes a single task.
In other words, the difference i think is about work idea more than another thing.
RFC
A remote function call is a call to a function module running in a system different from the caller's. The remote function can also be called from within the same system (as a remote call).
RFC consists of two interfaces : A calling interface for ABAP Programs and a calling interface for Non-SAP programs.
The RFC Interface takes care of :-
- Converting all parameter data to the representation needed in the remote system
Calling the communication routines needed to talk to the remote system.
Handling communications errors, and notifying the caller, if desired ( using EXCEPTIONS paramater of the CALL FUNCTION).
BAPI
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.
The most critical difference btwn BAPI and FM is that BAPI can be wrapped in Business objects whereas RFC cant.
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.
The following standardized BAPIs are provided:
Reading instances of SAP business objects
GetList ( ) With the BAPI GetList you can select a range of object key values, for example, company codes and material numbers.
The BAPI GetList() is a class method.
GetDetail() With the BAPI GetDetail() the details of an instance of a business object type are retrieved and returned to the calling program. The instance is identified via its key. The BAPI GetDetail() is an instance method. BAPIs that can create, change or delete instances of a business object type
The following BAPIs of the same object type have to be programmed so that they can be called several times within one transaction. For example, if, after sales order 1 has been created, a second sales order 2 is created in the same transaction, the second BAPI call must not affect the consistency of the sales order 2. After completing the transaction with a COMMIT WORK, both the orders are saved consistently in the database.
Create( ) and CreateFromData! ( )
The BAPIs Create() and CreateFromData() create an instance of an SAP business object type, for example, a purchase order. These BAPIs are class methods.
Change( )
The BAPI Change() changes an existing instance of an SAP business object type, for example, a purchase order. The BAPI Change () is an instance method.
Delete( ) and Undelete( ) The BAPI Delete() deletes an instance of an SAP business object type from the database or sets a deletion flag.
The BAPI Undelete() removes a deletion flag. These BAPIs are instance methods.
Cancel ( ) Unlike the BAPI Delete(), the BAPI Cancel() cancels an instance of a business object type. The instance to be cancelled remains in the database and an additional instance is created and this is the one that is actually canceled. The Cancel() BAPI is an instance method.
Add<subobject> ( ) and Remove<subobject> ( ) The BAPI Add<subobject> adds a subobject to an existing object inst! ance and the BAPI and Remove<subobject> removes a subobject from an object instance. These BAPIs are instance methods.
Check these Links out
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
Refer following SDN threads:
Diff. Between BAPI and RFC
Re: BAPI and RFC
Hope this resolves your query.
Reward all the helpful answers.
Regards -
Can any one tell me the difference between VK11 and MR21
Hi Folks,
I have changed price of a material using VK12.
When I go to the transaction MR21, it is still showing the old price.
Can any one help what is the difference between VK11 and MR21.
And i which scenarios these two were used?
Thanks in Advance
Gopi KrishnaHii,
VK11: This is price master record to determine the sale price or discounts or freight or taxes which we going to charge to the final customer. Through this transaction we will determine the price automatically either in sales or billing document. These transaction is only applicable for sales & distribution module for determining the pricing for customers.
The price determined through this we use in revenue realisation.
MR21: Through this trnsaction Finance or Cost users upload the cost of the material. The cost is
Standard Cost or Moving average cost.
Cost= Raw Material CostProcessing Cost(product process cost )Overheads(employee salaries)
This cost is maintained at each material master in accounting view either standard cost or moving average cost.
These cost is determined for every material movement within the company.
Example: Production, transfer posting, goods issue- system post the quantity and at the same time system create an inventory entry i.e accounting entry for the transaction. In this accounting entries, system consider the values from material master for generating accounting entry.
If you upload production for 10 MT of material A and in material master if kept the cost of the material as 1000 then the accounting entry in production time as
Finish Goods Dr 10000
To Cost of Production Cr 10000
These cost also determined sales transaction through VPRS condition type.
Rewards if it helps
Regards
Goutham -
Could any body explain me the input arguments to EXEC( );
in API i Found the function Runtime.getRuntime.exec( ) in six overloaded ways.
1. Process exec(String command)
2. Process exec(String[] cmdarray)
3. Process exec(String[] cmdarray, String[] envp)
4. Process exec(String[] cmdarray, String[] envp, File dir)
5. Process exec(String cmd, String[] envp)
6. Process exec(String command, String[] envp, File dir)
can any body could explain me explain about
command, cmdarray, envp & dirin API i Found the function Runtime.getRuntime.exec(
) in six overloaded ways.What specifically did you not understand about the explanation of the parameters in the javadocs? -
Wat is the differnce between ARFC and RFC
plz send answers immediately
Hi
RFC
RFC is the protocol used to call functions in an R/3 system by a caller external to R/3 or to call programs external to R/3 from an R/3 system.
Functions can only be called via RFC, if they are tagged as RFC functions in the SAP development workbench. They are then called RFC function modules. BAPIs are complete sets of (BAPI) function modules that model a business application.
When you are familiar with web developments: RFC can be compared to HTTP and BAPIs are CGI applications.
Adaptive RFC
The Adaptive Remote Function Call (Adaptive RFC) is a technology that enables the Web Dynpro application developer to use the business functions encapsulated in Business APIs (BAPIs) even after a structure modification, without having to provide the new data using a second back end or a new structure with subsequent regeneration of the proxies.
This new RFC model shows adaptive behavior. This means that the RFC proxies do not use the original design time structure definition at runtime. Instead, this Web Dynpro model automatically adapts the data of the structure passed in the Java proxy generation to the current data u2013 that is, a structure definition in the back-end system that may have been modified.
Generated structures are used for the context definition; the context ensures type-specific access to the attributes, as they are valid at runtime. However, the context attribute does not create the structure attributes until runtime and can therefore automatically take any changes made a later stage into account.
All structures, fields, and data types are maintained by the Java Dictionary runtime. A memory is available for this, which acts like a virtual machine: Load definitions are automatically loaded from the back end on demand.
The Web Dynpro context therefore shows adaptive, non-static behavior. At runtime, not just those fields are visible that were generated at design time. The following modification scenarios show the support offered by the Adaptive RFC in detail:
If you are looking for Asynchronous RFC (ARFC) then see this link
http://help.sap.com/saphelp_nwpi71/helpdata/en/22/042592488911d189490000e829fbbd/content.htm
Thanks -
The Differrence between doget and dopost
doget and dopost are urally used in the same class, but the function which afford seem the same. Except that doget resposes get, dopost responses post, what are the other or real difference between them?
Can E-Mail:[email protected]difrent is between send param option in HTTP protocol
if you use GET method param send in URL You can see http://something?param=1¶m2=1
if you use POST method param send in body You can't see param in URL
if you want use doGet for both method (GET,POST) you have to write
public void doPost(...){
doGet(...);
public void doGet(...){
your code
Siplo -
Can anybody give me the difference between Catt and Ecatt
Hi gurus,
Can any body give me the difference between catt and ecatt.Hi,
I think this is new technology in sap.
I know little bit of this can u go through this.
eCATT (extended Computer Aided Test Tool)
What is eCATT?
eCATT is an SAP Testing Tool used to automate & test business scenarios in R/3. Each test generates a detailed log that documents the test process and results. If the testing is smooth without any errors, this means that the business scenarios mapped in R/3 are correct. If the test results in error then the problem can be analyzed using the error log that is generated.
eCATT enables automatic testing in SAP GUI for Windows and SAP GUI for Java.
Features of eCATT:
Following functions can be performed using eCATT:
Test transactions, reports and scenarios.
Call BAPIs and function modules.
Test remote systems.
Check authorizations (user profiles).
Test updates (database, applications, GUI).
Set up customizing tables.
Test the effect of changes to customizing settings.
Perform load testing.
Check system messages.
Integrated with Test Workbench, so allows proper management of scripts using SCAT transaction.
Supports CATT migration to eCATT.
All eCATT Objects are Repository Objects. Therefore one can take advantage of Standard SAP Transport Tools.
eCATT Objects can easily download & upload in XML with XSD format.
There can be several versions of Test Scripts, which allows different implementations with different releases.
The separation of Test Scripts, Test Data & System Data allows for a considerable degree of reuse.
Why eCATT?
CATT is no longer supported by SAP for the creation of new developments. Hence all the test scripts developed in CATT are now need to migrate/Update to eCATT. Comparative to manual testing, the following are advantages of using eCATT:
Due to automation, testing time is reduced to a large extent.
Due to automation, less manpower is required for testing. This helps financially.
Due to automation, manual errors are reduced to large extent. Hence results in error free testing. This helps, as no further problems will occur while the usage of R/3 system by end users and hence increases the efficiency.
Proved to be extremely useful in implementation projects.
In regression testing, automated test scripts are an ideal method of quickly detecting errors. Automatic test logs make it easy to reproduce test results, enabling fast analysis and planning of further activities, leading to cost savings for the customer.
Differences between CATT and eCATT?
Till date, CATT could only be used with the R/3 system. eCATT (which is available with SAP Web Application Server 6.20) covers the automatic testing in SAPGUI for Windows and SAP GUI for Java. For other GUIs and Applications, eCATT provides an interface for external tools. This allows companies to perform automated tests from an SAP system in a complete IT solution landscape across system boundaries. These new options enable complete automation of solution landscapes under standard Windows and Web-based user interfaces- resulting in low-cost operation of an IT Solution.
eCATT (extended Computer Aided Test Tool)
eCATT requisites
Web Application Server (WAS) 6.20 or more.
SAPGUI 6.20 or more.
R/3 4.6C or more. (Target system must have sufficient support package level (Details available in SAP Note 519858) or SAP R/3 Enterprise Release 4.7).
Before creating Test Scripts using eCATT, some system settings need to be done:
Maintain table T000.
1. Go to transaction SM31
2. Enter T000 and chose MAINTAIN.
3. In the Change View Clients: Overview screen, select the relevant client and choose Details
4. In the CATT and eCATT Restrictions field, select CATT and eCATT allowed.
5. Click on SAVE.
Enabling scripting at the Front-end
1. On any SAP GUI screen, choose Customizing of Local Layout.
2. Choose Options
3. Choose Scripting Tab
4. Select Enable Scripting
5. Click Apply and then OK.
Enabling Scripting on the Application Server
1. Go to transaction RZ11.
2. On the Maintain Profile Parameters screen, enter sapgui/user_scripting.
3. Choose Display.
4. If the Current Value is not set to TRUE, then click on Change Value:
5. Enter TRUE in the New Value.
6. Click on SAVE.
eCATT is an SAP Testing Tool used to automate & test business scenarios in R/3. Each test generates a detailed log that documents the test process and results. If the testing is smooth without any errors, this means that the business scenarios mapped in R/3 are correct. If the test results in error then the problem can be analyzed using the error log that is generated.
eCATT enables automatic testing in SAP GUI for Windows and SAP GUI for Java.
Features of eCATT:
Following functions can be performed using eCATT:
Test transactions, reports and scenarios.
Call BAPIs and function modules.
Test remote systems.
Check authorizations (user profiles).
Test updates (database, applications, GUI).
Set up customizing tables.
Test the effect of changes to customizing settings.
Perform load testing.
Check system messages.
Integrated with Test Workbench, so allows proper management of scripts using SCAT transaction.
Supports CATT migration to eCATT.
All eCATT Objects are Repository Objects. Therefore one can take advantage of Standard SAP Transport Tools.
eCATT Objects can easily download & upload in XML with XSD format.
There can be several versions of Test Scripts, which allows different implementations with different releases.
The separation of Test Scripts, Test Data & System Data allows for a considerable degree of reuse.
Why eCATT?
CATT is no longer supported by SAP for the creation of new developments. Hence all the test scripts developed in CATT are now need to migrate/Update to eCATT. Comparative to manual testing, the following are advantages of using eCATT:
Due to automation, testing time is reduced to a large extent.
Due to automation, less manpower is required for testing. This helps financially.
Due to automation, manual errors are reduced to large extent. Hence results in error free testing. This helps, as no further problems will occur while the usage of R/3 system by end users and hence increases the efficiency.
Proved to be extremely useful in implementation projects.
In regression testing, automated test scripts are an ideal method of quickly detecting errors. Automatic test logs make it easy to reproduce test results, enabling fast analysis and planning of further activities, leading to cost savings for the customer.
Reward points if it is helpful.
Rgds,
P.Nag -
What's the difference between paint and paintComponent?
can any body tell me the difference between paint and paintComponent?and when i should use paint and when use paintComponent?
I know that when I use repaint,it will clear all the objects and then paint again?
is there a method similar to repaint?
thanks in advance!and when i should use paint and when use paintComponent?Simple answer:
a) override paint() when doing custom painting on an AWT component
b) override paintComponent() when doing custom painting on a Swing component
Detailed answer:
Read the article on [url http://java.sun.com/products/jfc/tsc/articles/painting/index.html]Painting in AWT and Swing.
Read the Swing tutorial on [url http://java.sun.com/docs/books/tutorial/uiswing/14painting/index.html]Custom Painting. -
Difference betrween BAPI and RFC
Hi All
Can anyone tell me the difference between BAPI and RFC.
I am unable to find it out ,except one,ie BAPI is based on object oriented concept .
please justify your answers with real scenerios.Remote Function Call:
RFC is an SAP interface protocol. Based on CPI-C, it considerably simplifies the programming of communication processes between systems.
RFCs enable you to call and execute predefined functions in a remote system - or even in the same system.
RFCs manage the communication process, parameter transfer and error handling.
http://help.sap.com/saphelp_47x200/helpdata/en/22/042860488911d189490000e829fbbd/frameset.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.
Difference Between BAPI and RFC
What is the main difference between BAPI and RFC and difference between BAPI and BDC?
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.
Difference between BAPI and BDC:
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.
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 you 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. It is not possible to connect SAP to Non-SAP systems to retrieve data using RFC alone. RFC can acces the SAP from outside only through BAPI and same is for vice versa access.
RFC is the protocol used by SAP for remote communication, that is, for communications between remote (independent) systems. RFC is used for communications between two independent SAP systems, or for communications between an SAP system and a non-SAP system, such as an external application. It can also be used for communications between modules on the same system. Using the RFC interfaces you can extend the functionality of R/3 applications from an external program.
BAPI-step by step
http://www.sapgenie.com/abap/bapi/example.htm
list of all bapis
http://www.planetsap.com/LIST_ALL_BAPIs.htm
for BAPI's
http://www.sappoint.com/abap/bapiintro.pdf
http://www.sappoint.com/abap/bapiprg.pdf
http://www.sappoint.com/abap/bapiactx.pdf
http://www.sappoint.com/abap/bapilst.pdf
http://www.sappoint.com/abap/bapiexer.pdf
http://service.sap.com/ale
http://service.sap.com/bapi
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://www.planetsap.com/Bapi_main_page.htm
http://www.topxml.com/sap/sap_idoc_xml.asp
http://www.sapdevelopment.co.uk/
http://www.sapdevelopment.co.uk/java/jco/bapi_jco.pdf
also refer these threads
What is the difference between RFC and BAPI?.
whats difference between rfc and bapi?
difference between rfc & bapi
difference between RFC and BAPi
Difference between BAPI and RFC?
also chk this
http://www.sap-img.com/abap/interview-question-on-bapi-rfc-abap-objects-tables.htm
regards,
srinivas
<b>*reward for useful answers*</b> -
Can someone explain the difference between TIER_WEB and TIER_WEBDEV
Hi All,
We have two sets of values in Context file as below.
<TIER_ADWEB oa_var="s_isAdWeb">NO</TIER_ADWEB>
<TIER_ADFORMS oa_var="s_isAdForms">NO</TIER_ADFORMS>
<TIER_ADFORMSDEV oa_var="s_isAdFormsDev">NO</TIER_ADFORMSDEV>
<TIER_ADWEBDEV oa_var="s_isAdWebDev">NO</TIER_ADWEBDEV>
Could you explain the difference between
TIER_WEB and TIER_WEBDEV
and
TIER_ADFORMS and TIER_ADFORMSDEVThese values in a shared APPL_TOP system. Pl see ML Doc 745580.1 (Apply Patches in a Shared Application Tier File System Environment) for an explanation.Not necessarily in Shared APPL_TOP, even in traditional multi-node installation you will find these values in the application context file.
I never came across any document which describes the difference between TIER_WEBDEV and TIER_WEB, I just can say that these variables always have the same value. -
Difference Between BAPI and RFM
Dear Friends,
I have seen a few thread explaining the difference between BAPI and RFM(Remote-enabled function Modules) from functional point of view. I know that there are cases when both are available in BOR. Both can be implement using Object Oriented Technology.
Can any tell me how they differ from techincal point of view ? OR Are they same techinically ?
Thanks in advance,
Rajeshhi,
Remote Function Call:
RFC is an SAP interface protocol.
Based on CPI-C, it considerably simplifies the programming of communication processes between systems.
RFCs enable you to call and execute predefined functions in a remote system - or even in the same system.
RFCs manage the communication process, parameter transfer and error handling.
http://help.sap.com/saphelp_47x200/helpdata/en/22/042860488911d189490000e829fbbd/frameset.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.
Regards
Reshma -
Differrences between structure and table in data dictionary in ABAP?
What is the differrences between structure and table in data dictionary in ABAP?
are they same?Tables :
1. The place where the data is stored so that you can retrieve at any time.
2. There can be more than one record stored
Structures :
1. The data / info stays only during the runtime of the application and will not get stored at all during the run time ....
2. Only one record can be stored at the runtime .....
A structure forms the skeleton of the table.
A structure comprises components i.e., fields. Types are defined for the components A component can refer to an elementary type (via a data element or by directly specifying the data type and length in the structure definition), another structure or a table type. A structure can therefore be nested to any depth
Tables can be defined independently of the database in the ABAP Dictionary. The fields of the table are defined with their (database-independent) data types and lengths.
When the table is activated, a physical table definition is created in the database for the table definition stored in the ABAP Dictionary. The table definition is translated from the ABAP Dictionary to a definition of the particular database.
Maybe you are looking for
-
I have a nano and want to transfer my music to my new iPad, in all the excitement of setting up my iPad I created a new apple Id and now I can't sync my music! Can someone please advise if there is a way to transfer my music to my iPad manually? If s
-
How do you get your IPHONE 4 off of earphone mode?
I can't hear anything when I call people. I have never used ear phones so I don't know how my phone got stuck in headset mode. Can anyone help me get it out on this mode? Thanks!!
-
How can I support a health check, from a load balancer?
My company has load balancers which use health checks to determine if the end point is available for client traffic. The basic health check is a tcp ping, and will tell you if the device is on the network. The next level of health check is an http re
-
I'm trying to spec/buy a processor for a 'new' machine. Does the 533Mhz Northwood Core support Hyperthreading? I can't seem to find any for sale - not sure if thats just bad luck/timing or if I'm looking for something that doesn't exist. Thanks for y
-
How do I update to Firefox 3.6.8
I have bought an Acer notebook which has Firefox as part of the ASPIRE ONE instant on Android - I am a `silver surfer` and not too great at the technical side of things, I found the minimising button was not showing and note on your site someone sugg