Subject: Re: [xsl] Need help combing two elements From: "Fatbob" <fatbob73@xxxxxxxxxxx> Date: Mon, 30 Mar 2009 00:03:13 -0400 |
<fo:table-body> <xsl:for-each select="Row"> <xsl:if test="@Type='Data'"> <fo:table-row keep-together.within-column="always"> <!--both a="$tempDate" b="$tempTime"/-->
and my XSL is the following (well a snippet of it, ...
Actually, it would probably be easier to provide advice if you sent the entire XSLT (or a pointer to it), as it is quite difficult to test what you sent, as we don't have access to $reportType, LabHeaderCell, etc.
I've got your input:
<Row Type="Data"> <Cell>Mar 23, 2006</Cell> <Cell>08:44</Cell> </Row>
But what do you want the output to look like?
While we're here, though, some thoughts follow.
<xsl:for-each select="Row"> <xsl:if test="@Type='Header'"> <xsl:for-each select="Cell"> <fo:table-column/> </xsl:for-each> </xsl:if> </xsl:for-each>
Couldn't this be expressed a bit more simply as
<xsl:for-each select="Row[@Type='Header']/Cell"> <fo:table-column/> </xsl:for-each>
?
<xsl:choose>
<xsl:when test="@Status='Panic'">
<fo:table-cell color="red" background-color="white" border="1pt solid
black" wrap-option="wrap" overflow="hidden">
<fo:block font-size="8pt" padding="1mm" margin-left=".25mm"
overflow="hidden" language="ru" hyphenate="true">
<xsl:value-of select="."/>
</fo:block>
</fo:table-cell>
</xsl:when>
<xsl:otherwise>
<fo:table-cell color="black" background-color="white" border="1pt solid
black" wrap-option="wrap" overflow="hidden">
<fo:block font-size="8pt" padding="1mm" margin-left=".25mm"
overflow="hidden" language="ru" hyphenate="true">
<xsl:value-of select="."/>
</fo:block>
</fo:table-cell>
</xsl:otherwise>
</xsl:choose>
Since most of the content of the <when> and the <otherwise> are the same, I'd be inclined to factor out the similarities:
<xsl:template name="LabDataCell"> <xsl:variable name="color"> <xsl:choose> <xsl:when test="@Status='Panic'">red</xsl:when> <xsl:otherwise>black</xsl:otherwise> </xsl:choose> </xsl:variable> <fo:table-cell color="{$color}" background-color="white" border="1pt solid black" wrap-option="wrap" overflow="hidden"> <fo:block font-size="8pt" padding="1mm" margin-left=".25mm" overflow="hidden" language="ru" hyphenate="true"> <xsl:value-of select="."/> </fo:block> </fo:table-cell> </xsl:template>
I'm sure others on the list will point out if & where I'm wrong.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Need help combing two ele, Syd Bauman | Thread | Re: [xsl] Need help combing two ele, Michael Ludwig |
Re: [xsl] Need help combing two ele, Syd Bauman | Date | Re: [xsl] Need help combing two ele, Michael Ludwig |
Month |