RFC BAPI execution authorizations.

Hi all.
In my company development teams are trying to use SAP RFC connections in order to connect it's .NET, java, etc applications. They need a sap user to establish the connection and I don't know what authorizations (objects) I need to put in their roles in order to allow the connection estrictly to the BAPIs the need to use.
I used to put transactions on a role, but with BAPIs and function modules I don't know how to proceed. I need to create a transaction for every BAPI or FM they need?.
Thanks in advance for your help.

Rolls-Royce solution:  Create a test frame in SE37 and execute the BAPI(s) in sequence with an ST01 trace on providing only the import parameters which you want to use and activate in them. This will influence the checks performed, so just looking in the code is not enough...
Then maintain SU24 for the BAPI (not a transaction code!) and add the BAPI to the role menu (ignore S_DEVELOP and the other usual red-herrings in the trace).
BAPIs by definition should never make an S_TCODE authority-check so you should never need to grant any.
Cheers,
Julius

Similar Messages

  • RFC/BAPI Exception in PI 7.0

    Hi there,
      currently we have a scenario where the message come from middleware and pass through PI to POSDM system via RFC.
    my target structue is an BAPI .
      for some reason if the BAPI execution gets failed on POSDM system then the BAPI should return some exception back to PI system,
      can this be achived only by just adding the fault message type (ExchangeFaultData) in Inbound MI, whill this setting sufficient to get any error info from BAPI to PI via rfc, or do we need to do some exception mapping? if so can some one explain/

    Monika,
    RFM that pretends to be a BAPI has to follow a few strict rules. Some of them are :
    - BAPI is called always synchronously and are always successful i.e. errors are returned in EXPORT parameter (so  no matter if BAPI created some document/posting or not is successful!)
    - it does not return exceptions!
    so you should not advise to make use exceptions ...  otherwise it will not be a BAPI
    The one of possible solution is to wrap BAPI either using proxy or RFM and then you can propagate exceptions to SAP PI.
    /Jakub

  • Scenario File to RFC (BAPI): BAPI not executed successful

    Hi Dear Friends!
    At execution of asynchronous Scenario File to RFC (BAPI BAPI_ACC_DOCUMENT_POST)
    I have the following error in RWB Communication Channel (RFC receiver):
    - Error: 2007-07-25 11:08:25 EEST: Message processed for interface BAPI_ACC_DOCUMENT_POST:
    com.sap.aii.af.rfc.afcommunication.RfcAFWException: error while processing message
    to remote system:com.sap.aii.af.rfc.core.client.RfcClientBapiException:
    BAPI not executed successful
    Simultaniously <b>Test Configuration</b> was executed successfully. And mapping is good.
    But I don't any message in <b>target system</b> in <b>sxmb_moni</b> (formed by BAPI).
    In <b>XI system</b> I see in <b>sxmb_moni</b>:
    <Trace level="1" type="T">--start sender interface action determination</Trace>
      <Trace level="1" type="T">select interface mi_sender*</Trace>
      <Trace level="1" type="T">select interface namespace urn:file:to:bapi</Trace>
      <Trace level="1" type="T">no interface found</Trace>
      <Trace level="1" type="T">--start receiver interface action determination</Trace>
      <Trace level="1" type="T">Loop 0000000001</Trace>
      <Trace level="1" type="T">select interface *</Trace>
      <Trace level="1" type="T">select interface namespace</Trace>
      <Trace level="1" type="T">no interface found</Trace>
      <Trace level="1" type="T">--no sender or receiver interface definition found</Trace>
    Please help me understand my error.
    With the best regards,
    Natalia Maslova

    Hi, Dear Friends! Thanks for support!
    My settings of
    Connection between systems:
    DX7 01 (client 001) - XI Integration Server and DE2 13 (client 200) - target system.
    Phisically both systems are in one server: 10.20.30.24 (srv24)
    Business system DE2_200 has Communication Channel: cc_bapi_r, its settings (in Integration Builder Configuration):
    Adapter Type: RFC
    Receiver
    Transport Protocol: RFC
    Message Protocol: RFC (RFC XML)
    Adapter Engine: Integration Server
    RFC Client Parameter:
    RFC Server Type: SAP System
    Application Server: 10.20.30.24
    System Number: 13
    Authentication Mode: Use Logon Data for SAP System
    Logon User: n_maslova
    Logon Password: *******=*******
    Logon Language: EN
    Logon Client: 200
    Maximum Connections: 1
    x Advanced Mode
    x Send 'Confirm Transaction'
    x Commit Handling for Single BAPI Calls
    x BAPI Advances Mode
    Successful RETURN-TYPE Values: 0
    As I understand these settings are the settings of RFC-destination for target system DE2 13 (200) from XI (DX7 01 001).
    In SLD, Business system DE2_200 is defined as:
    Integration:
    Role: Application System
    Related Integration Server: DX7_001
    Technical System: DE2 on srv24
    Client: 200 of DE2
    Logical System Name: DE1CLNT200
    In target system DE2 13 (200) with the help of transaction sm59 I created
    RFC-destination DX7_001 of type H:
    Technical setting parameters:
    Target Host: 10.20.30.24
    Prefix Path: /sap/xi/engine/?type=entry
    Service Number: 8001
    Registration and Safe:
    SSL: Non active.
    SSL: client certificate: DFAULT SSL-client
    Enter to system:
    Language: EN
    Client: 001
    User: PIAPPLUSER
    Status PW: saved
    Password: ********
    After that in this system DE2 13 (200) with the help of transaction sxmb_adm I set in Integration Engine -> Configuration -> Configurate Integration Engine
    (Change Global Configuration Data):
    Role of Business System: Application System
    Related Integr. Server: dest://DX7_001
    Best regards,
    Natalia

  • How to verify if the RFC/BAPIs on ECC6 ides are unicode (UTF16) enabled

    Hello,
    I am not a SAP expert however I have knowledge about SAP RFCSDK. Let me give some background about what I am trying to do which would help to clear my question a bit more.
    1. I have a program written in "C", which uses RFCSDK to communicate with SAP server for  integration. This program works fine with non unicode RFCSDK 6.40
    2. For one of my need, I need to add UTF16 support to this code. So I am using unicode version of RFCSDK 6.40 with SAPwithUNICODE flag set. And using librfc32u.dll (Build : Tue Apr 08 09:22:11 2008, File version : 6405, 5, 228, 5755, Product version : 6405.5.228)
    3. I am using code page : 4103 (UTF16LE) in RfcOpenEx while communicating with SAP server.
    4. I am able to logon to the SAP server (version ECC6) successfully and also able to execute RFC_GET_FUNCTION_INTERFACE successfully to get interface info of the RFC. I am using function "RfcGetStructureInfoAsTable" from RFCSDK to get structure info, which also seems to be OK.
    After gathering the above info when I am trying to execute a BAPI I am getting "RFC_SYS_EXCEPTION" error.
    5. I am trying to execute "BAPI_EMPLOYEE_GETLIST" and I have already checked all the import parameters (including field values in RFC_PARAMETER structure) and they all seems to be correct. On execution I am getting following error in the trace file (.trc).
    T:3480 Error in program 'nleiact': ======> "SELECT ... LIKE ..." with leading, but no closing inverted comma.
    T:3480 Error in program 'nleiact': <* RfcReceive [1] : returns 3:RFC_SYS_EXCEPTION
    T:3480 Error in program 'nleiact': <* RfcCallReceive [1] : returns 3:RFC_SYS_EXCEPTION
    I was wondering if the RFC/BAPI on the SAP server might not be unicode (UTF16) enabled as one of the cause of this failure.
    Could somebody help me to point out a method to verify whether the RFC/BAPIs on this SAP server are unicode enabled or not?
    Also (I know it is against guidelines of forum of having multiple questions in one post) could somebody point out if I am doing something wrong or missing something in procedure (as described above.) of using unicode RFCSDK?
    Thanks
    Prasanna Joshi
    Edited by: Prasanna Joshi on Feb 4, 2009 4:15 PM

    Finding out the system code page you may need to first look this fm SCP_CODEPAGE_BY_EXTERNAL_NAME  and also check other function module under function group SCPA
    PS These fm are not RFC's you may need to write wrapper above these to use.

  • File to RFC/BAPI - Async- How to capture response field value

    Hi,
    I am doing File to RFC/BAPI Scenario. I have Two BAPI's. THe same source xml file is mapped to the Two Target BAPI's.
    For the first flow i.e File to BAPI1, I need to capture BAPI Response, field value and pass this value as Input to the BAPI2.
    How do I proceed with the Mapping. I am working on PI 7.1
    Any input would be Appreciated.
    Thanks & Regards,
    Varun

    Hi Varun,
    apparently you need a Business Process:
    XML -> BP (asynchronous), Map to Bapi1 request structure
    BP -> BAPI 1 (synchronous)
    Transformations step with multi mapping merging XML and Bapi1 response to Bapi2 request structure
    BP-> BAPI2
    Regards,
    Udo

  • ALE/IDOC and RFC/BAPI Integration Scenarios with SAP DS for ESA v3

    Hi,
    we are planning two PoCs of Integration Plattforms. One of our major requirement set is SAP Integration into our existing SOA.
    Because we also have R/3 4.7 Systems in production, we are planning to test ALE/IDOC and RFC/BAPI Integration scenarios with these Integration Plattforms.
    My question is:
    We are looking for are smart solution to get a SAP Test Environment, where we can test ALE/IDOC und RFC/BAPI Integration scenarios.
    It is possible to do this with SAP DS for ESA v3 or shall we better use IDES for that purpose?
    Best regards,
    Steven

    Hi Abhishek,
      This is our scenario. We are doing an integration of SAP HR r/3 system with the CRM system. We need housing information details of the employees which we have in custom infotype 9310 in SAP HR system and we need those details in the CRM system. So am planning out for an ALE/IDOC approach for the integration and gonna  maintain the 9310 details in a custom table. In the CRM system, we gonna build a BOL layer for accessing the 9310 details. Also i'm preparing a HLD for this process. I wanna read and go through few same HLD's before i submit my proposal to my client. Please suggest me and help me out.
    Thanks in advance.
    Regards,
    Arunmozhi.

  • How to use field symbols  while creating a new RFC Bapi

    Hi all,
    I have written a RFC Bapi in the traditional way.
    I need to replace all with field symbols (import. export. tables and source code).
    What is the syntax ?
    Any sample codng will be more helpful.
    Regards
    Senthil

    Please search for available information on "field symbols" before posting
    Thread locked
    Thomas

  • Passing values to RFC/BAPI Table

    Hi,
    I am having a very strange problem. While passing the values to RFC/BAPI table using add method the values are not passed to backend SAP. Below is the code which I am using just to pass some data in RFC/BAPI table.
    The same code was working few days back. Is there any configuration in JCO or any other problems other than the code?
    Your l help is greatly appreciated.
      public void executeZtest_Function_Input( )
    //    //@@begin executeZtest_Function_Input()
    //     //$$begin Service Controller(943377124)
           IWDMessageManager manager = wdComponentAPI.getMessageManager();
           try{
      Ztest_Function_Input input = new Ztest_Function_Input();
           for (int i=0; i<5;i++){
                Zhr_Ear_Cclist cc =new Zhr_Ear_Cclist();
                cc.setFi_User("[email protected]");
                input.addIcc_List(cc);
           wdContext.nodeZtest_Function_Input().bind(input);
           wdContext.currentZtest_Function_InputElement().modelObject().execute();
                wdContext.nodeOutput().invalidate();
           } catch(WDDynamicRFCExecuteException ce) {
                manager.reportException(ce.getMessage(), false);
         //$$end
        //@@end

    Hi Raksh,
              I also got the same problem. Please check the following ways then you will solve problem.
    1. First check the appropriate BAPI in SAP GUI Software. You have to determine where is the problem?. Is it in Dynpro or BAPI itself?.
    2. Suppose the BAPI structure change you will wont't run. If BAPI strusture change you have to reimport BAPI.
    3. Please check the JCo connectio using test Button. Then redeploy your project.
    4. Rebuild your project then redeploy.
    Check the above ways you may get answer.
    Kind Regards,
    S.Saravanan

  • How to passing lowercase values to RFC/BAPI using webdynpro for JAVA

    Hi Exerts,
    When we sending values to RFC/BAPI through webdynpro (JAVA), the values are sent in capital (uppercase) letters to ECC.
    So if we fill xxxx, it is send like XXXX. Why? and how to avoid this?
    Thanks in advance,
    Joeri

    Hi,
    There could be two possibility if you are storing this value in ABAP table.
    1. You are entering value in UPPERCASE in your webdynpro application.
    2. The data stored in ABAP table, converts value in small to upper case.
    1.  Can you tell me how you are passing this value, is user entering value in some input field which is binded to some context and this value are you passing to RFC/BAPI...???
    Or else before passing value to RFC/BAPI you can use toLowerCase string function and the npass this value to RFC/BAPI
    e.g String name = wdContext().currentContextelement().getName().toLowercase();
    Now pass this name to RFC/BAPI is should go as lowercase only..
    This is from webdynpro java side..
    2. If you are storing this value in ABAP table, check the domain/type of variable in ABAP table for which you are storing the value. Ask ABAPper, so that this value are stored in small case letter.
    There is one tick in domain which you need to remove so that it stores in lower case. I dont have exact information but you can consult this with ABAPer.
    Hope this information helps guy ..!!!!
    Regards,
    Jigar

  • Diff... between  ALE, IDOC, RFC, BAPI, BADI --- Not clear and clarify

    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 Behera

    Hi
    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

  • Documentation on Function Modules,RFC,BAPI

    hi friends,
    I have to give training in these 3 topics(function module,RFC,BAPI) .can u please help me with the documentation part .
    thanku

    hi,
      give your mail id, such i can forward documents to that.
    regards,
    Pavan

  • Is there a common RFC/BAPI so that using it I can create multi report in EP

    Hi,
    I am new to EP ..
    I have to generate some 25 reports of R3 systems which shoudl be exposed to EP. After going thru the docs on EP..
    It says that for every reports I need to create either an RFC or a BAPI. But It is a tedious job to create RFC functions for every report. Since these report is already there(Written) in the R3 System. I hate to convert these again as an RFC for every report.
    Is there a common RFC /BAPI where I need to pass required parameters and the transaction code for a specific report instead of creating a new RFC for every reports. so that that specific RFC will do the job for me.
    Is there a better/intelligent way to accomplish this task.
    Please do not say use SAP trasnational iViews ... As this expose the SAP GUI directly to the user..thru this one can trigger new transactions ... Correct me if I am wrong.
    thanks
    Pkiran

    thanks mario,
    very helpful answer
    pkiran

  • BAPI execution in webdynpro returns only a few records

    Hi,
            I'm executing a BAPI in my webdynpro application and it is returning only a few records from backend table. When i execute the BAPI in R/3 with the same input i'm getting all the records. In webdynpro i'm getting only 22 records for different set of inputs while in R/3 i'm getting all records(37,41 etc). Any help in this regard will be valuable.
    Regards,
    Shabeer

    Hi,
         I am invalidating the output node after execution of BAPI. The BAPI is executing properly and it is returning records also.But the problem is with the number of records returned by BAPI. As i've mentioned earlier it is always returning 22 records, eventhough the actual output contains more than 22 records(I checked this in R/3). I was told that the BAPI is calling a transaction(i don't know whether it is the problem since i am not familiar with ABAP and R/3 that much).Is it possible that webdynpro is fetching records even before the BAPI execution is complete in R/3 and hence returning partial output(I'm not sure about this thing) ?
    Any help in this regard will be valuable.
    Thanks and regards,
    Shabeer

  • 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

  • QM - RFC/BAPI required

    Dear team,
    Is there any built in RFC/BAPI in R/3 to update UDCODE and Inspection lot fields in QALS and QAVE tables(QM related).
    PRUEFLOS from QALS and dataelement:: QPLOS
    VBEWERTUNG from QAVE and data element : QBEWERTUNG
    Thanks.
    -Drumi

    Hey Did you check this one.
    As per your requirement hope this can be used. BAPI_INSPLOT_SETUSAGEDECISION
    You can also check the following Bussiness Objects
    BUS2045
    BUS204501
    BUS204502
    BUS204503  
    Hope this helps,
    Bhargav.

Maybe you are looking for