Skip to main content
La règle de vérification de base de données compare la valeur d’un champ reconnu aux valeurs d’un tableau de base de données. Si la valeur est trouvée, la vérification est validée ; sinon, la règle renvoie une erreur. Utilisez cette règle pour vérifier qu’une valeur capturée existe dans votre base de données, effectuer des recherches floues (même lorsque les champs contiennent des fautes de frappe), remplacer la valeur d’un champ par celle de l’enregistrement correspondant dans la base de données ou copier des valeurs de la base de données dans les champs du document.

Créer une règle de vérification de base de données

1

Ouvrir la boîte de dialogue des propriétés

Cliquez avec le bouton droit sur le champ et sélectionnez Propriétés, ou ouvrez les propriétés de définition de document (dans l’éditeur définition de document, sélectionnez définition de document → définition de document Properties).
2

Créer une règle

Dans l’onglet Règles, cliquez sur Nouvelle règle. Sélectionnez Vérification de base de données, puis cliquez sur OK.
3

Définir les options communes de la règle

Saisissez un Nom, définissez la gravité, les conditions d’application de la règle et les Balises nécessaires, puis cliquez sur Suivant. Pour obtenir la liste complète des options communes des règles, consultez Configurer les règles.
4

Se connecter à la source de données

Spécifiez le type de source de données et ses paramètres de connexion. Les sources de données suivantes sont prises en charge :
Pour le fournisseur OLE DB, utilisez OLE DB Provider for ODBC Drivers lors de l’exportation vers SQL et Oracle Provider for OLE DB lors de l’exportation vers Oracle. Pour plus d’informations, consultez Export vers une base de données Oracle.
Pour éviter d’avoir à saisir le mot de passe à chaque connexion, sélectionnez Autoriser l’enregistrement du mot de passe ou configurez la base de données pour qu’elle ne nécessite pas de mot de passe, par exemple en utilisant l’authentification Windows.
5

Sélectionner le schéma et la table

Sélectionnez le schéma et la table de base de données dans les listes déroulantes, ou spécifiez le jeu de données si vous vous y connectez.
Si Rechercher dans tous les schémas est sélectionné et que la table ne se trouve pas dans le schéma par défaut, une erreur telle que Invalid object name peut s’afficher. Dans ce cas, spécifiez explicitement le schéma qui contient la table.
6

Définir les options restantes

  • Sélectionnez Ne pas vérifier si tous les champs sont vides pour ignorer la vérification lorsque les champs comparés n’ont aucune valeur, ce qui accélère la validation.
  • Établissez des liens entre les champs de définition de document et les champs de la base de données (voir Spécifier les champs à comparer). Utilisez Ajouter, Modifier et Delete pour gérer les liens.
  • Si la source est un jeu de données, sélectionnez le champ de clé primaire dans la liste Champ dans lequel enregistrer l’ID de l’enregistrement.
Un jeu de données est également accessible depuis le formulaire de données à l’aide d’un contrôle Bouton. Dans l’éditeur définition de document, sélectionnez Formulaire → Insérer un contrôle → Bouton. Dans la boîte de dialogue Propriétés, cliquez sur l’onglet Format, sélectionnez Recherche dans la base de données dans la liste Type, puis sélectionnez une règle de vérification de base de données que vous avez créée.

Spécifier les champs à comparer

Le groupe Liens de champs de l’onglet Paramètres de règle affiche les comparaisons de champs. Vous pouvez configurer une règle de vérification de base de données pour un seul champ ou pour un jeu de champs. Pour chaque comparaison, spécifiez : Une recherche floue trouve les correspondances les plus proches (avec le moins de lettres ajoutées, supprimées ou remplacées). Le nombre d’erreurs autorisées dépend de la longueur du mot. Si plusieurs valeurs correspondent, l’opérateur voit Too many records found ainsi qu’une liste de correspondances proches parmi lesquelles il peut choisir. Les options supplémentaires suivantes sont disponibles :

Clés primaires dans les jeux de données

Si votre projet inclut un jeu de données (une copie locale d’une base de données externe) à partir duquel vous récupérez des valeurs de champs sources, vous pouvez utiliser une règle de vérification de base de données pour définir un champ comme clé primaire (l’identifiant unique) d’un enregistrement du jeu de données. Les données du formulaire de données sont alors mises en correspondance avec celles du jeu de données. Lorsque vous sélectionnez un enregistrement, tous les champs sont renseignés à partir du jeu de données et vous ne pouvez pas modifier les valeurs du formulaire de données. Si vous essayez de le faire, une boîte de dialogue vous invite à sélectionner un autre enregistrement ou à modifier l’enregistrement existant. Pour ajouter ou modifier des enregistrements, cliquez avec le bouton droit sur un champ et sélectionnez Modifier l’enregistrement du jeu de données ou Ajouter un enregistrement au jeu de données. La suppression des données d’un champ renseigné à l’aide de la touche Delete supprime également les données de tous les autres champs associés à la règle. La règle est à nouveau vérifiée lorsque vous appliquez vos modifications.

Fonctionnement des clés primaires

  1. L’option Saisir la valeur depuis la base de données doit être activée pour tous les champs ciblés par la règle. Si le champ de clé primaire contient une valeur, FlexiCapture renseigne alors les autres champs à partir de la base de données au lieu de rechercher leurs valeurs.
  2. Si le champ de clé primaire ne contient aucune valeur, FlexiCapture examine les autres champs pour lesquels l’option Search était activée dans la boîte de dialogue Field Link (voir Spécifier les champs à comparer). Si un enregistrement unique est trouvé pour ces champs, les valeurs de la base de données sont utilisées, comme à l’étape 1.
Vous pouvez ensuite accepter toutes les modifications ou sélectionner un autre enregistrement dans le jeu de données. La clé primaire fonctionne uniquement lorsque :
  • Un jeu de données est sélectionné comme source.
  • Une clé primaire est définie dans le jeu de données (l’option Primary key est activée pour un champ).
  • Le champ de clé primaire ne figure pas dans la liste liens de champ de l’onglet paramètres de règle.
Pour plus d’informations sur les jeux de données et un exemple de projet, consultez les sections ABBYY FlexiCapture for Invoices, Utilisation des bases de données de fournisseurs et d’unités commerciales et Recherche de fournisseurs et d’unités commerciales dans la base de données.

Effectuer une vérification dans la base de données pour un ensemble de champs

FlexiCapture recherche dans la base de données un enregistrement correspondant aux valeurs d’un ensemble de champs, en liant chaque champ à une colonne différente de l’enregistrement correspondant. Par exemple, liez les champs du document Fa, Fb et Fc aux colonnes de la base de données Ta, Tb et Tc :
  • Fa correspond exactement à Ta.
  • Fb correspond approximativement à Tb.
  • Lorsque les deux conditions sont remplies, la valeur de Tc est copiée dans Fc.
Schéma comparant les champs du document a, b et c aux colonnes de la base de données Ta, Tb et Tc, montrant une correspondance TRUE réussie dans une ligne de la base de données et une correspondance FALSE échouée répartie sur différentes lignes.
La vérification réussit si FlexiCapture trouve un enregistrement dans lequel Ta correspond exactement à Fa et Tb correspond approximativement à Fb. La valeur de Tc dans cet enregistrement est copiée dans Fc. Si aucun enregistrement de ce type n’est trouvé, la règle renvoie une erreur, même si Ta = Fa et Tb = Fb apparaissent dans des enregistrements différents.
Différentes combinaisons sont possibles : correspondances exactes, approximatives ou mixtes, sans remplissage automatique et nombre quelconque de champs.