Query another message payload from graph mapping program

Hi all,
I have the following scenario
Third Party Business System -> XI -> ECC 5.0
Third Party sends ORDER to ECC and ECC answers with ORDRSP
When mapping ORDRSP.ORDERS05 to Third Pty format, I need to use info that the Third Party provided us on the ORDERS.
So... I have to query the ORDERS message payload from ORDRSP message mapping program.
Any ideas?
My first idea deal with doing an RFC lookup to search the ABAP Database for this info (my ABAP background raises ) but I'd like to know if there is a more elegant and efficent way of doing this.
regards,
David R.

Hi,
Let's try again to explain myself with my poor english!
Time frame
A) TPart system sends order. XI maps to ORDERS.ORDER05 idoc and is forwarded to ECC.
B) In ECC users modify Sales order and then triggers the outbound ORDRSP.ORDERS05.
C) XI has to map ORDRSP.ORDERS05 and include some info (in fact the original message) that was sent in step B).
The xmls from TPart could be (simplified version):
Orders (step A)
<?xml version="1.0" encoding="iso-8859-1">
<document>
  <header>
  </header>
  <Items>
  </Items>
  <Items>
  </Items>
  </Header>
</Document>
The received XML on step C) could be something like this:
<?xml version="1.0" encoding="iso-8859-1">
<Document>
  <PurchaseOrder_from_vendor>
  <i>Here I have to include the whole xml sent in step A</i>
  </PurchaseOrder_from_vendor>
  <SalesOrder_from_customer>
  <i>Here the ORDRSP.ORDERS05 mapping stuff</i>
  </SalesOrder_from_customer>
</Document>
All the communication will be always async.
Any ideas?
regards,
David R.

