> ## 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.

# Règle de script

> Créez des règles de script dans ABBYY FlexiCapture pour exécuter des algorithmes personnalisés de validation et de normalisation, avec accès à IRuleContext pour les jeux de données mis en cache.

<div id="what-it-does">
  ## Ce que cela fait
</div>

Les règles basées sur des scripts vous permettent de créer des algorithmes personnalisés complexes pour la validation et la normalisation des documents.

La règle de script se configure dans l’onglet Règles des *(Administrateur)* [Document Definition properties](/fr/flexi-capture/templates/template-properties) *(Développeur)* Document Definition properties.

<div id="parameters">
  ## Paramètres
</div>

| **Nom** | **Type**                                                        | **Accès**                        | **Description**         |
| ------- | --------------------------------------------------------------- | -------------------------------- | ----------------------- |
| Context | [IRuleContext](/fr/flexi-capture/appendix/scripts/irulecontext) | Selon les paramètres de la règle | Le contexte de la règle |

Les procédures que vous souhaitez utiliser dans plusieurs règles doivent être écrites dans le module global de règles, accessible depuis le Script Editor. Dans la liste déroulante de la barre d’outils du Script Editor, sélectionnez Rule Global Script Module. Le module global de règles est également accessible depuis le Document Definition Editor (**Document Definition → Script Modules →** Rule Script...).

Les règles de script peuvent être utilisées pour accéder aux enregistrements d’un jeu de données mis en cache. Cela peut être utile si vous devez créer manuellement des règles de validation. Pour accéder aux enregistrements d’un jeu de données mis en cache, procédez comme suit :

1. Connectez-vous au jeu de données à l’aide de la méthode [IRuleContext](/fr/flexi-capture/appendix/scripts/irulecontext).DataSet.
2. Créez une requête à l’aide de la méthode [IDataSet](/fr/flexi-capture/appendix/scripts/idataset).CreateQuery.
3. Ajoutez une ou plusieurs conditions à l’aide de la méthode [IDataSetQuery](/fr/flexi-capture/appendix/scripts/idatasetquery).AddValue.
4. Utilisez la méthode [IDataSet](/fr/flexi-capture/appendix/scripts/idataset).GetRecords pour obtenir les données qui satisfont à la requête. Si vous devez déterminer combien d’enregistrements satisfont à la requête, utilisez la méthode [IDataSet](/fr/flexi-capture/appendix/scripts/idataset).GetRecordsCount.
5. Vous pouvez obtenir des enregistrements à des indices spécifiques à l’aide de la méthode [IRecordset](/fr/flexi-capture/appendix/scripts/irecordset).GetRecord.

Si des classes et des méthodes d’un [assembly externe](/fr/flexi-capture/appendix/scripts/user-assembly) sont utilisées dans le script ou le module global, le fichier assembly doit être ajouté dans l’onglet .NET References de Document Definition Properties.

<div id="administrator-see-also">
  ## (Administrateur) Voir aussi :
</div>

*(Administrateur)*  [Règle de script](/fr/flexi-capture/templates/rule-script)
