我想根据此节点更改cac:InvoiceLine行顺序:
cac: AdditionalItemProperty/cbc:价值
所有具有Item type=RC的InvoiceLines必须在行末为group,并且所有具有CU的必须在顶部。
如果所提到的值是您唯一关心的,那么似乎您可以按该值的字母顺序排序;参见xsl:sort
。您可以将其放入处理发票行的xsl:for-each
或xsl:apply-templates
中:
<xsl:sort select="cac:AdditionalItemProperty/cbc:Value" />
另一方面,如果您只想输出具有上述值的行项,则可以分别选择它们。例如,假设您有一个与发票行匹配的模板,您将首先将其应用于"CU"行,然后应用于"RC"行:
<xsl:apply-templates select="cac:InvoiceLine[cac:AdditionalItemProperty/cbc:Value='CU']" />
<xsl:apply-templates select="cac:InvoiceLine[cac:AdditionalItemProperty/cbc:Value='RC']" />