usenussi
Goto Top

Berechnete Zahlen in XSL in Euro oder mit 2 Kommastellen umwandeln

Hallo ich benötige noch einmal eure Hilfe.

Ich habe folgendermaßen den Postversand ohne MwSt. berechnet. und bekomme aus 12,00 Euro die Zahl 10.08403361344538 angezeigt.
Code:
<REMARK type="shipping_fee">  
              <xsl:value-of select="OrderReport/Item/ItemPrice/Component[Type='Shipping']/Amount*0.8403361344537815"/>  
 </REMARK>

Kann mir jemand bei der Umwandlung helfen?

Gibt es Vielleicht auch eine Möglichkeit global alle Europreise in der XSL von Brutto auf Netto umzuwandeln.

Über einen Tipp würde ich mich sehr freuen.

Usenussi

Content-ID: 362197

Url: https://administrator.de/contentid/362197

Ausgedruckt am: 22.11.2024 um 19:11 Uhr

135185
135185 24.01.2018 aktualisiert um 11:45:02 Uhr
Goto Top
colinardo
Lösung colinardo 24.01.2018 aktualisiert um 13:00:58 Uhr
Goto Top
Servus Udo,
mal wieder im XSL-Wald vergaloppiert face-smile?
<REMARK type="shipping_fee">  
              <xsl:value-of select="round((OrderReport/Item/ItemPrice/Component[Type='Shipping']/Amount div 1.19) * 100) div 100"/>  
 </REMARK>
Gibt es Vielleicht auch eine Möglichkeit global alle Europreise in der XSL von Brutto auf Netto umzuwandeln.
Um alle "Amount"-Nodes mit dem Attribut currency und dem Wert EUR durch Ihren Netto-Wert (bei 19%) zu ersetzen:
<?xml version="1.0" encoding="UTF-8"?>  
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">  
  <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>  
    <xsl:template match="node()|@*">  
        <xsl:copy>
            <xsl:apply-templates select="node()|@*"/>  
        </xsl:copy>
    </xsl:template>
  <xsl:template match="//Amount[@currency='EUR']/text()">  
    <xsl:value-of select="round((. div 1.19) * 100) div 100" />  
  </xsl:template>
</xsl:stylesheet>
Grüße Uwe
usenussi
usenussi 25.01.2018 um 06:26:56 Uhr
Goto Top
Hallo Uwe,
vielen Dank für die Antwort, Du hast wieder einmal die Perfekte Lösung.
Gruß Udo
usenussi
usenussi 25.01.2018 um 06:31:20 Uhr
Goto Top
Vielen Dank für die Antwort.
Gruß Udo