Total des majorations de la ligne de facture une seule fois

Erreur FX-SCH-A-001140 Factur-X

L'élément 'ram:ChargeTotalAmount' ne peut apparaître qu'une fois au maximum.

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

ram:ChargeTotalAmount apparaît plusieurs fois dans ram:SpecifiedTradeSettlementLineMonetarySummation.

Ce que signifie la règle

ram:ChargeTotalAmount indique le total des majorations de la ligne de facture. Plusieurs occurrences fourniraient plusieurs valeurs pour ce total.

Veuillez indiquer le total des majorations de la ligne de facture une seule fois

Le total des majorations apparaît plusieurs fois dans le règlement d’une ligne de facture. Cet élément ne peut y apparaître qu’une seule fois au maximum.

Que faire ?
  1. Recherchez les éléments ram:ChargeTotalAmount répétés dans ram:SpecifiedTradeSettlementLineMonetarySummation.
  2. Assurez-vous que cet élément n’y apparaît qu’une seule fois au maximum.
  3. Générez de nouveau la facture et vérifiez-la.
À quoi cela ressemble
✗ Déclenche le message
<ram:SpecifiedTradeSettlementLineMonetarySummation>
  <ram:ChargeTotalAmount>10.00</ram:ChargeTotalAmount>
  <ram:ChargeTotalAmount>20.00</ram:ChargeTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
✓ Correct
<ram:SpecifiedTradeSettlementLineMonetarySummation>
  <ram:ChargeTotalAmount>10.00</ram:ChargeTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
Détails techniques

Le XPath compte les éléments ram:ChargeTotalAmount dans le ram:SpecifiedTradeSettlementLineMonetarySummation courant ; le test est satisfait s’il y en a au plus un.

Où la règle s'applique

La règle s’applique à la somme monétaire dans le règlement d’une ligne de facture et y contrôle ram:ChargeTotalAmount.

Message d'origine du Schematron
Element 'ram:ChargeTotalAmount' may occur at maximum 1 times.
Contexte (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeSettlementLineMonetarySummation
Expression de contrôle (assert/@test)
count(ram:ChargeTotalAmount)<=1