Http == rfc (bapi) - bapi not created
Hi
I've got an http <==> rfc (bapi) scenario. QoS is Best Effort. I am using SAP's http test tool. After enabling the "synch-logging" I can see two successful rows. I am using the bapi "bapi_master_savedata".
Some weird things:
- no material master data is created.
- The parts of the response message are only "Call Adapter" and "Request Message Mapping", nothing else.
Thanks
Go:khan
Hi
I think you pointed to the right problem.
I haven't written something like that before, but I will try if there is no other solution.
So I don't need any wrapper for a syn. rfc call with SP 14??
But the following article doesn't use any wrapper "/people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit ??
Thanks
Go:khan
Similar Messages
-
BAPI does not create Sales order
Hi All,
I am using BAPI_SALESORDER_CREATEFROMDAT2 to create sales order.
It is working fine till now.
But I found that whenever there is a material whose condition price is maintained and doesnot match with the valuation type, the Sales order does not get created, neither it gives any error msg.
For e.g For Valuation type Consign , condition type ZPCS is valid and similarly for Turnkey , condition type ZPTK is valid.
if a material has valuation type consign and condition type ZPTK.. The SAP system ofcourse will not allow to create a SO unless we delete the ZPTK entry from the SO and create ZPCS...
BAPI also doesnot create the SO but doesnot return the error messge too.
I try to put the ZPCS value to BAPI thru BAPICOND..but still not working?
How do i handle such case?
Points will be awarded to useful ansHi,
If you are saying that you cannot create a sales order with the Valuation type and Condition type mismatch even through VA01 manually, then there is nothing much you can do in BAPI also.
2nd Case is you say that that BAPI RETURN table is not getting populated and it is empty in this issue which is not letting you know that Sales order is not Created.
The one work around for this issue is you can check the exporting parameter SALESDOCUMENT if it has the Sales Order number or not. if the RETURN table is empty and the SALESDOCUMENT field has SO Number, then SO is created and if RETURN table is Initial and SALESDOCUMENT is also Initial, then it is the issue that you are facing.
Also try posting a Query in OSS.
regards,
Mahesh -
BAPI_BATCH_CREATE not creating MCHA Entry? 0nly MCH1
The bapi is not creating the batch at the plant level. Meaning in MCHA record. I am passing the material, plant, and batch number? Am I missing a parameter?
Thank-you.Hi,
how do you fill structure BATCHCONTROLFIELDS, especially field BATCHLEVEL?
Cheers -
Leave Request create RFC or BAPI
HI,
RFC or BAPI for leave request create and that will trigger a work flow.
Input Parameters Pernr, Absence subtype, and date.
Thanks in advance
Regards,
Kiruba.RHI Batwara,
When I execute the RFC am getting the following return messages.
I HRTIM00WS 009 Generate period work schedule FLEX for 2/06/01 in 04/2009
E PG 184 Employee/applicant is not locked yet
any idea pls.
Regards,
Kiruba.R -
PO created though BAPI 'BAPI_PO_CREATE1' not visible in WPOHF4D
Hi Experts,
As per the client requirement, I am using BAPI 'BAPI_PO_CREATE1' to create PO. My client is using retail transactions majorly and wants to see the created PO in tcode WPOHF4D. The PO created using this BAPI are visbible in Me22n, but not in WPOHF4D.
Can you please let me know what has to be done to see the generated POs in WPOHF4D?
Below is the part of code where I am filling the stuctures to be passed to BAPI:
*Filling header
lwa_poheader-SALES_PERS = lwa_datatab-ihrez.
lwa_poheader-doc_type = lwa_datatab-bsart.
lwa_poheader-doc_date = lwa_datatab-bedat.
lwa_poheader-comp_code = lwa_datatab-bukrs.
lwa_poheader-purch_org = lwa_datatab-ekorg.
lwa_poheader-pur_group = lwa_datatab-ekgrp.
lwa_poheader-vendor = lwa_datatab-lifnr.
lwa_poheader-currency = lwa_datatab-waers.
lwa_poheader-pmnttrms = lwa_datatab-zterm.
lwa_poheader-exch_rate = lwa_datatab-wkurs.
lwa_poheader-ex_rate_fx = lwa_datatab-kufix.
lwa_poheader-incoterms1 = lwa_datatab-inco1.
lwa_poheader-incoterms2 = lwa_datatab-inco2.
*Filling Purchase Order Header Data (Change Parameter)
lwa_poheaderx-SALES_PERS = v_true.
lwa_poheaderx-doc_type = v_true.
lwa_poheaderx-doc_date = v_true.
lwa_poheaderx-comp_code = v_true.
lwa_poheaderx-purch_org = v_true.
lwa_poheaderx-pur_group = v_true.
lwa_poheaderx-vendor = v_true.
lwa_poheaderx-currency = v_true.
lwa_poheaderx-pmnttrms = v_true.
lwa_poheaderx-exch_rate = v_true.
lwa_poheaderx-ex_rate_fx = v_true.
lwa_poheaderx-incoterms1 = v_true.
lwa_poheaderx-incoterms2 = v_true.
*Filling Item
lwa_poitem-po_item = lv_po_index.
lwa_poitem-material = lwa_datatab-matnr.
lwa_poitem-quantity = lwa_datatab-menge.
lwa_poitem-po_unit = lwa_datatab-meins.
lwa_poitem-net_price = lwa_datatab-netpr.
lwa_poitem-trackingno = lwa_datatab-bednr.
lwa_poitem-preq_name = lwa_datatab-afnam.
lwa_poitem-plant = lwa_datatab-werks.
lwa_poitem-tax_code = lwa_datatab-mwskz.
lwa_poitem-ret_item = lwa_datatab-ret_item.
lwa_poitem-po_price = '2'.
APPEND lwa_poitem TO lt_poitem.
*Filling Item Data (Change Parameter)
lwa_poitemx-po_item = lv_po_index.
lwa_poitemx-material = v_true.
lwa_poitemx-quantity = v_true.
lwa_poitemx-po_unit = v_true.
lwa_poitemx-net_price = v_true.
lwa_poitemx-trackingno = v_true.
lwa_poitemx-preq_name = v_true.
lwa_poitemx-plant = v_true.
lwa_poitemx-tax_code = v_true.
lwa_poitemx-ret_item = v_true.
lwa_poitemx-po_price = v_true.
APPEND lwa_poitemx TO lt_poitemx.
*Filling schedule line
lwa_poschedule-po_item = lv_po_index.
lwa_poschedule-delivery_date = lwa_datatab-eindt.
APPEND lwa_poschedule TO lt_poschedule.
*Filling Delivery Schedule (Change Parameter)
lwa_poschedulex-po_item = lv_po_index.
lwa_poschedulex-delivery_date = v_true.
APPEND lwa_poschedulex TO lt_poschedulex.
Filling Partner
IF lwa_datatab-lifn2 IS NOT INITIAL.
lwa_popartner-partnerdesc = v_partner_desc.
lwa_popartner-langu = 'EN'.
lwa_popartner-buspartno = lwa_datatab-lifn2.
APPEND lwa_popartner TO lt_popartner.
ENDIF.
Filling Conditions in Purchase Order
IF lwa_datatab-kbetr1 IS NOT INITIAL.
lwa_pocond-itm_number = lv_po_index.
lwa_pocond-cond_type = v_cond1_zvol.
lwa_pocond-cond_value = lwa_datatab-kbetr1.
lwa_pocond-currency = lwa_datatab-waers.
lwa_pocond-change_id = c_insert_flg.
APPEND lwa_pocond TO lt_pocond.
ENDIF.
IF lwa_datatab-kbetr2 IS NOT INITIAL.
lwa_pocond-itm_number = lv_po_index.
lwa_pocond-cond_type = v_cond2_zcdq.
lwa_pocond-cond_value = lwa_datatab-kbetr2.
lwa_pocond-currency = lwa_datatab-waers.
lwa_pocond-change_id = c_insert_flg.
APPEND lwa_pocond TO lt_pocond.
ENDIF.
Filling Conditions (Items, Change Parameter)
IF lwa_datatab-kbetr1 IS NOT INITIAL.
lwa_pocondx-itm_number = lv_po_index.
lwa_pocondx-cond_type = v_true.
lwa_pocondx-cond_value = v_true.
lwa_pocondx-currency = v_true.
lwa_pocondx-change_id = v_true.
APPEND lwa_pocondx TO lt_pocondx.
ENDIF.
IF lwa_datatab-kbetr2 IS NOT INITIAL.
lwa_pocondx-itm_number = lv_po_index.
lwa_pocondx-cond_type = v_true.
lwa_pocondx-cond_value = v_true.
lwa_pocondx-currency = v_true.
lwa_pocondx-change_id = v_true.
APPEND lwa_pocondx TO lt_pocondx.
ENDIF.
<removed by moderator>. Would really appreciate if someone helps.
Thanks,
Priyanka
Edited by: Thomas Zloch on Apr 1, 2011 2:16 PM - standard priorityhi Priyanka,
In the T-code WPOHF4D
the select query
SELECT ekkolifnr ekkoekorg ekgrp ekko~ebeln pohf_type
ekko~fixpo waers frgrl frgsx submi
ekkobsart ekkobstyp ekkobedat ekpowerks ekko~otb_status
netwr stapo menge ekpo~loekz "959448
APPENDING CORRESPONDING FIELDS OF TABLE lt_worklist_loop
FROM ekpo INNER JOIN ekko
ON ekkoebeln = ekpoebeln
WHERE ekko~ebeln IN it_ran_ebeln
AND ekgrp IN it_ran_ekgrp
AND ekko~ekorg IN it_ran_ekorg
AND ekko~bukrs IN it_ran_bukrs
AND matnr IN it_ran_matnr
AND ekpo~werks IN lt_ran_werks
AND ekko~lifnr IN it_ran_lifnr
AND bedat IN it_ran_bedat
AND ekko~fixpo IN it_ran_fixpo
AND pohf_type IN it_ran_pohf_type
AND bsart IN it_ran_bsart
AND submi IN it_ran_submi
AND ernam IN it_ran_uname
AND source_id IN it_ran_source_id
AND ekko~bstyp = c_po
AND ekko~bsakz <> c_bsakz_transfer.
is responsible for data fetching.
If u r not getting data and this query failing check it while debugging.
Thanks,
Gaurav. -
Delivery cost not created during GRN of PO using BAPI
I have a customized program which use BAPI - BAPI_PO_CREATE1 to create PO, PO was created successully.
then program will use BAPI - BAPI_PO_CHANGE to update condition pricing, which is also executed succesfully. all condition pricing (KONV) updated correctly.
Lastly, the program will use BAPI - BAPI_GOODSMVT_CREATE to create GRN and update delivery cost. However in my case, the delivery cost is not update, EKBZ table record is not created, as well as GRN item line table MSEG table is not updated with delivery cost.
Anyone face this type of problem before?What is the possible causes?
Any help and suggestion is greatly appreciated.Lai,
you should try asking this on ABAP forum thread. You will get a response. May be there is another BAPI u should use or may be you the usage of BAPI is incomplete. Pl confirm with ABAP forum.
Rgds -
Hi All
I am learning XI and the difference between " ALE, IDOC, RFC, BAPI, BADI "
Not clear and when to use what and how in point of XI ?
Pl..clarify me
Adv..thanks and points
--- Rakesh BeheraHi
This will expalin you every thing ...pl..go through
The interface concept of the classic R/3 is based on two different strategies: Remote Function Calls (RFC) and data exchange through IDoc message documents. RFC makes direct and synchronous calls of a program in the remote system. If the caller is an external program it will call an RFC-enabled function in R/3 and if the calling program is the R/3 system it will call an RFC-function in another R/3-system or it will call a non-R/3 program through a gateway-proxy (usually rfcexec.exe). BAPIs are a subset of the RFC-enabled function modules, especially designed as Application Programming Interface (API) to the SAP business object, or in other words: are function modules officially released by SAP to be called from external programs.
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.
The philosophical difference between EDI and ALE can be pinned as follows: If we send data to an external partner, we generally speak of EDI, while ALE is a mechanism to reliable replicate data between trusting systems to store a redundant copy of the IDoc data. The difference is made clear, when we think of a purchase order that is sent as an IDoc. If we send the purchase order to a supplier then the supplier will store the purchase order as a sales order. However, if we send the purchase order via ALE to another R/3 system, then the receiving system will store the purchase order also as a purchase order.
I hope this will help you to understand the difference bet..those
regards
--- prasad -
RFC or Bapi RFC ? to import RFC Adaptive Model - Is the same one or other?
Hi:
I want to know if is exactly the same to import a RFC not a (BAPI marked as RFC) to use the model, since I'm getting this error:
[Info]: Creating Model: PepueModel
[Info]: Creating Model Class: Z_Psim_Ngc_Pep_Ue_Input
[Info]: Creating Model Class: Z_Psim_Ngc_Pep_Ue_Output
[Error]: RFC Import Failed. The import has been terminated.
[Fatal]: com.sap.mw.jco.JCO$Exception: The function module "DD_DOMA_GET" not released for 'remote' calls.
[Fatal]: com.sap.ide.metamodel.importers.rfcmodel.RFCImportFailedException: RFC Import failed. Cause: class com.sap.mw.jco.JCO$Exception:The function module "DD_DOMA_GET" not released for 'remote' calls.
com.sap.mw.jco.JCO$Exception: (104) RFC_ERROR_SYSTEM_FAILURE: The function module "DD_DOMA_GET" not released for 'remote' calls.
at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeExecute(Native Method)
at com.sap.mw.jco.rfc.MiddlewareRFC$Client.execute(MiddlewareRFC.java:1221)
at com.sap.mw.jco.JCO$Client.execute(JCO.java:3691)
at com.sap.mw.jco.JCO$Client.execute(JCO.java:3136)
at com.sap.mdi.ddtypes.DDFactory.execute(DDFactory.java:173)
at com.sap.mdi.ddtypes.DDFactory.execute(DDFactory.java:164)
at com.sap.mdi.ddtypes.DDDomain.<init>(DDDomain.java:45)
at com.sap.mdi.ddtypes.DDDataelement.<init>(DDDataelement.java:59)
at com.sap.mdi.ddtypes.DDFactory.analyseJCOReturn(DDFactory.java:451)
at com.sap.mdi.ddtypes.DDFactory.getDDObject(DDFactory.java:434)
at com.sap.mdi.ddtypes.DDFactory.getDDObject(DDFactory.java:372)
at com.sap.mdi.ddtypes.DDFactory.getDDObjectWithSubtree(DDFactory.java:262)
at com.sap.mdi.RfmParameter.getDDObject(RfmParameter.java:602)
at com.sap.dictionary.types.mdi2metamodel.R3ToMetamodelDictionaryConverterWithNestedStructures.getDdicObject(R3ToMetamodelDictionaryConverterWithNestedStructures.java:206)
at com.sap.ide.metamodel.importers.rfcmodel.DynamicRFCModelImporter.ImportRFC(DynamicRFCModelImporter.java:341)
at com.sap.ide.metamodel.importers.rfcmodel.DynamicRFCModelImporter.doImport(DynamicRFCModelImporter.java:196)
at com.sap.ide.webdynpro.modeleditor.wizards.model.creation.ModelWizard$3.run(ModelWizard.java:706)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:101)
The tutorial:
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/11/e2bc3d9ecc6b3be10000000a114084/frameset.htm">click here</a>
says "not-released function modules with a yellow icon."
My RFC (NOT BAPI MARKED AS RFC) is display with a yellow icon.
Searching the error <b>"DD_DOMA_GET" not released for 'remote' calls</b> I found the SAP note: 717836, it says <b>The function module DD_DOMA_GET should be changed to remote-enabled.</b> Where Should I find this function? I guess that is at the R3 System, what should I do to make it remote-enabled?. The other note I found was the SAP note 672745. But I really don't know it those notes apply to my problem.
What is the meaning of: <b>not released</b>? what should be done to make it <b>RELEASE</b>?.
Who made it told me that can't make me a BAPI to bring me the data, he only can do a RFC to get the list I need. The RFC (NOT BAPI MARKED AS RFC) was tranported and can be executed without any problem inside the R3 4.6
The RFC has a parameter, but I think that at import time it doesn't care.
Thanks for the time and interest on this thread.Rodrigo:
The yellow or green icon it doesn't have to be if its a RFC or BAPI, it have to be with the release state of the function (BAPI or RFC, in this case seems to be the same).
This is the documentation abut it (it's at my original post too) see: http://help.sap.com/saphelp_nw04/helpdata/en/11/e2bc3d9ecc6b3be10000000a114084/frameset.htm
Hope it helps you -
Dear Experts ,
I am searching the BAPi for purchase requisition create for enjoy transaction ( ME51N ) . I have found the BAPi "BAPI_PR_CREATE" .
But I am using it at SAP ECC 4.6 so here it is giving error that BAPi doesn't exist .
Suggest me.........
Thanks
AlokHi Alok,
I do not think that there is any BAPI to support enjoy PR transactions. I checked SAP note and found one note for PR BAPIs (SAP note - 499627).
Please check link below:
https://service.sap.com/sap/support/notes/499627
1. Question:
Can I use BAPI_REQUISITION_CREATE to set the fixed indicator?
Answer:
You cannot use the BAPI BAPI_REQUISITION_CREATE to set the fixed indicator.
When the BAPI BAPI_REQUISITION_CHANGE is used to make changes, the system sets the fixed indicator automatically only if the purchase requisition originates from requirements planning.
For more information, refer to Note 330206.
1. Question:
Can the BAPIs of the purchase requisition with the "CreateFromData1" and "Change" methods cover all of the functions of the EnjoySAP purchase requisition (transactions ME51N and ME52N)?
Answer:
The function modules BAPI_REQUISITION_CREATE and BAPI_REQUISITION_CHANGE do not cover all of the functions of the EnjoySAP purchase requisition transactions. This is because the two asynchronous BAPIs have been developed based on ME51 and ME52 (program SAPMM06B). The user exits from the function group MEREQ (for example, MEREQ001) are therefore not available.
In SAP R/3 Release 4.70, two new API methods are developed that are based on the EnjoySAP technology of the purchase requisition transactions ME51N and ME52N. The function modules BAPI_PR_CREATE and BAPI_PR_CHANGE are released in Release 6.00 (ERP2005).
SAP does not provide support for this because these function modules have not been released for Releases lower than 6.00. If you use these BAPIs in customer-defined programs, you must bear in mind that you are responsible for any problems that might occur. In addition, you must read Notes 109533 and 415983.
A downport to a release lower than 4.70 is not provided because developing this would involve considerable time and effort.
1. Question:
Can BAPI_REQUISITION_CHANGE process the customer enhancements ExtensionIn?
Answer:
See Note 584902.
1. Question:
Can service items be created using BAPI_REQUISITION_CREATE or changed using BAPI_REQUISITION_CHANGE?
Answer:
No, this is only possible with the new API functions for the object BUS2105. See the following point.
Hope that helps!
Regards,
Saba
Edited by: Saba Sayed on Feb 17, 2011 5:40 PM -
Hello Masters,
What Makes the exact difference between RFC and BAPIs. Both can perfom same thing. BAPI uses the RFCs only. Then how can it justify?
Thank youRFC:
RFC --- > Function module and general will be used to make call to function
sending the function (XI has RFC adapter)
BAPI:
BAPI ---> Other version of RFC (Objected oriented) mostly we will use for Sync
calls (Mostly in XI using proxies we will call BAPI's)
Refer these links for more details:
http://sapabap.iespana.es/sapabap/sap/faq/ale_idocs_bapi.htm
http://www.sap-img.com/fu033.htm
BAPI Vs IDOC - in detail
http://searchsap.techtarget.com/tip/1,289483,sid21_gci824860,00.html
/thread/127699 [original link is broken]
IDOC,RFC,BAPI
Re: When and Why we use BAPI, RFC and IDOC.. in XI
Diff... between ALE, IDOC, RFC, BAPI, BADI --- Not clear and clarify
idoc and bapi
Difference among IDOCS,BAPI,RFC?
http://searchsap.techtarget.com/ateQuestionNResponse/0,289625,sid21_cid558752_tax293481,00.html
Differences Between RFC & BAPIS
RFC Vs BAPI
For more details:
refer this thread.
What are idocs, BAPI, RFC?
BAPI is nothing but the Business process programing interface which are standard and stable and these are store in the business object repository.
Standardized programming interface that enables external applications to access business processes and data in an SAP System
RFC is the remote function call which is used to call the function remotely which may be in same system or ather system
its also used communication between SAP systems , between SAP systems ,external systems.
idoc and bapi
Difference among IDOCS,BAPI,RFC?
http://searchsap.techtarget.com/ateQuestionNResponse/0,289625,sid21_cid558752_tax293481,00.html
Differences Between RFC & BAPIS
RFC Vs BAPI
http://www.sap-img.com/abap/ale-bapi.htm
RFC means remote function call,
these are the function modules which can help u to access across the sap and from sap to third party front end,
BAPI means Business application programing interface which is the RFC enable function module and uses in OOPS concept.
RFC ,IDoc and BAPI
ALE/ IDOC
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://www.sap-img.com/abap/interview-question-on-bapi-rfc-abap-objects-tables.htm
This is a short description of BAPI and RFC
BAPI stands for Business Application Programming Interface. It is a library of functions that are released to the public as an interface into an existing SAP system from an external system.
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. -
Unable to differentiate between RFC and BAPI
Hi guys,
Nowadays I am studying the above concepts:BAPI and RFC. But I am confused by the two.
So far I learnt that the two are both techniques used to realize communication between SAP and external
systems,and frequently via Remote-enabled Function.
My confusion is the distinctions between the two. Would you please do me a favor? TksHi Alex,
Just check it out these answers.
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.
another points,
BAPI is object oriented. It is placed under Business objects as methods.
RFC is just a Function module or a call.
RFC: is just a FM that can be called from remote system too(destination defined in transaction SM59).
BAPI: Business Application Programming Interface
A BAPI is a method of a business object defined in the Business Object Repository (BOR). For example, in the BOR, you can find a business object called SalesOrder, which conceptually represents a sales order in the system. A business object typically has several methods that can be used to read, create, modify a particular instance of the business object, or list instances of the business object matching certain selection criteria. These methods are BAPIs.
Technically, a BAPI is implemented using a RFM. But, unlike the non-BAPI RFMs, a BAPI is usually well documented, has nicer parameter names, and is supported by SAP for several SAP software releases. You can browse Business objects and BAPIs in the SAP system using transaction BAPI.
Thanks
Eshwar
*Rewards if useful* -
hi
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.
BAPI stands for Business Application Programming Interface. It is a library of functions that are released to the public as an interface into an existing SAP system from an external system.
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.
In other words: A BAPI function is a function module that can be called remotely using the RFC technology.
bye -
Hi Eperts,
Would you please tell me the difference between the two,because I learnt that BAPI is a kind of RFC,I'm not sure whether it is right or not.Hi,
RFC Vs 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 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.
Reward if it useful...
Lakshmi. -
Bapi's for creating Maintenance order in IW31 with notification
Hi All,
Is there any bapi's for creating Maintenance order with Notification number in the transaction iw31.
Also is there any bapi's for creating measurement document.
Points will be awarded.
Regards,
vinothRFC MeasDocument: Individual Processing, Create
MEASUREM_DOCUM_RFC_SINGLE_001
RFC MeasDocument: Individual Processing, Change/Display or Read
MEASUREM_DOCUM_RFC_SINGLE_002 -
RFC or BAPI for fb03 transaction call
When you execute the fb03 transaction call in SAP GUI, you got a screen asking you to enter Document number, company code, Fiscal year.
I'm trying to create a web dynpro application that does the same as fb03.
Is there an RFC or BAPI that takes the same set of parameters and return same results.Hi Adel,
Welcome to SDN.
Please try this FM/BAPI.
<b>FI_DOCUMENT_DISPLAY_RFC</b>
<b>BAPI_ACC_DOCUMENT_DISPLAY</b>.
Hope this will help.
Regards,
Ferry Lianto
Maybe you are looking for
-
ITunes 10.4 removed spacebar pause for audio playback. WHY??
Before iTunes 10.4 I could just tap the spacebar to pause and play audio, now when I tap it it jumps backwards one track. You can see that the Back button is highlighted. Is there a workaround for this?
-
BAPI : CHANGE Assignment OF FI DOCUMENT (FB02)
I want change Assignment of a document , Is there any BAPI or FM to do it ? help please ! THS
-
Server command window disappears after running
Hi, I have been having major problems with BEA weblogic. I'm just trying to run samples from their book and I got things to work using version 6.1 which I downloaded from the site but when it came to Entity Beans, the sample wouldn't work. So I insta
-
Trouble Forwarding HTML Messages with Entourage
I use Entourage for email at home. Occasionally, I would like to be able to forward an email message to someone and keep the original HTML format intact. I have my preferences set to reply to messages in whatever format they were sent. For some reaso
-
BAPI/LSMW/BDC/ALE-Idoc-Best One
Hi Folks, What would be the best method to migrate master and transactional data.(One time upload). I am suggesting BAPI as we have internal thirdparty RFC calls while creating masterdata.(I guess we wouldnot get this RFC calls in recording). I gone