Subject: [xsl] Sum produces NaN From: "James Steven" <JSteven@xxxxxxxxxxxxxxxxxxxxx> Date: Mon, 13 Sep 2004 16:00:38 +0100 |
Hello To add a column of numbers I am using the xsl below. However if there is one value missing in the column then the xsl produces NaN. eg. Below is xml with a value missing in last <data>. I then use the xsl below to add all <data> values but receive NaN because of the missing value. If all <data> tags have value then the sum works. Please could anyone show how to resolve this. Any help greatly appreciated. <a> <b> <data>1</data> </b> <b> <data>2</data> </b> <b> <data>5</data> </b> <b> <data></data> </b> </a> <xsl:template name="orderlist.sum.edit"> <xsl:param name="set-of-order"/> <xsl:variable name="sumorg"> <xsl:call-template name="orderlist.sum"> <xsl:with-param name="set-of-order" select="$set-of-order"/> </xsl:call-template> </xsl:variable> <xsl:value-of select='format-number($sumorg, "####,###,##0.00")'/> </xsl:template> <xsl:template name="orderlist.sum"> <xsl:param name="set-of-order"/> <xsl:choose> <xsl:when test="$set-of-order"> <xsl:variable name="first"> <xsl:apply-templates select="$set-of-order[1]/data"/> </xsl:variable> <xsl:variable name="rest"> <xsl:call-template name="orderlist.sum"> <xsl:with-param name="set-of-order" select="$set-of-order[position() != 1]"/> </xsl:call-template> </xsl:variable> <xsl:value-of select="$first + $rest"/> </xsl:when> <xsl:otherwise>0</xsl:otherwise> </xsl:choose> </xsl:template>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Re: [xml-dev] ANN: EXSLT.NET , Oleg Tkachenko | Thread | Re: [xsl] Sum produces NaN, cking |
RE: [xsl] apply-template doesn't hi, Michael Kay | Date | RE: [xsl] apply-template doesn't hi, Joe Fawcett |
Month |