Zum Hauptinhalt springen
Ein Table-Block wird verwendet, um die Koordinaten der erkannten Tabellen an FlexiCapture weiterzugeben. Die Daten aus den erkannten Tabellen werden in FlexiCapture extrahiert. Ein Table-Block unterscheidet sich von anderen Blocktypen dadurch, dass er nicht nur eine Region zurückgibt, die den gesamten Block umschließt, sondern auch Rechtecke um jede Tabellenzelle. Im Vergleich zu anderen Blocktypen hat ein Table-Block eine zusätzliche Eigenschaft – eine Liste von Spalten, die die Tabelle enthalten kann. Ein FlexiLayout kann ein oder mehrere Table-Elemente enthalten, die dem Programm mitteilen, wo und wie es nach den im Block angegebenen Spalten suchen soll.
  1. Wenn Sie ein Table-Element erstellen, müssen Sie es an den bereits erstellten Table-Block „binden“. Daher müssen Sie in der Regel mit dem Erstellen eines Blocks beginnen. Sie können zunächst dessen ungefähren Suchbereich angeben, dann ein oder mehrere Elemente erstellen, um nach dem Block zu suchen, und diese Table-Elemente anschließend verwenden, um den Suchbereich des Blocks zu präzisieren.
  2. Sie können mehrere Elemente erstellen, von denen jedes seinen eigenen Algorithmus zum Auffinden ein und desselben Table-Blocks beschreibt. Sie können das Programm anweisen, das Table-Element auszuwählen, das nach dem Auffinden des Blocks am besten zum Tabellenblock passt. Dies geschieht mithilfe eines Region expression.
Table-Blöcke sind im FlexiLayout-Baum mit gekennzeichnet. So erstellen Sie einen Table-Block:
  1. Wechseln Sie zum Fenster FlexiLayout.
  2. Wählen Sie im FlexiLayout-Baum den Zweig Blocks aus.
  3. Wählen Sie im Menü FlexiLayout Add Block → Table oder im Kontextmenü New → Table.
  4. Geben Sie die Eigenschaften des Blocks an.
  5. Legen Sie auf der Registerkarte Table block Folgendes fest:
    • den Namen des Blocks;
    • Ihren Kommentar zum Block (optional);
    • wenn die Region des Blocks und die Unterteilung der Tabelle in Zeilen und Spalten mit der Region übereinstimmen, die von einem Table-Element zurückgegeben wird, wählen Sie die Option Source element und klicken Sie auf . Wählen Sie im Dialogfeld Select Element das Table-Element aus, dessen Region mit der Region des Blocks übereinstimmt, und klicken Sie auf OK.
    • wenn die Region des Blocks nicht mit der Region eines der Table-Elemente übereinstimmt, wählen Sie die Option Region expression und geben Sie den erforderlichen Code in das Feld Region expression ein. Klicken Sie auf Check, um den Code zu überprüfen.
  6. Geben Sie auf der Registerkarte Columns die Spalten an, die innerhalb des Blocks vorkommen können. Klicken Sie dazu auf Add… und geben Sie den Namen einer Spalte ein. Es kann hilfreich sein, die Spaltennamen so zu verwenden, wie sie in den Testbildern vorkommen. Wählen Sie in der Dropdown-Liste Type den gewünschten Spaltentyp aus. Sie können einen der folgenden Typen auswählen: Text, Barcode, Häkchen, Bild oder Non-Recognized Block. Um den Namen oder Typ einer Spalte zu ändern, klicken Sie auf Edit… und geben Sie im Dialogfeld Edit Table Column einen neuen Namen ein oder wählen Sie einen anderen Typ für die Spalte aus. Verwenden Sie die Schaltflächen (Nach unten) und (Nach oben), um die Spalten in derselben Reihenfolge anzuordnen, in der sie in der Datenerfassungsanwendung vorkommen müssen

Ein Beispiel dafür, wie Sie festlegen, welche Blockregion ausgewählt werden soll

Um die Region eines Blocks festzulegen, verwenden Sie die vordefinierte Variable OutputTable vom Typ TableHypothesis. Der Code im folgenden Beispiel wählt das Table-Element aus, in dem die meisten Zeilen gefunden wurden let T1 = SearchElements.TableElement1; let T2= SearchElements.TableElement2; if T1.RowsCount > T2.RowsCount then OutputTable = T1; else OutputTable = T2;
Die Table-Elemente SearchElements.TableElement1 und SearchElements.TableElement2 im Beispiel müssen sich auf denselben Table-Block beziehen, dessen Feld Region expression den obigen Code enthält.