CALL_FUNCTION_REMOTE_ERROR when calling a remote function call through PI

Hello.  Thanks in advance for your perspective on this.
We are developing an interface that runs in an R/3 system and is suppossed to perform a lookup in another R/3 system via a PI 7.0 system.
Here's what we are trying to do, let's call these systems "A", "B", "C" respectively.
R/3  ->  PI   -> R/3
The R/3 system (A) executes code, which calls this function module like this:
      CALL FUNCTION 'Z_CHK_MAT' DESTINATION 'XI_RFCADAPTER'
        EXPORTING
          iv_region           = lv_region
          iv_matnr            = ls_matnr-matnr
        IMPORTING
          ev_flg_is_purchased = e_flg_is_purchased.
This code, is set via the "DESTINATION" parameter to use the RFC destination 'XI_RFCADAPTER'.  This destination, points to the PI (B) system above.
Anyhow, we're getting a short dump in the R/3 (A) system, which is like this:
CALL_FUNCTION_REMOTE_ERROR
"JCO.Server could not find server function 'Z_CHK_MAT'"
From my analysis, I believe this is because the remote function module Z_CHK_MAT does not exist, in the PI (B) system.
Our developer, believes this should just "pass through" the PI (B) system, and call the function module in the R/3 (C) system.
Any insight on this?  In this scenario, does this Function Module need to exist in the PI abap side?  Can you give perspective / guidance on this?
Thanks a lot
Steve

No need to exist in PI ABAP side.
Just make sure that:
1. as Michal said, you import it in Integration Repository (and use it in your configurations);
2. the RFC Destination type that points to XI is of type T, not 3;
3. both the RFC Destination & the Sender RFC Adapter (and only them) are using the same Program Id.
Regards,
Henrique.

