Calling RFC function

I am trying to call an RFC function in my bsp page. The RFC is to start a process chain. It gives me an error and I am not sure why. It tells me E_LOGID is not expected. Here is code:
if event->id = 'Update1' and event->event_type = 'click'.
      Call Function 'RSPC_API_CHAIN_START'
      DESTINATION 'NONE'
      importing
      I_CHAIN = 'NCNADMFULL'
      I_SYNCHRONOUS = ''
      I_SIMULATE = ''
      EXPORTING
      E_LOGID = 0.
      endif.

Hi Uday,
well it seems that the function module RSPC_API_CHAIN_START does not expect and exporting parameter called E_LOGID.
Why dont you just use the templating options to insert sample code to call the RFC?
When I did this I got this code generated.
CALL FUNCTION 'RSPC_API_CHAIN_START'
  EXPORTING
    i_chain             =
*   I_T_VARIABLES       =
*   I_SYNCHRONOUS       =
*   I_SIMULATE          =
*   I_NOPLAN            =
* IMPORTING
*   E_LOGID             =
* EXCEPTIONS
*   FAILED              = 1
*   OTHERS              = 2
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
So it seems you got your IMPORTING and EXPORTING options around the wrong way.
Cheers
Graham

Similar Messages

  • Error when call RFC Function module in R/3

    Dear All,
    We are trying to call RFC function module CBIF_GLM1_PROCESS_ORDER_READ (This is not a BAPI and also not released ) in R/3 from XI system.
    we are facing the error "Error while lookup Exception during processing the payload. Error when calling an adapter by using the communication channel CC_PPPI_MES_RFC_Rcvr (Party: , Service: WCD_320, Object ID: 16563889b449328eac76caa6a3bc592e) XI AF API call failed. Module exception: 'error while processing the request to rfc-client: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException: failed to parse BAPI response due to: com.sap.aii.adapter.rfc.util.bapi.BapiException: Parameter with name RETURN not found.'. Cause Exception: 'com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException: failed to parse BAPI response due to: com.sap.aii.adapter.rfc.util.bapi.BapiException: Parameter with name RETURN not found.'."
    This is the first time we are doing this configuration.
    Could you please let me know what woulbe the reason.

    read the original message
    We are trying to call RFC function module CBIF_GLM1_PROCESS_ORDER_READ (This is not a BAPI and also not released ) in R/3 from XI system.
    I am talking about the above Receiver RFC channel which you guys are using to call R/3 from XI. That where you need to change the commit parameter

  • Standard Component in CRM that will call RFC Function Module

    HI all,
    Is there any Standard Component in CRM that will call RFC Function Module from ECC and that called RFC FM should Fetch the data from ECC.

    You can call RFC from different places, like programs, function modules, web dynpros, classes...
    So you just have to have appropriate RFC on ERP side and call it from CRM side. To call it you use the following statement...
          CALL FUNCTION 'YOUR RFC FUNCTION'
            DESTINATION i_dest "name of server
            EXPORTING
              your export parameters
            IMPORTING
              your import parameters
    Regards.

  • Call RFC Function Module and return 1000 records at a time

    I would like to call a Remote Enabled Function Module from a non SAP system.  This function module will select data from the database and return it to the calling program.
    Suppose there are 100,000 records that need to be returned, but the calling module would like the data in chunks of 1000 records.  Therefore the calling program would call the FM 100 times. 
    How do I code the function module to know on each subsequent call to grab the next chunk of 1000 records? 
    Let me know if additional information is needed.
    Thanks,
    Aaron

    Hello,
    Here is how you can go for this issue:
    1. Create one RFC function module with following parameter. These parameters are with respective of chunking logic.
         Import: Package Size
         Export: Total number of records
         Changing: chunk count
    Implement following logic:
    1. First of you need to know how many chunks you need to fetch for that get the count of total number of records. This is one  
        time activity so you better maintain one flag import parameter will be set to 'X' only first call.
    2. Get the number of chunk using total number of records / chunk size for e.g. 1000 / 100 so chunk count = 10.
    3. Define internal chunk counter in function module which will be used to locate the correct chunk depending on the chunk
        counter value sent from calling program.
    4. Send first call with package size 100 and chunk count = 1, execute select statement and increment internal
        chunk count check if chunk count = internal chunk count in current case chunk count = 1 so exit select statement and return
        with first chunk.
    5. Send second call with package size 100 and chunk count = 2. Execute select statement and check chunk count with internal
        chunk counter, in current case it will be 1 so skip that data and go for next chunk of 100 records increment internal chunk  
        counter. In this case it will match with external chunk count = 2. load output table with that data and return to calling program.
    6. Repeat step 4 until you reach last chunk.
    You need to use SELECT...ENDSELECT with PACKAGE SIZE addition so for every loop it will return number of records mentioned in package size.
    Hope this helps.
    Thanks,
    Augustin.

  • Calling RFC Function module from JAVA

    Hi All,
       We have created a RFC Function Module for Billing Plan tab in Sales order (BDC). The function Module contains BDC. When we are running the same function module in SAP it is working fine. But when the FM is called in Java , it is allowing only maximum of 5 entries , when we trying to insert at 6th position in billing plan tab, we are getting an error.
    Can any one help on this.
    Points will be rewarded for helpful answers.
    Thanks & Regards,
    Kiran I

    I think the problem is because of the number of lines displayed on the screen in the BDC session in the Billing Plan.
    You might have to add the page down logic to your BDC program.

  • Call RFC Function Module in R/3 via XI during Mapping

    Hi,
    I have an XI scenario where I have to fill the IDoc ADRMAS03 in XI and send it to R/3. Unfortunately the sender system does not provide the required address number (ADRNR) for the Business Partner, only the Business Partner number. Therefore I want to call a Function Module in R/3 during the mapping in order to get the ADRNR.
    Does anybody know which RFC-Function Module I can call in R/3 4.6c providing the Busness Partner number in order to get the ADRNR?
    Thanks.
    Alex

    Hi,
    no need for RFC lookup it's better to do as he wants
    (inside an exit in R3) - just my point of view
    BTW
    don't use a FM just find a table with both values
    and create a select statement youself
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Calling RFC function module in other SAP system...

    Hi,
    I have a report on one SAP system and a function module on other system. The function module is RFC enabled. How can I call this RFC enabled function module from other SAP system in the report which is different SAP ?
    system.
    Thanks.
    Regards,
    Rajesh.

    call the function module in orginal system in se38 ,copy the function module ,paste the function module in other system,and maintain destination here ,otherwise you will get short dump.
    here detination should be SM59 destination,this is case sensitive.
    Reward Points if it is helpful
    Thanks
    Seshu

  • Problem while calling RFC function module in java

    Hi all
    com.sap.mw.jco.JCO$Exception: (102) RFC_ERROR_COMMUNICATION: Connect to SAP gateway failed
    Connect_PM  GWHOST=<system.ab.ydydy.yyyd.com>, GWSERV=sapgw00, ASHOST=<system.ab.ydydy.yyyd.com>, SYSNR=00
    LOCATION    CPIC (TCP/IP) on local host
    ERROR       hostname '<system.ab.ydydy.yyyd.com>' unknown
    TIME        Mon Jun 06 14:50:25 2005
    RELEASE     640
    COMPONENT   NI (network interface)
    VERSION     37
    RC          -2
    MODULE      ninti.c
    LINE        332
    DETAIL      NiPGetHostByName2: hostname '<system.ab.ydydy.yyyd.com>' not found
    SYSTEM CALL gethostbyname_r
    COUNTER     1
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeConnect(Native Method)
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.connect(MiddlewareRFC.java:1098)
         at com.sap.mw.jco.JCO$Client.connect(JCO.java:2983)
         at MyProject.Bapi2.<init>(Bapi2.java:43)
         at MyProject.Bapi2.main(Bapi2.java:231)
    Pl help me
    pradeep

    Hi
    This is my code....
    Created on Jun 2, 2005
    To change the template for this generated file go to
    Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    package MyProject;
    @author pradeep
    To change the template for this generated type comment go to
    Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    import com.sap.mw.jco.*;
    public class Bapi2 extends Object {
       JCO.Client mConnection;
       JCO.Repository mRepository;
       public Bapi2() {
           try {
              // Change the logon information to your own system/user
              mConnection =
                JCO.createClient("122", // SAP client
                   "<pradeep>", // userid
                   "*****", // password
                   "EN", // language
                   "<abc11.aa.abc23.company.com>", // application server host name
                   "<00>");//system no
              mConnection.connect();
              mRepository = new JCO.Repository("HLL", mConnection);
          catch (Exception ex) {
            ex.printStackTrace();
            System.exit(1);
          JCO.Function function = null;
          JCO.Table codes = null;
            try {
               function = this.createFunction("BAPI_COMPANYCODE_GETLIST");
               if (function == null) {
                 System.out.println("BAPI_COMPANYCODE_GETLIST" +
                                         " not found in SAP.");
                 System.exit(1);
               mConnection.execute(function);
               JCO.Structure returnStructure =
                 function.getExportParameterList().getStructure("RETURN");
               if (! (returnStructure.getString("TYPE").equals("") ||
                        returnStructure.getString("TYPE").equals("S")) ) {
                 System.out.println(returnStructure.getString("MESSAGE"));
                 System.exit(1);
               codes =
                 function.getTableParameterList().getTable("COMPANYCODE_LIST");
               codes.setRow(2);
    codes.deleteRow();
    codes.deleteRow(5);
    codes.appendRow();
    codes.setValue("XXXX", "COMP_CODE");
    codes.setValue("Does not exist", "COMP_NAME");
    codes.appendRows(2);
    codes.setValue("YYYY", "COMP_CODE");
    codes.setValue("Does not exist either", "COMP_NAME");
    codes.nextRow();
    codes.setValue("ZZZZ", "COMP_CODE");
    codes.setValue("Nor does this", "COMP_NAME");
    for (int i = 0; i < codes.getNumRows(); i++) {
    codes.setRow(i);
                 System.out.println(codes.getString("COMP_CODE") + '\t' +
                                         codes.getString("COMP_NAME"));
            catch (Exception ex) {
               ex.printStackTrace();
               System.exit(1);
            try {
               codes.firstRow();
               for (int i = 0; i < codes.getNumRows(); i++, codes.nextRow()) {
                 function = this.createFunction("BAPI_COMPANYCODE_GETDETAIL");
                 if (function == null) {
                    System.out.println("BAPI_COMPANYCODE_GETDETAIL" +
                                            " not found in SAP.");
                    System.exit(1);
                 function.getImportParameterList().
                    setValue(codes.getString("COMP_CODE"), "COMPANYCODEID");
                 mConnection.execute(function);
                 JCO.Structure returnStructure =
                    function.getExportParameterList().getStructure("RETURN");
                 if (! (returnStructure.getString("TYPE").equals("") ||
                          returnStructure.getString("TYPE").equals("S") ||
                          returnStructure.getString("TYPE").equals("W")) ) {
                    System.out.println(returnStructure.getString("MESSAGE"));
                 JCO.Structure detail =
                    function.getExportParameterList().
                    getStructure("COMPANYCODE_DETAIL");
                 System.out.println(detail.getString("COMP_CODE") + '\t' +
                                         detail.getString("COUNTRY") + '\t' +
                                         detail.getString("CITY"));
           catch (Exception ex) {
              ex.printStackTrace();
              System.exit(1);
           mConnection.disconnect();
         public JCO.Function createFunction(String name) throws Exception {
           try {
              IFunctionTemplate ft =
                mRepository.getFunctionTemplate(name.toUpperCase());
              if (ft == null)
                return null;
              return ft.getFunction();
          catch (Exception ex) {
            throw new Exception("Problem retrieving JCO.Function object.");
       public static void main (String args[]) {
          Bapi2 app = new Bapi2();
    This is the error i'm getting...
    com.sap.mw.jco.JCO$Exception: (102) RFC_ERROR_COMMUNICATION: Connect to SAP gateway failed
    Connect_PM  GWHOST=<abc11.aa.abc23.company.com>, GWSERV=sapgw00, ASHOST=<abc11.aa.abc23.company.com>, SYSNR=00
    LOCATION    CPIC (TCP/IP) on local host
    ERROR       hostname '<abc11.aa.abc23.company.com>' unknown
    TIME        Mon Jun 06 17:15:12 2005
    RELEASE     640
    COMPONENT   NI (network interface)
    VERSION     37
    RC          -2
    MODULE      ninti.c
    LINE        332
    DETAIL      NiPGetHostByName2: hostname
                '<abc11.aa.abc23.company.com>' not
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeConnect(Native Method)
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.connect(MiddlewareRFC.java:1098)
         at com.sap.mw.jco.JCO$Client.connect(JCO.java:2983)
         at MyProject.Bapi2.<init>(Bapi2.java:45)
         at MyProject.Bapi2.main(Bapi2.java:233)
    Thx
    PRadeep

  • Call RFC function module

    Hi all,
    i try to call a remote enabled function module via rfc from erp to apo.
    CALL FUNCTION 'Z_XXXXXXXXXXXX
            DESTINATION XXXXX
            EXPORTING
              wa_truid = it_tab_pre-trguid
            IMPORTING
              status   = wa_status.
    In debugging the parameter it_tab_pre-trguid is filled correctly (in ERP).
    But in APO the field is empty.
    Any ideas?
    regards

    Hi!
    Calling an FM with RFC means, you just simply run it on their system with giving  some parameters to it.
    It will use the remote database to select data.
    Log into the APO system and run the FM there, with the same parameters, and you'll see, what's wrong.
    Regards
    Tamá

  • RFC function module with call transaction  and Import memory ID

    Hi,
    I am calling RFC function module from R/3 which exists in BW.
    In BW stand alone function module works fine.
    When I am Calling from R/3 it is not working,
    Can you tell me is it because of the below code, And suggest if any corrections required.
    I am calling the call transaction and using EXPORT memory iD inside the program
    and IMPORT in after that.
    And populating RFC table's table  " p_i_tcode_user" finally.
    set parameter id 'TCD' field p_tcode.
    call transaction 'Z_BW_RSUSR002' AND SKIP FIRST SCREEN.
      ENDIF.
    get the final user data from submitted program
    import gt_users_complete from memory id tcode_userid.
    LOOP AT gt_users_complete.
          lwa_tcode_user-tcode =  p_tcode.
          lwa_tcode_user-uname = gt_users_complete-Bname.
          APPEND lwa_tcode_user TO p_i_tcode_user.
    ENDLOOP.
    Thanks,
    Veerendra.

    HI,
       Can you just exaplin it clearly plz..
    Thanks
    Mahesh

  • Can we disable implicit DB commit in JCO RFC function call?

    I called RFC function provided by ABAP from JCo connection, found that each RFC function is a db LUW itself. All the db access sql in RFC function is implicit commited.
    Till now, to wrap the db access sql in seperate "Update function module" or "Perform on commit" seems to be a choice for me (like most BAPI doing so). But is it the only choice?
    The point is, can we disable(or bypass) the implicit DB commit while calling a RFC function from JCo connection?

    Hi Guru,
    Yes you approach is correct, make sure commit/rollback is possible only when a change is/was made in database.
    Go through these links will be helpful,
    BAPI_TRANSACTION_COMMIT with Web AS/SOAP Interface
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/d352a790-0201-0010-5082-b1a608d22b6c
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/d352a790-0201-0010-5082-b1a608d22b6c
    Hope that solves your problem.
    Thanks & Regards,
    Kathirvel

  • RFC function is called with null paremeters on SAP side

    I used the new version of .Net Connector 2.0.1.
    I created a simple client called RFC function with one table parameter and simple RFC function inserts record to simple table on SAP side.
    If I call this RFC function from SAP side the record is inserted to my table with correct value.
    If I call this RFC function from NET side the record is inserted with null value.
    What's wrong ?
    Could anybody help me ?
    Code :
    SAP side
    FUNCTION ZRVFRFCNV.
    *"  TABLES
    *"      ITDATA STRUCTURE  ZRVNAMEVALUE
    insert into ZRVNAMEVALUE values ITDATA.
    ENDFUNCTION.
    Net side                    
    ZRVNAMEVALUE nam_val2 = new ZRVNAMEVALUE();
    nam_val2.Name = "100";
    nam_val2.Value = "NORD";
    ZRVNAMEVALUETable tblTest = new ZRVNAMEVALUETable();
    tblTest.Add(nam_val2);
    // for testing : dataGrid show correct values
    dataGrid1.SetDataBinding(tblTest, "");
    this.sapProxy11.Zrvfrfcnv(ref tblTest);

    The problem was in insert statement. I changed insert to modify on SAP side and solved it.

  • Call RFC From PL/ SQL

    Hi Everybody, i have some question:
    Its Possible from PL / SQL, call RFC Functions?...
    Please can you give me some examples or tell me if is technicaly impossible to do that?..
    Thanks a lot.
    Greattings
    Wilmer Figueroa

    Hey,
    It is not that easy,
    SAP didn't published an package to link PL/SQL to RFC,
    however, it is possible with some work:
    the PL/SQL can execute command on operation system of the DB
    for example 'dir' in windows or 'ls' in unix,
    instead of running dir/ls you can execute a program that will execute an RFC in the SAP system.
    the program can be developed by .Net connector, see:
    NW RFC SDK - is there a guide somewhere?

  • Call RFC

    hai
         how to call RFC prog.

    Technical Overview
    A remote function call (RFC) is the call of a function module that runs in an external system to the calling program. Although it is also possible to call a function module in the same system as an RFC, normally RFCs are used when the caller and the called function module run in the same system.
    In the SAP system, these functions are provided by the RFC interface system. The RFC interface system enables function calls between two SAP systems, or between an SAP system and an external system.
    [edit]
    The RFC Interfaces
    The RFC- interface system is made up of the following interfaces:
    Calling interface for ABAP programs
    Each ABAP program can call a remote function module using the command CALL FUNCTION...DESTINATION. The parameter DESTINATION informs the SAP system that the called function module runs in a different system to the calling system. RFC communication with the remote system takes place as a part of the CALL FUNCTION command.
    RFC function modules in an SAP system must be proper function modules and must be registered in the SAP system as remote.
    If the calling program and the called program are both ABAP programs, the RFC interface provides both communication partners. The calling program can be any ABAP program, and the called program must be a function module that is registered as remote.
    For more detailed information on calling function modules that are registered as remote, see Calling RFC Function Modules in ABAP.
    For more information on writing function modules that you want to call remotely, see Writing RFC Function Modules in ABAP.
    Interfaces for calling non-ABAP programs
    If either the calling program or the called partner is not an SAP program, this program must be programmed in such a way that it can play the role of the other partner in RFC communication.
    To support you when implementing RFC partner programs in non-SAP systems, read: Components of the SAP Communication Technology
    RFC-supported and GUI-supported interfaces can be used by external programs to call function modules in SAP systems, and execute them in these systems. Likewise, ABAP programs can also use these interfaces to use functions supplied by external programs.

  • RFC function and SAP logon window

    Hi experts,
    i created the report which uses RFC function ( returns some info from dev. system ). Long time it worked without problem, but before several days ( maybe SAP basis did some changes ), when i run the report and is called RFC function, system ask me to log on into the system.
    Do you have any idea ?
    Thanks in advance
    Martin

    User ALEREMOTE was locked

Maybe you are looking for

  • HT201322 Can't get this to work on iPad A1395 with iOS 6.1.2 - any suggestions?

    Can't get this to work on iPad A1395 with iOS 6.1.2 - any suggestions?

  • Magic mouse won't scroll

    My magic mouse that I had for a few months no longer works with any of the scrolls or swipes or any of the gestures that made me buy the mouse. I can only right and left click and move the pointer around the screen. I've deleted the two different pre

  • Finding my iweb site

    I'm trying to find my iweb sites. Problem is I'm traveling with my other computer i.e the one that I did not publish iweb with (I have one dedicated computer to puplish iweb pages). So when I go to my .mac account Home Page, I see "My Pages" and only

  • " Title on the warning : warning, a problem occurred"

    I've just bought final cut studio 2. i've installed it and everything seems ok, BUT... when I switch on the mac, a window now appears, bearing the symbol of FCP and it says, more or less (I translate it from french) : " Title on the warning : warning

  • JTree difficulties

    Hi, I wish to generate a popup for multiple nodes selected on a JTree. I need to query the nodes user objects to decide on the contents of the popup. How can I get the user objects of the selected nodes when the selection methods simply return TreePa