xsl-list
[Top] [All Lists]

Re: [xsl] XSL Variable not getting set

2007-03-14 08:26:31
This works great!:

<xsl:for-each select="1 to 12">
             <xsl:variable name="p" select="."/>
             <xsl:value-of select="if ($cg[(_at_)month=$p])
then 
$cg[(_at_)month=$p]/@cost else 0"/>
             <xsl:if
test="position()!=last()">,</xsl:if>
           </xsl:for-each>


I had no idea you could loop that way with XSL. 
Obviously, I'm a newbie at this and am still learning
a lot.

Thanks to everyone for their help.  I really
appreciate it.

-Mike

--- George Cristian Bina <george(_at_)oxygenxml(_dot_)com> wrote:

Check out the following stylesheet:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
   xmlns:niku="http://www.niku.com/xog/Query";>
   <xsl:output method="text"/>
   <xsl:template match="/">
Got:           <xsl:apply-templates />
Expected:
  

2007,0017016990001001703914F537,2970.0,3505.0,0,0,0,123.0,0,0,0,0,0,0
   </xsl:template>

   <xsl:template
match="niku:QueryResult/niku:Records">
     <xsl:for-each-group select="niku:Record"
       group-by="concat(@fiscalyear,@gl)">
       <xsl:variable name="cg"
select="current-group()"/>
         <xsl:if test="@fiscalyear != 'null'">
           <xsl:value-of select="@fiscalyear"/>
           <xsl:text>,</xsl:text>
           <xsl:value-of select="@gl"/>
           <xsl:text>,</xsl:text>
           <xsl:for-each select="1 to 12">
             <xsl:variable name="p" select="."/>
             <xsl:value-of select="if
($cg[(_at_)month=$p]) then 
$cg[(_at_)month=$p]/@cost else 0"/>
             <xsl:if
test="position()!=last()">,</xsl:if>
           </xsl:for-each>
         </xsl:if>                    
     </xsl:for-each-group>
   </xsl:template>
</xsl:stylesheet>

Regards,
George

---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT
Editor/Debugger
http://www.oxygenxml.com


 
____________________________________________________________________________________
Bored stiff? Loosen up... 
Download and play hundreds of games for free on Yahoo! Games.
http://games.yahoo.com/games/front

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--