I have special requirement, my system provided the xml file as below(available xml file) and I need to convert it as below desired xml file.
is it possible thru shell scripts or awk?
What I need is :
my available xml contains number of records with tags <RevenueAmounts>, the last of record is the summary record.
I need to replace the tags for the last record as shown in below sample. I need to provide the count of the record also,
desired changes are marked in different colors
/* avaialable xml file _start*/
<Report>
<RevenueAmounts element="1">
<GrossAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</GrossAccount>
<DiscountAccount name="monthly">
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount>
<NetAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</NetAccount>
</RevenueAmounts>
<RevenueAmounts element="2">
<GrossAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</GrossAccount>
<DiscountAccount name="monthly">
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount>
<NetAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</NetAccount>
</RevenueAmounts>
<RevenueAmounts element="3">
<GrossAccount name="monthly">
<Credit>0</Credit>
<Debit>14.90000</Debit>
</GrossAccount>
<DiscountAccount name="monthly">
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount>
<NetAccount name="monthly">
<Credit>0</Credit>
<Debit>14.90000</Debit>
</NetAccount>
</RevenueAmounts>
</Report>
/*Available xml file _end*/
/*desired xml file */
<Report>
<RevenueAmounts element="1">
<GrossAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</GrossAccount>
<DiscountAccount name="monthly">
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount>
<NetAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</NetAccount>
</RevenueAmounts>
<RevenueAmounts element="2">
<GrossAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</GrossAccount>
<DiscountAccount name="monthly">
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount>
<NetAccount name="monthly">
<Credit>0</Credit>
<Debit>7.45000</Debit>
</NetAccount>
</RevenueAmounts>
<ReportTrailer>
<RevenueAmounts_total element_total="2">
<GrossAccount_total>
<Credit>0</Credit>
<Debit>14.90000</Debit>
</GrossAccount_total>
<DiscountAccount_total>
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount_total>
<NetAccount_total>
<Credit>0</Credit>
<Debit>14.90000</Debit>
</NetAccount_total>
</RevenueAmounts>
</ReportTrailer>
</Report>
to conclude,
<RevenueAmounts element="3">
<GrossAccount name="monthly">
<Credit>0</Credit>
<Debit>14.90000</Debit>
</GrossAccount>
<DiscountAccount name="monthly">
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount>
<NetAccount name="monthly">
<Credit>0</Credit>
<Debit>14.90000</Debit>
</NetAccount>
</RevenueAmounts>
I need to replace the above record with below:
<ReportTrailer>
<RevenueAmounts_total element_total="2">
<GrossAccount_total>
<Credit>0</Credit>
<Debit>14.90000</Debit>
</GrossAccount_total>
<DiscountAccount_total>
<Credit>0</Credit>
<Debit>0</Debit>
</DiscountAccount_total>
<NetAccount_total>
<Credit>0</Credit>
<Debit>14.90000</Debit>
</NetAccount_total>
</RevenueAmounts_total>
</ReportTrailer>
Any suggestion on how to do this very much appriciated.
Thank you very much