juls_pro_37: XSLT 1.0 convert, translate, remove

Beitrag lesen

Hallo,

wie kann ich den Wert "AllowanceOrCharge_Header.VatPercentage" von 5,5.00 in 5.50 umwandeln?

Hätte gern eine Bedingung: Wenn "AllowanceOrCharge_Header.VatPercentage" ein "," und ".00" beinhaltet, dann soll das "," in "." umgewandelt werden und ".0" entfernt werden. Oder denke ich zu kompliziert?

XML:

    <AllowanceOrCharge_Header>
      <Qualifier>C</Qualifier>
      <Code>FC</Code>
      <Text>FRET</Text>
      <Amount>45.0000</Amount>
      <VatPercentage>5,5.00</VatPercentage>
    </AllowanceOrCharge_Header>

XSLT:

 <xsl:template match="VatPercentage[contains(., ',')]">
    <VatPercentage><xsl:value-of select="translate(., ',', '.')"/></VatPercentage>
  </xsl:template>

Korrekt: XML:

    <AllowanceOrCharge_Header>
      <Qualifier>C</Qualifier>
      <Code>FC</Code>
      <Text>FRET</Text>
      <Amount>45.0000</Amount>
      <VatPercentage>5.50</VatPercentage>
    </AllowanceOrCharge_Header>

akzeptierte Antworten