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,
    shruti

    Hi,
    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 me

    Dear 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
    Thomas

    Hi 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,
    Anil

    Hi  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-IDOC

    Hi 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
    Gilles

    Hi 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 IDocs

    Hi,
    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