Abschlag benötigt genau einen Betrag

Fehler FX-SCH-A-000544 Factur-X

Das Element 'ram:ActualAmount' muss genau einmal vorkommen.

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

Das Abschlagselement enthält nicht genau ein ram:ActualAmount. Die Regel prüft die Anzahl dieses Elements innerhalb von ram:SpecifiedTradeAllowanceCharge.

Was die Regel bedeutet

ram:ActualAmount enthält den Betrag des Abschlags. Ohne genau ein solches Element ist der Betrag des Abschlags nicht eindeutig angegeben.

Bitte geben Sie genau einen `ram:ActualAmount` für den Abschlag an

Der Abschlag auf der Rechnungsposition enthält nicht genau einen Betrag. Sie können die Anzahl der Betragselemente im Abschlag anpassen.

Was ist zu tun?
  1. Suchen Sie das betreffende ram:SpecifiedTradeAllowanceCharge in der Rechnungsposition.
  2. Stellen Sie sicher, dass es genau ein ram:ActualAmount enthält.
  3. Erzeugen Sie die Rechnung erneut und prüfen Sie sie noch einmal.
So sieht es aus
✗ Führt zur Meldung
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>false</udt:Indicator>
  </ram:ChargeIndicator>
</ram:SpecifiedTradeAllowanceCharge>
✓ In Ordnung
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>false</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>1.00</ram:ActualAmount>
</ram:SpecifiedTradeAllowanceCharge>
Technische Details

Der Test zählt die direkten ram:ActualAmount-Elemente in ram:SpecifiedTradeAllowanceCharge und verlangt die Anzahl 1.

Wo die Regel greift

Die Regel gilt für einen Abschlag auf Ebene einer Rechnungsposition, dessen ram:ChargeIndicator den Wert false hat.

Originalmeldung aus dem Schematron
Element 'ram:ActualAmount' must occur exactly 1 times.
Kontext (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/ udt:Indicator="false"]
Prüfausdruck (assert/@test)
count(ram:ActualAmount)=1