> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Validation des règles

> Validez les données capturées à l’aide de règles dans ABBYY FlexiCapture : créez et filtrez des règles, définissez leur niveau de gravité et leurs conditions, créez des chaînes de règles et localisez les erreurs.

Les **règles** constituent un moyen supplémentaire de vérifier les données capturées. Utilisez-les pour définir des restrictions sur les données de champs spécifiques, c’est-à-dire les conditions auxquelles doivent satisfaire les valeurs capturées.

Vous pouvez également utiliser des règles pour traiter les valeurs capturées. Par exemple, vous pouvez fusionner les valeurs de plusieurs champs ou remplacer des valeurs capturées par des valeurs provenant d'une base de données.

Vous pouvez définir le niveau de rigueur d'une règle : si elle doit générer un avertissement ou une erreur en cas de non-respect. Les champs associés à des avertissements de règle sont marqués d'un indicateur jaune, et les champs associés à des erreurs de règle d'un indicateur rouge. Pour plus d'informations, voir [Règles et erreurs de format](/fr/flexi-capture/brief/brief-verification#rule-verification).

Les règles se configurent dans l'onglet **Rules** de la boîte de dialogue des propriétés d'un champ, d'une section, d'une Document Definition ou de tout autre élément prenant en charge les règles.

<div id="view-rules">
  ## Afficher les règles
</div>

Utilisez la liste déroulante **Afficher les règles** pour choisir les règles à afficher. Dans les noms des options, `%0` est remplacé par le nom de l’objet courant.

| Option                                | Affiche                                                                                                                                                 |
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **font référence à %0**               | Uniquement les règles qui font référence à l’objet courant.                                                                                             |
| **appartenant à %0**                  | Uniquement les règles stockées dans l’objet courant.                                                                                                    |
| **appartenant à %0 et à ses enfants** | Les règles stockées dans l’objet courant et dans ses objets enfants. Pour un groupe, cela inclut les règles stockées dans le groupe et dans ses champs. |

<Note>
  Vous pouvez créer une règle lorsque vous affichez les règles **appartenant à %0** ou **appartenant à %0 et à ses enfants**. Vous ne pouvez pas créer de règle lorsque vous affichez les règles qui **font référence à %0**.
</Note>

<div id="filter-rules">
  ## Règles de filtrage
</div>

Vous pouvez filtrer la liste des règles pour en faciliter la gestion, par exemple pour afficher uniquement les règles associées à un champ ou à une condition spécifique. Pour ouvrir la boîte de dialogue **Filter**, cliquez sur le bouton **Filter** dans l’onglet **Rules**.

| Critère                         | Description                                                                                                                                                                                                                                                                         |
| ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Le nom de la règle contient** | Filtre les règles par nom (sélectionnez un nom dans la liste déroulante).                                                                                                                                                                                                           |
| **Champ**                       | Filtre les règles par champ (affiche uniquement les règles qui utilisent le champ sélectionné).                                                                                                                                                                                     |
| **Apply rules**                 | Filtre les règles selon qu’elles comportent une condition et en fonction de cette condition. Sélectionnez **Always** pour afficher uniquement les règles qui s’exécutent systématiquement, ou **If this condition is true** pour afficher les règles déclenchées par une condition. |

Les options de condition pour **If this condition is true** sont les suivantes :

| Condition                                           | Affiche                                                                                      |
| --------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| **Appartient au jeu (correspondance exacte)**       | Les règles dont les valeurs de champ autorisées correspondent exactement à celles du filtre. |
| **N’appartient pas au jeu (correspondance exacte)** | Les règles dont les valeurs de champ interdites correspondent exactement à celles du filtre. |
| **Est vide**                                        | Les règles appliquées lorsque la valeur du champ est vide.                                   |
| **N’est pas vide**                                  | Les règles appliquées lorsque la valeur du champ n’est pas vide.                             |
| **Chevauche le jeu**                                | Les règles dont les valeurs de champ autorisées contiennent au moins une valeur du filtre.   |

Lorsque vous spécifiez plusieurs critères, seules les règles qui les remplissent tous s’affichent. Les critères s’affichent sous la forme d’une chaîne de texte à côté du bouton **Filter**. Pour effacer le filtre, cliquez sur le bouton d’effacement du filtre ; toutes les règles s’affichent à nouveau. Le filtre est automatiquement effacé lorsque vous fermez la boîte de dialogue **Rules**.

<div id="filter-example">
  ### Exemple de filtre
</div>

Supposons que vous configuriez deux règles :

* **FirstRule** s'applique si Devise = EUR, USD.
* **SecondRule** s'applique si Devise = EUR, RUR.

Le tableau suivant indique quelles règles s'affichent selon différents critères de filtrage :

| Condition de la règle                           | Jeu de valeurs | Règles affichées      |
| ----------------------------------------------- | -------------- | --------------------- |
| Appartient au jeu (correspondance exacte)       | EUR, USD       | FirstRule             |
| N’appartient pas au jeu (correspondance exacte) | EUR            | Aucune                |
| Chevauche le jeu                                | EUR            | FirstRule, SecondRule |
| Chevauche le jeu                                | EUR, XXX       | FirstRule, SecondRule |

## <a id="create-rule" />Configurer des règles

La liste des règles affiche toutes les règles configurées, ainsi que certains critères pour chacune d’elles.

Pour créer une règle, cliquez sur **New Rule** dans l’onglet **Rules**, sélectionnez le type de règle, puis cliquez sur **OK**. La boîte de dialogue **New Rule** propose les options suivantes :

| Option                                    | Description                                                                                                                                                                                                                                                    |
| ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Name**                                  | Nom de la règle.                                                                                                                                                                                                                                               |
| **Show rule name in message to verifier** | Inclut le nom de la règle dans les notifications d’erreur, qui s’affichent alors sous la forme `nom de la règle : message d’erreur`. Si cette option est désactivée, seul le message d’erreur s’affiche.                                                       |
| **Apply rule**                            | Définit quand la règle s’exécute : **Always** (à chaque modification des champs surveillés ; valeur par défaut) ou **If this condition is true** (uniquement lorsqu’une condition est remplie). Voir [Conditions d’application des règles](#launchconditions). |
| **Tags**                                  | Utilisés pour filtrer les règles. Séparez les valeurs par des virgules, sans espaces ; les valeurs de balise sont sensibles à la casse.                                                                                                                        |
| **Enabled rule**                          | Active ou désactive la règle.                                                                                                                                                                                                                                  |

### <a id="severity" />Gravité de la règle

**Severity** définit la manière dont une violation de règle est signalée : comme une **Error** ou un **Warning**. Lorsqu’une règle est violée, un message d’erreur et un indicateur sont générés. Si vous essayez d’exporter des documents comportant des erreurs de règle, une notification s’affiche, mais les documents peuvent néanmoins être exportés.

<Note>
  Severity n’est pas disponible pour les règles [Calculate Sum](/fr/flexi-capture/templates/rule-calc-sum) et [Merge Fields](/fr/flexi-capture/templates/rule-merge).
</Note>

<div id="rule-types">
  ### Types de règles
</div>

Les options restantes dépendent du type de règle :

| Règle                                                                                    | Description                                                                                              |
| ---------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| [Calculate Sum](/fr/flexi-capture/templates/rule-calc-sum)                               | Calcule la somme de plusieurs valeurs de champs et l’inscrit dans un autre champ.                        |
| [Check Sum](/fr/flexi-capture/templates/rule-check-sum)                                  | Calcule la somme de plusieurs valeurs de champs et la compare à un nombre prédéfini ou à un autre champ. |
| [Compare Fields](/fr/flexi-capture/templates/rule-compare-fields)                        | Compare les valeurs de plusieurs champs.                                                                 |
| [Database Check](/fr/flexi-capture/templates/rule-bd)                                    | Vérifie les valeurs capturées par rapport aux valeurs d’une base de données.                             |
| [Merge Fields](/fr/flexi-capture/templates/rule-merge)                                   | Fusionne les valeurs de plusieurs champs à l’aide du Separator de votre choix.                           |
| [Script](/fr/flexi-capture/templates/rule-script)                                        | Script défini par l’utilisateur qui impose des restrictions sur certaines données.                       |
| [Sum in Figures - Sum in Words (Russian)](/fr/flexi-capture/templates/rule-sum-in-words) | Compare une somme écrite en toutes lettres à la même somme en chiffres (texte russe uniquement).         |

<Note>
  Un jeu de règles associé à un [groupe de champs répétable](/fr/flexi-capture/templates/create-group-field) est appliqué individuellement à chaque instance du groupe. Un jeu de règles défini au sein d’un groupe est appliqué uniquement à cette instance.
</Note>

## <a id="launchconditions" />Conditions d’application des règles

Les règles peuvent être déclenchées lorsqu’un champ donné possède une valeur spécifique. Lorsque vous créez ou modifiez une règle, sélectionnez **Always** ou **If this condition is true** pour définir quand la règle s’applique. Pour définir une condition de déclenchement, sélectionnez **If this condition is true**, puis cliquez sur **modifier** pour ouvrir la boîte de dialogue **Condition d’application de la règle**.

Dans la boîte de dialogue, sélectionnez un champ et la condition qui déclenche la règle :

| Condition                   | La règle s’applique lorsque                                                          |
| --------------------------- | ------------------------------------------------------------------------------------ |
| **Appartient au jeu**       | La valeur du champ correspond à l’une des valeurs autorisées que vous spécifiez.     |
| **N’appartient pas au jeu** | La valeur du champ ne correspond à aucune des valeurs interdites que vous spécifiez. |
| **Est vide**                | La valeur du champ est vide.                                                         |
| **N’est pas vide**          | La valeur du champ n’est pas vide.                                                   |

Vous pouvez également définir une plage de valeurs autorisées. Pour ajouter une valeur, saisissez-la et cliquez sur **Add** ; pour en supprimer une, sélectionnez-la et cliquez sur **Delete**. Pour ajouter une valeur vide, cliquez sur **Add** sans rien saisir. Une valeur ne peut être ajoutée qu’une seule fois.

Les conditions peuvent concerner des champs de texte (y compris les champs avec des régions continues), des codes-barres et des colonnes de tableau. Elles ne peuvent pas concerner des coches, des groupes de coches, des champs comportant plusieurs instances, des images ou des cellules de tableau.

<Warning>
  Si l’option **Afficher lors de la vérification** n’est pas activée pour un champ, les erreurs associées à ce champ ne s’affichent pas lors de la vérification. Le document comporte alors un indicateur d’erreur qui ne peut pas être supprimé.
</Warning>

<div id="rule-chains">
  ## Chaînes de règles
</div>

Une chaîne de règles est un groupe de règles appliquées dans un ordre précis. Elle permet de configurer plusieurs règles portant sur le même champ.

<Steps>
  <Step title="Créer une chaîne">
    Dans l’onglet **Rules**, cliquez sur **Chains**. Dans la boîte de dialogue qui s’ouvre, cliquez sur **New Chain**, saisissez un nom et un commentaire facultatif, puis cliquez sur **OK**.
  </Step>

  <Step title="Ajouter des règles à la chaîne">
    Cliquez sur **Add Rule**, sélectionnez les règles, puis utilisez les boutons **Move Up** et **Move Down** pour les placer dans l’ordre d’application souhaité.
  </Step>
</Steps>

<Warning>
  Une règle ne peut appartenir qu’à une seule chaîne.
</Warning>

<Note>
  Si vous ajoutez un champ modifiable (l’option **Read-only** est désactivée dans ses propriétés) à une règle qui appartient déjà à une chaîne, vous êtes invité à fusionner la règle avec cette chaîne. Si vous acceptez et que la règle appartient à une autre chaîne, les deux chaînes sont fusionnées en une seule.
</Note>

<div id="where-rules-are-stored">
  ### Emplacement de stockage des règles
</div>

Les règles sont stockées au niveau de l’élément où elles ont été créées : un champ, une section ou la Document Definition elle-même. Dans la plupart des cas, l’emplacement de stockage importe peu. Toutefois, pour une Document Definition complexe comportant plusieurs groupes de champs ou éléments répétitifs, assurez-vous de savoir où chaque règle est stockée. Par exemple, si un groupe contient des champs soumis à une règle, stockez cette règle dans le groupe ou dans l’un de ses champs ; sinon, elle ne sera pas copiée dans les nouvelles instances du groupe. Dans la boîte de dialogue des propriétés d’un élément, utilisez la liste déroulante **Afficher les règles** pour voir les règles qui font référence à l’élément, qui appartiennent à l’élément, ou qui appartiennent à l’élément et à ses enfants.

## <a id="errors-lang" />Langue utilisée pour les erreurs de validation des règles

Lorsque les documents sont traités automatiquement, les erreurs de validation des règles sont signalées par défaut dans la langue de l’interface utilisateur du composant Processing Station (la langue sélectionnée lors de l’installation d’ABBYY FlexiCapture).

Certains opérateurs peuvent préférer recevoir les messages d’erreur dans une autre langue, par exemple lorsque le traitement manuel et le traitement automatique sont effectués dans des pays différents. Pour utiliser des langues différentes selon les opérateurs, créez un [type de lot](/fr/flexi-capture/project-settings/batch-types-project-settings) distinct pour chaque langue et définissez-y la langue des messages d’erreur.

<Steps>
  <Step title="Ouvrir Types de lots">
    Dans Project Setup Station, cliquez sur **Project → Types de lots**.
  </Step>

  <Step title="Créer ou modifier un type de lot">
    Créez un nouveau type de lot ou sélectionnez-en un existant, puis cliquez sur **modifier**.
  </Step>

  <Step title="Définir la langue">
    Dans l’onglet **Verification**, sélectionnez **Use this language for messages issued during processing**, puis choisissez l’une des langues prises en charge : anglais, hongrois, espagnol, chinois simplifié, coréen, allemand, polonais, portugais (brésilien), russe, serbe, français, tchèque ou japonais.
  </Step>

  <Step title="Enregistrer les modifications">
    Enregistrez vos modifications.
  </Step>
</Steps>

<Note>
  Si un opérateur apporte des corrections qui sont immédiatement revérifiées par les règles de validation, les messages d’erreur issus de ces vérifications répétées s’affichent dans la langue de l’interface utilisateur d’ABBYY FlexiCapture, car ce traitement est effectué localement et non sur Processing Station. Cela s’applique à tous les messages d’erreur des stations de bureau et aux erreurs de format des stations web.
</Note>

<Warning>
  Les messages d’erreur suivants sont disponibles uniquement en anglais : les erreurs signalées par les règles de script, les erreurs d’assemblage de documents et les erreurs de mise en correspondance des champs principaux.
</Warning>
