Subject: [xsl] problem converting xml to excel From: Anna Bikkina <anna@xxxxxxxxxxxxxx> Date: Thu, 11 Mar 2004 17:06:39 -0500 |
Hi, I am trying to convert a xml file into excel using xsl. The data in the xml comes from a database table. When there are empty columns in any row in the xml in excel it is getting filled with the first value entered into excel(the one in row 0 col0). I am not able to understand how that value is propagating to other rows and columns. My xml file looks like this <result> <row><col>col1</col><col>col2</col><col/></row> <row><col>col1row2</col><col>col2ro2</col><col>col3row2</col></row> </result> If you see carefully the third column in row1 is empty. This is causing a problem . Instead of leaving the excel cell empty the cell is being filled with the first value I enter into excel. If I do not fill in row0 col0 what ever value I fill in first gets in there. Can someone please tell me where I am making a mistake. Below is a snippet from my xsl <xsl:template match="result"> <xsl:for-each select="column"> <gmr:Cell Row="4" ValueType="60"> <xsl:variable name="colnumber"><xsl:number from="result" count="column"/></xsl:variable> <xsl:attribute name="Col"> <xsl:value-of select="$colnumber"/> </xsl:attribute> <gmr:Content> <gmr:Styles> <gmr:StyleRegion startCol="0" startRow="4" endCol="30" endRow="4"> <gmr:Style HAlign="1" VAlign="2" WrapText="0" Orient="1" Shade="0" Indent="0" Fore="F800:0:0" Back="0:8000:0" PatternColor="C000:C000:C000" Format="General"> <gmr:Font Unit="9" Bold="1" Italic="0" Underline="0" StrikeThrough="0">Helvetica</gmr:Font> </gmr:Style> </gmr:StyleRegion> </gmr:Styles> <xsl:apply-templates select="." mode="value"/> </gmr:Content> </gmr:Cell> </xsl:for-each> <xsl:for-each select="row"> <xsl:apply-templates select="."> <xsl:with-param name="rownumber" select="position()+4"/> </xsl:apply-templates> </xsl:for-each> </xsl:template> <xsl:template match="row"> <xsl:param name="rownumber" select="3"/> <xsl:for-each select="*"> <xsl:apply-templates select="."> <xsl:with-param name="rownumber" select="$rownumber"/> <xsl:with-param name="colnumber" select="position()"/> </xsl:apply-templates> </xsl:for-each> </xsl:template> <xsl:template match="col"> <!-- avoids Result Tree Fragments --> <xsl:param name="rownumber" select="0"/> <xsl:param name="colnumber" select="0"/> <gmr:Cell ValueType="60" Col="{$colnumber}" Row="{$rownumber}"> <xsl:apply-templates mode="value" select="."/> </gmr:Cell> </xsl:template> Thanks, Anna. XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] variable autoincrement, Dionisio Ruiz de Zar | Thread | Re: [xsl] problem converting xml to, Anna Bikkina |
Re: [xsl] XSLT parameters in TrAX f, Paul Tremblay | Date | [xsl] Using xsl:value-of select in , Thorne, Kares |
Month |