Dezimalstellen der Zuschlagssumme begrenzen

Fehler BR-DEC-11 EN 16931

Die zulässige Höchstzahl an Dezimalstellen für die Summe der Zuschläge auf Dokumentenebene (BT-108) beträgt 2.

Pflichtregel: Solange sie verletzt ist, ist die Rechnung ungültig und wird von Validatoren abgewiesen.
Was nicht stimmt

ChargeTotalAmount enthält mehr als zwei Ziffern nach dem Dezimaltrennzeichen.

Was die Regel bedeutet

Die Summe der Zuschläge auf Dokumentenebene darf höchstens zwei Nachkommastellen haben.

Betroffene Felder BT-108
Bitte begrenzen Sie die Nachkommastellen der Zuschlagssumme

ChargeTotalAmount enthält mehr Nachkommastellen als für die Zuschlagssumme auf Dokumentenebene zulässig sind. Sie können den Betrag auf höchstens zwei Nachkommastellen anpassen.

Was ist zu tun?
  1. Prüfen Sie den Wert von ChargeTotalAmount.
  2. Begrenzen Sie ihn auf höchstens zwei Nachkommastellen.
  3. Prüfen Sie die Property ChargeTotalAmount.
  4. Erzeugen Sie die Rechnung neu und prüfen Sie sie erneut.
So sieht es aus
✗ Führt zur Meldung
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
  <ram:ChargeTotalAmount>12.345</ram:ChargeTotalAmount>
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
✓ In Ordnung
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
  <ram:ChargeTotalAmount>12.34</ram:ChargeTotalAmount>
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
In FactoorSharp prüfen
  • FacturXInvoice.ChargeTotalAmount (BT-108)
Technische Details

Der XPath zählt die Zeichen nach dem Punkt in ChargeTotalAmount und erlaubt höchstens zwei.

Wo die Regel greift

Die Regel gilt für ChargeTotalAmount, die Summe der Zuschläge auf Dokumentenebene in SpecifiedTradeSettlementHeaderMonetarySummation.

Originalmeldung aus dem Schematron
The allowed maximum number of decimals for the Sum of charges on document level (BT-108) is 2.
Kontext (rule/@context)
//ram:SpecifiedTradeSettlementHeaderMonetarySummation
Prüfausdruck (assert/@test)
string-length(substring-after(ram:ChargeTotalAmount,'.'))<=2