xsl-list
[Top] [All Lists]

[xsl] Display the number of records in a group

2010-03-08 07:06:11
HI,

I  want to display the number of records in a group,

expected o/p is
<mezo eazon="0A0001D003A">8</mezo>


current o/p :
<mezo eazon="0A0001D003A">11111111</mezo>


my xsl :
<xsl:template match="/">
<mezo eazon="0A0001D003A">
<xsl:apply-templates select=".//ARXEURSL" mode="temp2">
</xsl:apply-templates></mezo><xsl:text>&#xD;</xsl:text>
  </xsl:template>

<xsl:template name="ttpgds" match="ARXEURSL" mode="temp2">
<xsl:for-each-group select="G_ROW[INTRA_EU_TRX_CODE =
('GOOD','TRIANGULATION')]"
group-by="concat(VAT_TAX_NO,BILL_CUST_NAME,INTRA_EU_TRX_CODE)">
<xsl:value-of select="sum(count(COUNTRY_CODE))"/>
</xsl:for-each-group>
</xsl:template>
</xsl:stylesheet>

How to show the toatal number of records,
ima failing to get this by  last()
because iam  grouping 11 records into 8 , so the value of last() is
giving 11  which is in correct


my xml :
<?xml version="1.0" encoding="UTF-8"?>
<ARXEURSL>
<P_REPORT_TYPE>D</P_REPORT_TYPE>
<P_INTRA_EU_GOODS_TRX>GOOD</P_INTRA_EU_GOODS_TRX>
<P_INTRA_EU_SERVICES_TRX>SERVICE</P_INTRA_EU_SERVICES_TRX>
<P_INTRA_EU_VAT_TRX_1>TRIANGULATION</P_INTRA_EU_VAT_TRX_1>
<G_SOB>
<SOB_NAME>Progress UK</SOB_NAME>
<TRADER_VAT_NO>BE21212121</TRADER_VAT_NO>
<SOB_CURRENCY>GBP</SOB_CURRENCY>
</G_SOB>
<G_REMIT_TO>
<ADDRESS1>TEST ADD FOR XML Testing BE</ADDRESS1>
<ADDRESS2/>
<ADDRESS3/>
<ADDRESS4/>
<CITY>VIZAG</CITY>
<POSTAL_CODE>54321</POSTAL_CODE>
<STATE/>
<COUNTRY/>
</G_REMIT_TO>
<G_ROW>
<COUNTRY_CODE>BE</COUNTRY_CODE>
<VAT_TAX_NO>123</VAT_TAX_NO>
<BILL_CUST_NAME>ABC</BILL_CUST_NAME>
<ACCTD_AMOUNT>10</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>BE</COUNTRY_CODE>
<VAT_TAX_NO>123</VAT_TAX_NO>
<BILL_CUST_NAME>ABC</BILL_CUST_NAME>
<ACCTD_AMOUNT>20</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>BE</COUNTRY_CODE>
<VAT_TAX_NO>123</VAT_TAX_NO>
<BILL_CUST_NAME>ABC</BILL_CUST_NAME>
<ACCTD_AMOUNT>30</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>AT</COUNTRY_CODE>
<VAT_TAX_NO>456</VAT_TAX_NO>
<BILL_CUST_NAME>DEF</BILL_CUST_NAME>
<ACCTD_AMOUNT>10</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>IND</COUNTRY_CODE>
<VAT_TAX_NO>789</VAT_TAX_NO>
<BILL_CUST_NAME>GHI</BILL_CUST_NAME>
<ACCTD_AMOUNT>10</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>IND</COUNTRY_CODE>
<VAT_TAX_NO>567</VAT_TAX_NO>
<BILL_CUST_NAME>JKL</BILL_CUST_NAME>
<ACCTD_AMOUNT>10</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>IND</COUNTRY_CODE>
<VAT_TAX_NO>234</VAT_TAX_NO>
<BILL_CUST_NAME>BCD</BILL_CUST_NAME>
<ACCTD_AMOUNT>20</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>IND</COUNTRY_CODE>
<VAT_TAX_NO>345</VAT_TAX_NO>
<BILL_CUST_NAME>CDE</BILL_CUST_NAME>
<ACCTD_AMOUNT>20</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>GOOD</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>UK</COUNTRY_CODE>
<VAT_TAX_NO>678</VAT_TAX_NO>
<BILL_CUST_NAME>TTT</BILL_CUST_NAME>
<ACCTD_AMOUNT>30</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>TRIANGULATION</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>UK</COUNTRY_CODE>
<VAT_TAX_NO>678</VAT_TAX_NO>
<BILL_CUST_NAME>TTT</BILL_CUST_NAME>
<ACCTD_AMOUNT>20</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>TRIANGULATION</INTRA_EU_TRX_CODE>
</G_ROW>
<G_ROW>
<COUNTRY_CODE>UK</COUNTRY_CODE>
<VAT_TAX_NO>321</VAT_TAX_NO>
<BILL_CUST_NAME>TRA</BILL_CUST_NAME>
<ACCTD_AMOUNT>10</ACCTD_AMOUNT>
<INTRA_EU_TRX_CODE>TRIANGULATION</INTRA_EU_TRX_CODE>
</G_ROW>
</ARXEURSL>


Thanks
Anil

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--