Skip to main content
ABBYY FlexiLayout Studio verfügt über mehrere spezielle Funktionen für die Entwicklung zusätzlicher FlexiLayouts für Rechnungsprojekte:
  • Sie können die Positionen von Elementen relativ zu den Feldregionen festlegen, die beim Anwenden des Haupt-FlexiLayouts des Rechnungsprojekts erkannt wurden.
  • Sie können Bezeichner von Vendors und Geschäftsbereichen in Anfragen an den Datensatz der Dokumentdefinition verwenden.
  • Sie können Listen mit Schlüsselwörtern und anderen FlexiLayout-Parametern in eine XML-Datei exportieren. Anschließend können Sie diese bearbeiten, ohne das FlexiLayout oder die Dokumentdefinition selbst ändern zu müssen.

Zusätzliches FlexiLayout erstellen

1

Batch in FlexiCapture öffnen

Öffnen Sie in FlexiCapture einen Batch mit erkannten Rechnungen.
2

FlexiLayout Studio-Projekt erstellen

Erstellen Sie ein neues Projekt in ABBYY FlexiLayout Studio. Wählen Sie dazu im Hauptmenü Tools → Export Batch to FlexiLayout Studio → Create New FlexiLayout Studio Project….Dieser Befehl ist nur für FlexiCapture-Projekte verfügbar, die lokal auf Ihrem Computer gespeichert sind. Wenn das Projekt bei einer verteilten Installation auf dem Server liegt, laden Sie es zunächst auf Ihren Computer herunter. Klicken Sie dazu im Menü Project auf Export Project….
Das neue ABBYY FlexiLayout Studio-Projekt enthält alle Dokumente aus dem FlexiCapture-Batch sowie die bei der Erkennung ermittelten Feldregionen in Form eines Referenzlayouts. Das Suffix im Projektnamen gibt an, welche Version der Dokumentdefinition bei der Erstellung des Projekts vorlag.

So fügen Sie einem zusätzlichen FlexiLayout ein Feld hinzu

Um einem zusätzlichen FlexiLayout ein Feld hinzuzufügen, müssen Sie einen Block für das Feld erstellen und dessen search element angeben. Felder in der Dokumentdefinition müssen eindeutige Namen haben. Benennen Sie den Block daher je nach Vorhaben:

Seiten zu einem zusätzlichen FlexiLayout hinzufügen

Um Änderungen an einem zusätzlichen FlexiLayout anhand neuer Bilder zu testen, exportieren Sie FlexiCapture-Batches in ein vorhandenes Rechnungsprojekt in ABBYY FlexiLayout Studio. Klicken Sie dazu auf Tools → Export Batch to FlexiLayout Studio → Add to Existing FlexiLayout Studio Project…. FlexiCapture-Batches lassen sich nur in ABBYY FlexiLayout Studio-Projekte exportieren, die mit dem Befehl Create New FlexiLayout Studio Project… erstellt wurden. Jeder exportierte FlexiCapture-Batch wird im ABBYY FlexiLayout Studio-Projekt als neuer Batch angelegt.

Nach dem Erstellen des Projekts hinzugefügte Felder exportieren

Die neue Dokumentdefinition kann mehr Felder enthalten als die Dokumentdefinition, die für das ABBYY FlexiLayout Studio-Projekt verwendet wurde. In diesem Fall enthält das Exportprotokoll für jedes zusätzliche Feld eine Warnung. Um die zusätzlichen Felder zu exportieren, fügen Sie für jedes dieser Felder im Knoten CommonBlockRegions der Baumstruktur SearchElements einen gleichnamigen Block hinzu.

Anfragen an Datensätze aus der Dokumentdefinition senden

Eine Beispielanfrage finden Sie im Element DataSetRequestSample. Dieses Element ist standardmäßig deaktiviert.

Typ NamedValue

Ein benannter Wert. Konstruktor: NamedValue( String, String )

Typ NamedValueArray

