RE: [xsl] Grouping and Subtotals

Subject: RE: [xsl] Grouping and Subtotals
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 01 Apr 2003 13:47:06 -0500
David,

At 12:40 PM 4/1/2003, you wrote:
After the <xsl:for-each select> line, I created a $currentGroup
variable.  I then used it during the sum operation.  So far in my
testing, it appears to work.  Can anyone see anything wrong with this?

No, it is perfectly orthodox and designed to work like this.


You have bound your grouped nodes, together (i.e. as a set), to your variable, scoped within the for-each instruction. It being a node set, you can traverse from it, as you've discovered. Since your processor has the variable, it is spared having to call the key() function repeatedly (and the code is a little easier to read, too).

You don't need that extra self::node() step, however; for

$currentGroup/./ActualUnits

you will find that $currentGroup/ActualUnits will work just as well (and microseconds faster).

Cheers,
Wendell

        <xsl:variable name="currentGroup" select="key('listofbrochures',
BrochureName)" />

...


                                <xsl:value-of
select="format-number(sum($currentGroup/./ActualUnits),'#,##0')"/>
                        </td>
                        <td align="right" class="dataValue">
                                <xsl:value-of
select="format-number(sum($currentGroup/./RemainingProjected),'#,##0')"/
>


======================================================================
Wendell Piez                            mailto:wapiez@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
  Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


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



Current Thread