Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Many to Many mapping problem

Status
Not open for further replies.

bosuch

Programmer
Oct 22, 2003
4
0
0
US
I have a scenario where I need to replace some elements in an existing message with the contents of another message. Message #2 (the existing message) looks like this:

<Root>
<Loop2300>
<Loop2400>
<LXSegment>
<LX01_AssignedNumber>1</LX01_AssignedNumber>
</LXSegment>
<HCPSegment>
<HCP02_Amount>0</HCP02_Amount>
</HCPSegment>
</Loop2400>
<Loop2400>
<LXSegment>
<LX01_AssignedNumber>2</LX01_AssignedNumber>
</LXSegment>
<HCPSegment>
<HCP02_Amount>0</HCP02_Amount>
</HCPSegment>
</Loop2400>
</Loop2300>
</Root>

And message #1 (the new data) looks like this:


<Root>
<Header>
<Detail>
<ServiceLine>1</ServiceLine>
<Amount>10.4</Amount>
</Detail>
<Detail>
<ServiceLine>2</ServiceLine>
<Amount>1.2</Amount>
</Detail>
</Header>
</Root>

I want to match up the LX01_AssignedNumber in the first message to the ServiceLine in the second message, and replace the appropriate amounts, so that the output winds up looking like this:

<Root>
<Loop2300>
<Loop2400>
<LXSegment>
<LX01_AssignedNumber>1</LX01_AssignedNumber>
</LXSegment>
<HCPSegment>
<HCP02_Amount>10.4</HCP02_Amount>
</HCPSegment>
</Loop2400>
<Loop2400>
<LXSegment>
<LX01_AssignedNumber>2</LX01_AssignedNumber>
</LXSegment>
<HCPSegment>
<HCP02_Amount>1.2</HCP02_Amount>
</HCPSegment>
</Loop2400>
</Loop2300>
</Root>

I thought I could just use an Equal functoid and compare Service Line to LX01_AssignedNumber, then a Value Mapping functoid, but I wind up with 10.4 for both of them. How would I solve this?

Thanks!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top