I am trying to merge data and running into problems determining the best way
to do it.
Below is an example of my input record:
<RECORD>
<ITEMS>
<ITEM_NUMBER>0000000010</ITEM_NUMBER>
<ACCT_CAT>CC</ACCT_CAT>
<COST_CTR>C090-0080</COST_CTR>
<G_L_ACCT>0060272999</G_L_ACCT>
<DISTR_PERC>50.00</DISTR_PERC>
<UNSPSC>40141813</UNSPSC>
<MATNR>450000412</MATNR>
</ITEMS>
<ITEMS>
<ITEM_NUMBER>0000000010</ITEM_NUMBER>
<ACCT_CAT>CC</ACCT_CAT>
<COST_CTR>C163-0080</COST_CTR>
<G_L_ACCT>0060272998 </G_L_ACCT>
<DISTR_PERC>65.00</DISTR_PERC>
<UNSPSC>40141813</UNSPSC>
<MATNR>450000412</MATNR>
</ITEMS>
<ITEMS>
<ITEM_NUMBER>0000000020</ITEM_NUMBER>
<ACCT_CAT>CC</ACCT_CAT>
<COST_CTR>ENT090930</COST_CTR>
<G_L_ACCT>0060272999</G_L_ACCT>
<DISTR_PERC>100.00</DISTR_PERC>
<UNSPSC>40146677</UNSPSC>
<MATNR>450000417</MATNR>
</ITEMS>
<RECORD>
What I need to do is merge the ITEMS information if the <ITEM_NUMBER> value is
the same while dropping any duplicate data. So I need to take the above and
create the following:
<RECORD>
<ITEMS>
<ITEM_NUMBER>0000000010</ITEM_NUMBER>
<ACCT_CAT>CC</ACCT_CAT>
<COST_CTR>C090-0080</COST_CTR>
<COST_CTR>C163-0080</COST_CTR>
<G_L_ACCT>0060272999</G_L_ACCT>
<G_L_ACCT>0060272998 </G_L_ACCT>
<DISTR_PERC>50.00</DISTR_PERC>
<DISTR_PERC>65.00</DISTR_PERC>
<UNSPSC>40141813</UNSPSC>
<MATNR>450000412</MATNR>
</ITEMS>
<ITEMS>
<ITEM_NUMBER>0000000020</ITEM_NUMBER>
<ACCT_CAT>CC</ACCT_CAT>
<COST_CTR>ENT090930</COST_CTR>
<G_L_ACCT>0060272999</G_L_ACCT>
<DISTR_PERC>100.00</DISTR_PERC>
<UNSPSC>40146677</UNSPSC>
<MATNR>450000417</MATNR>
</ITEMS>
<RECORD>
Does anyone have a recommended approach for tackling this issue?