Passer au contenu principal
Nous devons maintenant détecter le nom Quantity, qui apparaît dans les documents sous la forme « Qty », « Quantity », « ORDERED » ou « QtyNet ». Cependant, un autre nom dans le tableau peut également contenir le mot « Quantity ». Ce nom contient lui aussi un texte unique. Nous allons donc d’abord décrire ExtraQtyTag, puis l’exclure de la zone de recherche du nom Quantity. Dans tous les documents, le nom de la colonne ExtraQtyTag est exactement le même. Bien que la qualité des images soit assez bonne, définissez le pourcentage d’erreur maximal sur 35 %. Pour un mot de sept ou huit lettres, cela signifie que deux caractères peuvent être erronés. De plus, comme tous les noms se trouvent au même niveau, spécifiez une contrainte de recherche supplémentaire par rapport au nom déjà détecté de la colonne Designation. Pour créer un élément ExtraQtyTag :
  1. Dans l’élément TableHeader, créez un élément de type Static Text et nommez-le ExtraQtyTag.
  2. Cliquez sur l’onglet Static Text.
  3. Dans le champ Search text, indiquez le texte à rechercher : “*Quantity BK.ORD”.
  4. Définissez Max error percentage sur 35.
  5. Comme le champ ExtraQuantity contient plusieurs lignes, sélectionnez les options Take spaces into account et Permit multiple lines.
  6. Nous ne pénaliserons pas les hypothèses reportées à la ligne suivante : définissez Line break penalty sur 1.
  7. Pour indiquer que le nom recherché se trouve au même niveau que le nom Designation, cliquez sur l’onglet Relations et spécifiez les contraintes supplémentaires suivantes :
    • Au-dessus de la limite inférieure de l’élément kwDesignation, Offset = -50, Reference boundary = Bottom,
    • En dessous de la limite supérieure de l’élément kwDesignation, Offset = -50, Reference boundary = Top.
  1. Pour optimiser le processus de recherche, spécifiez une condition supplémentaire : Ne recherchez pas le nom si le nom Designation n’a pas été détecté. Cliquez sur l’onglet Advanced et spécifiez cette condition dans les relations avancées de pré-recherche. Dans le langage FlexiLayout, cette condition peut s’écrire comme suit : If kwDesignation.IsNull then Dontfind();
  2. Dans les relations avancées de pré-recherche, spécifiez également des contraintes supplémentaires : WholeWordMode: true;// Only whole words will be considered as hypotheses Remarque. Cette contrainte peut également être spécifiée dans l’interface graphique en sélectionnant Whole words only dans l’onglet Static Text.
  3. Associez le FlexiLayout pour vous assurer que l’élément est détecté sur la première page du document.