Dezimalstellen des Zuschlagsbasisbetrags

Fehler BR-DEC-28 EN 16931

Die zulässige maximale Anzahl von Dezimalstellen für den Grundbetrag des Zuschlags auf Ebene der Rechnungsposition (BT-142) beträgt 2.

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

Der Wert in ram:BasisAmount hat mehr als zwei Dezimalstellen.

Was die Regel bedeutet

Der Basisbetrag des Zuschlags auf der Rechnungsposition darf höchstens zwei Dezimalstellen haben.

Betroffene Felder BT-142
Bitte begrenzen Sie die Dezimalstellen des Zuschlagsbasisbetrags auf der Rechnungsposition

Der Basisbetrag des Zuschlags auf der Rechnungsposition enthält mehr als zwei Dezimalstellen. Sie können den Fehler beheben, indem Sie den Wert in ram:BasisAmount auf die zulässige Anzahl von Dezimalstellen bringen.

Was ist zu tun?
  1. Prüfen Sie den Wert von AbstractTradeAllowanceCharge.BasisAmount.
  2. Stellen Sie sicher, dass der Basisbetrag höchstens zwei Dezimalstellen hat.
  3. Erzeugen Sie die Rechnung neu und prüfen Sie sie erneut.
So sieht es aus
✗ Führt zur Meldung
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:BasisAmount>1.234</ram:BasisAmount>
</ram:SpecifiedTradeAllowanceCharge>
✓ In Ordnung
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:BasisAmount>1.23</ram:BasisAmount>
</ram:SpecifiedTradeAllowanceCharge>
In FactoorSharp prüfen
  • AbstractTradeAllowanceCharge.BasisAmount (Line level charge: BT-142)
Technische Details

Die Prüfung zählt die Zeichen nach dem Dezimalpunkt in ram:BasisAmount des Zuschlags und lässt höchstens zwei zu.

Wo die Regel greift

Die Regel gilt für ram:BasisAmount eines Zuschlags in ram:SpecifiedTradeAllowanceCharge auf einer Rechnungsposition.

Originalmeldung aus dem Schematron
The allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2.
Kontext (rule/@context)
//ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:ChargeIndicator[udt:Indicator = 'true']
Prüfausdruck (assert/@test)
string-length(substring-after(../ram:BasisAmount,'.'))<=2