|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Sorting By a calculated variable
The variable $totale has the same value for every item in your list, so sorting by $totale will have no effect. You need to compute the sort key for each individual item in the list. This can be a bit tricky in XSLT 1.0 because the computation must be done within a single XPath expression. There are various tricks for getting around the limitations this imposes. But I'm not going to suggest code in your case because I can't see the source document structure and your existing computation looks rather strange. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Giancarlo Rossi [mailto:giancarlo_rossi@xxxxxxxxxx] > Sent: 03 September 2003 20:26 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Sorting By a calculated variable > > I need to implement a sorting by a calculating variable.. > I need to sort By $totale and display the $totale value. > In this way the values are not displayed... > > Exist a way able to apply this kind of sort ? > > > <xsl:template match="/"> > <xsl:call-template name="positionfilter"> <xsl:with-param > name="sortedlist"> <xsl:for-each > select="/CommandList/CheckRouting/RouterList/Router/GroupList/ > Group/OutwardL > ist/Outward" > <xsl:variable name="root" > select="../../ReturnList/Return" /> > > <xsl:variable name="totale"> > <xsl:choose> > <xsl:when test="Price/Amount"> > <xsl:value-of > select="format-number(number(Price/Amount)+number($root/Price/ Amount),'#.##' > )"/> > </xsl:when> > <xsl:otherwise> > <xsl:value-of select="//Group/Price/Amount/text()"/> > </xsl:otherwise> > </xsl:choose> > </xsl:variable> > > <xsl:copy-of select="."/> > </xsl:for-each> > </xsl:with-param> > </xsl:call-template> > </xsl:template> > > <xsl:template name="positionfilter"> > <xsl:param name="sortedlist"/> > <xsl:param name="totale"/> > <xsl:for-each select="msxsl:node-set($sortedlist)/*"> > <xsl:sort select="$totale"/> > <xsl:value-of select="$totale"></xsl:value-of><br/> > </xsl:for-each> > </xsl:template> > </xsl:stylesheet>
|
Back To School Sale!Save 30% off all Stylus Studio 2008 Products when you purchase from our Online Shop. Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|






