on 10-06-2011 5:40 PM
Hello all,
Right now I have trouble defining the following mapping using Message Mapping.
The source structure is like this
MT_Message
..Node 1 ..*
....Header 1
....Detail 1 ..*
Then a message can be
MT_Message
..Node (1)
....Header (1.1)
......Header_Fields
....Detail (1.1)
......Detail_Fields
....Detail (1.2)
......Detail_Fields
..Node (2)
....Header (2.1)
......Header_Fields
....Detail (2.1)
......Detail_Fields
....Detail (2.2)
......Detail_Fields
....Detail (2.3)
......Detail_Fields
In the File Receiver adapter structure as the documentation says is like this
MT_Message_File
....Header 1 ..*
......Header_Fields
....Detail 1 ..*
......Detail_Fields
But after running the message mapping the resulting structure is
MT_Message_File
Header (1)
Header (2)
Detail (1.1)
Detail (1.2)
Detail (2.1)
Detail (2.2)
Detail (2.3)
And the required output file should look like
Header (1)
Detail (1.1)
Detail (1.2)
Header (2)
Detail (2.1)
Detail (2.2)
Detail (2.3)
How I can accomplish this with the Message Mapping and File Receiver adapter? Or I have no choice but to map a java program?
All comments are appreciated. Thank you very much.
The trouble is that the receiver file adapter cannot do content conversion for 2-step hierarchie like this:
root
- row
- header
.....
- line
....
But you can use MessageTransformBean to do FCC with this structure.
http://wiki.sdn.sap.com/wiki/display/XI/HowTo...ContentconversionmodulewithJ2EEJMS+adapter
It is a little bit tricky to assign the nodes on the correct contexts, but it works.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Stefan,
Thank's for your recomendation but from the documentation I can't understand how to do it.
I got Proxy to File
My Proxy message is
<MT_Message>
- <Node>
- - <Header>
- - - <Header_Field1>A</Header_Field1>
- - - <Header_Field2>B</Header_Field2>
- - - <Header_Field3>C</Header_Field3>
- - </Header>
- - <Detail>
- - - <Detail_Field1>1</Detail_Field1>
- - - <Detail_Field1>2</Detail_Field1>
- - </Detail>
- - <Detail>
- - - <Detail_Field1>3</Detail_Field1>
- - - <Detail_Field1>4</Detail_Field1>
- - </Detail>
- </Node>
- <Node>
- - <Header>
- - - <Header_Field1>D</Header_Field1>
- - - <Header_Field2>E</Header_Field2>
- - - <Header_Field3>F</Header_Field3>
- - </Header>
- - <Detail>
- - - <Detail_Field1>5</Detail_Field1>
- - - <Detail_Field1>6</Detail_Field1>
- - </Detail>
- - <Detail>
- - - <Detail_Field1>7</Detail_Field1>
- - - <Detail_Field1>8</Detail_Field1>
- - </Detail>
- - <Detail>
- - - <Detail_Field1>9</Detail_Field1>
- - - <Detail_Field1>0</Detail_Field1>
- - </Detail>
- </Node>
</MT_Message>
And The File Message Type after message mapping is
<MT_Message_File>
- <Header_File>
- - <Header_Field1>A</Header_Field1>
- - <Header_Field2>B</Header_Field2>
- - <Header_Field3>C</Header_Field3>
- </Header_File>
- <Header_File>
- - <Header_Field1>D</Header_Field1>
- - <Header_Field2>E</Header_Field2>
- - <Header_Field3>F</Header_Field3>
- </Header_File>
- <Detail_File>
- - <Detail_Field1>1</Detail_Field1>
- - <Detail_Field1>2</Detail_Field1>
- </Detail_File>
- <Detail_File>
- - <Detail_Field1>3</Detail_Field1>
- - <Detail_Field1>4</Detail_Field1>
- </Detail_File>
- <Detail_File>
- - <Detail_Field1>5</Detail_Field1>
- - <Detail_Field1>6</Detail_Field1>
- </Detail_File>
- <Detail_File>
- - <Detail_Field1>7</Detail_Field1>
- - <Detail_Field1>8</Detail_Field1>
- </Detail_File>
- <Detail_File>
- - <Detail_Field1>9</Detail_Field1>
- - <Detail_Field1>0</Detail_Field1>
- </Detail_File>
</MT_Message_File>
Thus Output File is
ABC
DEF
12
34
56
78
90
But I need the output file in this way
ABC
12
34
DEF
56
78
90
The MessageTransformBean runs on File Adapter after Message Mapping but the configuration is the same like File Adapter Content Conversion. So I'm little bit confused.
Juhan,
I feel this is due to limitation of file adapter FCC as it cannot handle deep structures in content conversion. So i feel, in this case you should try java mapping or XSLT mapping to handle this.
To know how to perform XSLT mapping you can search over sdn for same. May be [http://wiki.sdn.sap.com/wiki/display/XI/XSLTMappingSteps] can help you.
Regards,
Amit
So file adapter has a limitation.
Got to use java or XSLT Mapping.
Thak's for your help.
Edited by: Juan Camilo Gonzalez Buitrago on Oct 7, 2011 6:29 PM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.