AW: [xsl] How to sum() with multiplaction

Subject: AW: [xsl] How to sum() with multiplaction
From: "Zink, Juergen" <Juergen.Zink@xxxxxxxxxxxxxxxxxxxx>
Date: Wed, 11 Dec 2002 09:27:26 +0100
Hi Joshua,

snip 

>I want to get the sum of (in the test case)
>2*25 and 3*50
>So i want to get a result of 200
>How do i do this? try this:

snip

Recursion with list of Node2, the function sum only takes a nodeset.

  <xsl:template match="/">
    <xsl:variable name="total">
      <xsl:call-template name="sumRecursive">
        <xsl:with-param name="list" select="//Node2"/>
      </xsl:call-template>
    </xsl:variable>
    <xsl:value-of select="$total"/>
  </xsl:template>

  <xsl:template name="sumRecursive">
    <xsl:param name="list"/>
    <xsl:variable name="sum">
      <xsl:value-of select="$list[1]/test1 * $list[1]/test2"/>
    </xsl:variable>
    <xsl:variable name="listSum">
      <xsl:choose>
        <xsl:when test="count($list)>1">
          <xsl:call-template name="sumRecursive">
            <xsl:with-param name="list" select="$list[position()!=1]"/>
          </xsl:call-template>
        </xsl:when>
        <xsl:otherwise>
          <xsl:value-of select="0"/>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:variable>
    <xsl:value-of select="$sum + $listSum"/>
  </xsl:template>

Jürgen


*****************************************************************************
Diese E-Mail enthaelt vertrauliche und/oder rechtlich geschuetzte 
Informationen. Wenn Sie nicht der richtige Adressat sind oder diese 
eMail irrtuemlich erhalten haben, informieren Sie bitte sofort den 
Absender und vernichten Sie diese Mail. Das unerlaubte Kopieren 
sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet.

This e-mail may contain confidential and/or privileged information. 
If you are not the intended recipient (or have received this e-mail 
in error) please notify the sender immediately and destroy this e-mail. 
Any unauthorized copying, disclosure or distribution of the material 
in this e-mail is strictly forbidden.
*****************************************************************************


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread