我需要添加每次出现的totalPackageQuantity,totalGrossVolume和totalGrossWeight
<packageTotal>
<packageTypeCode>BX</packageTypeCode>
<totalPackageQuantity>3</totalPackageQuantity>
<totalGrossVolume measurementUnitCode="CBM">0.026000</totalGrossVolume>
<totalGrossWeight measurementUnitCode="KGM">2.880000</totalGrossWeight>
</packageTotal>
<packageTotal>
<packageTypeCode>BX</packageTypeCode>
<totalPackageQuantity>3</totalPackageQuantity>
<totalGrossVolume measurementUnitCode="CBM">0.026000</totalGrossVolume>
<totalGrossWeight measurementUnitCode="KGM">2.880000</totalGrossWeight>
</packageTotal>
在上面的xml结构中,每个
的预期值5.760000(总重量)
0.052000(总总体积)
我目前正在使用此
sum(packageTotal/totalGrossWeight)
使用sum函数去掉一些十进制值,我需要十进制格式。如果只出现一次,则该值将保持不变。
答案 0 :(得分:1)
不可能&#34;保留&#34;格式,因为给定的值必须在它们可以求和之前转换为数字 - 并且数字没有格式。
如果您知道所需的精度是小数点后六位,那么只需使用:
<xsl:value-of select="format-number(sum(packageTotal/totalGrossWeight), '0.000000')"/>
如果您需要动态恢复原始格式,请尝试:
<xsl:variable name="format" select="translate(packageTotal[1]/totalGrossWeight, '123456789', '000000000')" />
<xsl:value-of select="format-number(sum(packageTotal/totalGrossWeight), $format)"/>