Similar Messages

  • An error occurred when executing a REMOTE FUNCTION CALL.

    Dear all,
    We have two syetms called DXD and GRD , we have a remote enabled function module in the DXD system , when i am trying to call this Function module from
    GRD system it is going for the short dump, and giving the follwing error,
    <b>Error analysis
        An error occurred when executing a REMOTE FUNCTION CALL.
        It was logged under the name "RFC_NO_AUTHORITY"
        on the called page.</b>
    But i do have the access for the DXD system also, i am really struggling to solve this problem, if any lights are there to help me , i will be thank full for then,
    some body suggested for me that we need to maintain the Trusted system tables in the target system.
    Thanks & regards
    Satya.

    first u( user id ) have to get the Authorizations to use RFC ?
    object will be  like S_RFC or some thing like this.
    when u get this kind of error just call /NSU53 then u will come to know which Authorization Object is missing from ur User Profile.
    Regards
    Prabhu

  • Characters getting lost while calling a remote function

    Hi there,
    I've got a problem concerning a remote function call.
    Situation: System A has a function module ZFM_X with one importing parameter ("text" type string).
    System B calls this function module ZFM_X through a remote function call.
    It passes a string (containing 521 characters) variable to the importing parameter "text".
    Unfortunately, only fragments of the imported text arrive in System A.
    The text arriving in System A has the following pattern: The first 256 are correct, following 256 white spaces(blanks) following the last 9 characters of the imported text.
    Example:
    This is sent by System B to System A through a String variable.
    http://xxx.xx.xx.xx:xxxx/servlet/ContentServer?get&pVersion=0046&contRep=PG&docId=4BB4C36F5A0200B9E1008000AC101219&accessMode=r&authId=CN%3DP60&expiration=20100420112054&secKey=MIH3BgkqhkiG9w0BBwKggekwgeYCAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHATGBxjCBwwIBATAZMA4xDDAKBgNVBAMTA1A2MAIHIAgIKARFNDAJBgUrDgMCGgUAoF0wGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMTAwNDIwMDkyMDU0WjAjBgkqhkiG9w0BCQQxFgQUItgHQiYkW9BkScWnoMPkZiuCGSMwCQYHKoZIzjgEAwQuMCwCFGPGseHQSPV2%2F75OVMF2yMFzwfTLAhQgPRMvivyuii4gZ%2BJSKonPRsF1XA%3D%3D
    At System A the following text arrives
    http://xxx.xx.xx.xx:xxxx/servlet/ContentServer?get&pVersion=0046&contRep=PG&docId=4BB4C36F5A0200B9E1008000AC101219&accessMode=r&authId=CN%3DP60&expiration=20100420112054&secKey=MIH3BgkqhkiG9w0BBwKggekwgeYCAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHATGBxjCBwwIBATA                                                                                1XA%3D%3D
    It definitely looks like a unicode problem. Oddly, we have another system constellation which is exactly the same as System A/B where we are doing this, and its working perfectly fine.
    I hope you are not stunned by this wall of text, but any help is totally appreciated!
    Edited by: Erik Nagler on Apr 20, 2010 11:54 AM

    Hi,
    I tried it with String type and Character type (CHAR1024).
    Both dont work.
    As far as the unicode test is concerned:
    Sysem A is a unicode System whereas System B is a non-unicode system.
    I tried to change the Radiobutton to "unicode" in sm59, but I can't.
    It is uneditable, even though I am in change mode.
    [>>Picture<<|http://img90.imageshack.us/img90/2006/unicode.png]

  • Data error (invalid data type 17) in a Remote Function Call

    Hi,
    I am passing 2 select-option tables to RFC.
    Tables have structures -
       Table1  SIGN(C1)
                   OPTION(C2)
                   HIGH(C6)
                   LOW(C6)
       Table2  SIGN(C1)
                   OPTION(C2)
                   HIGH(C20)
                   LOW(C20)
    At the destination side, I have created two table types which have same structure.
    But when I call the RFC , program terminates with error - "Data error (invalid data type 17) in a Remote Function Call"
      Not able to understand the reason for this error. Please help.
    Thanks,
    Sujeet

    Hi,
    check out this example
    [LINK|http://abap.googlar.eu/viewtopic.php?f=5&t=28]
    You have several ranges that you can use like RANGE_AUF.
    Function example:
    FUNCTION zexemple.
    *"*"Interface local:
    *"  IMPORTING
    *"     REFERENCE(R_HORA) TYPE  FLAG
    *"     REFERENCE(R_DIA_1) TYPE  FLAG
    *"     REFERENCE(P_IDOC) TYPE  FLAG
    *"  EXPORTING
    *"     REFERENCE(MSG) TYPE  CHAR255
    *"  TABLES
    *"      T_OIFSPBL STRUCTURE  OIFSPBL
    *"      SL_PBLNR STRUCTURE  RANGE_PBLNR
    *"      SL_MATNR STRUCTURE  RANGE_MATNR
    *"      SL_HORA STRUCTURE  RANGE_UZEIT
    *"      T_ERROS STRUCTURE  ZARSTRING
    ENDFUNCTION.
    Report:
    SELECT-OPTIONS: sl_pblnr FOR oirbpblb-pblnr,
                                  sl_matnr FOR a361-matnr.
    ~
    Final question:
    You are passing the values using TABLES and not IMPORTING right?

  • CATCHABLE EXCEPTIONS in the remote function call (RFC)

    Please tell me what are the CATCHABLE EXCEPTIONS in the remote function call (RFC) and to which exception class do they belong????
    Thanks in advance.
    Dinesh Dhiman

    HI,
    With external function calls, the EXCEPTIONS addition of the CALL FUNCTION command can be used to assign return values to the exceptions defined in the interface of the called function module. Class-based exceptions cannot be propagated to the caller from a remotely-called function module, and have the effect of an exception that cannot be handled.
    As well as the exceptions defined in the interface of the called function module, an external function call can also have the following predefined exceptions:
    The <b>SYSTEM_FAILURE</b> exception is the response to a runtime error that occurs when the remotely-called function module is executed.
    The <b>COMMUNICATION_FA</b>ILURE exception occurs when the connection to the partner system cannot be established or if the connection is lost during communication.
    Note
    We strongly recommend that you assign a return value to both these exceptions for every RFC, and that you handle this return value, as otherwise a runtime error will occur in the exception situations in question.
    Regards,
    Sesh

  • Remote Function Call

    Hi,
    I am very much new to RFC, Can anyone help me to suggest some ideas for the following scenario.
    1. For the created PA30 screen using webdynpro, i have to create RFC.
    2. BAsed on the input from the system and the screen i have to write RFC.
    3. Through the RFC i have to update the Tables.
    Thanks ,
    Vijay
    Moderator message : Spec dumping is not allowed, search for available information.  Thread locked.
    Edited by: Vinod Kumar on Aug 9, 2011 10:28 AM

    Hi..,
    CALL FUNCTION - RFC
    Syntax Forms
    Synchroner RFC
    1. CALL FUNCTION func DESTINATION dest
                         parameter_list.
    Asynchroner RFC
    2. CALL FUNCTION func STARTING NEW TASK task
                    [DESTINATION {dest|{IN GROUP {group|DEFAULT}}}]
                    parameter_list
                    [{PERFORMING subr}|{CALLING meth} ON END OF TASK].
    Transaktionaler RFC
    3. CALL FUNCTION func IN BACKGROUND TASK
                         [DESTINATION dest]
                         parameter_list
                         [AS SEPARATE UNIT].
    <b>The destination contains the connection parameters for remote function calls. It contains the connection type, the target system and the partner program. Connections that affect SAP systems exclusively can be agreed as trustedsystems. RFC destinations are managed using transaction code SM59. </b>
    regards,
    sai ramesh

  • Error in calling the Remote Function Module

    Hi all,
    I am trying to call the Remote function Module which is in CRM  from ECC .
    But we are not able to detect the function module as it is showing the error as Function Module not found.
    Can anybody help us in calling the Remote Function Module .
    Regards,
    Madhavi

    Please check the foll 2 things :
    RFC radio button clicked in se37 for that FM
    RFC connection established with the remote server in SM59
    Thanks

  • Refresh a report list after remote function call

    Hi,
    My customer has a report listing invoices. A non-SAP program calls a remote function creating an invoice with BAPI. My customer wants the list to be refreshed after the invoice is created via RFC or to refresh the list in specified time intervals.
    Is there any way to accomplish that task?
    thanks,

    ... or OO, integrate like this
    DATA:      ok_code LIKE sy-ucomm.
    *       CLASS lcl_event_handler DEFINITION
    CLASS lcl_event_handler DEFINITION.
      PUBLIC SECTION.
        CLASS-METHODS: on_finished FOR EVENT finished OF cl_gui_timer.
    ENDCLASS.                    "lcl_event_handler DEFINITION
    CLASS lcl_event_handler IMPLEMENTATION.
      METHOD on_finished.
    * Start Timer again
        gr_gui_timer->interval = pa_autow.
        CALL METHOD gr_gui_timer->run.
    * cause PAI
        CALL METHOD cl_gui_cfw=>set_new_ok_code
          EXPORTING
            new_code = gc_cmd_refresh.
      ENDMETHOD.                    "on_finished
    DATA:
      gr_gui_timer               TYPE REF TO cl_gui_timer,
      gr_event_handler           TYPE REF TO lcl_event_handler,
      gs_vtyp                    like ts_vtyp.
    *======================================================================*
    *= Selection screen                          =*
    *======================================================================*
    PARAMETERS:
      pa_autow TYPE flag DEFAULT 'X'.
    SELECTION-SCREEN END OF BLOCK date.
    *&      Form  init_autorefresh
    *       Timer starten oder stoppen
    FORM init_autorefresh .
      IF pa_autow IS NOT INITIAL.
        CREATE OBJECT gr_gui_timer.
        SET HANDLER gr_event_handler->on_finished FOR gr_gui_timer.
        gr_gui_timer->interval = pa_autow.
        CALL METHOD gr_gui_timer->run.
      ELSEIF gr_gui_timer IS BOUND.
        gr_gui_timer->cancel( ).
      ENDIF.
    ENDFORM.                    " init_autorefresh
    Regards,
    Clemens

  • Automatic remote login at remote function call

    Hello,
    we have three systems, development, testing and productiv. I want to do a remote function call on the repective other system. But I always get a login window where you have to insert your password for that system. Is there a possibility to do this automatically? Thanks.
    Cheers, Lars.

    or else in SM59 double click on your destination server and in logon/security tab and give ur username and password and try

  • How to call a C function calling a Java Method from another C function ?

    Hi everyone,
    I'm just starting to learn JNI and my problem is that I don't know if it is possible to call a C function calling a Java Method (or doing anything else with JNI) from another C function.
    In fact, after receiving datas in a socket made by a C function, I would like to create a class instance (and I don't know how to do it too ; ) ) and init this instance with the strings I received in the socket.
    Is all that possible ?
    Thank you very much for your help !

    Hard to understand the question, but by most interpretations the answer is going to be yes.
    You do of course understand that JNI is the "API" that sits between Java and C and that every call between the two must go through that. You can't call it directly.

  • Remote Function Call (RFC) within a BAdI in ECC to CRM

    I've a remote enabled FM in a CRM system which I want to call within a BAdI implementation of a ECC system. As a result, the CRM system is the RFC server and the ECC system is the RFC client.
    The FM in CRM simply gets the relevant rows of a Z table which, of course, only exists in CRM and passes these rows to the calling program as per parameter supplied by the calling program.
    Now the BAdI in ECC is for changing 'Contracts' data in SAP (transactional data) before posting the contracts in the ECC database. The business uses a transaction where a large number of contracts are processed and documents posted in the system - and when this happens the system runs through (calls) the BAdI one contract at a time.
    If I call the RFC enabled FM anywhere within this BAdI, it gets the data for one contract only so it reduces a great deal of performance in regards to memory consumption, network load etc. So I want to avoid this and call the RFC FM once instead, if possible.
    Is it possible to call this RFC FM once only (to load the CRM Z table data for all contracts) and store it in a global table/area within the instantiated BAdI class (visibility public) so that when the BAdI is called the second time onwards it can read the global table/area by READ TABLE WITH KEY statement and avoid the RFC call for each BAdI call?
    I was also thinking about may be using ABAP Shared Memory if this is a possibility in order to avoid the repeated RFC call? But this table on the RFC server changes frequently....so it might not be a good idea? or....??
    I would greatly appreciate your inputs and thoughts regarding this; it would be great to hear if someone had had a similar experience.
    Cheers,
    Sougata.

    As the Z table is only updated via a particular program in CRM - we developed and called a RFC enabled FM in that report when its updating the Z table to update the Z table in ECC to keep it in sync.
    Short term benefit but might be long term pain if the Z table in CRM is updated by another program/process/application in the future! Not to mention any table field changes in CRM has to be also made in ECC everytime which is again a pain.
    This is a workaround and definitely not a full-proof solution - but I guess these days one has to shut up and deliver whatever the customer wants!

  • Debuggin a Call to Remote Function Module

    Hi
    I have a scenario where i have a Remote Function Module in r3 which is being called synchronously by an external java application. The FM has a lot of input and output parameters and many tables.  The output returned by the FM is not as expected.
    Can anyone tell me how debug a Remote Function Module when a call has been made from an external application.
    I am not able to get the test data sent by the external application . So when the external application gives a call to this Remote FM and if it is possibele to debug it would be great.
    regards
    Nilesh Taunk.

    Hi Nilesh,
    1) Login to SAP with the same ID with which you will calling the RFC function module from the outside system.
    2) Goto transaction - se37/se38
    3) Goto Utilities => Settings.
    4) Select the ABAP Editor Tab.
    5) Click on the Debugging tab.
    6) Tick the Actv. button and give the user name with which you will be debugging the code. In this case the logged in user id.
    7) Press Enter.
    8) Now put an external break point inside the Function Module.
    9) Load your external application (from where you want to debug the FM) once again.
    The execution will stop in the FM.
    Hope it helps..
    Lokesh
    PS: This was a simple question, but I guess the reason no one has answered your question is due to the fact that you havent rewarded points to members helping you. Also remember to close your post once it has been answered.

  • AS3/BlazeDS remote function calls

    We have a pure as3 - no flex - project which connects to server-side Java.  The actionscript will, upon interaction from the user, invoke a Java function on the server side, which will then broadcast out a message to all users.  This works when testing locally, but when we put the project onto a remote server, the actionscript code will no longer invoke the Java function.
    We are unsure as to why this is: the service xml files are the same, and the files are in the correct locations.  In the BlazeDS admin console, whenever we try to call that Java function, it is incrementing the InvocationFaultCount variable for the specified destination.  Any suggestions why it won't work online, but will on the local machine?
    thanks

    Hello Case,
    The approach in NCo for this purpose is to use RfcCustomDestination, as already recognized by you. Thus you can challenge the user for his personal password and set those credentials for the logon. Best variant is to provide a repository user and password in the configured destination so that metadata is then read with a user that is restricted to metadata lookup permissions only.
    In case the infrastructure would issue a token for the logged on user, one could imagine that with such a token and trust between the ABAP system and the NCo application could do some kind of SSO. However, NCo runtime is not prepared so far to allow such a setup.
    Best regards,
    Markus

  • Generate Idoc from Remote function call

    Hi,
    Earlier i have done RFC which is been called with JCO and and sends datastream as well xml.
    Now my doubt, is it possiible to generate the idoc for external application through RFC call from JCO?
    if so, can anyone send me appropriate links or advice on the subject!
    My main concern is i can generate the idoc through RFC call basing on the calling parameters,,, but how to pass the idoc structure for them?
    for XML i used Export: E_XML     TYPE     STRING
    for data stream: ITAB     LIKE     ZSTR_ITAB.
    Any inputs will be of great helpfull...

    Assigned resultant idoc structure to the Table parameter of type EDIDD in created BAPI.

  • Call a System Function: CALL 'XXPASS'

    Hi All,
    I would like to know more about the System Function CALL 'XXPASS' and where does it resides in ABAP any transaction we can have a look into and understand the system functions. Please do suggest me ASAP.
    Thank you.
    Best Regards, Satya

    Hi,
    you can check the functions, acessing the kernel file sapactab.h.
    best regards,
    Pedro Rosa

Maybe you are looking for

  • Iphone ipod won't play clearly when docked

    i got my iphone 3gs from the first run last year, and this is the first problem i have had with it. the built in speakers work just fine, but when i try to play music from my iphone at work, or in my car, i get a garbled sound. it's sporadic. it come

  • Error when deleting a customer table

    Hi guys, im deleting a Z table with a loop, and the following error is displayed after 10 minutes. the log reads as follow. 1. ORACLE storage space request failed.                                     (ORACLE error 1547)                               

  • Iplanet webserver 4.1 JSP problem

    Hi I am using iplanet webserver 4.1, whenever i change my jsp file, i have to restart my webserver instance otherwise ia gm getting error..is ther any way i can prevent to restart the webserver?

  • How to control ME9F printout at Message type level

    Hi MM Consultants I have the following issue with my client. We have defined 2 message types related to Purchase Order printout . through 1 message type we can see price in printout and through 2nd we can't . We need to define authorizations, so that

  • I need help with subscriptions

    Can someone help me?  I have never figured out how to cancel my original pay as you go subscription, and Skype keeps taking more money.  I have an unlimited world subscription, so I don't think I should cancel the automatic payments, or that one will