1
嗨, 我需要根據某些屬性將值分組兩次,然後填充它。在xslt中使用兩個group-by
的XML下面,我想一個組通過對UITVOERINGSNIVEAU和ENVELOPPE
<rows>
<row Enveloppe="ACOS" POST_NUM="1000" UITVOERINGSNIVEAU="BnComd" CSTAMNUMMER="1" />
<row Enveloppe="ACOS" POST_NUM="5000" UITVOERINGSNIVEAU="BnComd" CSTAMNUMMER="2" />
<row Enveloppe="DG" POST_NUM="1001" UITVOERINGSNIVEAU="BdeComd" CSTAMNUMMER="4" />
</rows>
我想要的結果如下:
<rows>
<row>
<cell image="folder.gif">BnComd</cell>
<row>
<cell image="folder.gif">ACOS</cell>
<row>
<cell>1000</cell>
<cell>1</cell>
</row>
<row>
<cell>5000</cell>
<cell>2</cell>
<row>
</row>
</row>
<row>
<cell image="folder.gif">BdeComd</cell>
<row>
<cell image="folder.gif">DG</cell>
<row>
<cell>1001</cell>
<cell>4</cell>
</row>
</row>
</row>
</rows>
我覺得這是由組上僅做了UITVOERINGSNIVEAU,但我不知道如何整合我的第二組 - 通過:
<xsl:template match="/*">
<rows>
<xsl:for-each-group select="//rows/row" group-by="@UITVOERINGSNIVEAU">
<row>
<cell image="folder.gif"><xsl:value-of select="current-grouping-key()"/></cell>
<xsl:apply-templates select="current-group()"/>
</row>
</xsl:for-each-group>
</rows>
</xsl:template>
<xsl:template match="row">
<row>
<xsl:apply-templates select="@* except @UITVOERINGSNIVEAU"/>
</row>
</xsl:template>
<xsl:template match="row/@*">
<cell><xsl:value-of select="."/></cell>
</xsl:template>
有人可以幫我認罪è?
感謝