Dezimalstellen des Zuschlagsbetrags

Fehler BR-DEC-27 EN 16931

Die zulässige Höchstzahl an Dezimalstellen für den Betrag des Zuschlags auf Ebene der Rechnungsposition (BT-141) 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:ActualAmount hat mehr als zwei Dezimalstellen.

Was die Regel bedeutet

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

Betroffene Felder BT-141
Bitte begrenzen Sie die Dezimalstellen des Zuschlagsbetrags auf der Rechnungsposition

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

Was ist zu tun?
  1. Prüfen Sie den Wert von AbstractTradeAllowanceCharge.ActualAmount.
  2. Stellen Sie sicher, dass der Betrag 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:ActualAmount>1.234</ram:ActualAmount>
</ram:SpecifiedTradeAllowanceCharge>
✓ In Ordnung
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>1.23</ram:ActualAmount>
</ram:SpecifiedTradeAllowanceCharge>
In FactoorSharp prüfen
  • AbstractTradeAllowanceCharge.ActualAmount (Line level charge: BT-141)
Technische Details

Die Prüfung zählt die Zeichen nach dem Dezimalpunkt im ersten ram:ActualAmount-Element des Zuschlags und lässt höchstens zwei zu.

Wo die Regel greift

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

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