I need the same number of columns in XSLT Table

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Monique Harvey
    New Member
    • Jul 2010
    • 1

    I need the same number of columns in XSLT Table

    Hi - first post here today...

    I have XML data to display in a table via XSL where there is a 'SiteName'as the first column and the remaining 24 columns are 'Values'.
    The final column is Total.

    There may not be a value for every column but I need the table to insert <td> so each column/row has data in it.

    I'm really hoping somebody can understand what I need!! Thank u.

    Here is a sample of XML
    Code:
    - <Hilltop>
      <TimeNow>20/07/10 10:00</TimeNow> 
    - <TestReport>
      <SiteName>Anatoki at Happy Sams</SiteName> 
      <Measurement>Rainfall</Measurement> 
      <Datato>20/07/10 10:00</Datato> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Totals>0</Totals> 
      </TestReport>
    - <TestReport>
      <SiteName>Aorere at Devils Boots</SiteName> 
      <Measurement>Rainfall</Measurement> 
      <Datato>20/07/10 10:45</Datato> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0.5</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Totals>0.5</Totals> 
      </TestReport>
    - <TestReport>
      <SiteName>Waingaro at Little Devil</SiteName> 
      <Measurement>Rainfall</Measurement> 
      <Datato>20/07/10 10:00</Datato> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Value>0</Value> 
      <Totals>0</Totals> 
      </TestReport>
    Last edited by Dormilich; Jul 20 '10, 04:08 AM.
  • jkmyoung
    Recognized Expert Top Contributor
    • Mar 2006
    • 2057

    #2
    My brain is not working, so I can only think of the slow obvious ways:
    Code:
    <td><xsl:value-of select="Value[1]"/></td>
    <td><xsl:value-of select="Value[2]"/></td>
    <td><xsl:value-of select="Value[3]"/></td>
    <td><xsl:value-of select="Value[4]"/></td>
    ...
    <td><xsl:value-of select="Value[24]"/></td>
    Recursive
    Code:
    <xsl:call-template name="recurse"/>
    ...
    
    <xsl:template name="recurse">
      <xsl:param name="index" select="1"/>
      <td><xsl:value-of select="Value[position() = $index]"/></td>
      <xsl:if test="$index &lt; 24">
        <xsl:call-template name="recurse">
          <xsl:with-param name="index" select="$index + 1"/>
        </xsl:call-template>
      </xsl:if>
    </xsl:template>

    Comment

    Working...