BAPI Upgradation
BAPI's can work for upgradation ....what it means?
What is the use of exception in BAPI's?
hi
good
go through link, which ll give you idea about the BAPI upgradation.
>
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.
EXCEPTIONS IN BAPIS->
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/3795 [original link is broken] [original link is broken] [original link is broken] [original link is broken]
THANKS
MRUTYUN^
Similar Messages
-
Obsolete BAPI changes SCM Upgrade
Hi All,
we are working on SCM upgrade 7.0.There are obsolete BAPI's which at used needs to be repalced by new bapi's.
but the structure of two is different, few fields are not available in new BAPI.Specifically Quota BAPI : BAPI_QTASRVAPS_SAVEMULTI (partner location, plan_number,partner type fields are missing ) and BAPI_MOSRVAPS_SAVEMULTI2 (is_master flag is not available) bapi.
Pls tell me the way to map the two.
Thanks,
shrutiHi,
Have you checked upgrade guide in SAP service marketplace:
Installation & Upgrade Guides
-> SAP Business Suite Applications
-> SAP SCM
-> Using SAP enhancement package 3 for SAP SCM Server 7.0
-> SAP SCM 7.0 EHP 3 Upgrade Master Guide
It should help.
BR -
SAP GRC RAR 5.3 SP9 "Cannot execute BAPI UserList"
Hi everyone,
After upgrading to 5.3 SP9, my client started experiencing some problems with RAR. I doubt it's linked to the upgrade, since I did all the testing and results were as expected. The problem is as follows:
Using RAR, for only one specific system (SAP ECC6 box), when running foreground AND background analysis for USERS, all analysis fails with the following error log (see below message). All ROLE analysis work as expected (SOD and critical actions/autorisations).
In the configuration tab, the connexion test is successful. I did some testing with a BASIS from the client and we identified that when running a successful analysis, we could log a RFC connection to the backend system (dont recall the transaction used though). When the analysis failed, no connexion was logged.
The client's GRC admin opened a ticket with SAP, but I was wondering if the collective knowledge of SDN could maybe help us identify the cause of our problems.
Any solution path is welcome
Kind regards
Jerome Fortin
========================================================================================
Jan 18, 2010 2:19:09 PM com.virsa.cc.xsys.riskanalysis.AnalysisEngine performActPermAnalysis
INFO: Foreground : Analysis starts: XL1360
Jan 18, 2010 2:19:09 PM com.virsa.cc.comp.VirsaXSR3_01Interface execute
WARNING: VIRSAXSR3_01: Cannot execute BAPI UserList
java.lang.ArrayIndexOutOfBoundsException
at com.sap.mw.jco.JCO$MetaData.getType(JCO.java:10211)
at com.sap.aii.proxy.framework.core.JcoBaseTypeData.getElementValue(JcoBaseTypeData.java:503)
at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClass.getRelatedModelObjects(DynamicRFCModelClass.java:787)
at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClass.addRelatedModelObject(DynamicRFCModelClass.java:821)
at com.virsa.cc.common.ModelNodeUtil._copyNodeTreeToModel(ModelNodeUtil.java:68)
at com.virsa.cc.common.ModelNodeUtil.copyNodeTreeToModel(ModelNodeUtil.java:52)
at com.virsa.cc.comp.VirsaXSR3_01Interface.execute(VirsaXSR3_01Interface.java:267)
at com.virsa.cc.comp.wdp.InternalVirsaXSR3_01Interface.execute(InternalVirsaXSR3_01Interface.java:1341)
at com.virsa.cc.comp.wdp.InternalVirsaXSR3_01Interface$External.execute(InternalVirsaXSR3_01Interface.java:1376)
at com.virsa.cc.comp.BackendAccessInterface.executeBAPIModel(BackendAccessInterface.java:3415)
at com.virsa.cc.comp.BackendAccessInterface.execBAPI(BackendAccessInterface.java:409)
at com.virsa.cc.comp.BackendAccessInterface.executeBAPI(BackendAccessInterface.java:302)
at com.virsa.cc.comp.wdp.InternalBackendAccessInterface.executeBAPI(InternalBackendAccessInterface.java:4227)
at com.virsa.cc.comp.BackendAccessInterface.searchUser(BackendAccessInterface.java:758)
at com.virsa.cc.comp.wdp.InternalBackendAccessInterface.searchUser(InternalBackendAccessInterface.java:4279)
at com.virsa.cc.comp.wdp.InternalBackendAccessInterface$External.searchUser(InternalBackendAccessInterface.java:4748)
at com.virsa.cc.dataextractor.bo.DataExtractorSAP.searchUser(DataExtractorSAP.java:548)
at com.virsa.cc.dataextractor.bo.DataExtractorSAP.userIsIgnored(DataExtractorSAP.java:529)
at com.virsa.cc.xsys.meng.MatchingEngine.getObjActions(MatchingEngine.java:702)
at com.virsa.cc.xsys.meng.MatchingEngine.matchActRisks(MatchingEngine.java:121)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.performActPermAnalysis(AnalysisEngine.java:1344)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:311)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:240)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:237)
at com.virsa.cc.ui.UserSelection.onActionExecute(UserSelection.java:634)
at com.virsa.cc.ui.UserSelection.onActionConfirmExecute(UserSelection.java:1858)
at com.virsa.cc.ui.wdp.InternalUserSelection.wdInvokeEventHandler(InternalUserSelection.java:1287)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:332)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:741)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:694)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:253)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:219)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
Jan 18, 2010 2:19:09 PM com.virsa.cc.xsys.meng.MatchingEngine matchActRisks
WARNING: Error :
com.virsa.cc.dataextractor.dao.DataExtractorException: Impossible d'extraire les donn?es du syst?me (P01R3S010) ; pour plus d'information, reportez-vous ? ccappcomp.n.log
at com.virsa.cc.dataextractor.bo.DataExtractorSAP.searchUser(DataExtractorSAP.java:551)
at com.virsa.cc.dataextractor.bo.DataExtractorSAP.userIsIgnored(DataExtractorSAP.java:529)
at com.virsa.cc.xsys.meng.MatchingEngine.getObjActions(MatchingEngine.java:702)
at com.virsa.cc.xsys.meng.MatchingEngine.matchActRisks(MatchingEngine.java:121)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.performActPermAnalysis(AnalysisEngine.java:1344)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:311)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:240)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:237)
at com.virsa.cc.ui.UserSelection.onActionExecute(UserSelection.java:634)
at com.virsa.cc.ui.UserSelection.onActionConfirmExecute(UserSelection.java:1858)
at com.virsa.cc.ui.wdp.InternalUserSelection.wdInvokeEventHandler(InternalUserSelection.java:1287)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:332)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:741)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:694)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:253)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:219)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
Jan 18, 2010 2:19:09 PM com.virsa.cc.xsys.riskanalysis.AnalysisEngine riskAnalysis
WARNING: Foreground : Failed to run Risk Analysis
java.lang.Exception: Impossible d'extraire les donn?es du syst?me (P01R3S010) ; pour plus d'information, reportez-vous ? ccappcomp.n.log
at com.virsa.cc.xsys.meng.MatchingEngine.matchActRisks(MatchingEngine.java:127)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.performActPermAnalysis(AnalysisEngine.java:1344)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:311)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:240)
at com.virsa.cc.xsys.riskanalysis.AnalysisEngine.riskAnalysis(AnalysisEngine.java:237)
at com.virsa.cc.ui.UserSelection.onActionExecute(UserSelection.java:634)
at com.virsa.cc.ui.UserSelection.onActionConfirmExecute(UserSelection.java:1858)
at com.virsa.cc.ui.wdp.InternalUserSelection.wdInvokeEventHandler(InternalUserSelection.java:1287)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:332)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:741)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:694)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:253)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:219)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)Yes, I am aware there might be an issue with the BAPI USER list execution, it is pretty excplicit in the message.
I was wondering if anyone has seen this error before and if someone can help me trace the source of the error. A message was already open with SAP before christmas and no solution was identified at the moment.
Impossible d'extraire les donn?es du syst?me (P01R3S010) ; pour plus d'information, reportez-vous ? ccappcomp.n.log at com.virsa.cc.dataextractor.bo.DataExtractorSAP.searchUser(DataExtractorSAP.java:551) at
This can be translated to: Cannot extract data from the system P01, for more information look at the log file xxxx..
Edited by: Jerome Fortin on Jan 19, 2010 9:15 AM -
Changes in ECC50 BAPI Structures
Hi,
I am working in upgrade project (46C to ECC50), I would like to know what are the BAPIs changed like structures added to BAPI or deleted some of the fields or added some of the fields in the structures.
Please let me know if any SAP tool or good way to find differences.
Thanks,
Kiran.Ernest,
Choose Tools --> Options --> Compiler.
In Data Service Retrieval combo box
choose Donot cache data service get latest.
Log off from your model.
log on again and goto the context menu of your bapi.
then choose Define data Service your import parameters should appear now.
Regards,
Ahmed Salah
Please reward points if this is helpful -
SLD in R/3 4.6C and WebDynPro calling BAPI from EP7.0 to 4.6C
Hi,
First let's describe the landscape :
- EP7.0
- R/3 4.6C
Second, the goal : I want to do WebDynpro that will communicate with the R/3 4.6C.
To achieve that, a EP7.0 (based on NW2004s SR2 that was "upgraded" to SPS10) was recently installed.
No problem with this one. The SLD server (local server) is installed on this portal.
As there is no gateway on the portal, I took the gateway of the R/3 4.6C for the SLD server.
The ABAP system was created manually in the SLD server.
I then created the two JCo and it seemed to work fine (as least the tests were OK)
When I created a WebDynPro that I published on the portal I was able to retreive the BAPI of the R/3 server, I was able to send him my requests but I received nothing from the R/3.
I also noticed when I tried to configure SLD in the R/3 that the tcode SLDCHECK, SLDAPICUST were not present. Do you need a defined SP level to be able to run them ? Are they important for my use ?
The question is : is my configuration wrong (SLD...) or is my Java code in the WebDynpro wrong ?
TIA,
Denis.Raghav,
The most common reason for this error is exactly what it says, you have somehow overlooked including a material/plant in a PR IM.
Go into the failed queue, find all material/plants that exist in the failed LUW. Enter these one by one into CFM5 in R/3. You should have one and only one active model for each of these materials. Inactivate all but one IM if there are multiple PR models active.
If this PR is for a STO, then you must have open active IMs for both the source and destination plant materials.
Now, you say that in SCM you cannot select the models, this means that they are not active and valid. If you can find the model in R/3, but Delta3 can't find it, it implies that there is some type of error with connectivity, perhaps in your system destination definitions. Wrong RFC connection name, wrong server id, wrong client, etc in SM59. Or, wrong logical system name. Check these on both sides.
More unlikely, but also possible, check is for inconsistencies in the IMs. In R/3, run RAPOKZFX. Regenerate your IM runtimes with RCIFIMAX.
Finally, it is possible that you have userexits that are impacting the CIF. Talk to your developers to see if any have been activated.
Best Regards,
DB49 -
Database Connection Error:BAPI Error #0
I have a problem when I preview a report in Crystal Reports 2008 using BW MDX Query I had recieved the following messages:
1.Failed to retrieve data from database
and then when I click ok
2.Database Connection Error:BAPI Error #0
Error occurred when starting the parser:timeout during allocate / CPIC-CALL'ThSAPCMRCV'
I copied the query of crystal report and I execute it inside the transaction of mdxtest
SELECT NON EMPTY EXCEPT([0CALMONTH].MEMBERS, {[0CALMONTH].[All]}) ON ROWS FROM [USD_SD_C0/RPT_1] SAP VARIABLES [!V000001] INCLUDING [0CALMONTH].[200401]
I found the debugger had stopped in the line Break when I click on F8
I recieve the following error
Error occurred when starting the parser: timeout
during allocate / CPIC-CALL: 'ThSAPCMRCV'
Please anybody can help meDear Ingo
I had read this note
I applied the following:
1.I didn't found the lrfc32.dll in the windows/system32 in my BW server so I asked my basis administrator to upgrade the kernel
2.after this step I didn't find it again so I had copied the file from the new kernel and copied it to system32 and sysWow
3.I register successfuly the lrfc32.dll using the commanf regsvr c:/windows/system32/lfrc32.dll
(note: this step didn't succeed until I had installed SAP GUI in BW server because as I observed that there is a need for C++ compiler which is installed by default when you install GUI)
after all of this I cannot run any crystal report based on any BW query
So Please anyboday can help -
Upgrade batch inputs from 4.6C to mySAP ERP 2005
Hi,
we are planning to upgrade from 4.6C to mySAP ERP 2005 (ECC 6.0). We are using batch input/call transaction in various (interface) programs (primarily in modules SD, MM, CS/SM, FI, CO). I would be grateful for any information that helps to estimate the effort to upgrade our batch input code. In which areas/modules/transactions did you encounter problems with batch inputs? How severe were these problems (one or two fields moved to another screen, or major redesign)? How did you address these problems (change BI or convert code to use BAPI)?
Thank you
ThomasHi thomas,
we were working on batch input's and our scenario is something like convertion of bdc's from 4.5b to ECC5. well, it was a long process of upgradation. and coming to the part of BDC's
Q) any information that helps to estimate the effort to upgrade our batch input code.
we had 300 BDC's to convert from 4.5b to ECC5 and with a ten member team of ABAP experts it took us 30 working days to complete the process.
Q) In which areas/modules/transactions did you encounter problems with batch inputs?
Mostly, we had problems from FI and something like in Revenue recognition process. The problems comes, when the whole transactions screens changes for the process. at this time we have to write completly a new BDC's. if we have right functional specifications and functional experts, it will be easy to convert BDC's.
Q) How severe were these problems (one or two fields moved to another screen, or major redesign)?
As i have mentioned, out of 300 almost 25 to 50 were minor changes rest were huge changes. a completely new BDC's. the point here is, we were updating from 4.5b to ECC5. it might not be this scenario for 4.6c to ECC5
Q) How did you address these problems (change BI or convert code to use BAPI)?
well, this is were we are curently working now. and curently there are 4 scenarios (and may be more in the future) were we have to replace three BDC's which are used for material master creation and make it into one bapi satisfying all the conditions of BDC's. actually, we have to find a BAPI( which i couldn't find) so, i have created a bapi. and tougher part is writing exceptions as we cannot write exceptions as we do in function module.
hope this is relavent to what you have asked.
cheers
ajay -
Problem in BDC for VA01 transaction TEXTS tab(Upgrading from 4.5b to ECC6)
Hi All,
I am working in upgrade project from 4.5b version to ECC6 version.
I am facing problem in TEXTS tab of VA01 transaction. In earlier version it is a table control containing of Language, Description & First line but, in ECC6 the screen is modified with texteditor, a list box for language key and a Text type at the left.
Now my problem is how to record this in BDC and how to read the text in the texteditor?
Thanks in Advance,
Ravi Kiran.Hi Seshagiri,
In this case i would suggest the use of BAPI if there's no compulsion to use BDC.
BAPI_SALESORDER_CHANGE Sales order: Change Sales Order
BAPI_SALESORDER_CONFIRMDELVRY
BAPI_SALESORDER_CREATEFROMDAT1 Sales order: Create Sales Order
BAPI_SALESORDER_CREATEFROMDAT2 Sales order: Create Sales Order
BAPI_SALESORDER_CREATEFROMDATA Create Sales Order, No More
BAPI_SALESORDER_GETLIST Sales order: List of all Orders for Customer
BAPI_SALESORDER_GETSTATUS Sales Order: Display Status
BAPI_SALESORDER_SIMULATE Sales Order: Simulate Sales Order
try using these for creation or change of orders instead of bdcs.
hope this helps and revert for more clarifications if any.
<b>Always reward points to useful suggestions.</b>
regards,
Vikas -
Impact of upgrading SAP 4.6C to ECC6.0 to Java application
Hi,
Currently, my Java application is:
1. using SAP 4.6C as backend
2. using Java 1.4
3. using SAP Enterprise Connector in SAP Netweaver Developer Studio 7.0.15 to generate the BAPI proxies
4. using JCo 2.1.8
If now the backend SAP system is going to be upgraded from 4.6C to ECC6.0, will there be any changes required on my Java application i.e.
1. Is the BAPI proxies generation process with SAP Enterprise Connector remain unchanged?
2. Are the BAPI structures remain the same that do not require any Java code change when calling BAPI?
3. Is the JCo version remains unchanged?
4. Is there any Java code changes required?
Thanks!Hi,
1. Is the BAPI proxies generation process with SAP Enterprise Connector remain unchanged?
Yes. No change required except minor changes.
2. Are the BAPI structures remain the same that do not require any Java code change when calling BAPI?
Well you will have to check if the BAPI import/export/tables/changing parameters have undergone any change. If not then no change required.
3. Is the JCo version remains unchanged?
Yes. This shouldnt be an issue.
4. Is there any Java code changes required?
Well if your 4.6c system was non-unicode, ECC 6.0 would be unicode. So the RFC where you would have mentioned that a Unicode(java) system is interacting with Non-unicode(4.6c) system will require a change. This is applicable to both RFC's in SAP & Java.
Thanks,
Best regards,
Prashant -
BW Upgrade "Execute the conversion programs for the product master "
Hi BW Gurus,
We are in the process of upgrading BW 3.5 to BW 7.0. We did not get any conversion error in BW Dev but in BWQ we got error in one of ABAP program. The error message in log is :-
"Value '######' of characteristic 0TIME is not a number with 000006 spaces"
and job pertaining to the program is canceled in SM37.
My question is, are we suppose to run any conversion program before or after the upgrade?
Warm Regards,
AnilHi Chandu,
I am also looking for the same if u have fond a bapi for any other program please forward the information.
Thanks & Regards,
Basheer -
In LSMW, what is diff between LSMW-BAPI and LSMW-IDOC
hello all
In LSMW, what is diff between LSMW-BAPI and LSMW-IDOCHi Swamy,
The differences between IDoc and BAPI are as follows:
IDOC
IDocs are text encoded documents with a rigid structure that are used to exchange data between R/3 and a foreign system.
Idocs are processed asynchronously and no information whatsoever is returned to the client.
The target system need not be always online. The IDOC would be created and would send the IDOC once the target system is available (tRFC concept). Hence supports guaranteed delivery.
With asynchronous links the sub-process on the client can be finished even if the communication line or the server is not available. In this case the message is stored in the database and the communication can be done later.
The disadvantage of asynchronous links is that the sub-process on the server cannot return information to the calling sub-process on the client. A special way for sending information back to the client is required. In addition, a special error handling mechanism is required to handle errors on the receiving side.
IDOCs may be more changeable from release to release.
IDOCs are poorly documented.
BAPI
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.
BAPIs are called synchronously and (usually) return information.
For BAPIs the client code needs to do the appropriate error handling.
Problems with synchronous links occur if the communication line or the server is temporarily not available. If this happens, the sub-process on the client cannot be finished (otherwise there would be data inconsistencies).
Synchronous links have the advantage that the sub-process on the server can return values to the sub-process on the client that has started the link.
BAPIs are not totally immune to upgrades.
BAPIs are reasonably well documented.
Reward points if useful.
Best Regards,
Sekhar -
Upgrade 4.7 to ECC 6.0 : Batch input
Hello,
We have an upgrade project from R3 4.7 to ECC 6.0.
I'm looking for information regarding SAP technical advise for interfaces, data update, data creation.
We use batch input. Does this technic still available in ECC 6.0 ? Should we use Idoc, BAPI ?
I need also some advise regarding performance, monitoring...
Are transactions like MB01, VL01 still available ?
Rgds
GillesHi Gilles,
batch input in ECC60 stil available
please look at the online dokumnetation:
http://help.sap.com/erp2005_ehp_03/helpdata/EN/37/a9b0588c884843a1e489ea450a2fef/frameset.htm
the transactions mentioned by you are available in ECC60
I think it is worth reading the online documentation
under
help.sap.com.
Kind regards
Imre Takácsi-Nagy
Senior Support Consultant II.
SAP Global Support Center Austria
Netweaver WEB Application Server ABAP / JAVA -
Standard BAPI or Function Module for FB01posting
Hi Experts,
My requirement is as follows.
Invoice details would be sent across from Middleware to SAP and for which I have developed a Custom Remote Enabled Function Module. The Function Module needs to post the data using FB01 Transaction.
I had planned for recording a BDC for FB01 and post the data, however, we are on the verge of getting upgraded from 4.7 to ECC 6.0. To avoid problems that we might face for change of screens in ECC 6.0, I would prefer using a BAPI or Function Module for FB01 posting, if available, instead of BDC.
Data coming from Middleware are as follows.
HEADER:
BKPF-BLDAT : Document Date
BKPF-BUDAT : Posting Date
BKPF-XBLNR: Reference (Invoice#)
BKPF-BLART : Document Type
BKPF-BUKRS : Company Code
BKPF-BKTXT : DocHeader Text
BKPF-WAERS : Currency
LINE ITEM:
BSEG-LIFNR : Vendor no
BSEG-WRBTR - Total amt -Debit/Credit -Vendor
BSEG-ZUONR : Assignment field
BSEG-EMPFB : Alternative Payee
BSEG-UZAWE : Payment Method Supplement
BSEG-ZTERM : Pmt terms
BSEG-KOSTL : Costcenter
BSEG-HKONT : GL AccountNumber
BSEG-WRBTR : Amount for GL
BSEG-SGTXT : Line item text
The Vendor Line Item would be one where as GL line items could me more than one.
Can any of you suggest me a standard BAPI or Func Mod?
Points will be awarded for valuable inputs.
Thanks to all!!!!You can use RFBIBL00 program for FB01 postings. Go through the program help on how to use this program.
This program requires a file to be on application server in a certain format.
You may also refer the program RFBIBLT0 on how the file format should be.
Hope this helps.
Thanks,
SKJ -
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> -
Difference between BAPI and IDocs
hello all
what is difference between BAPI and IDocsHi,
BAPI
One of the big plusses for BAPIs is that the interface and function are not supposed to change. This is a big plus when you do upgrades or hot packs because the transaction can change (format, required inputs etc) which means you then need to update the call transaction.
Some of the BAPIs are better documented and easier to use than others. You usually need to perform the BAPI that actually does the COMMIT after you call your BAPI.
The Program coding for calling a BAPI is usually cleaner than setting up the screen flow etc for the Call Transaction.
You don't need to worry about special data circumstances interrupting the normal data flow of the screens and causing errors because of that.
BAPIs probably have better performance since they don't do the screen flow processing.
In general if the BAPI exists for the transaction you want to perform and you can figure out how to use it the BAPI is probably the best way to go.
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.
IDOC
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.
Regards,
Bhaskar
Maybe you are looking for
-
SQL to register custom Interface
Steps to register a custom interface are given below. 1) Assign iSetup super user role. 2) Create Function 3) Create Menu 4) Create Grant 5) Register Interface. Since it consumes good amount some time, it may not be required in development or UT envi
-
How can I avoid showing auto-mounted drives of other logged in users on my desktop?
For both me and my wifes profile on our MBP running OSX Lion I added a shared volume to the login actions (System Preferences - Accounts - [User] - Login). However when we are both logged in, her personal and my personal share are shown on both our d
-
I am in the process of setting up separate icloud accounts for my husband and me (whereas we previously shared one). We both want read/write access to a single address book across all devices (desktop, laptop, ipad, two iphones), which we've been ab
-
Programatically copying text to the clipboard
Short: I need to programatically copy a string of text from either a variable or a hidden control field to the clipboard. Long: We have a requirement to allow the user to 'pop-up' a list of frequently used words, select one from the list and have it
-
Is it possible to erase the existing data on a time capsule and start over?
The licensing agreement for the time capsule allows a one time transfer of the product and I have the opportunity to get a lightly used one from a friend but can find no information on erasing existiong data and starting over. Can it be done?