on 10-09-2015 12:11 PM
Dear All,
I have a PI File to Proxy scenario.
I am picking up the tab delimited file in Sender Channel and convert it into nested XML and pass that to proxy.
Now, lets say my source file is like this:
Order no1 order date customer <-- Header
line item1 amount <-- Items
line item 2 amount
Order no2 order date customer
line item1 amount
line item 2 amount
..
...
so on , file can have n number of order and line items
now , I have to create a nexted XML
Order node ( 0 to unbounded)
- Order Header (1 to 1)
- Order Item(1 to unbounded)
Order node ( 0 to unbounded)
- Order Header(1 to 1)
- Order Item(1 to unbounded)
Is it possible to acheive this using File content conversion ? simple message mapping?
I do not want to use UDF...
Best Regards
.
/
Hi Vaibhav,
If you have key field value for your header and item structures then you can read the file like below:
RecordsetStructure : OrderHeader, *, OrderItem, *
Key Field Name : ID
OrderHeader.keyFieldNames: ID, OrderNo, OrderDate, Customer
OrderHeader.keyFieldValue : 10
OrderHeader.fieldSeparator
OrderHeader.endSeparator
OrderItem.keyFieldNames: ID, ItemNo, amount
OrderItem.keyFieldValue : 20
OrderItem.fieldSeparator
OrderItem.endSeparator
Regards,
Praveen.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Praveen,
In the Order Header line , I have one field Type which will be constant 'H' to show it is a header line. It also has OrderNo , both are distinctively in header.
In the OrderItem , I have one field Type which will be constant 'I', this shows that its item line.
My source file looks like this,
H 100010 01.02.2015 56789 <-- Header
I 100$ <-- Items
I 20$ <-- Items
H 100099 15.02.2015 789967 <-- Header
I 210$ <-- Items
I 60$ <-- Items
So , will the file result in multiple nodes of Header and correspodning sub nodes of Items?
I want the data like this after conversion :
<Order>
<H>
<100099>
<01.02.2015>
<56789>
<item>
<I>
<100$>
<item>
<item>
<I>
<20$>
<item>
<Order>
<Order>
<H>
<100010>
<15.02.2015>
<789967>
<item>
<I>
<210$>
<item>
<item>
<I>
<60$>
<item>
<Order>
Thanks for your help.
Regards
Vaibhav
Hello Vaibhav,
Try this
RecordsetStructure : Order, *, Item, *
Key Field Name : ID
Order.fieldNames: give your field Names
Order.keyFieldValue : H
Order.fieldSeparator
Order.endSeparator
Item.keyFieldNames: ID
Item.fieldNames: give your field Names
Item.keyFieldValue : I
Item.fieldSeparator :
Item.endSeparator :
Hello Vaibhav,
How many levels of substructures you have?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
88 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.