AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

XRechnung Probleme mit Runden

Ein Thema von dj-pitti · begonnen am 3. Jul 2025 · letzter Beitrag vom 17. Jul 2025
Antwort Antwort
dj-pitti

Registriert seit: 1. Jul 2004
13 Beiträge
 
Delphi 2010 Professional
 
#1

XRechnung Probleme mit Runden

  Alt 3. Jul 2025, 10:26
Hallo zusammen,

ich befasse mich gerade mit dem Thema eRechnung und nutze dazu die LIB von landrix, soweit funktioniert die Umsetzung auch ganz gut auch wenn viele Anpassungen am alten System notwendig waren.

Derzeit scheitere ich am Runden und damit beim fehlerfreien validieren der xml-Daten. Die Rechnung (Beträge sind inklusive MwSt) wäre wie folgt:

10 x Artikel A á 100 € brutto mit 19 % Steuersatz
5 x Artikel B á 100 € brutto mit 7 % Steuersatz

Die rechnerisch korrekten Summen wären

84,03 netto * 10 = 840,34 € (84,03361344537815 * 10 = 840,3361344537815)
93,46 netto * 5 = 467,29 € (93,45794392523364 * 5 = 467,2897196261682)

Beim generieren der XML in der InvoiceLine werden die Daten aber trotz korrekter Übergabe falsch berechnet:

Code:
<cac:InvoiceLine>
    <cbc:ID>1</cbc:ID>
    <cbc:InvoicedQuantity unitCode="H87">10.0000</cbc:InvoicedQuantity>
    <cbc:LineExtensionAmount currencyID="EUR">840.34</cbc:LineExtensionAmount>
    <cac:Item>
      <cbc:Description>Dies ist die Beschreibung für den Artikel</cbc:Description>
      <cbc:Name>Weihnachtsdose</cbc:Name>
      <cac:ClassifiedTaxCategory>
        <cbc:ID>S</cbc:ID>
        <cbc:Percent>19.00</cbc:Percent>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:ClassifiedTaxCategory>
    </cac:Item>
    <cac:Price>
      <cbc:PriceAmount currencyID="EUR">84.03</cbc:PriceAmount>
    </cac:Price>
  </cac:InvoiceLine>
Und da ja 10 * 84,03 nicht 840,34 sind wird die xml als nicht valide getestet

Wie kann ich das Problem lösen? Danke und viele Grüße, Silvio
Angehängte Dateien
Dateityp: xml Beispiel_UBL.xml (6,3 KB, 2x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Olli73
Olli73

Registriert seit: 25. Apr 2008
Ort: Neunkirchen
793 Beiträge
 
#2

AW: XRechnung Probleme mit Runden

  Alt 3. Jul 2025, 10:47
Wenn CoPilot nicht lügt, kann/sollte "cbc: PriceAmount" 4 Nachkommastellen haben...
  Mit Zitat antworten Zitat
dj-pitti

Registriert seit: 1. Jul 2004
13 Beiträge
 
Delphi 2010 Professional
 
#3

AW: XRechnung Probleme mit Runden

  Alt 3. Jul 2025, 12:12
Guter Ansatz - laut Definition von BT-146 gehen sogar:

Der Preis pro Einheit kann bis zur
elften Nachkommastelle genau
angegeben werden.

Doch leider wird das Feld im xml gerundet/gekürzt ausgegeben.

Der Gesamtnettobetrag muss wiederum 2stellig ausgegeben werden - ich hab aber gesehen das mittels BT-114 die Rundungsfehlerdifferenz (PayableRoundingAmount) angegeben werden kann
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.239 Beiträge
 
Delphi 12 Athens
 
#4

AW: XRechnung Probleme mit Runden

  Alt 4. Jul 2025, 14:05
Das Thema Rundung gab es schonmal
https://www.delphipraxis.net/216478-...-vertikal.html

https://www.delphipraxis.net/216356-xrechnung-pdf.html
  Mit Zitat antworten Zitat
dj-pitti

Registriert seit: 1. Jul 2004
13 Beiträge
 
Delphi 2010 Professional
 
#5

AW: XRechnung Probleme mit Runden

  Alt 16. Jul 2025, 08:27
Danke erstmal für die Antworten - auch mit viel Programmieraufwand bekomme ich den Rundungsfehler nicht weg.

Ich behelfe mir jetzt mittels cac:AllowanceCharge und berechne aus den beiden Werten die Differenz und setze diese dann auf den jeweiligen Posten an:

Code:
<cac:AllowanceCharge>
      <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
      <cbc:AllowanceChargeReasonCode>ABK</cbc:AllowanceChargeReasonCode>
      <cbc:Amount currencyID="EUR">0.04</cbc:Amount>
    </cac:AllowanceCharge>
Somit wird das xml auch valide, sieht zwar nicht schön aus aber ich habe keine andere Lösung gefunden Die Rechnungssummen stimmen ja komplett überein, somit ist das die für mich derzeit praktikabelste Lösung.
  Mit Zitat antworten Zitat
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
868 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: XRechnung Probleme mit Runden

  Alt 17. Jul 2025, 14:31
Somit wird das xml auch valide, sieht zwar nicht schön aus aber ich habe keine andere Lösung gefunden Die Rechnungssummen stimmen ja komplett überein, somit ist das die für mich derzeit praktikabelste Lösung.
Stimmt das auch wenn Du in einer Rechnung Positionen mit verschiedenen MwSt.-Sätzen hast? Ich hatte mal gesehen, dass der Validator dann meckert. Bekomme das aber nicht mehr reproduziert.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz