|
Subject: RE: [xsl] removing comma from within sum command From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Wed, 1 Dec 2004 16:12:18 -0000 |
This is the equivalent of the classic "sum of price
times quantity for all items". Solutions include:
(a) write a recursive named template
(b) (Saxon extension) saxon:sum(//item, saxon:expression("@price * @qty"))
(c) (XSLT 2.0, Saxon 8) sum(for $i in //item return $i/@price * $i/@qty)
(c2) (next Saxon release) sum(//item/(@price * @qty))
(d) Dimitre's FXSL library (fxsl.sourceforge.net)
(e) create a temporary tree containing the values you want to sum, then use
sum(xx:node-set($temp/values))
In your case, replace "price * quantity" with "translate(., ',', '')".
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: dmitrik@xxxxxxxxxxxxxx [mailto:dmitrik@xxxxxxxxxxxxxx]
> Sent: 01 December 2004 15:05
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] removing comma from within sum command
>
> Is there a way to remove commas from the Charge node in this select?
> placing translate around charge seems to cause an error.: "
> NodeTest expected here."
>
> <xsl:value-of select="format-number(sum(Trade/Step
>
> [concat(substring(MinFlowDate,7),substring(MinFlowDate,1,2),su
> bstring(MinFlowDate,4,2))>=
> concat(substring($global,7)+3,substring($global,1,2),substring
> ($global,4,2))]
>
>
> [concat(substring(MinFlowDate,7),substring(MinFlowDate,1,2),su
> bstring(MinFlowDate,4,2))<
> concat(substring($global,7)+6,substring($global,1,2),substring
> ($global,4,2))]
> /Charge), '###,###,##0')"/>
>
>
>
> Thanks,
> Dmitri
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] removing comma from withi, Geert Josten | Thread | Re: [xsl] removing comma from withi, Dimtre Novatchev |
| Re: [xsl] removing comma from withi, dmitrik | Date | Re: [xsl] removing comma from withi, JBryant |
| Month |