Zuschlag benötigt genau einen Indikator

Fehler FX-SCH-A-000546 Factur-X

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

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

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

Was die Regel bedeutet

ram:ChargeIndicator gibt an, ob es sich bei dem Betrag um einen Abschlag oder einen Zuschlag handelt. Für diesen Zuschlag muss der Indikator genau einmal vorhanden sein.

Bitte ergänzen Sie genau einen `ram:ChargeIndicator` für den Zuschlag

Der Zuschlag auf der Rechnungsposition enthält nicht genau einen Indikator. Sie können die Anzahl der Indikatorelemente im Zuschlag anpassen.

Was ist zu tun?
  1. Suchen Sie das betreffende ram:SpecifiedTradeAllowanceCharge in der Rechnungsposition.
  2. Stellen Sie sicher, dass es genau ein ram:ChargeIndicator mit dem Wert true 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>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
</ram:SpecifiedTradeAllowanceCharge>
✓ In Ordnung
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
</ram:SpecifiedTradeAllowanceCharge>
Technische Details

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

Wo die Regel greift

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

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