Outbound RFC from R/3 ABAP to XI

Hello,
I searched through the XI forum on this, but couldnt get it straight so far.
R/3 AP1 -> XI -> Third party system
I would like to invoke XI from an R/3 ABAP  like this:
call function z_call_xi destination xidest
The following is not clear yet:
- where do I have to define z_call_xi?
- If it is on AP1, then do I have to import it in integration directory?
Thanks for clarification
Matthias

Hi Matt,
>>>- where do I have to define z_call_xi?
on R3
>>>>- If it is on AP1, then do I have to import it in integration directory?
yes you import the RFC definition in the repository
you also need RFC dest to XI
so have a look at my weblog:
/people/michal.krawczyk2/blog/2005/03/29/configuring-the-sender-rfc-adapter--step-by-step
BTW
call it:
call function z_call_xi + destinatio + in backgruond task
and remember to "Commit work." to send the data to XI
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions">XI FAQ - Frequently Asked Questions</a>

Similar Messages

  • Outbound RFC to file: Received HTTP response code 500

    hello:
    i am doing outbound rfc from ecc to other system using PI and I get the below error in the PI.
    I am on PI 7.0 and looked at the RFC destiantions in ECC and all look good.
    The registered program in TCP/IP RFC destination was tested and looks fine .
    I checked the SMICM in PI running at port 8000 and it looks file and also i checked the SXMB_ADM Interation configuration in PI which looks good too .
    Even the PI integration engine is restarted . i am sure its in PI and I am hoping its related to user in PI -adapter frame work user XIAFUSER?
    can you please let me know how to fix the below issue ..
    "Transmitting the message to endpoint http://HGSGXI50:8000/sap/xi/engine?type=entry using connection RFC_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Received HTTP response code 500 : Internal Server Error"
    thanks,

    HI
    for the error com.sap.aii.af.ra.ms.api.RecoverableException Received HTTP response code 500 Internal Server Error" 
    HTTP 500 can be any problem at receiver side. Are you sure, that the payload fits to the receiver requirements
    Please refer this thread answered by Stefan Grube
    Plain HTTP adapter error
    check the similar thread HTTP server code 500 reason Internal Server Error

  • How to call the RFC from R/3 to SRM, when we use webdynpro abap? (Urgent)

    Hello
    We use SRM Server 5.5 with classic scenario.
    We want to call RFC in R/3 from webdynpro ABAP.
    How can we do that?
    We are developing the web report using webdynpro abap.
    So we need some of R/3 data such like PR(EBAN)and PO(EKKO,EKPO).
    When user choose the search parameter, report diplay the Shopping cart, PR and PO data on webdynpro.  So we call the R/3 RFC to display the PR, PO data.
    But I tired to call the RFC in R/3, We could not call it.
    How to call the RFC from R/3 to SRM, when we use webdynpro abap?
    Thank you,
    Best Regards,
    SH.

    Hi
    <b>Please look at the following threads as well -></b>
    WebDynpro in SRM
    BAPI's /RFC's in SRM
    BAPI to Change Shopping Cart by RFC
    SRM60 and webdynpro
    Webdynpro Services Exception
    WebDynpro using BAPI has an error
    SRM60 and webdynpro...
    <b>SAP uses META Function modules in SRM to get data from R/3 back-end.</b>
    <u>For getting Purchase requistion data, use the function modules -></u>
    META_REQUISITION_CHANGE        Change purchase requisition              
    META_REQUISITION_CREATE        Create Requisition                       
    META_REQUISITION_DELETE        Delete/close purchase requisition        
    META_REQUISITION_GETDETAIL     Display requisition details              
    META_REQUISITION_GETITEMS      Display requisition items                
    META_REQUISITION_GETRELINFO    Get Releasease Info for requisitions
    <u>For getting Purchase order data, use the function modules -></u>
    META_PO_CREATE                 Create purchase order                    
    META_PO_DELETE                 Delete reservation                       
    META_PO_GETDETAIL              Display purchase order details           
    META_PO_GETITEMS               Display purchase order items             
    META_PO_GETRELINFO             Display purchase order release information
    Hope this will definitely help. Do let me know.
    Regards
    - Atul

  • Call ABAP RFC From mapping

    HI Guys,
    I have a requirement to call ABAP RFC from Message Mapping.
    Can any one pls share the document links or ideas with me.
    Thanks,
    MS

    Hi
    u can use RFC LoopUp
    if PI 7.0 / 3.0 -- need to write the UDF to execute
    link
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70d90a91-3cf4-2a10-d189-bfd37d9c3231
    if PI 7.1 then u have functionality in MM itself to do so
    rgds
    srini

  • Trigger rfc from abap  porxy

    hi all;
    how to trigger rfc from abap  porxy

    Hi Mehra,
    check this link and just check for only how proxy is being used/...
    https://websmp208.sap-ag.de/%7Esapidb/011000358700011142902001E/HOWTosendxmldatatobw.doc
    And u can check one more document related to the above link in Services.sap.com (How to push data from BW to XI PDF)
    If not Give me u r mail id i will forward it...
    Regards,
    sridhar
    Message was edited by: sridhar reddy kondam

  • Sync Async using proxies ( Calling Outbound proxy from Inbound proxy )

    I'm trying to generate Asynchronous Outbound message from the Synchronous Inbound message message  due to a requirement. My question is : is it really possible to develop such a scenario?. I'm getting weird error such as Kernal exception etc. Please let me know if you have developed such scenario and what should we do dfifferently in such scenarios?. Thank you for any suggestions.

    Hi,
    This error has has nothing to do with Calling Outbound Proxy from from Inbound Proxy. The scenario which you are telling is very much possible.
    It looks like there is some problem in your proxy code while calling RFC from within there or something like that. Try catching the exception and see what is the exact error or put in debug mode and see the step where exactly your code is failing.
    Use the following links for Catching Exception in Proxy
    Inbound ABAP Proxy Trace and error handling
    Handling Exceptions
    ABAP Server Proxies - Fault Handling
    Exception handling in integration processes
    ABAP Proxy and fault messages
    /people/bhanu.thirumala/blog/2006/02/07/abap-proxy--xml-to-abap-transformation
    Thanks
    Amit
    Reward point if answer is helpful

  • Tuning outbound RFC (TCP/IP, "registration")

    We use RFC from SAP R/3 (Rel 4.6C) to an external application.
    The RFC-destination is of type T (TCP/IP) of course, with activation 'registration'. This means that the other application has registered with the gateway process of the SAP-system (sapgw) and said it would be listening for calls.
    We are looking for documentation on tuning on the SAP side (we are looking at the other side, too).
    I have found documentation for tuning inbound RFC (RFC-calls into SAP R/3 or more generally into the SAP ABAP-stack), but I have not found anything in outbound RFC.
    Yet something must be tuned - we notice that the hard way.
    Obvious questions are:
    1. How can we increase the number of simultaneous connections the SAPGW can handle?
    2. If the other application does not respond swiftly, how can we increase the timeout in SAP?

    Hi,
    The only tuning, I'm aware of, for this configuration is the number of registrations done by the external application and the number of physical servers hosting the external application.
    We use this setup in my company to be able to call web wervices from R/3 4.7.
    A .NET RFC server has been written and is a web service client. So it is a kind of RFC to web service connector.
    This RFC server is hosted on 2 physical hosts. Each of these 2 RFC servers has 4 threads. Each of these threads register on the SAP central lnstance gateway with the same registration name.
    From transaction SMGW (logged on clients) we see 8 registrations.
    In SM59 for the TCP/IP RFC destination, the central instance gateway host and service are entered in the gateway options fields.
    The result is that is possible to call the external RFC (web service in our case)  from all 5 app servers from R/3 and the calls are load balanced on the 8 RFC server threads.
    For the gateway parameters, have a look at SMGW --> goto --> parameters --> Change
    You have several  parameters about several timeouts and connection numbers....
    Hope this helps,
    Olivier

  • RFC  from Sap R/3 to IBM Mainframe...

    I should create an RFC from R/3 based on Unix sistem/Oracle to a Mainframe system.....
    Any advise on that ?
    I never created rfc like that....
    thanks and regards

    Hi Mauro,
    Below is the steps to connect to an external MS-SQL server from ABAP... similarly, you can explore connecting to a mainframe...
    Regards,
    Raj
    Connecting to an External database from SAP
    <b>Step 1</b>: Create an entry for the External database in DBCON table using Trxn: DBCA.
    Table: DBCON (Description of Database Connections)
    Field Name     Description           Value (For: E.g.:)
    CON_NAME     Logical name for a      RAJ
    database connection     
    DBMS     Database system     MSS
    USER_NAME     Database user     <username>
    PASSWORD     Password for setting up the connection to the database     <pwd>/<pwd>
    CON_ENV     Database-specific information for a database connection     MSSQL_SERVER=depotserver MSSQL_DBNAME=HOF_INDORE
    DB_RECO     Availability type for an open database connect     
    <b>Step 2</b>: Now you can write code to connect to the external database…
    <b>Your Sample code can be something like this……</b>
    FUNCTION-POOL z_houston.                    "MESSAGE-ID ..
    DATA: BEGIN OF wa,
    c_locid(3),
    c_locname(50),
    c_locstate(5),
    END OF wa.
    FUNCTION z_houston_connect.
    ""Local interface:
      EXEC SQL.
        CONNECT TO 'RAJ' AS 'V'
      ENDEXEC.
      EXEC SQL.
        SET CONNECTION 'V'
      ENDEXEC.
    *- Get the data from MS-SQL Server
      EXEC SQL.
        open C1 for
          select
              loc_id,
              loc_name,
              loc_state
          from ho_loc_mast
      ENDEXEC.
      DO.
        EXEC SQL.
          FETCH NEXT C1 into :wa-c_locid, :wa-c_locname, :wa-c_locstate
        ENDEXEC.
        IF sy-subrc = 0.
          PERFORM loop_output.
        ELSE.
          EXIT.
        ENDIF.
      ENDDO.
      EXEC SQL.
        CLOSE C1
      ENDEXEC.
    ENDFUNCTION.
    *&      Form  LOOP_OUTPUT
          Output
    FORM loop_output .
      WRITE: /5 wa-c_locid, 10 wa-c_locname, 65 wa-c_locstate.
      CLEAR wa.
    ENDFORM.                    " LOOP_OUTPUT

  • Making a call to a Business Connector Flow Service from within an ABAP prog

    Hello,
    I am trying to make a change to one of the flow services within BUsiness COnnector.
    The way the system is currently set up is that the flow service is called from within an ABAP program via an RFC call.
    A remote FM exists in SAP and this is called by the program and there is a corresponding flo service within Business Connector.
    I have basically copied an existing flow service which works fine and made a few minor tweaks. Within SAP, I have copied the remote FM and again made a few minor tweaks.
    However, when I run the program, it short dumps at the point whee my remote FM is called with th following message :-
    "Unknown Partner and Message Type. Sender: xxxx Receiver: xxxx MsgType:  "
    I am not a Business Connector expert and I guess I am missing a ste but I'm not sure what it is.
    Can anyone advise?
    Thanks,
    Ruby

    Hello,
    I am trying to make a change to one of the flow services within BUsiness COnnector.
    The way the system is currently set up is that the flow service is called from within an ABAP program via an RFC call.
    A remote FM exists in SAP and this is called by the program and there is a corresponding flo service within Business Connector.
    I have basically copied an existing flow service which works fine and made a few minor tweaks. Within SAP, I have copied the remote FM and again made a few minor tweaks.
    However, when I run the program, it short dumps at the point whee my remote FM is called with th following message :-
    "Unknown Partner and Message Type. Sender: xxxx Receiver: xxxx MsgType:  "
    I am not a Business Connector expert and I guess I am missing a ste but I'm not sure what it is.
    Can anyone advise?
    Thanks,
    Ruby

  • Sender RFC from Third Party System

    I have a vendor who is actually communicating through RFC from third party Application to SAP R/3. Now we are trying have XI in between. Where as with minimal impact on both sides.
    Solution.
    1. Have the RFC made as ZRFC in XI. Let the vendor call the RFC in XI ABAP and internally make an RFC call through XI Interface to R/3 as Sync Interface. Because we need to report the information back to the system where the request initiated.
    2. Have RFC INI file copied as SAP Suggests under one of the folders. Develop the regular RFC to RFC Interface via XI.
    Is there any other alternatives other than the above mentioned solutions? Or out of those 2, which one will provide the best performance
    Appreciate any feedback. Please advice

    That's exactly what we are trying to achieve here. By Eliminating direct connection R/3, we are placing XI in between. But with the budget/timeline constraints from the Partner side, we are trying to have minimal change on the partner side. They might not change something to web service etc...
    Here is the text about INI file
    You can configure the non-SAP RFC client to connect to the sender communication channel in the following ways:
    ■       By defining the parameters PROGID, gateway-host, and gateway-service within the saprfc.ini-file using RFC-SDK.
    ■       By using appropriate parameters in the function RfcOpenEx.
    If you use the saprfc.ini-file, the respective RFC destination has to be of type R.
    All the parameter values used within the saprfc.ini-file or with the function RfcOpenEx should match the entries maintained within the corresponding sender communication channel.
    Example for the saprfc.ini-file is as follows:
    DEST=RFCCLIENTEXT
    TYPE=R
    PROGID=P106646.HKExternalClient
    GWHOST=pwdf2153
    GWSERV=sapgw40
    Please check the following link, for the same  text on RFC Sender
    [Help.SAP|http://help.sap.com/saphelp_nw04/helpdata/en/67/6d0540ba5ee569e10000000a155106/content.htm]
    Using the same Sender RFC for non-SAP System, please share any ideas

  • Call RFC from DELPHI Windows Services Program

    Hi all,
    Are there any way to call RFC from DELPHI Windows Services Program?
    Best regards.
    Munur EBCIOGLU

    Hi again Bhagat,
    1. Yes, it's included on 7.4 ABAP Stack (SAP NetWeaver 7.4 SP8 - Optimized for SAP HANA, Cloud and Mobile - Service Release 2 available now!). In a recent customer, SAP licences GW by user but there are other license model like session licensing: https://store.sap.com/sap/cp/ui/resources/store/html/SolutionDetails.html?pid=0000009470&catID=&pcntry=US&sap-language=EN&_cp_id=id-1385059687642-0
    2. You could install as an AddOn on your 7.3 system, there are many options depending on your desired infrastructure: SAP Gateway deployment options in a nutshell For example our customer have deployed Central Hub Gateway in a standalone stack ABAP to act as an standalone oData bridge between ABAP/nonAbap systems.
    3. You could deploy SAPUI5 apps in 7.x, Java Web Servers or HTTP Web Servers. You must consider your SSO scenario:
    - SSO Logon Tickets. You will need to configurate SSO Logon Tickets between SAP NW Portal & SAP NW Gateway & your backend (ECC, etc). In order to pass SAP session cookie you will need setup SAP Web Dispacther and access portal & gateway throught SAP WD with the same domain.
    - SAML2 Tickets. This scenario lets you provide portal & gateway on different domains enabling SSO. You could configure SAP NW Portal as an Identity Provider and other systems must trust SAP Portal as IdP.
    Cheers

  • How to call RFC from Power Builder

    Hi,
    I am using Power Builder Tools and I want to know how can i call RFC from Power Builder
    Thanks for ur reply

    Hi,
    Although I have not worked with Powerbuilder, I am sure if you have a certain level of proficiency with it, you will be able to code your logic that will call your wrappers written in VB/C/.NET etc. Check out the wonderful weblog by Thomas Jung on integrating ActiveX controls with ABAP Control Framework at https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/995. [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    Do get back if you have further queries.
    Regards
    Message was edited by: Shehryar Khan

  • How to exit from a WebDynpro ABAP application and open another url

    Hi Friends,
    How to exit from a WebDynpro ABAP application and open another url like (www.yahoo.com) in the same window of the WD4 application on click of a Button?
    Regards,
    Xavier

    Hi,
    First of all you should create outbound plug in the window you are trying to exit with plufg type "Exit"
    Then create method handler in the view with this code
            data lo_view_cntr type ref to if_wd_view_controller.
            data lo_win_cntr type ref to if_wd_window_controller.
            data: l_parameter_list type wdr_event_parameter_list,
                  l_parameter type wdr_event_parameter,
                  l_val type ref to data,
                  l_val_url type REF TO data.
            field-symbols: <fs> type any,
                           <fs_url> type any.
            lo_view_cntr  = wd_this->wd_get_api( ).
            lo_win_cntr = lo_view_cntr->get_embedding_window_ctlr( ).
            CREATE DATA l_val type c.
            CREATE DATA l_val_url type string.
            ASSIGN l_val->* to <fs>.
            ASSIGN l_val_url->* to <fs_url>.
            <fs> = 'X'.
            <fs_url> = 'http://your-link.com'.     
            l_parameter-name = 'URL'.
            l_parameter-value = l_val_url.
            INSERT l_parameter INTO TABLE l_parameter_list.
            lo_win_cntr->if_wd_view_controller~fire_plug( EXPORTING plug_name = 'EXIT_PLUG'
                                                                    parameters = l_parameter_list ).
          You can easily change this logic to exit application instead of redirecting to the site
           just changing to
           l_parameter-name = 'CLOSE_WINDOW'.

  • How to call the RFC from XI system

    Dear Friends,
        My requirement is RFC to RFC scenario      i.e SAP to XI to Third party system.
    I have the BAPI_EUQI_CREATE rfc, this RFC is available in ECCsystem, that RFC I imported in XI system, so third party system how to call this RFC.
    please give me the suggestion it is very helpful.
    Regards,
    Shalini Shah

    Hi Shalini,
    You have create a RFC in the 3rd party system and import that RFC in XI System using 3rd party adapter.Do the necessary mapping and configure the sender RFC Adapter and at receiver side configure 3rd paty Adapter.
    The 3rd party adapters must be installed via Deploy Tool or JSPM. But u should have a sda file with the adpater content.
    see here for more details on JSPM
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5006901f-925c-2910-5f98-9ae26cc07eca
    For more info:
    If you still want to do it,
    1. Import the RFCs of sender and of receiver.
    2. Do the necessary mapping.
    3. Configure sender and receiver RFC adapters.
    Before that check if you have RFC destination for the RFC adapter. If not You should establish it. To establish an RFC destination for the RFC adapter.
    1. Call the transaction Display and Maintain RFC Destinations (SM59).
    2. Select an existing RFC destination of type ABAP Connections (for example, ABAP_Old) by double-clicking it.
    3. Choose Destination ® Copy and copy the RFC destination using a new name (for example, ABAP_New).
    4. Save the new RFC destination (ABAP_New) and delete the old RFC destination (ABAP_Old).
    5. Create a new RFC destination (for example, RFC_Adapter) of type T (TCP/IP connection) as the RFC destination for the RFC adapter.
    6. Select the registration type Registered Server Program and in the Program ID field enter the corresponding program ID from the configuration of the sender RFC adapter.
    7. In the Gateway host and Gateway service fields, enter the gateway host and gateway service from the configuration of the sender RFC adapter.
    8. If the sender system is a Unicode system, define the RFC destination as Unicode.
    9. Using the name of the old ABAP connection (ABAP_Old), create a new RFC destination of type L (logical destination with reference entry).
    10. In the Reference Entry field enter the RFC destination (RFC_Adapter) for the RFC adapter.
    For more details take a look at this link. http://help.sap.com/saphelp_nw70/helpdata/en/25/76cd3bae738826e10000000a11402f/content.htm
    Dont forget to Reward points if this helps
    Regards
    Pragathi.
    Edited by: Pragathi on May 24, 2008 7:21 AM

  • Passing table to the RFC from BSP!

    Dear friends,
    I am trying to call a RFC (on 4.6c) from a BSP page( on a 6.20 System). i am trying to pass a table from the BSP to the RFC and get the result back. This is not working as expected.
    The Function module  at R3 (4.6c) which takes a table as an input and gives string as an output.
    The code is for Function module is given below.
    <b>FUNCTION ZBHAVIN1.
    ""Local interface:
    *"  EXPORTING
    *"     VALUE(TEMP) TYPE  STRING
    *"     VALUE(TEMP1) TYPE  STRING
    *"  TABLES
    *"      ITAB STRUCTURE  ZITAB
    TEMP  = ITAB-MESSAGE.
    TEMP1 = ITAB-MESSAGE1.
    ENDFUNCTION.</b>
    To call this function module the code for the bsp page (created on a 6.20 System) is :
    <b>
    <%@page language="abap"%>
    <% TYPE-POOLS ZBSP1. %>
    <html>
      <head>
        <link rel="stylesheet" href="../../sap/public/bc/bsp/styles/sapbsp.css">
        <title> Display Page </title>
      </head>
      <body class="bspBody1">
        <%
        DATA TEMP2  TYPE STRING.
        DATA TEMP3 TYPE STRING.
        DATA ITAB1 TYPE TABLE OF ZBSP1_ITAB11.
        DATA WA LIKE LINE OF ITAB1.   
        WA-MESSAGE  = 'THIS IS FIRST ELEMENT'.
        WA-MESSAGE1 = 'THIS IS SECOND ELEMENT'.
        APPEND WA TO ITAB1.
        CALL FUNCTION 'ZBHAVIN1'
             DESTINATION 'TCLCLNT200'
               IMPORTING
                  TEMP  = TEMP2
                  TEMP1 = TEMP3
               TABLES
                  ITAB  = ITAB1
               EXCEPTIONS
                 OTHERS = 1.
        %>
        <P><%=  TEMP2  %>
        <P><%=  TEMP3 %>
      </body>
    </html></b>
    This code is not working for me as it is.
    If i remove the comments, then it works, which means that the table passed from the BSP has no Header Line.
    So , do i need to always chnage my Receving RFC to take care of this issue? or is there a way to pass the Tabkle with Header line to the RFC from BSP?

    You'll have to define a table type either in the Types tab of the BSP application or as a Dictionary object.
    Then you can define a page attribute for the table and call the code from your OnCreate event handler (just to clean up your page layout)
    You have to remember that you are working with the whole OO context and so working with the tables inside the BSP are quite different.
    Have a look at this article for some examples: https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/unkown/exploring bsp development and the miniwas.htm

Maybe you are looking for