Dezimalstellen des Nettobetrags der Rechnungsposition

Fehler BR-DEC-23 EN 16931

Die höchstens zulässige Anzahl an Nachkommastellen für den Nettobetrag der Rechnungsposition (BT-131) beträgt 2.

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

Der Nettobetrag der Rechnungsposition enthält mehr als zwei Zeichen nach dem Dezimalpunkt.

Was die Regel bedeutet

Der Nettobetrag einer Rechnungsposition darf höchstens zwei Dezimalstellen enthalten.

Betroffene Felder BT-131
Bitte begrenzen Sie die Dezimalstellen des Nettobetrags

Der Nettobetrag einer Rechnungsposition enthält mehr als zwei Dezimalstellen. Passen Sie den Wert auf höchstens zwei Stellen nach dem Dezimalpunkt an.

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

Der Test zählt die Zeichen nach dem Punkt in LineTotalAmount und verlangt, dass ihre Anzahl höchstens zwei beträgt.

Wo die Regel greift

Die Regel gilt für SpecifiedLineTradeSettlement/SpecifiedTradeSettlementLineMonetarySummation/LineTotalAmount jeder Rechnungsposition.

Originalmeldung aus dem Schematron
The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2.
Kontext (rule/@context)
//ram:IncludedSupplyChainTradeLineItem
Prüfausdruck (assert/@test)
string-length(substring-after(ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeSettlementLineMonetarySummation/ ram:LineTotalAmount,'.'))<=2