Regel für die Datenbanküberprüfung
Bei der Datenbanküberprüfung von Feldwerten wird ein erkannter Feldwert mit Werten in der Datenbanktabelle verglichen. Die Überprüfung gilt als bestanden, wenn ein erfasster Feldwert mit einem Wert der Datenbank übereinstimmt. Anderenfalls gibt die Regel einen Fehler zurück.
Mit dieser Regel können Sie prüfen, ob Ihre Datenbank einen Eintrag für einen erfassten Wert enthält, wodurch Sie eine fehlertolerante Suche sogar dann durchführen können, wenn der Felder Tippfehler oder Fehler enthalten, einen Feldwert durch eine entsprechenden Aufzeichnung aus der Datenbank ersetzen und bestimmte Werte aus der Datenbank in Dokumentfelder kopieren können.
Erstellen einer Regel für die Datenbanküberprüfung
So erstellen Sie eine Regel für die Datenbanküberprüfung:
- Öffnen Sie das Dialogfeld Eigenschaften (klicken Sie mit der rechten Maustaste auf das Feld, um sein Kontextmenü zu öffnen, und wählen Sie Eigenschaften...) oder öffnen Sie das Dialogfeld Eigenschaften der Dokumentdefinition (wählen Sie im Menü Dokumentdefinitionseditor Dokumentdefinition → Eigenschaften der Dokumentdefinition...).
- Klicken Sie auf die Registerkarte Regeln.
- Klicken Sie auf die Schaltfläche Neue Regel....
- Wählen Sie in der Liste der Regeltypen die Option Datenbanküberprüfung und klicken Sie auf OK.
- Geben Sie den Namen der Regel ein.
- Deaktivieren Sie gegebenenfalls die Option Regelname in Nachricht für Prüfer anzeigen. Ist diese Option deaktiviert, wird die Fehlermeldung als „Fehlermeldung“ angezeigt und nicht als „Name der Regel: Fehlermeldung“.
- Legen Sie den Schweregrad der Regel fest.
- Geben Sie gegebenenfalls die Bedingungen an, unter denen die Regel angewendet werden muss (standardmäßig wird eine Regel bedingungslos ausgeführt). Weitere Informationen finden Sie unter Bedingungen für die Anwendung von Regeln.
- Angeben von Tags für die Regel.
- Deaktivieren Sie gegebenenfalls die Option Aktivierte Regel. Die Regel wird erstellt, aber nicht angewendet, bis diese Option von einem Benutzer aktiviert wird.
- Klicken Sie auf Weiter >.
- Richten Sie eine Verbindung zur Datenquelle ein, indem Sie ihren Typ und die Verbindungsparameter angeben.
Die folgenden Datenquellen werden unterstützt: - Externe Datenbank (einfach) – Für jede Regel der Dokumentdefinition wird eine Verbindung zur externen Datenquelle hergestellt.
- Externe Datenbank (variabel) – Die Verbindung zur externen Datenbank wird nur in den Projekteigenschaften eingerichtet (Projekteigenschaften → Umgebungsvariablen). Der Typ der Datenquelle kann simultan für mehrere Regeln verwendet werden. Verwenden Sie für ein Projekt eine andere Datenbank, müssen Sie die Verbindungseinstellungen nur in den Projekteigenschaften ändern.
- Datensatz – Die Verbindung zum Datensatz wird vom Benutzer in den Eigenschaften der Dokumentdefinition festgelegt (Eigenschaften der Dokumentdefinition → Datensätze).
Tipp. Wir empfehlen die folgenden OLE-DB-Anbieter: - Für den Export in SQL ist ein OLE-DB-Anbieter für ODBC-Treiber vorzuziehen
- Wenn Sie nach Oracle exportieren, ist der Oracle-Anbieter für OLE-DB vorzuziehen (Details finden Sie unter Exportieren zu einer Oracle-Datenbank)
Hinweis. Um nicht jedes Mal, wenn Sie eine Verbindung mit der Datenbank herstellen, das Passwort eingeben zu müssen, wählen Sie die Option Passwort speichern erlauben oder richten Sie die Datenbank so ein, dass kein Passwort für die Verbindung mit der Datenbank erforderlich ist (nutzen Sie zum Beispiel die Windows-Authentifizierung). - Wählen Sie aus den Dropdownlisten das benötigte Schema und die erforderliche Datenbanktabelle aus oder geben Sie den benötigten Datensatz ein, um eine Verbindung zu einer Quelle des Typs Datensatz einzurichten.
Hinweis. Wurde In allen Schemas suchen als Schema ausgewählt und ist die angegebene Tabelle im Standardschema nicht enthalten, kann die folgende Meldung auftreten:
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name K1. [Microsoft][ODBC SQL Server Driver][SQL Server]Statement(s) could not be prepared.
Tritt diese Fehlermeldung auf, sollte der Name des Schemas, das die Tabelle enthält, explizit festgelegt werden. - Wählen Sie die Option Nicht prüfen, wenn alle Felder leer aus, um die Regelüberprüfung zu überspringen, wenn Felder, die für den Vergleich herangezogen werden, keine Werte enthalten. Dies beschleunigt die regelbasierte Validierung.
- Stellen Sie Verknüpfungen zwischen den Feldern der Dokumentdefinition und den Feldern der Datenbank her (siehe unten Angabe von zu vergleichenden Felde“).
- Über die Schaltflächen Hinzufügen..., Bearbeiten... und Löschen können Sie Verknüpfungen zwischen Feldern hinzufügen, bearbeiten oder entfernen.
- Haben Sie einen Datensatz als Quelle ausgewählt, können Sie jetzt das Feld, das als Primärschlüssel dient, von der Dropdownliste Feld, in dem die Datensatz-ID gespeichert werden soll auswählen.
Wichtig! Auf einem Datensatz kann über eine Steuerung des Typs "Schaltfläche" direkt vom Datenformular aus zugegriffen werden. Um dem Datenformular eine Schaltfläche hinzuzufügen, wählen Sie Formular → Steuerung einfügen → Schaltfläche im Dokumentdefinitioneditor. Sobald Sie eine Schaltfläche dem Datenformular hinzufügen, wird das Dialogfeld Eigenschaften angezeigt. Klicken Sie auf die Registerkarte Format, wählen sie Datenbanksuche in der Dropdownliste Typ und wählen Sie dann eine zuvor erstellte Regel für die Datenbanküberprüfung.
Angeben von zu vergleichenden Feldern
Die bereits festgelegten Feldvergleiche finden Sie in der Gruppe Feldverknüpfungen auf der Registerkarte Regeleinstellungen. Sie können entweder für ein einzelnes Feld oder für einen Satz von Feldern eine Regel für die Datenbanküberprüfung festlegen.
Wenn Sie zu vergleichende Felder hinzufügen oder ändern, müssen Sie Folgendes festlegen:
- Dokumentfeld – Das Feld der Dokumentdefinition, das mit einem Datenbankfeld verglichen werden soll
- Datenbankfeld – Das Feld in der Datenbank, das mit dem Dokumentfeld verglichen werden soll
- Suche – Gibt den Vergleichstyp an:
- Genau Der Wert des Dokumentfelds muss mit dem Wert im Datenbankfeld genau übereinstimmen (beachten Sie jedoch, dass die Suche Groß- und Kleinschreibung nicht berücksichtigt)
- Annähernd Der Wert des Dokumentfelds stimmt nur zum Teil mit dem Datenbankwert überein. Diese Art von Vergleich ist nur mit Textfeldern möglich.
Hinweise zur fehlertoleranten Suche:
Die folgenden erweiterten Optionen sind verfügbar:
- Keine Suche bei leerem Feld Ist das Feld leer, kann sein Wert nicht mit Werten aus der Datenbank verglichen werden.
- Wert aus Datenbank eingeben Findet die fehlertolerante Suche in der Datenbank einen übereinstimmenden Wert, kann dieser Wert automatisch in das Feld eingetragen werden, wenn:
- sich die Werte im Feld und in der Datenbank unterscheiden
- das Feld leer ist.
Hinweis. Im Fall der exakten Suche macht die Option Wert aus Datenbank eingeben keinen Sinn, da die beiden Werte identisch sind. - Leere Werte in Datenbanken erlauben In Abhängigkeit von den Resultaten der Datenbanküberprüfung und anderer Einstellungen hat diese Option folgende Bedeutung:
- ist das Datenbankfeld leer und ist das Dokumentfeld nicht leer, werden Feld- und Datenbankwert als identisch interpretiert
- ist das Datenbankfeld leer und ist das Dokumentfeld nicht leer und wurde Aus der Datenbank entnehmen gewählt, wird der leere Datenbankwert nicht in das Feld übernommen.
Primäre Schlüssel in Datensätzen
Beinhaltet Ihr Projekt einen Datensatz (eine lokale Kopie einer externen Datenbank), von der Sie die Feldwerte für Dokumente bei deren Verarbeitung beziehen möchten, können Sie eine Datenbanküberprüfungsregel für die Angabe eines Feldes verwenden, das als Primärschlüssel (eindeutige Kennung) eines Eintrags im Datensatz dient.
Wenn Sie das tun, werden die Daten im Datenformular den Daten im Datensatz gleichgestellt. Wenn Sie einen Datensatz auswählen, werden alle Felder mit Werten aus dem Datensatz befüllt. Die Werte im Datenformular können nicht bearbeitet werden. Falls Sie das doch versuchen, wird ein Dialogfeld mit der Aufforderung angezeigt, eine der folgenden Aktionen durchzuführen:
- wählen Sie einen anderen Eintrag aus dem Datensatz
- bearbeiten Sie den vorhandenen Datensatz
Sie können das Dialogfeld für das Hinzufügen oder Bearbeiten von Datensätzen öffnen, indem Sie mit der rechten Maustaste in ein Feld klicken und auf Datensatzeintrag bearbeiten oder Datensatzeintrag hinzufügen im Kontextmenü klicken.
Wenn Sie Daten in einem ausgefüllten Feld durch das Drücken der Taste Löschen entfernen, werden die Daten in allen anderen Feldern, die mit der Regel in Bezug stehen, auch gelöscht.
Die Regel wird erneut überprüft, wenn Sie Ihre Änderungen übernehmen.
Wie primäre Schlüssel funktionieren
- Alle Felder, die das Ziel der Regel sind, müssen die Option Wert aus Datenbank eingeben aktiviert haben. Außerdeml wird vorausgesetzt, dass das als primärer Schlüssel fungierende Feld einen Wert enthält, und dass das Programm nicht nach Werten der anderen Felder sucht, sondern diese stattdessen mit Werten aus der Datenbank füllt.
- Enthält das als primärer Schlüssel fungierende Feld keinen Wert, wird das Programm andere Felder untersuchen, für die die Option Suche aktiviert wurde, wenn Felder, die verglichen werden müssen, im Dialogfeld Feldverknüpfung angegeben wurden (siehe oben Angabe von zu vergleichenden Feldern). Wird für diese Felder ein einigartiger Datensatz gefunden, werden die Werte aus der Datenbank verwendet (wie in 1. oben).
Alles, was der Benutzer jetzt tun muss, ist zu entscheiden, ob alle Änderungen akzeptiert werden oder er wählt einen anderen Eintrag aus dem Datensatz.
Die folgenden Bedingungen müssen erfüllt sein, damit der primäre Schlüssel funktioniert:
- Ein Datensatz ist als Quelle ausgewählt;
- Ein primärer Schlüssel wird im Datensatz angegeben, d. h. die Option Primärer Schlüssel war für ein Feld aktiviert, wenn
- Das als primärer Schlüssel verwendete Feld wird in der Liste Feldverknüpfungen auf der Registerkarte Regeldefinitionen nicht aufgeführt.
Der Bereich Was ist ABBYY FlexiCapture für Rechnungen enthält weitere Informationen über Datensätze und erläutert deren Verwendung anhand eines Beispielprojekts.
Siehe Verbindung mit Datenbanken für Lieferanten und Geschäftseinheiten.
Siehe Suchen von Lieferanten und Geschäftseinheiten in der Datenbank.
Durchführung einer Datenbanküberprüfung für einen Satz von Feldern
In diesem Fall sucht das Programm in der Datenbank nach einer übereinstimmenden Zeichenkette für die Werte in einem Satz von Feldern, wobei jeder Wert des Satzes von Feldern mit unterschiedlichen Spalten der gefundenen Zeichenkette verknüpft ist.
Beachten Sie folgendes Beispiel:
Wir assoziieren die Dokumentfelder Fa, Fb und Fc mit den Datenbankspalten Ta, Tb und Tc wie folgt:
- Der Wert des Felds Fa stimmt genau mit dem Wert von Ta überein
- Der Wert von Fb stimmt fehlertolerant mit dem Wert von Tb überein
- Sind alle angegebenen Bedingungen erfüllt, wird der Wert des Felds Tc in das Feld Fc kopiert.
Die Datenbanküberprüfung ist erfolgreich, wenn das Programm in der Datenbank eine Zeichenkette findet, für die der Wert der Spalte Ta genau mit dem Wert des Felds Fa übereinstimmt und der Wert der Spalte Tb fehlertolerant mit dem Wert des Felds Fb übereinstimmt. Der Wert der Spalte Tc dieser Zeichenkette wird in das Feld Fc kopiert.
Wird keine solche Zeichenkette gefunden, gibt die Regel eine Fehlermeldung aus, auch wenn das Programm in verschiedenen Zeichenketten Ta = Fa und Tb = Fb findet.
Hinweis. Es sind unterschiedliche Kombinationen möglich: genaue/fehlertolerante/gemischte Übereinstimmungen, kein automatisches Ausfüllen, unbestimmte Anzahl Felder usw.
12.04.2024 18:16:01