Skip to Content
avatar image
Former Member

How to send RFC response message back to XI File/FTP adapter?

Hi,

I am able to send a flat file through XI File/FTP adapter to SAP R/3 RFC function. The request is successful and trigger a commit on R/3. I can see the transaction write date into R/3 system tables. However, how can I send back the RFC response message back to File/FTP adapter so I can write the response back to a XML file on XI server?

The background of this question is that I FTP a sales order flat file to FTP server, which is also XI server. Through a File/FTP adapter the flat file is converted into XML and send to RFC adapter for “Z_BAPI_SALESORDER_CREATE”, which is combination of BAPI_SALESORDER_CREATEFROMDAT2 and BAPI_TRANSACTION_COMMIT.

If using SOAP adapter as sender, it is very easy to get RFC response message from R/3 back to SOAP client. However, I feel FTP is mostly one way communication, although I can attach two way synchronous interface to XI File/FTP adapter.

I have a SAP XI 3.0 server and an R/3 server -- ECC 5.0 IDES on WAS 6.40.

Thanks for suggestions and ideas.

lin

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

5 Answers

  • Best Answer
    avatar image
    Former Member
    Aug 08, 2005 at 01:21 AM

    Hi Arpit,

    I am able to complete the BPM in XI design repository by manually enter data in container. So that problem is solved. Then I follow your blog example and finish it. When I upload the input XML file, I saw it disappeared in XI folder. But no output file generated. I check XI XML message monitor tool and find the following error message

    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

    - <!--

    Technical Routing

    -->

    - http://sap.com/xi/XI/Message/30" xmlns:SOAP=" http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">

    <SAP:Category>XIServer</SAP:Category>

    <SAP:Code area="OUTBINDING">OUTBOUND_BINDING_NOT_FOUND</SAP:Code>

    <SAP:P1>,COMPANY_GETDETAIL_FileService</SAP:P1>

    ,COMPANY_GETDETAIL_File_RFC_BP, http://sap.com/xi/WebService/demo,COMPANY_GETDETAIL_FileResquest_AI>

    <SAP:P3 />

    <SAP:P4 />

    <SAP:AdditionalText />

    <SAP:ApplicationFaultMessage namespace="" />

    No receiver agreement found for sender ,COMPANY_GETDETAIL_FileService to receiver ,COMPANY_GETDETAIL_File_RFC_BP, http://sap.com/xi/WebService/demo,COMPANY_GETDETAIL_FileResquest_AI>

    <SAP:Retry>M</SAP:Retry>

    </SAP:Error>

    I check back my screen of receiver determination and find the receiver agreement column is “does not exist”. While in your example screen shot, it is “Not required”.

    So I wonder how to change the status to “Not required”?

    Then I look back the web blog example, I find it mentions in XI design repository a BPM was created with name: “File_RFC_BPM”, however, in XI configuration directory the BPM service is named: “File_RFC_BP”. They are not consistent.

    In my case, in XI design repository I name BPM as “COMPANY_GETDETAIL_File_RFC_BPM” and in XI configuration directory I name the BPM service as “COMPANY_GETDETAIL_File_RFC_BP”.

    I wonder if this two should be the same. So I try to modify it in XI design repository. But I can not modify it. So I try to copy it and rename in XI design repository. Then I test again, I get the same error.

    So wonder does the BPM manually created in XI design repository should be exactly matching with the service defined in XI configuration directory?

    Thanks,

    Lin

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Arpit,

      I am working on the same interface for MDM. When I get the RFC response back from RFC adapter, I have to map that to the file aapter which goes to MDM import manager to load.

      In case of failure, I want to raise an alert and not want to send the data to file adapter.

      Can I achieve this using BPM?

      Please let me know.

      Thanks

      Kalyan

  • avatar image
    Former Member
    Aug 07, 2005 at 08:45 AM

    Hi

    Go thru my blog on <b>RFC Scenario using BPM --Starter Kit

    </b>/people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit

    It willl help u to understand how u can send response back to file.Hope it helps.

    Regards

    Arpit Seth

    Add comment
    10|10000 characters needed characters exceeded

  • Aug 06, 2005 at 08:25 PM

    Hi Lin,

    >>>However, how can I send back the RFC response message back to File/FTP adapter so I can write the response back to a XML file on XI server?

    sure you can but you <b>have to</b> use BPM

    your integration process could look like this:

    receive step (file adapter) -> transformation step (file to RFC) -> send step (sync RFC) -> Transformation step (rfc.response to file) -> send step (file adapter)

    you cannot do it without BPM because as you've noticed

    file adapter works in async scenarios only

    Regards,

    michal

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Aug 07, 2005 at 08:48 PM

    Hi michal and Arpit Seth,

    Thanks for your help. I follow Arpit’s blog https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1926. [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] in integration repository, I complete all the objects such as data types, message types, interfaces, massage mappings and interface mapping. They are OK. Then in in integration repository I try to create business process. It is half success.

    In business process creation screen, I can add one receive node and two sender nodes. I can specify the mode as synchronous or asynchronous, for synchronous mode, I can specify synchronous interface. But I can not enter message type in all three nodes in expression editor. It is grayed out.

    Any ideas of what could be wrong with message expression editor?

    Thanks!

    Lin

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Aug 08, 2005 at 04:41 PM

    Hi Priyanka and Arpit,

    Thanks for your suggestions. In fact I realize that I did not import the business process “COMPANY_GETDETAIL_File_RFC_BPM” I defined in XI integration repository into XI integration directory. And I did not relate “COMPANY_GETDETAIL_File_RFC_BPM” with the business service “COMPANY_GETDETAIL_File_RFC_BP” I created in XI integration directory. That may be the reason XI integration directory does not recognize the business process.

    I will try to import “COMPANY_GETDETAIL_File_RFC_BPM” into XI integration directory and check SXI_CACHE.

    Thanks,

    Lin

    Add comment
    10|10000 characters needed characters exceeded