ram:AllowanceTotalAmount darf höchstens einmal vorkommen

Fehler FX-SCH-A-000191 Factur-X

Das Element 'ram:AllowanceTotalAmount' darf höchstens einmal vorkommen.

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

ram:SpecifiedTradeSettlementHeaderMonetarySummation enthält ram:AllowanceTotalAmount mehr als einmal. Das Element darf fehlen, aber nicht mehrfach vorkommen.

Was die Regel bedeutet

ram:AllowanceTotalAmount gibt die Summe der Abschläge auf Dokumentenebene an. Eine einzelne Angabe vermeidet mehrdeutige Abschlagssummen.

Bitte führen Sie die Summe der Abschläge höchstens einmal auf

Die Summe der Abschläge ist in ram:SpecifiedTradeSettlementHeaderMonetarySummation mehrfach angegeben. Entfernen Sie die überzähligen Vorkommen; die Angabe darf auch fehlen.

Was ist zu tun?
  1. Suchen Sie ram:SpecifiedTradeSettlementHeaderMonetarySummation.
  2. Prüfen Sie, wie oft ram:AllowanceTotalAmount darin vorkommt.
  3. Lassen Sie höchstens ein ram:AllowanceTotalAmount stehen oder entfernen Sie das Element vollständig.
  4. Erzeugen Sie die Rechnung neu und prüfen Sie sie erneut.
So sieht es aus
✗ Führt zur Meldung
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
  <ram:AllowanceTotalAmount>...</ram:AllowanceTotalAmount>
  <ram:AllowanceTotalAmount>...</ram:AllowanceTotalAmount>
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
✓ In Ordnung
<ram:SpecifiedTradeSettlementHeaderMonetarySummation/>
Technische Details

Der XPath-Test zählt die direkten ram:AllowanceTotalAmount-Elemente innerhalb von ram:SpecifiedTradeSettlementHeaderMonetarySummation und erlaubt höchstens eines.

Wo die Regel greift

Die Regel gilt für die Geldsummen der Abrechnung in ram:SpecifiedTradeSettlementHeaderMonetarySummation.

Originalmeldung aus dem Schematron
Element 'ram:AllowanceTotalAmount' may occur at maximum 1 times.
Kontext (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ ram:SpecifiedTradeSettlementHeaderMonetarySummation
Prüfausdruck (assert/@test)
count(ram:AllowanceTotalAmount)<=1