Skip to main content
Sur certains documents, le champ Numéro de facture apparaît à droite du nom du champ ; sur d’autres, il apparaît en dessous du nom. Dans les documents 1 et 2, les données du champ sont placées directement sous le nom.

Créer l’élément InvoiceNumber

1

Créez l’élément Character String

Dans l’élément InvoiceHeader, créez un élément Character String et nommez-le InvoiceNumber.
Le nom de l’élément ne doit pas nécessairement correspondre à celui du bloc associé au champ InvoiceNumber. Cependant, utiliser des noms identiques est pratique lorsque vous travaillez avec un FlexiLayout.
2

Spécifiez l’alphabet

Cliquez sur l’onglet Character String, puis spécifiez l’alphabet :-./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
3

Définissez le pourcentage de caractères non alphabétiques

Définissez Pourcentage de caractères non alphabétiques sur 30 %.
4

Définir le nombre de caractères

Dans le champ Nombre de caractères, spécifiez l’intervalle flou {-1, 3, 20, INF} pour la longueur de la chaîne de caractères, en partant du principe que les valeurs possibles sont comprises entre 3 et 20 caractères. Toute hypothèse en dehors de cet intervalle est pénalisée.
5

Excluez la région kwInvoiceDate

Sur certaines images, la zone de recherche du champ Numéro de facture contient l’élément kwInvoiceDate déjà détecté. Excluez cet élément de la zone de recherche afin que FlexiLayout Studio ne prenne pas ce texte en compte dans ses hypothèses pour le champ Numéro de facture :
  • Dans l’onglet Contraintes de recherche, cliquez sur Ajouter… à côté du champ Exclure les régions des éléments.
  • Sélectionnez kwInvoiceDate dans la liste des éléments.
  • Cliquez sur OK. La chaîne SearchElements.InvoiceHeader.kwInvoiceDate s’affiche dans le champ Exclure les régions des éléments.
Capture d’écran de l’onglet Contraintes de recherche des propriétés de l’élément Character String InvoiceNumber dans ABBYY FlexiLayout Studio, montrant l’élément kwInvoiceDate ajouté au champ Exclure les régions des éléments sous la forme SearchElements.InvoiceHeader.kwInvoiceDate.
6

Ajouter des relations de prérecherche

Cliquez sur l’onglet Advanced. Dans relations avancées de pré-recherche, définissez des conditions supplémentaires : si le nom kwInvoiceNumber est introuvable, ne recherchez pas le champ InvoiceNumber ; sinon, définissez la zone de recherche comme un tableau de rectangles, l’un à droite du nom et l’autre en dessous, avec un léger décalage. Dans le langage FlexiLayout :
7

Ajouter des relations post-recherche

La zone de recherche du champ est limitée à deux rectangles : l’un à droite du libellé du champ et l’autre en dessous. Lorsque les données du champ se trouvent à droite du libellé, il y a souvent d’autres textes sous le champ (dans les images de test, il s’agit le plus souvent du libellé et des données du champ Date). Comme ce texte parasite se trouve dans la zone de recherche du champ Numéro de facture, FlexiLayout Studio génère une hypothèse correspondante. Pour influencer la qualité de cette hypothèse, spécifiez des vérifications supplémentaires dans le champ Advanced post-search relations : plus le texte situé sous le libellé du champ est bas, plus la pénalité est importante. Dans le langage FlexiLayout :
8

Associer le FlexiLayout

Excluez temporairement l’élément InvoiceFooter, puis exécutez le FlexiLayout.
9

Définir la région du bloc

Définissez l’emplacement du bloc InvoiceNumber comme étant la région rectangulaire de l’élément InvoiceNumber, agrandie de 5 dots verticalement et horizontalement. Sélectionnez Expression et saisissez l’expression suivante :