Similar Messages

  • Call another Message Interface from Java Mapping

    Hi Gurus!!
    I have designed a Java Mapping that does a Socket Connection. Before send the response of the Java Mapping, I have to send information to our SAP System.
    I have see in a blog that I can call a RFC from the Java Mapping, but my doubt is, can I call another Message Interface designed on XI?
    Thanks and regards,
    Manuel Míguez.

    That's tricky, since the proper way of doing it would be through BPM.
    Anyway, if you expose your XI interface as a WebService (Soap sender cc) you could access it through Mapping Lookup (lookup works for RFC, DB and Soap lookups). Check https://help.sap.com/javadocs/NW04S/current/pi/index.html
    But be aware that Mapping Lookup API is not intended for inserts/updates (since it doesn't contain any transacational handling), just mere lookups (selects in tables), so I'm not sure it is the best approach for your case.
    Regards,
    Henrique.

  • No messages created from split mapping

    Hello,
    My Scenario is JDBC to Proxy and there is  1:n Mapping
    I had done the multi mapping and done the all the necessary configuration in the MM, IM and ID
    I tested the payload in the MM and IM and it is working fine.
    But while iam doing the end to end testing in the ID --- Test Configuration,It is showing the error at Interface Determinmation and Mapping step.
    In SXMB moni, iam getting error as
    - <!--  Request Message Mapping
      -->
    - <SAP:Error xmlns:SAP="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="MAPPING">GENERIC</SAP:Code>
      <SAP:P1>No messages created from split mapping</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>No messages created from split mapping</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    The below is my source payload.
      <?xml version="1.0" encoding="utf-8" ?>
    - <ns:mt_vendor_fusiondb xmlns:ns="http://loreal.com/poc_vendor">
    - <row>
      <ID>1</ID>
      <LIFNR />
      <NAME1>SriTest</NAME1>
      <PSTLZ>07066</PSTLZ>
      <LAND1>USA</LAND1>
      <TELF1>1234567890</TELF1>
      <Status>READY</Status>
      <LastUpdated>2008-11-20 09:20:00.0</LastUpdated>
      </row>
    - <row>
      <ID>2</ID>
      <LIFNR />
      <NAME1>GilderTest</NAME1>
      <PSTLZ>07066</PSTLZ>
      <LAND1>USA</LAND1>
      <TELF1>1234567890</TELF1>
      <Status>READY</Status>
      <LastUpdated>2008-11-20 09:20:00.0</LastUpdated>
      </row>
    - <row>
      <ID>3</ID>
      <LIFNR />
      <NAME1>KarthikTest</NAME1>
      <PSTLZ>07066</PSTLZ>
      <LAND1>USA</LAND1>
      <TELF1>1234567890</TELF1>
      <Status>READY</Status>
      <LastUpdated>2008-11-20 09:20:00.0</LastUpdated>
      </row>
      </ns:mt_vendor_fusiondb>
    Please help me in resolving this error
    Srinivas

    Hi Carlos,
    Now my message mapping is working, the error is in the messagetype i declared 'row' as capital letters,due to this in the runtime it is erroring out in the request message mapping.
    But still I had one more issue,iam getting error in Technical routing, the error is
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Technical Routing
      -->
    - <SAP:Error xmlns:SAP="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">CO_TXT_MMF_ENGINETYPE</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Messages in multi message format can be sent to one adapter engine only</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    In the ID i checked the radio button extended.
    But still iam getting the above error.Can you guide me in resolving the error

  • No messages created from split mapping - Multimapping

    Hi,
    Getting the error in MONI saying that : No messages created from split mapping
    Sender is :
       <Purchase>
                <Number>007</Number>
                <Desc>RAJ</Desc>
                <Quantity>half</Quantity>
       </Purchase>
    Target should be 3 files such as:
      <Purchase>
                <Number>007</Number>
                <Desc>RAJ</Desc>
       </Purchase>
    <Purchase>
                <Number>007</Number>
                <Quantity>half</Quantity>
      /Purchase>
    <Purchase>
                 <Desc>RAJ</Desc>
                <Quantity>half</Quantity>
    </Purchase>
    Regards,
    Y.Raj.

    Hi,
    In your mapping select the cardinality of source message as 0..1 while that of target message should be 0..unbounded.
    Also since you are not using all the elements of source into all the target messages (seems using only two source elements in each target msg) do the mapping accordingly...i doubt whether you can achieve your requirement in one mapping itself....may be you will have to follow what Tarang mentioned:
    3. have 3 mappings between source structure and MT1(map only num,dec), source struc and MT2(map num,Qty) ....
    Exception to above statement:)
    If you set the target cardinality as 0..unbounded then duplicate the root target node thrice (as per your requirement)....and then map each target section seperately....
    Regards,
    Abhishek.
    Edited by: abhishek salvi on Apr 7, 2009 9:12 AM

  • No messages created from split mapping   error .....

    HI XI Friends..
    In My XML to RFC scenario,,
    i am doing message splitting withput BPM.
    in message mapping ..i changed target message occurance to unbounded
    and same i did in interface mapping also..
    static test is OK..creating multiple target messages in static test.
    in interface determination,using enhanced option i given interface mapping.
    file is picking but in SXMB_MONI ...i am getting error like this
    <?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="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="MAPPING">GENERIC</SAP:Code>
      <SAP:P1>No messages created from split mapping</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>No messages created from split mapping</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    please guide me..
    regards
    ram

    Hi Ram,
    Check these..
    Split mapping created no messages
    Message Split without BPM - Error
    cheers,
    Prashanth
    P.S Please mark helpful answers

  • Accessing SAP:HopList element in message header from JAVA-mapping

    Dear Experts,
    Is it possible to access the SAP:HopList element from message header in JAVA-mapping? 
    I need this to get the list off all receivers of current message (I have a ReceiverDetermination with two receivers, without any conditions, so both receivers are receiving each message and in InterfaceDetermination to one of the receivers I have a JAVA-mapping, in which I need to know the name of another receiver. And the SAP:HopList is containing this information).
    Or maybe where is some other solution?
    Best Regards,
    Artsiom Anichenka

    That's tricky, since the proper way of doing it would be through BPM.
    Anyway, if you expose your XI interface as a WebService (Soap sender cc) you could access it through Mapping Lookup (lookup works for RFC, DB and Soap lookups). Check https://help.sap.com/javadocs/NW04S/current/pi/index.html
    But be aware that Mapping Lookup API is not intended for inserts/updates (since it doesn't contain any transacational handling), just mere lookups (selects in tables), so I'm not sure it is the best approach for your case.
    Regards,
    Henrique.

  • Wsdl validation fails for request message payload from custom schema

    Hello. I am having a problem which I cannot seem to work around. I have defined a schema to serve as a template for the request message payload of a bpel process. The schema is very simple:
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:logininfo="http://sru/logininfo" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sru="http://sru/profile" targetNamespace="http://sru/logininfo" elementFormDefault="qualified" attributeFormDefault="unqualified">
         <xs:import namespace="http://sru/profile" schemaLocation="http://sru/profile.xsd"/>
         <xs:element name="logininfo" type="logininfo:logininfoType">
              <xs:annotation>
                   <xs:documentation>Needed information for SRU Login</xs:documentation>
              </xs:annotation>
         </xs:element>
         <xs:complexType name="logininfoType">
              <xs:all>
                   <xs:element name="email" type="sru:emailType"/>
                   <xs:element name="password">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="32"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="product" type="xs:string"/>
                   <xs:element name="ip" type="sru:ipType"/>
                   <xs:element name="timestamp" type="xs:dateTime"/>
                   <xs:element name="xpath" type="xs:string"/>
              </xs:all>
         </xs:complexType>
    </xs:schema>
    (The schema depends on another, which I have placed at the end of this message).
    I import it into the bpel process designer with no problems.
    Upon defining the payload of the request message type to be the {http://sru/logininfo}logininfoType, the WSDL file does not validate anymore:
    Validating WSDL...
    Validating E:\OraBPELPM_1\integration\jdev\jdev\mywork\SRU\BPELProcess5\BPELProcess5.wsdl
    Schema type not found: QName(http://sru/logininfo, logininfoType)
    Validate WSDL: has errors.
    Any ideas?
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns="http://sru/profile" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sru="http://sru" xmlns:xdb="http://xmlns.oracle.com/xdb" targetNamespace="http://sru/profile" elementFormDefault="qualified" attributeFormDefault="unqualified" xdb:schemaURL="http://sru/profile.xsd">
         <xs:annotation>
              <xs:documentation>Joel Salmerón Viver</xs:documentation>
              <xs:documentation xml:lang="en">General purpose internet profile schema</xs:documentation>
         </xs:annotation>
         <xs:simpleType name="emailType">
              <xs:restriction base="xs:string">
                   <xs:maxLength value="255"/>
                   <xs:pattern value="[a-z0-9]([a-z0-9\._][a-z0-9]+)*@[a-z0-9]([a-z0-9\.\-][a-z0-9]+)*\.[a-z]{2,6}"/>
              </xs:restriction>
         </xs:simpleType>
         <xs:simpleType name="ipType">
              <xs:restriction base="xs:string">
                   <xs:pattern value="((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])"/>
              </xs:restriction>
         </xs:simpleType>
         <xs:simpleType name="labelType">
              <xs:restriction base="xs:string">
                   <xs:maxLength value="32"/>
              </xs:restriction>
         </xs:simpleType>
         <xs:complexType name="addressType" xdb:SQLType="ADDRESSTYPE" xdb:SQLSchema="SRU">
              <xs:all>
                   <xs:element name="lines" type="linesType" minOccurs="0" xdb:SQLName="lines" xdb:SQLType="LINESTYPE" xdb:SQLSchema="SRU" xdb:SQLInline="true">
                        <xs:key name="linesKey">
                             <xs:selector xpath="line"/>
                             <xs:field xpath="@num"/>
                        </xs:key>
                   </xs:element>
                   <xs:element name="city" xdb:SQLName="city" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="64"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="postalcode" xdb:SQLName="postalcode" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="16"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="countrycode" xdb:SQLName="countrycode" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:length value="2"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
              </xs:all>
              <xs:attribute name="label" type="labelType" use="required" xdb:SQLName="label" xdb:SQLType="VARCHAR2"/>
              <xs:attribute name="verified" type="xs:boolean" use="required" xdb:SQLName="verified" xdb:SQLType="RAW"/>
         </xs:complexType>
         <xs:complexType name="lineType" xdb:SQLType="LINETYPE" xdb:SQLSchema="SRU">
              <xs:simpleContent>
                   <xs:extension base="xs:string">
                        <xs:attribute name="num" type="xs:positiveInteger" use="required" xdb:SQLName="num" xdb:SQLType="NUMBER"/>
                   </xs:extension>
              </xs:simpleContent>
         </xs:complexType>
         <xs:complexType name="loginType" xdb:SQLType="LOGINTYPE" xdb:SQLSchema="SRU">
              <xs:all>
                   <xs:element name="registered_date" type="xs:dateTime" xdb:SQLType="TIMESTAMP WITH TIME ZONE" xdb:SQLName="registered_date" xdb:SQLInline="true"/>
                   <xs:element name="lastlogin_date" type="xs:dateTime" xdb:SQLType="TIMESTAMP WITH TIME ZONE" xdb:SQLName="lastlogin_date" xdb:SQLInline="true"/>
                   <xs:element name="lastlogin_ip" type="ipType" minOccurs="0" xdb:SQLName="lastlogin_ip" xdb:SQLType="VARCHAR2" xdb:SQLInline="true"/>
                   <xs:element name="lastlogin_time" type="xs:time" minOccurs="0" xdb:SQLType="TIMESTAMP WITH TIME ZONE" xdb:SQLName="lastlogin_time" xdb:SQLInline="true"/>
              </xs:all>
              <xs:attribute name="product" use="required" xdb:SQLName="product" xdb:SQLType="VARCHAR2">
                   <xs:simpleType>
                        <xs:restriction base="xs:string">
                             <xs:maxLength value="32"/>
                        </xs:restriction>
                   </xs:simpleType>
              </xs:attribute>
              <xs:attribute name="status" type="xs:integer" use="required" xdb:SQLName="status" xdb:SQLType="NUMBER"/>
         </xs:complexType>
         <xs:complexType name="addressesType" xdb:SQLType="ADDRESSESTYPE" xdb:SQLSchema="SRU">
              <xs:sequence>
                   <xs:element name="address" maxOccurs="unbounded" xdb:defaultTable="PROFILE_ADDRESSES" xdb:SQLName="address" xdb:SQLSchema="SRU" xdb:SQLInline="true" xdb:defaultTableSchema="SRU" xdb:SQLCollType="address360_COLL" xdb:SQLCollSchema="SRU" xdb:maintainOrder="false">
                        <xs:complexType xdb:SQLType="address358_T" xdb:SQLSchema="SRU">
                             <xs:complexContent>
                                  <xs:extension base="addressType"/>
                             </xs:complexContent>
                        </xs:complexType>
                   </xs:element>
              </xs:sequence>
              <xs:attribute name="main" type="labelType" use="required" xdb:SQLName="main" xdb:SQLType="VARCHAR2"/>
         </xs:complexType>
         <xs:complexType name="phonesType" xdb:SQLType="PHONESTYPE" xdb:SQLSchema="SRU">
              <xs:sequence>
                   <xs:element name="phone" type="phoneType" maxOccurs="unbounded" xdb:SQLName="phone" xdb:SQLType="PHONETYPE" xdb:SQLSchema="SRU" xdb:SQLInline="true" xdb:SQLCollType="phone363_COLL" xdb:SQLCollSchema="SRU" xdb:maintainOrder="false"/>
              </xs:sequence>
              <xs:attribute name="main" type="labelType" use="required" xdb:SQLName="main" xdb:SQLType="VARCHAR2"/>
         </xs:complexType>
         <xs:complexType name="loginsType" xdb:SQLType="LOGINSTYPE" xdb:SQLSchema="SRU">
              <xs:sequence>
                   <xs:element name="login" type="loginType" maxOccurs="unbounded" xdb:SQLName="login" xdb:SQLType="LOGINTYPE" xdb:SQLSchema="SRU" xdb:SQLInline="true" xdb:SQLCollType="login366_COLL" xdb:SQLCollSchema="SRU" xdb:maintainOrder="false">
                        <xs:key name="loginKey">
                             <xs:selector xpath="."/>
                             <xs:field xpath="@product"/>
                        </xs:key>
                   </xs:element>
              </xs:sequence>
         </xs:complexType>
         <xs:complexType name="phoneType" xdb:SQLType="PHONETYPE" xdb:SQLSchema="SRU">
              <xs:simpleContent>
                   <xs:extension base="phonenumberType"/>
              </xs:simpleContent>
         </xs:complexType>
         <xs:complexType name="profileType" xdb:SQLType="PROFILETYPE" xdb:SQLSchema="SRU">
              <xs:all>
                   <xs:element name="firstname" xdb:SQLName="firstname" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="64"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="surname1" xdb:SQLName="surname1" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="64"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="surname2" minOccurs="0" xdb:SQLName="surname2" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="64"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="gender">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:length value="1"/>
                                  <xs:enumeration value="M"/>
                                  <xs:enumeration value="F"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="alt_email" type="emailType" minOccurs="0" xdb:SQLName="alt_email" xdb:SQLType="VARCHAR2" xdb:SQLInline="true"/>
                   <xs:element name="addresses" type="addressesType" minOccurs="0" xdb:SQLName="addresses" xdb:SQLType="ADDRESSESTYPE" xdb:SQLSchema="SRU" xdb:SQLInline="true">
                        <xs:key name="addressesKey">
                             <xs:selector xpath="address"/>
                             <xs:field xpath="@label"/>
                        </xs:key>
                        <xs:keyref name="addressRef" refer="addressesKey">
                             <xs:selector xpath="."/>
                             <xs:field xpath="@main"/>
                        </xs:keyref>
                   </xs:element>
                   <xs:element name="phones" type="phonesType" minOccurs="0" xdb:SQLName="phones" xdb:SQLType="PHONESTYPE" xdb:SQLSchema="SRU" xdb:SQLInline="true">
                        <xs:key name="phoneKey">
                             <xs:selector xpath="phone"/>
                             <xs:field xpath="@label"/>
                        </xs:key>
                        <xs:keyref name="phoneRef" refer="phoneKey">
                             <xs:selector xpath="."/>
                             <xs:field xpath="@main"/>
                        </xs:keyref>
                   </xs:element>
                   <xs:element name="language" type="xs:language" xdb:SQLName="language" xdb:SQLType="VARCHAR2" xdb:SQLInline="true"/>
                   <xs:element name="logins" type="loginsType" minOccurs="0" xdb:SQLName="logins" xdb:SQLType="LOGINSTYPE" xdb:SQLSchema="SRU" xdb:SQLInline="true">
                        <xs:key name="loginsKey">
                             <xs:selector xpath="login"/>
                             <xs:field xpath="@product"/>
                        </xs:key>
                   </xs:element>
                   <xs:element name="origin" minOccurs="0" xdb:SQLName="origin" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:annotation>
                             <xs:documentation>iso3166 a2 country code</xs:documentation>
                        </xs:annotation>
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:length value="2"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="creation_date" type="xs:dateTime" xdb:SQLType="TIMESTAMP WITH TIME ZONE" xdb:SQLName="creation_date" xdb:SQLInline="true"/>
                   <xs:element name="modified_date" type="xs:dateTime" xdb:SQLType="TIMESTAMP WITH TIME ZONE" xdb:SQLName="modified_date" xdb:SQLInline="true"/>
                   <xs:element name="password" xdb:SQLName="password" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="32"/>
                                  <xs:pattern value="[a-zA-Z0-9]+"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="hint" minOccurs="0" xdb:SQLName="hint" xdb:SQLType="VARCHAR2" xdb:SQLInline="true">
                        <xs:simpleType>
                             <xs:restriction base="xs:string">
                                  <xs:maxLength value="32"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:element>
                   <xs:element name="additional" type="xs:anyType" minOccurs="0">
                        <xs:annotation>
                             <xs:documentation>future expansion</xs:documentation>
                        </xs:annotation>
                   </xs:element>
              </xs:all>
              <xs:attribute name="email" type="emailType" use="required" xdb:SQLName="email" xdb:SQLType="VARCHAR2"/>
              <xs:attribute name="active" type="xs:boolean" use="required"/>
         </xs:complexType>
         <xs:complexType name="phonenumberType" xdb:SQLType="PHONENUMBERTYPE" xdb:SQLSchema="SRU">
              <xs:simpleContent>
                   <xs:extension base="xs:string">
                        <xs:attribute name="label" type="labelType" use="required" xdb:SQLName="label" xdb:SQLType="VARCHAR2"/>
                   </xs:extension>
              </xs:simpleContent>
         </xs:complexType>
         <xs:element name="profile" type="profileType" xdb:defaultTable="PROFILES" xdb:SQLName="profile" xdb:SQLType="PROFILETYPE" xdb:SQLSchema="SRU" xdb:defaultTableSchema="SRU"/>
         <xs:complexType name="linesType" xdb:SQLType="LINESTYPE" xdb:SQLSchema="SRU">
              <xs:sequence>
                   <xs:element name="line" type="lineType" maxOccurs="unbounded" xdb:SQLName="line" xdb:SQLType="LINETYPE" xdb:SQLSchema="SRU" xdb:SQLInline="true" xdb:SQLCollType="line354_COLL" xdb:SQLCollSchema="SRU" xdb:maintainOrder="false"/>
              </xs:sequence>
         </xs:complexType>
    </xs:schema>

    IT would help if the people that are working this issue would post the resolve of their problems. Every post I see with this problem someone from oracle replies with needing the source project to replicate the issue and the thread dies....

  • Retrieve processed message payload from database

    Hi,
    We need to retrieve the payload of all the messages which have been processed in last 1 month.
    We do not have the message archiving configured currently.
    Could you please let us know how can i retrieve the payload? We can not do it manually as the voulme is really huge.
    Please help with suggestions.
    Thanks,
    Jane

    If you are not archiving the messages then i don't think you can get the payloads for last one month.
    However there is a service using which you can retrieve the payload.
    PI/XI: how to get a PI message from java stack (AAE) in PI 7.11 from ABAP?
    You can write a wrapper around and download multiple payloads.

  • Running another java prog from a java program

    hi,
    I would like to add a button to my program in which when pressed, it will launch another java program.
    so far i googled and found out how to run from this site:
    http://www.devx.com/tips/Tip/13867
    but when the 2nd program is launched, the first program become inaccessible until the 2nd program is terminated.
    is there any way to run the program without causing the first program inaccesible? thank you

    run the commands in seperate threads.
    http://java.sun.com/docs/books/tutorial/essential/threads/

  • How do I call another exe file from a Java program?

    Hi,
    I am doing a simple IDE (text editor/interpreter) for a simple programming language we are developing. It will be submitted as our project for this semester. I created an exe file (in C) which will be used as the interpreter. How do I call the interpreter from my IDE? The interpreter should run when the user clicks a button (i.e. the "Run" button). I've tried the Java Runtime class but it doesn't work. Anyone who knows how to do it?
    Thanks!

    I first tried to do a simple program that calls system commands such as dir, cd <dir>, etc.
    I do not have the exact code right now but as far as I can remember, here's what I wrote:
    class Sample{
        public static void main(String args[]) throws IOException{
           BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
           String command;
           while ((command = in.readLine()).equalsIgnoreCase("exit") == false){
              try{
                Runtime.getRuntime().exec(command);
              }catch(Exception e){
                 System.err.println("Error: " + e);
          System.exit(0);
    }

  • Terminate Message processing From UDF/mapping

    i think u will be checking the condition first if its false then u will be raising alert.
    wat u can do is when the condition fails u set the flag to false and send the output of UDF to ifwithoutelse statement and becuase of which ur mapping will not be processed.
    u have to do it at root node level and u have to supress the target node when the condition fails.
    chirag

    wat exactly r u doing?
    U have to first check all the condition at root level only before message get processed, based on that result u will stop the processing of message at the target end.
    u ahve to set the falg in UDF and accordingly u need to suppress the target root node.
    chirag

  • Get the mapping values from one message mapping into another message mappin

    Hi All,
    I created two graphical message mappings. In first message mapping i created one user defined function and set one global container parameter and I need to use this parameter in my second message mapping user defined function. But the global container parameters can be used in different user defined functions in same message mapping. So is there any way to use the values which are set in one message mapping into another message mapping. If yes, please help me how to get?

    Hi Koteswara rao,
      As you said global container parameters from first message mapping are not accessible from second message mapping program.
    i haven't faced situation like this.but, if you have some unmapped field in target message in first message mapping,you can put global variables data in that unmapped field.
    anyway the output of first message mapping would be input for 2nd messages mapping,so you can access global data(unmapped field filled with global data in 1st MM) from 2nd mapping program..
    Cheers,
    Jag

  • How to use payload from standard RFC MessageType in a RFC Lookup function

    Hello
    We have a DB sender to call an BAPI. The DB receiver gets the BAPI response.
    It is an easy scenario with one mapping.
    But the RFC Mapping Lookup is very awful. You have to rebuild all open and close tags to get the RFC payload. A lot of concat functions are a must. The error search in such a mapping is not easy and seems like EAI developing 1990 (Hand am Arm).
    Ok, it is better as a BPM, but it is not well for first level support person and release changes and trouble shooting.
    How can I use a XML payload from first mapping in my RFC Mapping lookup (second mapping)? There must be a way with two mappings and an easy RFC lookup.
    Currently (one mapping):
    DB sender format -> ( RFC lookup self-made RFC XML structure) DB receiver format
    My dream (two mappings):
    DB sender format -> RFC SAP XI standard Format ->(RFC lookup by using Payload from first mapping) DB receiver format
    I hope someone can help me with an example.
    Daniel

    Hi Daniel,
    If i understood correctly, urs is a 'Asynch' scenario JDBC to JDBC with a RFC lookup in Mapping.
    If its so, then i think wat u r expecting can be done. In Interface Mapping, u can add more than one message mappings.
    So first do a Mapping for DB sender format - RFC input standard format,
    then another one for RFC sender Format - RFC receiver format, (look up code goes in this mapping).
    Then third one from RFC receiver format to DB receiver format.
    The order n which u add in Interface Mapping is also important. This is a suggestion, i havent tried this, but still i think u can give it a try.
    Regards,
    P.Venkat

  • How to download payload from b2b_instancemessage view in Oracle b2b 10g

    I am not able to extract message payload from B2B_INSTANCEMESSAGE VIEW.
    when i execute this query:
    select payload from b2b_instancemessage where documenttype like '%rsConfirmIncid%';
    the output I get is "BLOB"
    I need the complete payload. can somebody please help me?

    We had the requirements to display the Payload in a BAM Monitoring dashboard. Since it was not part of the typical B2B-BAM Monitoring process, and even though technically we can get it from the B2B Message view, there are some BAM feature limitations due to which we had to build a simple ADF page to display the payload and link it to the BAM report. To the end user it is not relevent if we built is using BAM/ADF as it is seamless. Hope this will help someone else who is looking for a similar solution.
    Uday.

  • Java Class Mapping Program in BPM process

    I have a scenario where I'm receiving an IDOC I then use a JAVA mapping program in my first transformation step.  Immediately following I have a switch step but there is not data in from the mapping program.
    1) Receive Step
    2) Transformation IDOC to Table using Java class
    3) Switch step based on Table field value
    Problem is there is no values in the table. 
    This java class was not developed within NetWeaver but was used in our old process. We simply imported the jar file for accessing our existing java classes.  Is there something else we need to do to utilize our java modules within the BPM process?

    Hi,
    You must to have in the java class:
    - You java have to be like:
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.Map;
    import java.util.HashMap;
    import com.sap.aii.mapping.api. AbstractTrace;
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.StreamTransformationConstants;
    public class JavaMapping implements StreamTransformation {
       private Map           param = null;
       private AbstractTrace  trace = null;
       public void setParameter (Map param) {
          this.param = param;
          if (param == null) {
             this.param = new HashMap();
       public void execute(InputStream in, OutputStream out) {
    try {
             trace = (AbstractTrace)param.get(
                       StreamTransformationConstants.MAPPING_TRACE );
             trace.addInfo(‘...’);
             String receiverName = (String)param.get(
                       StreamTransformationConstants.RECEIVER_NAME);
    The method execute take the InputStream with the XML source. The out (OutputStream) have to be an XML like the IDOC structure.
    Regards.

Maybe you are looking for

  • Help with iPod service error

    Greetings, I had an issue where my Nano's battery got very low to the point that it was not recognized by my computer. I borrowed an AC charger and got it to charge and work fine but still not be recognized by my computer. I followed the instructions

  • Acrobat and Safari

    Is there any way to force Safari to open a pdf file outside of the browser. Every time I click on a huge pdf file, it tries to open it in a new browser tab or window, and safari locks up. I want it in Reader or Professional, so that I can edit it if

  • Does Time Machine backup Entourage properly?

    If a user is using Entourage (an account is open) does Time Machine back it up properly? Anybody who has experience with this? Reason I ask is that backup programmes like ChronoSync will return a error if any user has an open account. In other words

  • How to get Sales rep information for each customer

    Hi For each record in ra_customers, I want to find associated Sales rep for each customer. Can some one please tell me what table stores this information? Thanks Aali

  • Single Window Mode for Windows version?

    Hey there, as some might know, there's a "hack" to get Single Window Mode for Safari on Mac. Normally. links with "target=_blank" will open in a new window instead of a new tab. In order to get Single Window Mode, the following code needs to be typed