XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Brandon H.Subject: XSL to Excel - Tiling Columns from Left to Right
Author: Brandon H.
Date: 28 Nov 2005 02:07 PM
I am working with an XSL transformation which formats an excel report from the XML datafile it is applied to. I am having a problem with creating the report layout, where I need to tile sections of data into groups from left to right. (i.e.)

Data1 Data2 Data3
SubData1 SubData2 SubData3
SubData2 SubData3 SubData3

So, I need to somehow setup a loop to build these three (if there happens to be 3) sections of data one row at a time, but 3 sets of data at a time. I am not sure if this is making sense, but it would be a basic loop where I would find out how many sets are in this reports, be it 2, 6, or 9 etc... then I would divide this total by the 3 (for the three columns) and then I would loop this process until all the Data was displayed.

I am not sure if there is an easy way to accomplish this with XSL, or if there is some upfront work I can do to make it much less complicated in the actual XSL file?

Any help is hugely appreciated.

Posttop
(Deleted User) Subject: XSL to Excel - Tiling Columns from Left to Right
Author: (Deleted User)
Date: 28 Nov 2005 02:56 PM
Brandon,
There was a similar question last week. The technique I recommended goes something like this:

<xsl:variable name="nodes" select="select all the nodes to be laid out 3 across"/>
<xsl:for-each select="$nodes">
<xsl:if test="(position() mod 3) = 1">
<xsl:variable name="posnP1" select="position()+1"/>
<xsl:variable name="posnP2" select="position()+2"/>
<newrow>
- generate cell for select="."
- generate cell for select="$nodes[$posnP1]"
- generate cell for select="$nodes[$posnP2]"
</newrow>
</xsl:if>
</xsl:for-each>


The other user ran into some subtle problems with nodesets, take a look at this thread for more information:
http://www.stylusstudio.com/SSDN/default.asp?action=9&read=4435&fid=48&FirstTopic=0&LastTopic=19

Good luck
Clyde

 
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.