Ein Array benannter Werte. Konstruktoren:
  • NamedValueArray()
  • NamedValueArray( NamedValue namedValue )

Funktionsparameter

Wenn eine Anfrage in searchCriteria mehrere Werte enthält, verknüpfen Sie diese mit den Operatoren OR und AND:

Funktionen

In einem Bild nach Einträgen aus einer Spalte in einer externen Datenbank suchen

1

Die Spalten auflisten

Verwenden Sie FieldNamesOfFCDataset, um eine nach den Indexnummern aufsteigend sortierte Liste der Spalten abzurufen.
2

Den Spaltenindex ermitteln

Ermitteln Sie die Indexnummer der Spalte, aus der Sie Daten suchen möchten.
3

Den Filter erstellen

Erstellen Sie ein array von Bedingungen, um Daten aus dem Datensatz zu filtern.
4

Die Suche ausführen

Übergeben Sie die Indexnummer der Spalte und die Filterbedingungen an SearchTextFromFCDataSet (oder an RegularExpressionFromFCDataSet, wenn Sie reguläre Ausdrücke verwenden möchten).
Dieser Code wird automatisch generiert, wenn ein erkannter Batch aus FlexiCapture exportiert wird.

In einem Bild nach Einträgen aus mehreren Spalten suchen

Jeder Aufruf der Funktion SearchTextFromFCDataSet ersetzt die Suchparameter, daher hat ein wiederholter Aufruf keine Wirkung. Als Workaround können Sie strings aus einer externen Datenbank abrufen und an die Funktion SearchText übergeben. SearchText fügt jeden string zu den vorhandenen Suchparametern hinzu, anstatt sie zu ersetzen.
1

Die Spalten auflisten

Erstellen Sie ein array mit den Namen der Spalten, in denen Sie Daten suchen möchten.
2

Den Filter erstellen

Erstellen Sie ein array mit Filterbedingungen, um Daten aus dem Datensatz zu filtern.
3

Die Einträge zählen

Ermitteln Sie mit der Funktion RecordCountOfFCDataset die Anzahl der zurückgegebenen Einträge.
4

Die Abfrage vorbereiten

Bereiten Sie die Abfragedaten mit der Funktion PrepareRecordsetOfFCDataset vor.
5

Jeden Datensatz lesen

Gehen Sie alle Datensätze durch und rufen Sie für jeden Datensatz mit der Methode RecordOfFCDataset das array ab.
6

Die Werte an SearchText übergeben

Übergeben Sie den Wert jedes Elements im array an die Funktion SearchText.

Komplexe Spalten

Eine komplexe Spalte in einem Datensatz wird in der codierten externen Datenbank als mehrere Spalten gespeichert. In den folgenden Beispielen wird die komplexe Spalte Name in drei Spalten gespeichert, sodass die Felder des Datensatzes {VendorId, VATID, Name, Name, Name, City} lauten. Um die Liste der Spalten zu erhalten, die eine Anfrage zurückgibt, übergeben Sie das Array searchFields an die Funktion FieldNamesOfFCDataset.

Eine Anfrage an eine XML-Datei mit FlexiLayout-Einstellungen senden

Sie können mithilfe von zwei Standardfunktionen, die in der Dokumentation zu ABBYY FlexiLayout Studio beschrieben sind, Anfragen an eine XML-Datei mit FlexiLayout-Einstellungen senden:
Um diese Datei zu verwenden, wenn Sie in ABBYY FlexiLayout Studio an einem FlexiLayout arbeiten, legen Sie sie im Projektordner oder in einem seiner Unterordner ab. Der Pfad zur Datei ist relativ zur Projektdatei von ABBYY FlexiLayout Studio. Wenn Sie ein kompiliertes FlexiLayout in FlexiCapture in eine Dokumentdefinition laden und es als zusätzliches FlexiLayout verwenden, wird die XML-Datei im Ordner Templates abgelegt. Dort können Sie sie bearbeiten. Wenn das FlexiLayout angewendet wird, verwaltet das Programm den Zugriff auf diese Datei automatisch.