Announcement

Collapse
No announcement yet.

XSL for-each innerhalb fo:table funktioniert nicht

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XSL for-each innerhalb fo:table funktioniert nicht

    Hallo zusammen,

    folgender Code findet sich in meinem XSL-FO:

    Code:
    <fo:table border="solid 0.5pt black" border-collapse="collapse" width="100%" table-layout="fixed">
    	<fo:table-body>
    		<xsl:for-each select="Step">
    			<fo:table-row>
    				<fo:table-cell>
    					<fo:block><xsl:value-of select="ExecutionStatusId"/></fo:block>
    				</fo:table-cell>
    			</fo:table-row>	
    		</xsl:for-each>
    	</fo:table-body>
    </fo:table>
    Wenn ich dieses auf ein XML anwende, erhalte ich die Fehlermeldung, dass <fo:table> keine Kindelemente wie table-row und table-cell enthält. Das verstehe ich nicht ganz, denn die Elemente sind doch vorhanden, halt nur eingeschlossen von einem XSL for-each. Aber genau das scheint das Problem zu sein, denn wenn ich die Schleife entferne, gibt es keinen Fehler mehr vom Parser.

    Hat jemand eine Idee, wie ich diese Schleife realisieren kann? Bei Bedarf kann ich natürlich noch mehr Informationen beisteuern

    Vielen Dank,
    Robert
    Zuletzt editiert von Gast_1; 20.08.2009, 14:28. Reason: Lösung gefunden

  • #2
    vielleicht so
    in ein call-template packen
    den innern teil dass ins template

    Code:
    <fo:table border="solid 0.5pt black" border-collapse="collapse" width="100%" table-layout="fixed">
    	<fo:table-body>
    		<xsl:call-template name="tab"/>
    	</fo:table-body>
    </fo:table>
    
    <xsl:template name="tab">
    
    <xsl:for-each select="Step">
    			<fo:table-row>
    				<fo:table-cell>
    					<fo:block><xsl:value-of select="ExecutionStatusId"/></fo:block>
    				</fo:table-cell>
    			</fo:table-row>	
    		</xsl:for-each>
    
    </xsl:template>

    Comment


    • #3
      Vielen Dank für die Antwort. Die Lösung war jedoch sehr viel banaler, da ich lediglich ein falsches Statement eingefügt hatte, das dazu führte, dass kein Ergebnis zurückkam und somit war sozusagen die Tabelle "leer"

      Comment

      Working...
      X