Passer au contenu principal
Un bloc Table sert à transmettre à FlexiCapture les coordonnées des tableaux détectés. Les données des tableaux détectés seront extraites dans FlexiCapture. Un bloc Table diffère des autres types de blocs en ce qu’il renvoie non seulement une région englobant l’ensemble du bloc, mais aussi des rectangles tracés autour de chaque cellule de tableau. Par rapport aux autres types de blocs, un bloc Table possède une propriété supplémentaire : une liste des colonnes que le tableau peut contenir. Un FlexiLayout peut contenir un ou plusieurs éléments Table indiquant au programme où et comment rechercher les colonnes spécifiées dans le bloc.
  1. Lorsque vous créez un élément Table, vous devez le « lier » au bloc Table déjà créé. Il faut donc généralement commencer par créer un bloc. Vous pouvez d’abord spécifier sa zone de recherche approximative, puis créer un ou plusieurs éléments pour rechercher le bloc, et enfin utiliser ces éléments Table pour affiner la zone de recherche du bloc.
  2. Vous pouvez créer plusieurs éléments, chacun décrivant son propre algorithme pour trouver un seul et même bloc Table. Vous pouvez demander au programme de sélectionner l’élément Table qui correspond le mieux au bloc Table une fois celui-ci trouvé. Cela se fait au moyen d’une expression Region.
Les blocs Table sont marqués par dans l’arborescence FlexiLayout. Pour créer un bloc Table :
  1. Basculez vers la fenêtre FlexiLayout.
  2. Sélectionnez la branche Blocks dans l’arborescence FlexiLayout.
  3. Dans le menu FlexiLayout, sélectionnez Add Block → Table ou sélectionnez New → Table dans le menu contextuel.
  4. Spécifiez les propriétés du bloc.
  5. Dans l’onglet bloc Table, définissez les éléments suivants :
    • le nom du bloc ;
    • votre commentaire sur le bloc (facultatif) ;
    • si la région du bloc et le découpage du tableau en lignes et en colonnes coïncident avec la région renvoyée par un élément Table, sélectionnez l’option Source element et cliquez sur . Dans la boîte de dialogue Select Element, sélectionnez l’élément Table dont la région coïncide avec celle du bloc, puis cliquez sur OK.
    • si la région du bloc ne coïncide avec celle d’aucun des éléments Table, sélectionnez l’option expression Region et saisissez le code requis dans le champ expression Region. Cliquez sur Check pour vérifier le code.
  6. Dans l’onglet Columns, spécifiez les colonnes qui peuvent apparaître dans le bloc. Pour ce faire, cliquez sur Add… et saisissez le nom d’une colonne. Il peut être pratique d’utiliser les noms des colonnes tels qu’ils apparaissent sur les images de test. Dans la liste déroulante Type, sélectionnez le type souhaité pour la colonne. Vous pouvez choisir l’un des types suivants : Text, Barcode, Checkmark, Picture ou Non-Recognized Block. Pour modifier le nom ou le type d’une colonne, cliquez sur Edit… et, dans la boîte de dialogue Edit Table Column, saisissez un nouveau nom ou sélectionnez un autre type pour la colonne. Utilisez les boutons (Bas) et (Haut) pour disposer les colonnes dans le même ordre que celui dans lequel elles doivent apparaître dans l’application de capture de données

Exemple de spécification de la région du bloc à sélectionner

Pour spécifier la région d’un bloc, utilisez la variable prédéfinie OutputTable de type TableHypothesis. Le code de l’exemple ci-dessous sélectionne l’élément Table dans lequel le plus grand nombre de lignes a été détecté let T1 = SearchElements.TableElement1; let T2= SearchElements.TableElement2; if T1.RowsCount > T2.RowsCount then OutputTable = T1; else OutputTable = T2;
Les éléments de tableau SearchElements.TableElement1 et SearchElements.TableElement2 de l’exemple doivent faire référence au même bloc Table dont le champ d’expression Region contient le code ci-dessus.