Skip to main content

Lokator: Search for line items

Der Lokator Search for line items findet Positionszeilen auf Dokumenten anhand entsprechender Spalten-Überschriften und unter diesen Spalten befindlichen Werten.

Wir bitten darum die die Seite Unterschiede zu Squeeze 1 (Lokatoren) aufmerksam zu lesen, wenn Sie bereits mit Squeeze 1 (der alten Benutzeroberfläche) arbeiten / gearbeitet haben.

Die Suche nach Positionen ist im ausgelieferten Invoice-Template bereits konfiguriert.

Die Positions-Suche in Squeeze benötigt entsprechende Lokatoren mit deren Hilfe die Spaltenüberschriften der Positions-Tabelle gefunden werden.

Funktionsweise

Die Erkennung von Tabellen mittels dieses Lokators funktioniert in folgenden Schritten:

  • Spalten der Tabelle werden über ihre Überschriften ermittelt (nutzt Überschriften-Lokator)
  • Werte werden innerhalb der gefunden Spalten gesucht (nutzt Wert-Lokator)
  • Gefundene Werte werden zu Zeilen zusammengefasst

Schrittweise Konfiguration

Zur Konfiguration einer Positionserkennung gehören folgende Punkte.

1. Überschriften & Wert-Lokatoren

Sowohl die Überschriften, als auch die Werte werden über normale Lokatoren gefunden. Hier bietet sich bspw. ein "Regular Expression"-Lokator an.

Für jede zu extrahierende Spalte wird also 1 Überschriftenlokator und 1 Wert-Lokator benötigt.

2. Tabelle inkl. Tabellen-Spalten konfigurieren

Als nächstes müssen die Lokatoren an den Tabellen-Spalten konfiguriert werden.

Sollte bis jetzt noch gar keine Tabelle an der zu extrahierenden Dokumentenklasse existieren, dann muss diese zuerst inkl. Spalten konfiguriert werden.

An jeder Tabellenspalte kann 1 Überschriftenlokator und 1 Wert-Lokator konfiguriert werden.

3. Verknüpfung von Tabelle und Tabellen-Lokator (Search for line items)

Zuletzt muss ein Tabellen-Lokator (Search for line items) konfiguriert werden. Diese Konfiguration geschieht an zwei Stellen:

  1. An der Tabelle muss der angelegte Lokator ausgewählt werden.
  2. Am Lokator muss die Tabelle ausgewählt werden, für welche der Lokator extrahieren muss.

Achtung: Aktuell kann ein Tabellen-Lokator (Search for line items) nur für die Extraktion einer einzigen Tabelle eingesetzt werden.

D. h. für jede Tabelle (unabhängig davon, zu welcher Dokumentenklasse sie gehört), muss ein neuer Tabellen-Lokator eingerichtet werden.

Das gilt nicht für die Überschriften- und Wert-Lokatoren, welche wiederverwendbar sind.

Das folgende Screenshot zeigt eine Warnung im Konfigurations-Dialog einer Tabelle. Diese Warnung soll dabei helfen mögliche Fehlerquellen auszuschließen.

image-1662031695453.png

Beispiel: Konfiguration einer Standard-Positions-Suche für Eingangsrechnungen

Beispiel: Überschriften-Lokator für die Spalte Menge:

image-1662030159612.png

image-1662030171618.png

Überschriften-Lokatoren für andere Überschriften sind wie auf den dargestellten Bildern, normale Lokatoren, welche bspw. via regulärem Ausdruck die Überschriften finden.

Die konfigurierten Suchbegriffe können je nach Anwendungsfall entsprechend angepasst und/oder erweitert werden.

Beispiel: Verwendung der Überschriften- und Wert-Lokatoren an der Tabellenspalte Menge:

image-1662030050684.png

Beispiel: Verwenden des Tabellen-Lokators an der Tabelle

image-1662030101072.png

Lokatoreingenschaften

LineItemCutOff

Sollten in der Positionslesung Zeilen mit Werten erscheinen die nicht zu den Positionen des Beleges gehören, kann in der Stammdatentabelle "lineitemcutoff" eine Kombination aus Kreditor-Nr. und Schlüsselbegriff (Reg-Ex) eingetragen werden um diese zu Ignorieren. Dies kann explizit für eine Zeile geschehen oder die Auslesung der Positionen kann ab einem Bestimmten Schlüsselbegriff beendet werden.

Ein Beispiel:

image-1650965024798.png

Würde die erste Position einen ungewünschten Wert enthalten, könnte man Sie für diesen und zukünftige Belege kreditorspezifisch ausschließen. Hierzu ist ein Schlüsselwert/RegEx (in diesem Fall "XPS 15 9570") und die Kreditor-Nr. (in diesem Fall "1234567890") nötig. Diese Werte müssen nun über einen neuen Eintrag in der Stammdatentabelle "lineitemcutoff" eingetragen werden. Hierbei ist zu beachten, dass ein "X" im Feld Ausschlusszeile zu setzen ist.

image-1650965392513.png

Sollen nach einem bestimmten Begriff keine Zeilen mehr ausgelesen werden gibt es bei gleicher Vorgehensweise nur einen kleinen Unterschied. Diesmal muss im Feld Positionsende das "X" gesetzt werden. Soll die Zeile, welche den eingetragenen Begriff enthält, auch nicht ausgelesen werden und die Positionslesung danach beendet werden. Muss das "X" in beiden Feldern eingetragen werden.

Nach erneuter Extraktion des Beleges erscheinen die ausgeschlossenen Zeilen nicht mehr.