Skip to main content
À cette étape, déterminez les points suivants :
  • Existe-t-il une logique dans la disposition des champs sur les images ?
  • Quels éléments peuvent être utilisés comme éléments de référence pour la détection des champs ?
  • Quel ordre de recherche des éléments est le plus approprié ? (À chaque nouvelle étape, vous ne pouvez vous référer qu’aux éléments déjà décrits.)
Analysez les images disponibles.
  1. Vous remarquerez que la partie centrale du document contient un tableau présent sur toutes les images.
    Dans FlexiLayout Studio, un tableau est un objet image constitué de fragments composés de lignes et de colonnes séparées visuellement par des lignes de séparation ou des White Gap. Pour plus d’informations, voir Utiliser les tableaux.
  2. Au-dessus du tableau se trouve un groupe de champs (qui peut être nommé InvoiceHeader) : Numéro de facture, Date de la facture et Adresse de livraison. Notez que le champ Numéro de facture est présent sur toutes les images et peut être utilisé comme champ identifiant, tandis que les champs Date de la facture et Adresse de livraison sont facultatifs.
  3. Sous le tableau se trouve un groupe de champs (qui peut être nommé Footer) : TotalQuantity, TotalAmount et Pays. Ces champs ne sont pas non plus présents sur toutes les images.
Commencez par décrire la recherche des éléments dans la partie supérieure du document. Pour détecter les champs supérieurs, créez un groupe logique qui réunit tous les éléments utilisés pour rechercher les champs Numéro de facture, Date de la facture et Adresse de livraison.
  1. Créez un élément de type Group et nommez-le InvoiceHeader. Les champs Numéro de facture, Date de la facture et Adresse de livraison sont toujours situés dans le coin supérieur gauche. De plus, leur ordre est toujours le même : Adresse de livraison, puis Numéro de facture, puis Date de la facture (à condition qu’ils soient présents sur l’image). Recherchez-les dans le même ordre.
  2. Pour décrire la recherche des mots-clés correspondant aux noms de champ Numéro de facture, Date de la facture et Adresse de livraison, utilisez des éléments de type Static Text. L’élément InvoiceHeader doit contenir les éléments suivants :
    • élément kwDeliveryAddress de type Static Text, qui correspondra au nom du champ Adresse de livraison. Pour des instructions détaillées, voir Étape 5.
    • élément kwInvoiceNumber de type Static Text, qui correspondra au nom du champ Numéro de facture. Pour des instructions détaillées, voir Étape 6.
    • élément kwDate de type Static Text, qui correspondra au nom du champ Date de la facture. Pour des instructions détaillées, voir Étape 7.
  3. Recherchez les champs Numéro de facture et Date de la facture sur la même ligne que leurs noms respectifs, à droite de ceux-ci. Dans l’élément InvoiceHeader, créez les éléments suivants :
    • élément InvoiceNumber de type Character String, qui correspondra au champ Numéro de facture. Pour des instructions détaillées, voir Étape 8.
    • Un élément Group grDate pour rechercher le champ Date de la facture. Pour des instructions détaillées, voir Étape 9.
Dans l’élément InvoiceHeader.grDate, créez :
  • Élément InvoiceDate du type Date, qui correspondra au champ Date de la facture pour les images de bonne qualité. Pour des instructions détaillées, voir Étape 9.
  • Élément InvoiceDateAsString du type Character String, qui correspondra au champ Date de la facture si le programme ne parvient pas à trouver l’élément InvoiceDate. Pour des instructions détaillées, voir Étape 9.
    Pour plus d’informations sur la recherche de dates dans des images de mauvaise qualité, voir la section Conseils et astuces.
  1. Le champ Adresse de livraison comporte plusieurs lignes. Un élément du type Paragraph est donc nécessaire pour le détecter. Toutefois, avant de créer cet élément, limitez autant que possible la zone de recherche. Pour définir la limite droite de la zone de recherche, utilisez un élément du type White Gap. Regroupez ensuite tous les éléments qui décrivent l’emplacement du champ Adresse de livraison dans un élément Group :
    • Dans l’élément InvoiceHeader, créez un élément Group et nommez-le grAddress. Pour des instructions détaillées, voir Étape 10.
Dans l’élément grAddress, créez les éléments suivants :
  • Un élément auxiliaire wgAddressRight du type White Gap, qui délimite le champ Adresse de livraison sur la droite. Pour des instructions détaillées, voir Étape 11.
  • Un élément DeliveryAddress du type Paragraph, qui correspondra au champ Adresse de livraison. Pour des instructions détaillées, voir Étape 12.