Zulässigen Einheitencode für die Packstückmenge verwenden

Fehler FX-SCH-A-001084 Factur-X

Der Wert von '@unitCode' ist nicht zulässig.

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

Der Wert von @unitCode an ram:PackageQuantity ist nicht in der für diese Regel zugelassenen Codeliste enthalten. Ein nicht leerer Wert muss einem Eintrag dieser Liste entsprechen.

Was die Regel bedeutet

Der Einheitencode kennzeichnet die Maßeinheit der Packstückmenge. Ein nicht zugelassener Code kann dazu führen, dass die Mengenangabe nicht wie vorgesehen interpretiert werden kann.

Bitte verwenden Sie einen zulässigen Einheitencode für die Packstückmenge

Der Einheitencode an ram:PackageQuantity wird nicht als zulässiger Wert erkannt. Ersetzen Sie ihn durch einen in der Codeliste zugelassenen Wert.

Was ist zu tun?
  1. Prüfen Sie den Wert von @unitCode an ram:PackageQuantity.
  2. Ersetzen Sie einen nicht zugelassenen Wert durch einen Eintrag aus der passenden Codeliste.
  3. Erzeugen Sie die Rechnung neu und prüfen Sie sie erneut.
So sieht es aus
✗ Führt zur Meldung
<ram:PackageQuantity unitCode="INVALID">1</ram:PackageQuantity>
✓ In Ordnung
<ram:PackageQuantity unitCode="C62">1</ram:PackageQuantity>
Technische Details

Der Test akzeptiert einen leeren Wert oder einen Wert, der als @value in der Codeliste mit id 15 vorkommt. Die Meldung entsteht bei einem nicht leeren Wert ohne passenden Eintrag.

Wo die Regel greift

Die Regel gilt für das Attribut @unitCode von ram:PackageQuantity in den Lieferangaben einer Rechnungsposition.

Originalmeldung aus dem Schematron
Value of '@unitCode' is not allowed.
Kontext (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ ram:SpecifiedLineTradeDelivery/ram:PackageQuantity
Prüfausdruck (assert/@test)
string-length($codeValue15)=0 or document('FACTUR-X_EXTENDED_codedb.xml')/codedb/cl[@id=15]/enumeration[@value=$codeValue15]