Inbound RFC Adapter

Hello,
    When we are making a "call function Zfunction destination dest" for R3 --> XI --> ..., what/where exactly this Zfunction is?
My understanding is that it is the Inbound interface name defined in XI. i.e. the Sender system interface is Zfunction. Is this correct? If not please clarify me.
Thanks,
Ramesh B

Hi Ramesh,
Zfunction will be uploaded into the repository before. Its acting as an outbound-Interface. The RFC-Adapter translates your call from the R/3 into XML. The R/3-destination points to the RFC-Adapter.
Regards Udo

Similar Messages

  • Sender RFC Adapter, missing import structure in inbound messages

    Hi, I have a simple scenario RFC- RFC-Adapter - XI - SOAPAdapter - Webservice.
    RFC has import parameter eblen type ekko-ebeln, and s_ekko type ekko.
    Tables, it_ekpo, it_eket etc.
    If i execute my interface, the tables and import parameter eblen is showed in Messages but not s_ekko. Import parameter is not empty. Th empty tables are showed to with tag </it_eket> but not s_ekko, if it doesnt exist.
    I reimport rfc and maked complete cashe refresh but it doesnt help.
    Have any an idee.
    Thanks and regards
    Hüsniye

    Have you done a CPA Cache refresh? Do this by opening URL http://server:port/CPACache/refresh?mode=full on your XI server.
    The adapter engine caches metadata and sometimes this can get a bit out of sync. Try refreshing the CPA Cache or disabling and then re-enabling your RFC Adapter.
    MJ

  • Receiver RFC adapter issue! Please help!

    Hi Experts,
       I have 4 XI interfaces. All of these are Webservice to RFC scenarios. Moreover all of them are synchronous.
      Request message: Webservice (SOAP Adapter) ---> XI -
    > RFc Adapter ---> ECC Function modules
      Response message: Webservice (SOAP Adapter) <- XI < RFc Adapter <- ECC Function modules
    As you can see above, external system calls XI web service via SOAP Adapter. The input data is then sent from SOAP Adapter to RFC adapter to call RFC function module in the receiving side.  The receiving system is SAP ECC system.
    The receiver ECC system has two instances. For example SP0 ad SP1. 
    In the receiver determination step we have maintained a rule such that if the Plant value in the input message is XYZ then send data to SP0. But if the plant value in ABC then send data to SP1.
    This Conditional rule is working fine.
    However we are getting couple of issues with only one instance of ECC (SP0).
    1. com.sap.engine.interfaces.messaging.api.exception.MessageExpiredException: Message badfa070-b163-11de-a4c1-001cc495e48a(INBOUND) expired
    2. NO_MAPPINGPROGRAM_FOUND. Mapping program is not available in runtime cache: Object ID C2B41FFDFD4635BAB1E41AE53C0D10CE Software Component 5394F420463611DAC1CFFBBC0A01BC16
    3. com.sap.engine.interfaces.messaging.api.exception.MessagingException: No response available
    The above listed errors are generated occasionally. Sometimes no errors are generated even when the same input data is sent again and message is successfully processed.
    I have verified the input data and everything is OK with that.
    Mapping object is available in XI and cache was also refreshed. I additionally reactivated the objects in XI as well.
    So what could be the real root cause of this? Please help!
    Thanks
    Gopal

    1. com.sap.engine.interfaces.messaging.api.exception.MessageExpiredException: Message badfa070-b163-11de-a4c1-
    001cc495e48a(INBOUND) expired
    Check the Timeout parameter of your adapter.....for requests which expire with this error confirm from the SAP end that the message processing is done well within the Timeout period of the adapter.
    Refer this note for more info on the above occuring error and the possible way to avoid it: https://service.sap.com/sap/support/notes/791379
    Update:
    Even problem 3 seems to be occuring due to insufficient Timeout specified for the adapter.....if possible try increasing the Timeout in VA
    Regards,
    Abhishek.
    Edited by: abhishek salvi on Oct 6, 2009 1:42 PM

  • RFC Adapter

    Hi
    I am using RFC adapter, I am facing java.lang.outOfMemory Exception whenever payload size increases.
    Important point: In XI everything is successful.
                     But in R-3 I am facing the problem.
    Please guide me, how to solve this issue.
    Piyush

    Hi All
    I have set up the connection for Integration builder in R-3.
    In sproxy I am able to see inbound and outboud interfaces, I have generated the class for th outbound interface and configured default logical port for the same.
    The report is as follows:
    REPORT  ZAK_TEST_PROXY.
    DATA:
    Reference variables for proxy and exception class
      lo_clientProxy     TYPE REF TO ZCO_EMPLOYEE_MASTER_DAT,
      lo_sys_exception   TYPE REF TO cx_ai_system_fault,
    Structures to set and get message content
       ls_request         TYPE ZEMPLOYEE_MASTER_DAT361,
       ls_response        TYPE ZEMPLOYEE_MASTER_DAT360.
       Instantiate your client proxy.
    TRY.
    create proxy client
        CREATE OBJECT lo_clientProxy.
       ( ‘LOGICAL_PORT_NAME’ )
    *LOGICAL_PORT_NAME is the name of the logical port that you want to use, which is used to define the receiver. You can omit this parameter if you are using a default port or the XI runtime.
         To send a message, call the corresponding client proxy method. WSDL allows several such methods (specified by the element <operation>). In XI, there is only one method, with the default name EXECUTE_SYNCHRONOUS or EXECUTE_ASYNCHRONOUS. Catch at
    *least the exception cx_ai_system_fault:
    do synchronous client proxy call
        CALL METHOD lo_clientProxy->execute_synchronous
                 EXPORTING output  = ls_request
                 IMPORTING input   = ls_response.
        CATCH cx_ai_system_fault INTO lo_sys_exception.
      Error handling
    write:/ lo_sys_exception->errortext.
    ENDTRY.

  • Sender RFC Adapter AND Rec. File Adapter

    Hi
    Workflow of my scenario is like this :
    <b>SAP R/3 ---> Sender RFC Adapter ---> XI Server -
    > Rec. File Adapter -
    > Legacy System</b>
    I am using Async Inbound interface for this as I dont need any response back & I just need to create file.
    I am just picking some data from BAPI & creating a file on a folder in Legacy System.
    Now during execution, file is getting created but I am getting dump on SAP R/3 and even when I am using Async communication, response is coming back from Legacy Business System ( service ) & giving an error " <i>No Mapping Program Found</i> " in sxmb_moni.
    Kindly suggest how can I avoid getting response from Legacy System. Pls. take note again I am using Async Inbound Interface.
    Regards
    - Lalit -

    Hi Lalit,
    When your RFC is called from R/3 by default it would be in Sync mode. When this is in Sync mode it obviously will expect a response and where as in your scenario XI dose'nt give any response and there is no mapping for that and I think that is the reason you are getting that error.
    So when your Sender RFC is triggered it will like this in ABAP
    CALL Function "Function Name" <SM59 Destination>
    and this is Sync call. To make it Async i should be
    CALL Function "Function Name" IN BACKGROUND TASK <SM59 Destination>
    Hoep this helps
    Thanks,
    Prakash

  • Sender RFC Adapter-- XI-- File Receiver Adapter ?

    Dear Expert,
            we are on PI 7.0 & R/3 system 4.7E WAS < 6.20.  We have a scenario where in there are some huge downloads are required from R/3 to FTP File Location. For such scenarios Normally Poxy is suggested but Due to WAs Version limitation we cannot use Proxy. The other alternative is to use SENDER RFc adapter using RFC destination with XI. we have configured the RFC destination it is working fine.
    I am able to receive the message also in XI. But whenever i am running this RFC in R/3 it is giving me the shot dump as follows. :
    <b>call to messaging system failed: com.sap.aii.af.ra.ms.api.DeliveryException:</b>
    The File is also getting written to the destination properly. But in XI also i get the following error.
    <b>  <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Request Message Mapping
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="MAPPING">NO_MAPPINGPROGRAM_FOUND</SAP:Code>
      <SAP:P1>http://Test/Zbilldwd ZBILLDWD_FILE_IM</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Interface mapping http://Test/Zbilldwd ZBILLDWD_FILE_IM does not exist in runtime cache</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error></b>
    What could be the reason of this.? As well i am geting 3 error messages in XI.
    I have defined this interface as Inbound / Async Message interface with input message as output file structure. ( Is this configuration is OKAY ?)
    pl. help me to solve this error.
    Regards,
    Umesh

    HI,
    Check your configuration from the message it states that it can not find out the mapping program.
    Check the configuration Receiver and interface determination whether you are using the same which is designed in repository.
    Thanks and Regards,
    Chirag Gohil

  • RFC Adapter not getting data

    Hi experts!
    I am developing a RFC to File scenario on PI 7.1 EHP1 and ECC 6.0 which is synchronous. Following the Help page Setting Up an RFC Destination for the RFC Adapter I created two destinations. The fist one is a TCP/IP, name RFCDE1COMPANY2, program id BAPI_COMPANY_GETLIST and corresponding gateway host and service I found at SMGW (Parameters). The second one is a Logical with name RFCDE1and reference entry RFCDE1COMPANY2.
    At my RFC Sender Adapter I configured the same gateway info and the same program id. After that I tested both destinations and it worked. I created the following report to call the bapi on that destinations::
    REPORT  ZREP_BAPI_COMPANY_GETLIST.
    DATA: company_list TYPE STANDARD TABLE OF BAPI0014_1.
    CALL FUNCTION 'BAPI_COMPANY_GETLIST'
      IN BACKGROUND TASK
      DESTINATION 'RFCDE1'
      TABLES
         COMPANY_LIST = company_list.
    COMMIT WORK.
    At SXMB_MONI the request message was processed and the output file generated, but it has only the root tag. At moni the inbound message has no data (company data).
    I tested the BAPI_COMPANY_GETLIST at SE37 and there are 149 entries. When I executed this same BAPI with RFC target sys configured to my destination, it didn´t show any data and has an exception called SYSTEM_FAILURE. I think probably the error is on RFC destinations but I can´t figure it out what is wrong.
    Best Regards,
    Gabriela

    Hi experts,
    Thank you all for your quick response.
    At the TCP/IP Destination there is a button "Unicode Test", according to this test my target system is unicode (character size 2). I changed the option at MDPM&Unicode on that TCP/IP Destination like Madhusudana described. I also selected the checkbutton "Unicode" on sender RFC communication channel.
    About the sync/async, I will not use sync async bridge because this scenario can be async. One think that I realized is that when I call my report, I am implicitly calling PI asynchronously and when I call the BAPI directly by the test tool, I am implicitly calling PI synchronously. That is why most part of my tests did not work before.
    Now I can see on SXMB_MONI that the scenario worked and the file was generated. But the data are still not being showed on inbound payload. I think something is wrong with my destinations but I can´t figure it out what is.
    Ps.: I would prefer to use XI proxies, but this scenario will be configured (not now) on a XI 3.0 with ERP 4.6 C. Now I´m just learning how to handle with RFC Adapter.
    Any ideia?
    (Points granted)
    Thank you and best regards,
    Gabriela

  • JDBC to File and RFC adapter

    Hi All,
    In my scenario, i am sending file from a database system to SAP system. Here I am using JDBC/ webserveices adapter at outbound side  to query the database and FILE and RFC at inbound side to send file and workflow notification.
    my requirement is to send file as batch to SAP system(after business hours), send workflow notiication to the responsible person, and when the file is stored on application server then only i should send the notification to the person.
    I know this can be acheived by BPM by using wait step but I am  not sure how to do it only for RFC adapter to kick the notification once the file has stored and confirmed.
    Can anyone help me in this issue.
    Reg
    Sre.

    >
    sre wrote:
    > Hi All,
    >
    > In my scenario, i am sending file from a database system to SAP system. Here I am using JDBC/ webserveices adapter at outbound side  to query the database and FILE and RFC at inbound side to send file and workflow notification.
    > my requirement is to send file as batch to SAP system(after business hours), send workflow notiication to the responsible person, and when the file is stored on application server then only i should send the notification to the person.
    >
    > I know this can be acheived by BPM by using wait step but I am  not sure how to do it only for RFC adapter to kick the notification once the file has stored and confirmed.
    >
    > Can anyone help me in this issue.
    >
    > Reg
    > Sre.
    There are two options,
    1. With BPM you can have the send step for file request an acknowledgment and then have the send step for the RFC call after the previous file send  step.
    2. Without BPM, use the same Business system (single receiver det.) and have multiple interface determination (file&RFC). Use the option maintain order at runtime and have the file interface above the RFC. This will act like an EOIO.

  • Error in pushing a request to R3 System using RFC Adapter

    I am trying to send a request to R3 system using an RFC Adapter as my end point and pointing to
    the Application server of the  R3 box.
    In the Transaction SM58 I see and error saying "<i><b>Exception in handleRequest of server Xmb2RfcService: java.lang.Exception:</b></i>"
    Here are the corresponding details:
    Caller: CENTRALADMIN
    Function Module: SRFC_ADAPTER_SERVICE
    Target System: AI_RFCADAPTER_JCOSERVER
    Host: .... (The XI Server)
    Program: SAPMSSY1
    Clnt: 100
    As per the SRFC_ADAPTER_SERVICE function module, the <i><b>purpose stated so...
    "This function is the glue between the JCo RFC Inbound Adapter and the XMS Pipeline."</b></i>
    By the by the RFC adapter is started and I can see no activity in the log after startup.
    I would really appreciate for any idea/leads in solving this. Thanks.<b></b>

    Here are the details
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Config File for RFC Adapter%%%%%%%%%%%%%%%%%%%%
    RFC ADAPTER CLASSNAME FOR ADAPTER ENGINE
    classname=com.sap.aii.rfcadapter.core.RfcAdapterModule
    RFC ADAPTER CONFIGURATION PROPERTIES
    Tue Jan 21 13:27:43 CET 2003
    1. GENERAL SECTION
      1.1 trace settings
    RfcAdapter.trace=2
    -> adapter trace level 0 = none
                           1 = error
                           2 = standard
                           3 = request
                           4 = payload
                           5 = binary payload outbound
    #RfcAdapter.traceStack=0
    #RfcAdapter.listenException=0
    #RfcAdapter.listenState=0
    -> additional trace switches (in general not needed)
    RfcAdapter.traceFile=./LogFiles/Adapter_rfc.log
    -> name of trace file (traces to stdout if not specified)
       NOTE: in a productive environment, the trace file should be written to the
             log-file directory of the Adapter Engine
      1.2 connectivity settings
    RfcAdapter.registerInbound=sourceBackendXD1
    -> space-delimited list of logical names for inbound R/3 systems subsections.
       The adapter will register with all R/3 systems defined in this list and
       those systems can send RFC requests into the XI via an RFC destination
       that has to be setup in SM59 to point to the RFC Adapter
    RfcAdapter.accessInbound=toXmb
    -> logical name for inbound access to XMB subsection
    RfcAdapter.registerOutbound=fromXmb
    -> logical name for outbound access from XMB subsection
    RfcAdapter.accessOutbound=targetBackend
    -> space-delimited list of logical names for pre-allocated outbound R/3 systems subsections.
       This is an option to speed up connection setup during request processing. The RFC Adapter
       preallocates sessions to all listed R/3 systems.
    RfcAdapter.clientCloseConn=1
    -> close calling connections after call (1) or just reset session (0)
       NOTE: the reset mechanism is slightly faster for request processing. However, it does
             not re-connect after a target system shutdown and hence requires a restart of the
             RFC Adapter in such a situation.
    #RfcAdapter.maxDynPools=128
    -> maximum number of dynamically allocated client pools to access outbound R/3 systems
    #RfcAdapter.minDynPoolSize=4
    -> initial number of clients in dynamically allocated client pools
    #RfcAdapter.incDynPoolSize=4
    -> increment number of clients in dynamically allocated client pools
    #RfcAdapter.maxDynPoolSize=64
    -> maximum number of clients in dynamically allocated client pools
    2. SUBSECTION FOR REGISTRATION TO CLIENT APPLICATION SYSTEMS
    (one subsection per incoming R/3 system; requires callback service user for repository access)
    RfcAdapter.sourceBackendXD1.host=db03
    RfcAdapter.sourceBackendXD1.sysnr=00
    RfcAdapter.sourceBackendXD1.progid=Rfc2XmbService
    -> recommended is: RfcAdapter.sourceBackend.progid=Rfc2XmbService
    RfcAdapter.sourceBackendXD1.poolsize=5
    RfcAdapter.sourceBackendXD1.unicode=1
    -> source system is Unicode installation (1) or not (0)
    RfcAdapter.sourceBackendXD1.client=500
    RfcAdapter.sourceBackendXD1.user=XIAPPLUSER
    RfcAdapter.sourceBackendXD1.passwd=********
    RfcAdapter.sourceBackendXD1.lang=EN
    RfcAdapter.sourceBackendXD1.trace=2
    -> enable RFC trace for this connection (1) or not (0)
    #RfcAdapter.sourceBackendXD1.sncName=<SNC_name_of_adapter>
    -> e.g. RfcAdapter.sourceBackendXD1.sncName=p:CN=USERNAME, O=ORGNAME, C=DE
    #RfcAdapter.sourceBackendXD1.sncLib=<SNC_library_path>
    -> e.g. on Win2K: RfcAdapter.sourceBackendXD1.sncLib=C:
    Program Files
    SECUDE
    SECUDE for R3
    secude.dll
    #RfcAdapter.sourceBackendXD1.sncQop=<SNC_quality_of_protection>
    -> 1,2,3,8,9 e.g. RfcAdapter.sourceBackendXD1.sncQop=1
    #RfcAdapter.sourceBackendXD1.sncAcl=<SNC_access_control_list>
    -> logical names for allowed callers e.g. RfcAdapter.sourceBackend.sncAcl=peerB6A peerB6Q
    #RfcAdapter.sourceBackendXD1.sncAcl.peerB6A=p:CN=B6A, O=SAP-AG, C=DE
    #RfcAdapter.sourceBackendXD1.sncAcl.peerB6Q=p:CN=B6Q, O=SAP-AG, C=DE
    -> details for peer ACL lists
    3. SUBSECTION FOR ACCESS TO XMB INBOUND RFC SERVICE
    (only one entry possible)
    RfcAdapter.toXmb.host=web03
    RfcAdapter.toXmb.sysnr=00
    RfcAdapter.toXmb.poolsize=5
    RfcAdapter.toXmb.client=100
    RfcAdapter.toXmb.user=XIAPPLUSER
    RfcAdapter.toXmb.passwd=******
    RfcAdapter.toXmb.lang=EN
    RfcAdapter.toXmb.trace=2
    4. SUBSECTION FOR REGISTRATION OF XMB OUTBOUND RFC SERVICE
    (only one entry possible)
    RfcAdapter.fromXmb.host=web03
    RfcAdapter.fromXmb.sysnr=00
    RfcAdapter.fromXmb.progid=Xmb2RfcService
    this value must be in sync with Program Id setting for AI_RFCADAPTER_JCOSERVER in SM59
    RfcAdapter.fromXmb.poolsize=5
    RfcAdapter.fromXmb.unicode=1
    -> source system is Unicode installation (1) or not (0)
    RfcAdapter.fromXmb.trace=2
    5. SUBSECTION FOR ACCESS TO SERVER APPLICATION SYSTEMS
    (one subsection per outgoing R/3 system; pre-allocated connection pools via service user)
    RfcAdapter.targetBackend.host=db03
    RfcAdapter.targetBackend.sysnr=00
    RfcAdapter.targetBackend.poolsize=5
    RfcAdapter.targetBackend.client=500
    RfcAdapter.targetBackend.user=XIAPPLUSER
    RfcAdapter.targetBackend.passwd=*******
    RfcAdapter.targetBackend.lang=EN
    RfcAdapter.targetBackend.trace=2
    END OF RFC ADAPTER CONFIGURATION PROPERTIES
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Log data for the adapter%%%%%%%%%%%%%%%%%%%%%%%%%%
    Fri Sep 24 09:50:09 EDT 2004 *****
    09:50:09 (6011): RFC adapter initialized
    09:50:09 (6031): RFC adapter started
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%SM59 entries on the XI box%%%%%%%%%%%%%%%%%%%%%%%%%%
    Name: AI_RFCADAPTER_JCOSERVER
    Program ID: Xmb2RfcService
    Action Type: Registered Server Program
    Gateway: web03  (Local XI box)
    Gateway Service: sapgw00 (00 is the system number)
    Name: XI_SERVER
    Program ID: Rfc2XmbService
    Action Type: Registered Server Program
    Gateway: db03  (R3 box)
    Gateway Service: sapgw00 (00 is the system number for R3)
    Both the entries are tested fine.

  • RFC adapter - AE_DETAILS_GET_ERROR - no adapter engine

    Hello,
    have a strange error.
    Our scenario connects two R/3 systems via RFC adapter (outbound / inbound) for an RFC in a standard R/3 function module SUSR_ZBV_GET_REMOTE_PROFILES.
    The RFC is synchronous.
    When starting the RFC call from the sender system the error message in the trace is "exception while reading from SLD:Property sap_xiadapterservice.adapterType does not exist".
    Message in RWB:
    "Transmitting the message using connection http://abc038.ceu.test.com:8077/sap/xi/engine?type=entry failed, due to: XIServer:AE_DETAILS_GET_ERROR:Property sap_xiadapterservice.adapterType does not: Unable to find any Adapter Engines."
    - SLD connection is working
    - Vis.Admin.: no problems found
      (SAP RFC adapter active)
    - Component monitoring: no errors
    - all rfc connections checked: ok
    Does anybody have an idea, how to fix that?
    Best regards
    Dirk

    Hello Dirk and all posters,
    We get the same problem just as you described.
    We also see no entries in the sxi_cache part for the adapter engine which indicates a problem in getting AE metadata from the SLD.
    I see we are all not alone so i believe SP12 is the cause for the problem.
    We have another SP11 system that works well.
    We tried all those things to understand the problem:
    1. look at the structure of the calsses maintained in the SLD to make sure the property "adapterType" exists.
    2. Checked the log of the SLD with level "Finest" to make sure the data for the property is sent - all OK.
    3. Try to completely delete SLD and reimport CIM 1.4 and CR content 2.0 - all the latest from the web - problem still exists.
    4. Put a huge trace on the RFC gateway in the ABAP engine to make sure all XML data is received from SLD server including specific proprty. all ok.
    5. Of course we made sure all caches are refreshed, access to SLD is performed all right (logs, traces).
    6. Try to disable SM59 entry: SAPSLDAPI and look at the trace in SXMB_MONI. It shows error of connection of course instead of the error of the non exsitene property. But it still shows the error for not getting the access data - so this is only a side affect of the real problem.
    Now, as you can see we turned the system from inside out.
    I beleive the problem is SAP's problem regarding the parsing of the COM model in the CIM client. I believe that if i could debug the actual abap that parses the XML in the ABAP WAS i would find the problem - i could'nt find a way of debugging the actual processing of a message in QRFC so i'm stuck here.
    - Does all of you who have the problem has SP12 ?
    - Does any one have an idea of anything else we can all check ?
    Good luck for us all :->
    Yoad Snapir.

  • RFC adapter Template changed

    Hi ,
      I happened to change my RFC template by mistake. Could anyone please provide me with the original unchagned RFC ADAPTER template please. It will be really helpful if you can provide me RFC inbound and outbound templates.
    Regards
    Amit

    Amit,
    If you still need the original RFC adapter template, give your email id.
    KP,
    The template is the original RFC adapter properties file that comes along with XI Adapter Engine. You can modify to suit your requirements.
    Regards,
    Homiar.

  • XI and RFC adapter

    Hi
    The RFC Adapter configuration has been done successfully and the adapter starts up successfully.
    In our scenario, we attempt to receive an xml message from my local machine through a file adapter, and pass this along to the RFC Outbound adapter to execute a RFC on the CRM box. 
    The following error message is encountered in the XI monitoring tool.
    ==============================================================================================================
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--
    Inbound Message
      -->
    - <SAP:ErrorHeader xmlns:SAP="http://sap.com/exchange/MessageFormat">
      <SAP:Context />
      <SAP:Code p1="connection closed (no data)" p2="" p3="" p4="">RFC_ADAPTER.SYSTEM_FAILURE_OUTBOUND</SAP:Code>
      <SAP:Text language="EN">System error when calling the outbound RFC adapter (connection closed (no data))</SAP:Text>
      </SAP:ErrorHeader>
    ===================================================================================================
    I then stop the RFC adapter and attempt the scenario again.  I get the following error message in XI monitoring tool.
    ================================================================================================================
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--
    Inbound Message
      -->
    - <SAP:ErrorHeader xmlns:SAP="http://sap.com/exchange/MessageFormat">
      <SAP:Context />
      <SAP:Code p1="Exception in handleRequest of server Xmb2RfcService: java.lang.Exception: Bean n" p2="" p3="" p4="">RFC_ADAPTER.SYSTEM_FAILURE_OUTBOUND</SAP:Code>
      <SAP:Text language="EN">System error when calling the outbound RFC adapter (Exception in handleRequest of server Xmb2RfcService: java.lang.Exception: Bean n)</SAP:Text>
      </SAP:ErrorHeader>
    ==================================================================================================================

    Hi Eduardo ,
    Please check wether the following steps are done in BPM:
    1.Async Recieve
    A.Properties :
    Please set the following
    Message:Message 1
    Mode:asynchronous
    B.Container Data :
    Declare Message 1 as asynchronous abstract interface with message type of outbound interface(File Structure).
    2.Sync Send
    Pre-Requisite:
    Copy the inbound Syncronous Interface to Sync_interface_abstract by changing the direction in the message interface of Interface object in the Integration Repository.
    A.Properties
    Mode:Synchronous
    Request:Message 1
    Response:Message 2
    Syncronous Interface:Sync_interface_abstract
    Recievers From :Send Context
    B.Container Data:
    Message 2 should be declared as the asynchronous message interface with Response message type in inbound interface(Rec Syst Interface).
    3.Async send
    A.Properties:
    Mode:Asynchronous
    Message:Message 2
    Acknowledgment:None
    Recievers From :Send Context
    Integration directory has to be configured to send data forth and back to BPM.
    1.Send MESSAGE From Outbound interface to BPM.
    OutBound and Abstract Interface needs to be mapped in the interface determination and Abstract interface has to be binded to Business Process Name in the repository.
    Outbound->Your OutBound Interface(File Interface)
    Abstract->Message 1
    Reciever Service-> Your Business Process Name
    2.Send MESSAGE From  BPM to Inbound interface.
    Abstract and Inbound interface needs to be mapped in the interface determination and Abstract Interface has to be binded to the Receiver Service/Business System.
    Abstract->Message 1
    Inbound->Your Inbound Interface(RFC)
    Reciever Service-> RFC SYSTEM(SAP)
    These are the general steps to follow for Async/sync pattern.
    Please let me know if all the steps are configured.

  • Difference In RFC Adapter and XI proxy

    I am using RFC adapter for master data and XI proxy for transaction data , can anyone tell me what is major difference and what is negative point in using RFC adapter
    Thanking you
    sridhar

    Hi,
    Adapters enable the Integration Engine and the Partner Connectivity Kit (PCK) to communicate with different applications.Adapters connect the Integration Engine to SAP legacy systems, as well as to external systems.
    In this way, adapters integrate existing SAP components with SAP Exchange Infrastructure, for example. In the process, XML and HTTP-based documents are converted to IDocs (IDoc adapter) and RFCs (RFC adapter) and the other way around. This enables you to integrate your existing SAP infrastructure with the new SAP infrastructure, which is based on system integration and the exchange of XML messages.
    The plain HTTP adapter gives application systems the option of communicating with the Integration Engine and exchanging business data in a simple format, using an HTTP connection.
    RFC Adapter :
    The RFC adapter enables you to use the functions of the Integration Engine or the PCK in existing SAP landscapes. It is used by SAP systems to connect to the Integration Engine or the PCK by using the RFC interface. It supports SAP systems as of version 3.1x.
    For FAQs about the RFC adapter, see SAP Note 730870
    The RFC adapter is provided by the Adapter Engine and the PCK. It essentially comprises two parts, namely a sender adapter at the Integration Engine inbound channel, and a receiver adapter at the Integration Engine outbound channel.
    The adapters are configured in the configuration part of the Integration Builder, or in the configuration part of the PCK. You use the SAP Java Connector (JCo), which enables you to manage metadata. This in turn enables you to map RFC data generically to RFC XML and the other way around.
    The receiver RFC adapter can be used for mapping lookups.A communication channel with a receiver RFC adapter can be created automatically for business systems that are defined in the System Landscape Directory.
    The RFC adapter maps the following RFC calls to XML messages and the other way around:
    Synchronous RFC calls (sRFCs) in messages with quality of service Best Effort (BE)
    &#9679;     Transactional RFC calls (tRFCs) in messages with quality of service Exactly Once (EO)
    &#9679;     The receiver RFC adapter can also process messages with quality of service Exactly Once In Order (EOIO). They are mapped to transactional RFC calls (tRFC).
    You require the sender adapter if you want to use the Integration Engine or the PCK to process RFCs. The RFC adapter converts the incoming RFC data to XML message format (RFC XML) so that it can be processed by the Integration Engine or the PCK.
    You require the receiver adapter if the determined receiver system expects the data from the Integration Engine or the PCK to arrive in RFC format. In this case, the Integration Engine or the PCK must transfer the received XML message (RFC XML) to the RFC adapter. The RFC adapter converts the RFC XML message to a valid RFC call and executes the call.
    Proxy :
    Generally speaking, interfaces are where functions in a system can be executed. In the context of SAP Exchange Infrastructure, only the following interfaces are relevant:
    ·        Interfaces designed for message exchange between application systems
    ·        Interfaces used by a cross-component integration process to receive or send messages, or both
    Starting with a cross-system integration process, you can then derive the corresponding interfaces required. SAP Exchange Infrastructure supports this process by using an integration scenario to describe the collaborative process. The integration scenario summarizes the interfaces required for this collaborative process.
    You can use SAP interfaces that already exist in systems, non-SAP interfaces that are connected to SAP Exchange Infrastructure using adapters, or define new interfaces called message interfaces in the Integration Repository. Both worlds can also be interconnected in a collaborative process.
    Interfaces are an essential component of SAP Exchange Infrastructure:
    ·        You define the interfaces to be used in an integration scenario.
    ·        Cross-component integration processes use interfaces to exchange messages.
    ·        You define the XML transformations for messages that are to be exchanged between two interfaces in a mapping.
    ·        You assign an interface in a sender system to one or more interfaces in a receiver system in logical routing.
    ·        You generate proxies to implement your scenario based on message interfaces.
    You save interface descriptions (message interfaces, BAPIs, RFCs, and IDocs) in the Integration Repository so that they can be referenced throughout SAP Exchange Infrastructure. However, adapters for external systems do not normally use interfaces; instead they access files or database tables in order to function, for example. For this reason, it is not necessary to import these interfaces into the Integration Repository. If the structure of the message is described using a WSDL, XSD, or DTD schema, you can import the schema as an external definition.
    Hope this will help you.
    Regards
    Aashish Sinha
    PS : reward points if helpful

  • Disadvantage of  RFC Adapter

    Hi,
    Could u Please Tell me The  Disadvantage of  RFC Adapter ?
    Regards & Thanks

    HI RAMS,
    One of the disadvantage of RFC adapter in SAP PI is that it sits on Java Engine of PI. So whenever you are suppose to call a RFC, the request goes via Java Engine to the relevant SAP R/3 which is trade off.
    You can achieve a better performance by calling a RFC through an Inbound Proxy.
    Thanks,
    Varun

  • FILE-RFC ADAPTER problem

    Hi all,
    I am trying file->xi->rfc adapter scenario.
    My scenario is employee information is written to flat file n  will be kept on ftp server.THe file adapter will pickup the file and sends it to rfc adapter through pipeline service.
    This is going well. The problem is the data is not being updated into receiving sap system.
    in SXMB_MONI transaction the messages are successully processed . But there are no messges in rfc adapter when i gone through idx5 transaction???
    Any one have idea??
    Thanks in advance.
    Rgds,
    Ram Sri

    sxmb_moni only shows the status of the integration engine's processing, not the result of what happened in the rfc call.  First, you can check if the adapter framework successfully passed the message to the destination system (not on moni, thru RWB)
    as far as did the rfc succeed - it's as difficult as always with internal processing.  We did a lot of testing by debugging modules on the destination side (manually putting in the data as the adapter would've to step thru & see where the message is "lost") - have not yet found a better way, sorry.  It's not so much a problem with XI, just in general the difficulty to debug rfc's

Maybe you are looking for