Indiquer l’indicateur de remise une seule fois

Erreur FX-SCH-A-000183 Factur-X

L'élément 'ram:ChargeIndicator' doit apparaître exactement une fois.

Règle obligatoire : tant qu'elle n'est pas respectée, la facture est invalide et sera rejetée par les validateurs.
Ce qui ne va pas

Ce ram:SpecifiedTradeAllowanceCharge ne contient pas ram:ChargeIndicator une seule fois. L’indicateur est absent ou apparaît plusieurs fois.

Ce que signifie la règle

ram:ChargeIndicator distingue une remise de frais ou d’une majoration. Pour la remise contrôlée ici, l’élément doit apparaître une seule fois.

Veuillez indiquer l’indicateur de remise une seule fois

La remise ne contient pas ram:ChargeIndicator une seule fois. Vous pouvez corriger cela en indiquant l’indicateur une seule fois.

Que faire ?
  1. Vérifiez ram:SpecifiedTradeAllowanceCharge et assurez-vous que ram:ChargeIndicator apparaît une seule fois.
  2. Vérifiez que l’indicateur de cette remise vaut false.
  3. Générez de nouveau la facture et vérifiez-la à nouveau.
À quoi cela ressemble
✗ Déclenche le message
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>false</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ChargeIndicator>
    <udt:Indicator>false</udt:Indicator>
  </ram:ChargeIndicator>
</ram:SpecifiedTradeAllowanceCharge>
✓ Correct
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>false</udt:Indicator>
  </ram:ChargeIndicator>
</ram:SpecifiedTradeAllowanceCharge>
Détails techniques

Le test Schematron compte les éléments ram:ChargeIndicator directement présents dans le ram:SpecifiedTradeAllowanceCharge sélectionné par le contexte et en exige un seul.

Où la règle s'applique

La règle s’applique à ram:SpecifiedTradeAllowanceCharge au niveau du document lorsque ram:ChargeIndicator/udt:Indicator vaut false, ce qui indique une remise.

Message d'origine du Schematron
Element 'ram:ChargeIndicator' must occur exactly 1 times.
Contexte (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator="false"]
Expression de contrôle (assert/@test)
count(ram:ChargeIndicator)=1