Getting RFC  response structure in XI

All,
I have a scanario like this,RFC>XI->file where i have to map RFC response to file.I have gone throungh some blogs for this.
I am using RFC sender adapter.
In my message mapping i have mapped RFC response to file structure and in my IM i have used RFC as sender interface.
Is it fine?

If your scenario is RFC - XI - File it is not the RFC responce but it is async RFC call.
You call it RFC scenario when the scenario is
send sys --- XI ----File
                  | |
                 RFC
For a overview scenario of this scenario and structure creation have a look at my blog Impede Duplicate Files
>>I am wonder how do we get RFC response from R3
Both the Blogs that I replied has the sample ABAP code that is used to send the RFC message to XI.
You can use the imported RFC in both the Message Mapping and the Interface Mapping
Thanks
SaNv...

Similar Messages

  • Wrong RFC-response filling with characters '#'

    Hi all,
    we have an XI scenario in which a Report use a synchronous RFC call to run a query on a DB table and return the resultset to the calling Report.
    Sync RFC call -> PI 7.0 -> JDBC Query (Select u2026 with ResultSet) -> PI 7.0 -> RFC Adapter
    Weu2019ve some troubles on the data returning from the resultset of the query, thatu2019s rightly filled, and the RFC-response structure because there are some '#' characters as values of the response fields.
    Weu2019ve loaded into the Message Mapping the instance of the resultset (rightly filled) and the test has run successfully, so perhaps the issue itu2019s regarding the RFC Adapter side.
    Now the mapping mapping is set up with constant values but not all the RFC-response fields are filled, infact there are some u2018#u2019 characters that break the values in more lines.
    Weu2019ve already run the full cache refresh on XI on the ABAP and Java side, also weu2019ve restarted the XI instances without results.
    Any ideas?
    Thanks in advance,
    GB

    If its due to the special characters that are popping in the result of query which does not seem to be valid for RFC response,
    1) try to make the RFC Destination Communication Setting as "Unicode"
    2) Check the data type of RFC Response structure could be the fields for which the data is mapped are of date/numeric, in that case RFC data type has to be changed.
    (you would have to reimport the RFC into PI i guess)
    3) If you feel you would not require these special character, you can filter the same in mapping.
    4) After all these if you are still struck and data types are rightly defined and rfc destination is rightly maintained for Unicode, then it i feel the problem resides in the RFC Adapter to convert the xml message into ABAP RFC Format using its metadata, in that case i recomend to change the scenario to Proxy from RFC where by the messages are routed by ABAP stack not by Java.

  • Synchronous RFC Response Not getting Mapped

    Hi,
    I am making an RFC call from XI to SAP R/3 system.
    Scenario: File -> XI -> RFC (SAP R/3)
    The request message is picked from the File Adapter, routed through XI, and an RFC call is made on the SAP R/3. The RFC Response has to be obtained in XI, transformed and persisted using the FileAdapter.
    I have created the request and response message types and message interface in the repository. The message interface is denoted as Outbound Synchronous. The Request and Response mappings have also been made against the RFC message structure.
    I also created the business process in the repository showing the interface as Synchronous between the two actions.
    However, in the Integration Builder, when I import and configure the Business Process, the wizard does not show me the response message type or the response mappings.
    After completing the configuration, the final configuration is still one-way, and only shows the request scenario.
    I am unable to configure the response scenario in the Integration Builder.
    During runtime, the request does get invoked and the RFC gets called from XI. However, the response is lost.
    What do I need to configure to capture the RFC response into XI ?
    thanks,
    Manish

    I would guess that synchronous response is the collaboration agreement between business systems, and not related to the transports available between them.
    My scenario is as follows:
    BusinessSystem1 -> XI -> SAP R/3
    The inbound document is being sent by the FileAdapter where the SenderService is BusinessSystem1.
    I have also configured another file adapter as a receiver, and this has been configured as a channel for the BusinessSystem1.
    Even in this scenario, I am unable to configure the response in the Integration Directory.
    I am able to configure the response structures and mappings in the Integration Repository.
    Any help appreciated.
    thanks,
    Manish

  • RFC - XI - WebService :: Not getting complete Response from WS

    Hi
    I am working on a following Synchronous scenario
    <b>SAP R/3 --> Sender RFC Adapter --> XI --> Rec. SOAP Adapter --> MI Web Service</b>
    Now I tested the structure of Request/Response Message from WebService in XML Spy, & designed my Request/Response Message structure in XI based on that.
    Now when I am sending the request from <u>XML Spy</u>,the Response message which is coming is this -->
    <i><?xml version="1.0" encoding="UTF-8"?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
         <soapenv:Body>
              <ns1:getResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://www.MI/util">
                   <getReturn href="#id0"/>
              </ns1:getResponse>
              <multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:AddressDTO" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="http://to.MIutil.com">               
                   <latitude href="#id1"/>               
                   <longitude href="#id2"/>               
                   <postcode xsi:type="soapenc:string">111</postcode>
                   <state xsi:type="soapenc:string">XYZ</state>
                   <streetName xsi:type="soapenc:string">NYDEL</streetName>
                   <streetNumber xsi:type="soapenc:string">444</streetNumber>
                   <streetType xsi:type="soapenc:string">ST</streetType>
                   <suburb xsi:type="soapenc:string">SQY</suburb>               
              </multiRef>
              <multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:double" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">-33.87571285585008</multiRef>
              <multiRef id="id2" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:double" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">51.20783220341076</multiRef>
         </soapenv:Body>
    </soapenv:Envelope></i>
    { <b>Pls. take note that it is referring variables</b>}
    But when I am sending the Request from SAP R/3 <u>using SAP XI</u>, I am getting the Response message from WebService like this -->
    <i><?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <ns1:getResponse xmlns:ns1="http://www.MI/util" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
      <getReturn href="#id0" />
      </ns1:getResponse></i>
    which suggest that operation is getting called successfully & response is coming back.
    Can you tell me what is the reason that why I am not getting the rest of the response .
    Regards
    - Lalit Chaudhary -

    Hi,
    Yes it can be possible, you have to maintain SOAP Header.
    please see the below links..
    How to extract XI-header fields from XI-message in JAVA?
    /people/sap.user72/blog/2005/12/11/how-to-apply-themes-in-exchange-infrastructure
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c50cddbb-0601-0010-92a7-f2a40ca68e6d
    https://www.sdn.sap.com/irj/sdn/advancedsearch?query=href%20%20in%20xi&cat=sdn_all
    Regards
    Chilla..

  • It is possible to get a response of a asynchronous RFC call thru wait loop

    Hi Experts,
    The requirement is that i queue up all the requests from a web services ( One queue per plant for example) which i set in the HTTP sender URL ( i mean the queue name ). and i am posting the records thru a RFC call.
    1. Let the RFC call be synchronous and in case the R/3 system is done.. Will the XI queue keep the Call and keep on retrying it till the R/3 system is up.
    2. Otherwise if the RFC call be asynchronous, is it possible to introduce a wait loop in BPM to listen to the RFC till i get some response ( i think this is not possible).
    Need your suggestion on the same...
    The requirement demands that no single request from the web service should be lost.. in case of failure of R/3 they should be queued up and re tried.. Forget about the error because of exception in RFC this will be taken care manually..
    Thanks for your response in advance.

    Hi Rajesh,
    you can queue and restart only asynchronous messages. I think you can build a Business Process, where you repeat sending a message til you have success or maximum number of tries is reached. But no good idea, coz you will get timeout at HTTP sender. Aynchronous messages dont have a response.
    May be, XI can solve your task in the standard: In transaction SMQR you can just configure what you describe. All asynchronous messages will be queued and restartet in case of receiver not reachable. You can configure no of retries and intervall between.
    Regards,
    Udo

  • Soap to rfc..dont get a response...

    I have pasted below the complete steps for doing a rfc to soap synchronous scenario...i can send a message and update a custom table in r/3 with the data..however i am not getting any response, i have tested the rfc on r/3 and checked the table ..which is getting updated correctly....any ideas on whats wrong .....More important areas are the items in bold.....which is where i think smthing is not ok.
    Design..part........
    Create data types
    1) testScore_dt
    2) testScoreResponse_dt.
    Create 2 msg types for 1 and 2...
    testScore_MT
    testScoreResponse_MT
    Create Message Interface
    MI_TestScore
    Outbound Message Interface Synchronous
    input Message is testScore_MT
    outputMessage is testScoreResponse_MT
    Import rfc
    ZRfc_testScore
    ZRfc_testScoreResponse
    Create 2 message mappings
    MM_Input_001
    Source is testScore_MT
    Destination is ZRfc_testScore
    MM_Output_001
    Source is ZRfc_testScoreResponse
    Destinatio is testScoreResponse_MT
    Create 1 Interface mapping
    Source is MI_testSource
    Target is ZRfc_testScore
    Request tab...choose mapping as MM_Input_001
    Response tab ...choose mapping as MM_Output_001
    Configuration...
    Create Sender_BService
    Create Reciever_BService
    Create Communication channels
    CC_Sender_Soap
    default namespace
    <b>interface  = MI_TestScore</b>
    CC_Reciever_RFC
    <b>Do Reciever determination
    Sender = Sender_BService
    Interface == ?</b>
    Do Interface determination
    <b>Need Help ?</b>
    Sender Agreement
    Sender CC
    Reciever Agreement
    Reciever CC
    Regards
    Ravi Raman

    Ravi,
    I believe your scenario is SOAP to RFC, coz the title and your explanation misleading to different scenarios.
    >>>>>>>Do Reciever determination
    Sender = Sender_BService
    Interface == ?
    Do Interface determination
    Need Help ?
    <b>Receiver Determinatio</b>
    Sender = Sender_BService
    Interface =MI_TestScore
    Configured receivers = Receiver_BService
    <b>Interface Determinatio</b>
    Sender = Sender_BService
    Outbound Interface =MI_TestScore
    Inbound Interface = RFC
    Mapping = Interface mapping.
    raj.

  • RFC to JDBC Sync Scenario and get JDBC response

    Hi All,
    We need to create RFC to JDBC synchronous interface with update_insert action.
    And we need to get the number of records updated or inserted as response and map the response and send it back to ECC as RFC response mesg.
    I have gone through the help document on JDBC and it says :
    The response document has the following format; one of the two values is always 0 because either an UPDATE or an INSERT action is always executed:
    <update_count>count</update_count>
    <insert_count>count</insert_count>
    Now following is the question: Is this this the standard feature? Because in our case Database side they will not be sending any response back.
    So with the synchronous receiver JDBC channel would we get this update and insert count as response  by default?.
    Please help with replies.
    Thanks,
    Jane

    Hi Jane
    No setting needs to be done by the Database team, it is a standard feature.
    Whenever you insert or update records in DB using the JDBC Adapter, you will get the response with the count.
    If insertion fails due to some reason in JDBC Adapter, then there will be no response.
    Regards
    Osman

  • Mapping problem in SOAP response to RFC response - RFC-XI-SOAP scenario

    Hi gurus,
    response structure from SOAP is as below (inbound msg - in SXMB_MONI)
    MONI and RWB shows successful(I am using graphical mapping)
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Inbound Message
      -->
    - <ns0:testrequestResponse xmlns:ns0="conversion" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" Status="Success">
    - <ns0:SAP_OUT>
           <ns0:F1 Value="1234" />
           <ns0:F2 Value="2345" />
         - <ns0:SAP_LINES>
             - <ns0:SAP_LINE>
                    <ns0:SAP_L Value="1" />
                    <ns0:Field5 Value="" />
                  - <ns0:SAP_S1>
                           - <ns0:SAP_S>
                                   <ns0:ID Value="11111" />
                                   <ns0:SAP__NO Value="0001" />
                                   <ns0:DATE1 Value="08/15/2008 00:00:00:000" />
                                   <ns0:FST/>
                             </ns0:SAP_S>
                    </ns0:SAP_S1>
             </ns0:SAP_LINE>
          </ns0:SAP_LINES>
      </ns0:SAP_OUT>
      </ns0:testrequestResponse>
    I make the RFC response with same structure and mapped it but it is not giving the full structure rather it is giving only this (Outbound Msg in SXMB_MONI)
      <?xml version="1.0" encoding="UTF-8" ?>
    - <ns1:Z_MYRFC.Response xmlns:ns1="urn:sap-  com:document:sap:rfc:functions">
      <STATUS>Success</STATUS>
      </ns1:Z_MYRFC.Response>
    what went wrong?

    Hi,
    You would have forgot to map parent node coming after <STATUS>Success</STATUS>
    Make sure that you have properly mapped all the parents and there child.
    Are you getting the same result while Testing it standalone?
    Thanks
    Sunil Singh

  • RFC Response Error in XI

    Dear team,
    In my SOAP to RFC scenario, Im facing the error.The is two message mappings in my scenario.
    One is between SOAP Req MT and RFC Import str . Second one is b/w RFC.Response and SOAP RESP MT. While Im testing with XMLSPY the request mapping is executed successfully. the RFC executes its functionality successfully in SAP[updating data in atransaction]. The RFC response should be "SUCCESS" or "FAILURE".*Even if we check RFc individually its working fine and giving response as SUCCESS / FAILURE* .
    BUT
    In my case I got the below error in MONI in Response message .The INBOUNDMESSAGE(CENTRAL)->Payload contains the below response. So obviously the response mapping failed in XI . Why im getting this error. BUT RFC functionlity working in SAP , but response getting error .
    Failure case:
    - <rfc:ZRFC_USAGE_DEC.Exception xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
      <Name>JCO_ERROR_XML_PARSER</Name>
      <Text>Expecting a tag to begin with '<' instead of '#', in "#F#A#I#L#U"</Text>
      </rfc:ZRFC_USAGE_DEC.Exception>
    SUCCESS case:
    - <rfc:ZRFC_USAGE_DEC.Exception xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
      <Name>JCO_ERROR_XML_PARSER</Name>
      <Text>Expecting a tag to begin with '<' instead of '#', in "#S#U#C#C#E"</Text>
      </rfc:ZRFC_USAGE_DEC.Exception>
    Thanks.
    -Drumi

    I have done cache refresh, cross checked MT strucures.
    SOAP Response   MT structure  is
    --->MT
    >REsponse
    RFC.REpsonse Structureis...
    --->RFC.RESPONSE
    >Response
    -Drumi

  • Inserting RFC Response to Tracking table using JDBC as a receiver

    Hi All
    I want to update my tracking table with the RFC response but the problem is I cant figure out he Target structure on my JDBC.
    Every time when testing on my http://xxxxxx:50000/mdt/channelmonitorservlet I get nothing on the  "Processing Details"
    I've configured my RFC Response as a sender (ASYN) and JDBC as a receiver, I do have RFC destination and it working fine.
    My is like this:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns1:RFC_JDBC_MT xmlns:ns1="http://yonela.com">
    <StatementName_response>
    <PI_JDBC_TBL ACTION="UPDATE">
    <TABLE>PI_JDBC_TBL</TABLE>
    <access>
    <TYPE></TYPE>
    </access>
    <key>
    <key><CARRID>AA</CARRID></key>
    </key>
    </PI_JDBC_TBL>
    </StatementName_response>
    </ns1:RFC_JDBC_MT>
    Any suggestion

    Hi,
    Use Insert in the action field instead of Update and try again.
    -Supriya.

  • Getting the response in a single file

    Dear friends,
           I need a clarriffcation, i am getting the response from rfc for my scenario file-xi-rfc(synchronous). And the result was stored in the ftp folder as a file.Now my issue is my source file having more than one sales order detials so the bappi is triggerd more than once and a result file is created for every sale order created. but i need a single file only to created having all the details of the created sale order. Please tell me how can i hold all the values together and write it at once in a single file. I have tried in sdn but i couldnot get the relevant answer.note i need to perform the same with out bpm.
    Thanks and Regards
    Karthikeyan

    That should be possible using RFC mapping lookups, which is explained in detail in https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a03e7b02-eea4-2910-089f-8214c6d1b439

  • RFC response from Java mapping

    Guys,
    I am RFC response in my java mapping as &lt & &gt. Any ideas why and how we can make it to get in xml < > format. The problem is parser does not identify this format.
    &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;rfc:BAPI_COMPANYCODE_GETDETAIL.Response xmlns:rfc=&quot;urn:sap-com:document:sap:rfc:functions&quot;&gt;&lt;COMPANYCODE_ADDRESS&gt;&lt;ADDR_NO&gt;&lt;/ADDR_NO&gt;&lt;FORMOFADDR&gt;&lt;/FORMOFADDR&gt;&lt;NAME&gt;&lt;/NAME&gt;&lt;NAME_2&gt;&lt;/NAME_2&gt;&lt;NAME_3&gt;&lt;/NAME_3&gt;&lt;NAME_4&gt;&lt;/NAME_4&gt;&lt;C_O_NAME&gt;&lt;/C_O_NAME&gt;&lt;CITY&gt;&lt;/CITY&gt;&lt;DISTRICT&gt;&lt;/DISTRICT&gt;&lt;CITY_NO&gt;&lt;/CITY_NO&gt;&lt;POSTL_COD1&gt;&lt;/POSTL_COD1&gt;&lt;POSTL_COD2&gt;&lt;/POSTL_COD2&gt;&lt;POSTL_COD3&gt;&lt;/POSTL_COD3&gt;&lt;PO_BOX&gt;&lt;/PO_BOX&gt;&lt;PO_BOX_CIT&gt;&lt;/PO_BOX_CIT&gt;&lt;DELIV_DIS&gt;&lt;/DELIV_DIS&gt;&lt;STREET&gt;&lt;/STREET&gt;&lt;STREET_NO&gt;&lt;/STREET_NO&gt;&lt;ST R_ABBR&gt;&lt;/STR_ABBR&gt;&lt;HOUSE_NO&gt;&lt;/HOUSE_NO&gt;&lt;STR_SUPPL1&gt;&lt;/STR_SUPPL1&gt;&lt;STR_SUPPL2&gt;&lt;/STR_SUPPL2&gt;&lt;LOCATION&gt;&lt;/LOCATION&gt;&lt;BUILDING&gt;&lt;/BUILDING&gt;&lt;FLOOR&gt;&lt;/FLOOR&gt;&lt;ROOM_NO&gt;&lt;/ROOM_NO&gt;&lt;COUNTRY&gt;&lt;/COUNTRY&gt;&lt;LANGU&gt;&lt;/LANGU&gt;&lt;REGION&gt;&lt;/REGION&gt;&lt;SORT1&gt;&lt;/SORT1&gt;&lt;SORT2&gt;&lt;/SORT2&gt;&lt;TIME_ZONE&gt;&lt;/TIME_ZONE&gt;&lt;TAXJURCODE&gt;&lt;/TAXJURCODE&gt;&lt;ADR_NOTES&gt;&lt;/ADR_NOTES&gt;&lt;COMM_TYPE&gt;&lt;/COMM_TYPE&gt;&lt;TEL1_NUMBR&gt;&lt;/TEL1_NUMBR&gt;&lt;TEL1_EXT&gt;&lt;/TEL1_EXT&gt;&lt;FAX_NUMBER&gt;&lt;/FAX_NUMBER&gt;&lt;FAX_EXTENS&g t;&lt;/FAX_EXTENS&gt;&lt;/COMPANYCODE_ADDRESS&gt;&lt;COMPANYCODE_DETAIL&gt;&lt;COMP_CODE&gt;0001&lt;/COMP_CODE&gt;&lt;COMP_NAME&gt;SAP A.G.&lt;/COMP_NAME&gt;&lt;CITY&gt;Walldorf&lt;/CITY&gt;&lt;COUNTRY&gt;DE&lt;/COUNTRY&gt;&lt;CURRENCY&gt;EUR&lt;/CURRENCY&gt;&lt;LANGU&gt;D&lt;/LANGU&gt;&lt;CHRT_ACCTS&gt;INT&lt;/CHRT_ACCTS&gt;&lt;FY_VARIANT&gt;K4&lt;/FY_VARIANT&gt;&lt;VAT_REG_NO&gt;&lt;/VAT_REG_NO&gt;&lt;COMPANY&gt;&lt;/COMPANY&gt;&lt;ADDR_NO&gt;&lt;/ADDR_NO&gt;&lt;COUNTRY_ISO&gt;DE&lt;/COUNTRY_ISO&gt;&lt;CURRENCY_ISO&gt;EUR&lt;/CURRENCY_ISO&gt;&lt;LANGU_ISO&gt;DE&lt;/LANGU_ISO&gt;&lt;/COMPANYCODE_DETAIL&gt;&lt;RETURN&gt;&lt;TYPE&gt;W&lt;/TYPE&gt;&lt;CODE&gt;FN021&lt;/CODE&gt;&lt;MESSAGE&gt;Address data not found for company code 0001&lt;/MESSAGE&gt;&lt;LOG_NO&gt;&lt;/LOG_NO&gt;&lt;LOG_MSG_NO&gt;000000&lt;/LOG_MSG_NO&gt;&lt;MESSAGE_V1&gt;0001&lt;/MESSAGE_V1&gt;&lt;MESSAGE_V2&gt;&lt;/MESSAGE_V2&gt;&lt;MESSAGE_V3&gt;&lt;/MESSAGE_V3&gt;&lt;MESSAGE_V4&gt;&lt;/MESSAGE_V4&gt;&lt;/RETURN&gt;&lt;/rfc:BAPI_COMPANYCODE_GETDETAIL.Response&gt;

    If you check Michal's guide on RFC Loopkup, it also comes with &lt; and &gt; chars.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/801376c6-0501-0010-af8c-cb69aa29941c#search=%22site%3Asdn.sap.com%20lookup%20rfc%22
    What happens if you output this string directly to output stream? I think XI will be able to understand it as a XML. Then, you could execute another mapping program to parse this XML and get the fields you want. In a same interface mapping, you can use more than one mapping programs.
    Regards,
    Henrique.

  • Multiple Response Structures in a single mapping

    Hi
    I have  Proxy Soap SYNC Scenario.
    The request structure has 10 fields. For different combinations of the Source fields, the WEBSERVICE returns two kinds of responses.
    Both are of different structures.
    Please let me know how can I map both the responses back to the Same outbound message type belonging to the proxy.
    Regards,
    Yashwanth

    Hi Mark,
    the outbound message type has fields for both the types of messages. But the problem is that the RESPONSE message is failing as there two structures coming in different cases.
    i have configured one of the structure and it is running fine.
    I am not getting how to incorpoate the second response structure in to the existing one.
    I tried this :
    I created an Intermediate messate type with both the message structures. Wrote a java map to remove the soap envelope and transform th incoming RESPONSE into the intermediate structure.
    Then defined the message mapping from this intermediate structure to outbound structure.
    I guess the java code is not working.
    Below mentioned is the JAVA mapping code .
    It is still not working.
    String inData = sb.toString();
                        StringBuffer finalDoc = new StringBuffer();
                        String in1 = inData.replaceAll("<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">", " ");
                        in1 = in1.replaceAll("<soap:Body>", "");
                        in1 = in1.replaceAll("</soap:Body>", "");
                        in1 = in1.replaceAll("<soap:Fault>", "");
                        in1 = in1.replaceAll("</soap:Fault>", "");
                        in1 = in1.replaceAll("<soap:Envelope>", "");
                        in1 = in1.replaceAll("</soap:Envelope>", "");
                        int startidx = in1.indexOf("<Discovery_Result xmlns=\"https://www6.AustinTetra.com/AIT/WebServices\">");
                             int lastidx = in1.indexOf("</Discovery_Result>");
                             if ( startidx > -1){
                                  finalDoc.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
                                  finalDoc.append("<ns0:MT_Discovery_Intermediate_Response xmlns:ns0=\"http://applied.com/I1089/3rdPartyCreditInterface_To_Equifax\">");
                                  finalDoc.append(in1.substring(startidx,(lastidx + 19)));
                                  finalDoc.append("</ns0:MT_Discovery_Intermediate_Response>");
                             }else {
                                  finalDoc.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
                                  finalDoc.append("<ns0:MT_Discovery_Intermediate_Response xmlns:ns0=\"http://applied.com/I1089/3rdPartyCreditInterface_To_Equifax\">");
                                  finalDoc.append(in1);
                                  finalDoc.append("</ns0:MT_Discovery_Intermediate_Response>");
                                                                                    out.write(finalDoc.toString().trim().getBytes());
                        out.close();
    Edited by: YashwanthSVK on Nov 3, 2011 2:06 PM

  • RFC:Complex structure

    Dear experts,
    In my PI box,i used one RFC SXMB_GET_MESSAGES.I provided input to the table parameter with over 155 values.
    My attempt was to retrieve from output table parameter which is a deep structure
    If i drill EX_MSG_CONTENT , i get table MSG_VERS_T as one of table output and on further drilling this i get PROP again of type table line.
    <table>EX_MSG_CONTENT_LIST -> <table> MSG_VERS_T ->  <table> PROP
    Ultimately i fetched two fields from table PROP.Only issue is that if i am providing 155 input values i get 36 output values only.
    Further incase i put 222 input values then output values get affected in same ration ex 56 output values and so on..
    What should  i conclude.IS this because RFC (Remote Enabled) doesnot support complex nested structures and i should give up this assignment or may be i need to put something in addition. ?.For those of you familiar with java i am trying something like this
    _ob_c.function.execute(ob_c.destination);    //Problematic as it return less number of rows_
    call function statement:
    ArrayList<PayLoadType> payloads  = new ArrayList<PayLoadType>(fetchmessagepayloads(tableresout)); 
    //Works well as content fetched is actually equal to number of records fetched above.
    public ArrayList<PayLoadType> fetchmessagepayloads (JCoTable tableobj)
    int count = 0;
    ArrayList<PayLoadType> oba = new ArrayList<PayLoadType> ();
    while (count < tableobj.getNumRows()) {
    PayLoadType obj = new PayLoadType();
    JCoTable subtab1  = tableobj.getTable("MSG_VERS_T");
    count = count + 1;
    int rec = subtab1.getNumRows();
    int numrecs = 0;
    while ( numrecs < rec )
    subtab1.nextRow();
    numrecs = numrecs + 1;
    JCoTable subtab2  = subtab1.getTable("TPROP");
    numrecs = 0;
    rec = subtab2.getNumRows();
    while (numrecs < rec )
    numrecs = numrecs + 1;
    if (subtab2.getString("LCNAME").trim().equals("Main")) {
    obj.msgid = subtab2.getString("MSGGUID");
    obj.payload = subtab2.getString("CONTENT");
    oba.add(obj);
    subtab2.nextRow();
    tableobj.nextRow();
    return oba;
    Edited by: aditya  sharma on Aug 16, 2010 10:20 AM

    Hi,
    The problem is basically in message mapping from file to RFC external message.
    The option 2 is working now and I get correct converted file strcuture after FCC and into RFC and also a correct RFC payload.
    However, business is stressing that can send the file in the format as given in Option 1 where u have different structure - Header and Items. This is not coming out correct in RFC payload as the header has 5 fields as compared to more in item but the header and item are still being mapped to the flat RFC structure and this is creating a mismatch. The item line is missing the 5 fields from Header.
    How do i do the FCC in this situation to get the correct structure in RFC?
    This means that in RFC payload, the first line should be the one as below-
    H,100890,P100,A02,S101,AUD#
    The 2 records after this as received in RFC internal table should be as 2 given below-
    I,P,NULL,TH,Test PO TH,1,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    I,P,NULL,TH,Test PO TH1 2,2,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    However, the 2 structures contain variable field columns.
    Please help.
    Regards,
    Archana

  • Cant send msg to RFC Response

    Hi,
    I have RFC XI BPM Jdbc scenario, in which, I am raising an exception when database connection fails, and sending a message back to the RFC like "failed". But I am not getting any mapping error in the repository, but couldnot map at runtime....when I see in the Technical Workflow, I see "Mapping NOt found".
    Could you please help on this issue.
    Thanks,
    Raj.

    hi Raj,
    >>>>and sending a message back to the RFC like "failed".
    you need to map jdbc request to RFC.response
    in the <b>exception branch</b> to do the mapping correctly
    (this is the only way)
    remember to refresh the cache (SXI_CACHE)
    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>

Maybe you are looking for

  • Music Not Purchased from iTunes Not Synching

    My iPhone 5 no longer syncs any tracks that I did not purchase directly from iTunes (such as those I uploaded from CDs.) The albums show up on my phone, but when I attempt to play the songs they refuse to start and a red stop sign appears next to the

  • Edge Animate CC 2014 8月アップデート(Chrome 36での不具合を解消)

    Edge Animate CC のバージョン2014.0.1アップデートがリリースされました このアップデートでは.最新のGoogle Chrome 36で起きるレンダリングの不具合を始め.複数の問題が修正されています. Edge Animate CC 2014をご利用になるすべての方は.このアップデートを適用してください. リリースノート(英語) Edge Animate Help | New features summary アップデート手順: ・Creative Cloudデスクトップアプ

  • Photoshop Album 2.0 - Can I change Photo shooting dates

    My friend gave me Photoshop Album 2.0 to help her keep track of her pictures.  Problem is, she didnt set her camera to the right date, so some of the pictures have a "shoot" date that is not correct.  For example, the camera may have imprinted June 1

  • Flummoxed by Microsoft - advice needed...

    Hi all, I need some help here.  I recently purchased a Lenovo X200 notebook at auction.  As is their want at these places, they removed the hard drive for 'data protection' purposes, so I basically purchased the laptop without a hard drive. "No probl

  • How to select records based on Max/Min on different columns and group by

    I have a table with 5 columns(a,b,c,d,e), i need to select records based on MAX(c),Max(D) and Min(e) group by a,b. i am trying using : select max(c),max(d),min(e) from table group by a,b. this is not working. its giving me 1 6 1 a b c d e 1 1 1 2 1 1