cancel
Showing results for 
Search instead for 
Did you mean: 

I have to create an external defination which can refer the ED of IDOC .

Former Member
0 Kudos

Hi Expert ,

I have a scenario in which the source side is idoc and target side is mesaage header + idoc strucure .then we have to send the IDOC XML along with the header field to target .I am facing the problem in creation the target structure . My target strucure is :

ED_CommonMessage

<Header>

<field1>

< field2>

<field n>

</Header>

<payload>

<idoc str...>

</Payload>

I have created the XSD for header and in that under payload I am refering the IDOC XSD . I have also icluded the IDOC XSD . In Altova its coming fine . In IR (external defination) i am exporting both the XSD (the IDOC and the Main one) . Again on IDOC ED source I am writng the main ED name also Moreover in the Main ED External Referneces the name of IDOC ED is also coming . But when in message mapping I am opening the Main ED then the idoc structure is not coming there .only the idoc name is coming other details are missing.

PFA the XSD which I am importing as Main ED.

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

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:mns="marksspencer.com/is/2009/schemas/envelope/" targetNamespace="marksspencer.com/is/2009/schemas/envelope/" elementFormDefault="qualified" attributeFormDefault="unqualified">

<xs:include schemaLocation="BLAORD_BLAORD03_ZMDE_BLAORDEXT01.xsd"/>

<xs:element name="MnSDocument">

<xs:complexType>

<xs:sequence>

<xs:element ref="mns:Header"/>

<xs:element ref="mns:Payload"/>

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:element name="Header" type="mns:HeaderType">

<xs:annotation>

<xs:documentation/>

</xs:annotation>

</xs:element>

<xs:complexType name="HeaderType">

<xs:sequence>

<xs:element name="MessageId" type="xs:string">

<xs:annotation>

<xs:documentation>A unique identifier of the message provided by source application and should be of format. Format should be "SourceSystemName-SystemDefinedUID"</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CorrelationId" type="xs:string" minOccurs="0">

<xs:annotation>

<xs:documentation>Application defined correlation id - used for request response interfaces only</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CreatedTimestamp" type="xs:dateTime">

<xs:annotation>

<xs:documentation>The timestamp of when the message was created</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="SourceApplicationName" type="xs:string">

<xs:annotation>

<xs:documentation>Name of the sending application</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="InterfaceId" type="xs:string">

<xs:annotation>

<xs:documentation>Reference to the RICEF IRI value assigned to the interface</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="InterfaceName" type="xs:string">

<xs:annotation>

<xs:documentation>Reference to the name assigned to the interface in the RICEF.</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="PayloadName" type="xs:string">

<xs:annotation>

<xs:documentation>Name of the payload type present in the message.</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="BatchMessageCount" type="xs:int">

<xs:annotation>

<xs:documentation>Number of GBOu2019s or Common Data Models present within the message.</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="BatchRecordCount" type="xs:int">

<xs:annotation>

<xs:documentation>number of individual business records within the batch e.g. total number of purchase orders.</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element ref="mns:IntegrationExtension" minOccurs="0">

<xs:annotation>

<xs:documentation>extension area for the integration processing only</xs:documentation>

</xs:annotation>

</xs:element>

</xs:sequence>

</xs:complexType>

<xs:element name="IntegrationExtension" type="mns:IntegrationExtensionType">

<xs:annotation>

<xs:documentation/>

</xs:annotation>

</xs:element>

<xs:complexType name="IntegrationExtensionType">

<xs:sequence>

<xs:any minOccurs="0" maxOccurs="unbounded"/>

</xs:sequence>

</xs:complexType>

<xs:element name="Payload" type="mns:PayloadType">

<xs:annotation>

<xs:documentation/>

</xs:annotation>

</xs:element>

<xs:complexType name="PayloadType">

<xs:sequence>

<xs:element ref="mns:ZMDE_BLAORDEXT01" minOccurs="0" maxOccurs="unbounded"/>

</xs:sequence>

</xs:complexType>

</xs:schema>

Regards.

Saurabh Sharma

Accepted Solutions (0)

Answers (2)

Answers (2)

markangelo_dihiansan
Active Contributor
0 Kudos

Hi,

Please post the external definition of your header, maybe you have missed something in your encoding.

Regards,

former_member181985
Active Contributor
0 Kudos

Use Java mapping and render the structure as per the requirement. For this create any dummy message type for target system.

What information does the header fields carry in target structure.......

Edited by: Praveen Gujjeti on Mar 19, 2009 3:06 PM

Former Member
0 Kudos

Hi Praveen,

I think you have not got me properly . I am facing problem in creating target structure . there in external defination I have to refer the IDOC ED and that I am unable to achieve .Once the target structure is achieved I can easily prform the one to one map in message mapping and simply achieve it .

Regards,

Saurabh Sharma

former_member181985
Active Contributor
0 Kudos

Hi Saurabh,

What is your target sytem?

And how you fill up the below header fields in target structure, I mean will they have fixed values or dynamic.....

<Header>

<field1>

< field2>

<field n>

</Header>

Regds,

- Gujjeti.

Edited by: Praveen Gujjeti on Mar 19, 2009 3:25 PM