Neuzuordnung von Fehlermeldung im Jitterbit App Builder
Übersicht
App Builder ermöglicht es Entwicklern, benutzerfreundliche, allgemeine Ersatzmeldungen für Datenbankausnahmefehler bereitzustellen. Die Bereitstellung benutzerfreundlicher Meldungen kann Benutzern, die mit der Datenbanktechnologie nicht vertraut sind, helfen zu verstehen, was passiert ist, wenn ein Fehler auftritt. Das Ersetzen von Fehlermeldungen wie Violation of PRIMARY KEY constraint 'PK_ProductInt'
mit etwas Verständlicherem wie Record already exists
kann einen großen Beitrag zur Verbesserung der Benutzererfahrung leisten.
Um eine Fehlermeldung neu zuzuordnen, müssen zunächst mehrere Schritte ausgeführt werden, um die Ausnahme zu identifizieren:
-
Der Datenbanktyp wird durch Abgleichen der Eigenschaften der Ausnahme bestimmt:
-
Typname: Dies ist der vollständige Name der Ausnahmeklasse
-
Quelle: Dies ist das Assembly-Paket für die DLL
-
Es wird versucht, eine Übereinstimmung mit der Datenbankfehlermeldung mithilfe regulärer Ausdrücke für die Ausnahmemeldung und die Datenparameter zu finden.
- Zunächst wird die Liste der datenbankspezifischen Ausnahmemeldungen in
Index
Reihenfolge - Wenn keine Übereinstimmung gefunden wird, wird die Liste der allgemeinen Ausnahmemeldungseinträge durchsucht in
Index
Reihenfolge
- Zunächst wird die Liste der datenbankspezifischen Ausnahmemeldungen in
Falls keine Übereinstimmung gefunden wird, bleibt die Ausnahmemeldung unverändert.
Datenbanktypzuordnung
Mithilfe der Datenbanktypzuordnung kann der Entwickler Ausnahmeklassen bestimmten Datenbanktypen zuordnen. Auf diese Weise kann beim Versuch, eine Ausnahmemeldung neu zuzuordnen, eine kleinere Menge von Ausnahmemeldungen untersucht werden.
Standardmäßig App Builder wird mit vielen der typischen Datenbanktypen ausgeliefert, die bereits vorab ausgefüllt sind. Im unwahrscheinlichen Fall, dass ein neuer Eintrag erforderlich ist, kann ein Entwickler die folgenden Schritte ausführen, um eine neue Datenbankzuordnung hinzuzufügen:
-
Navigieren Sie zu App Builder IDE > Konfiguration > Fehlermeldungen:
-
Klicken Sie im Bedienfeld Datenbanktyp auf die Symbolleistenschaltfläche Konfigurieren:
-
Klicken Sie auf Erstellen
-
Wählen Sie Ihren Datenbanktyp und geben Sie die folgenden Details ein:
-
Typname: Der vollqualifizierte Name der Ausnahmeklasse (z. B.
System.Data.SqlClient.SqlException
) - Quelle: Optionales Feld zur Angabe des DLL-Assembly-Namens. Dieses Feld ist nützlich, wenn ein Systemausnahmetyp für eine bestimmte Assembly neu zugeordnet wird. Beispielsweise ordnet der Rest-Datenbanktyp den Systemtyp neu zu
System.InvalidOperationException
für dieVinyl.DataSource.Rest
nur Assembly. -
Beschreibung: Optionales Feld zur Angabe einer Beschreibung für den Eintrag
-
Klicken Sie auf das Häkchensymbol, um den Eintrag zu speichern
Jetzt können Ausnahmefehlermeldungen dem konfigurierten Datenbanktyp zugeordnet werden.
Fehlermeldungen
Um eine Fehlermeldung erfolgreich neu zuzuordnen, muss ein intelligenter, benutzerfreundlicher Eintrag in der Fehlermeldungstabelle vorgenommen werden. Einträge können zu einer von zwei Listen hinzugefügt werden:
- Eine Fehlermeldung für einen bestimmten Datenbanktyp (z. B.
Microsoft SQL Server
) - Eine Fehlermeldung für jeden Datenbanktyp
Wenn eine Datenbankausnahme auftritt, wird zuerst die Liste der Fehlermeldungen für den zugeordneten Datenbanktyp untersucht. Wenn keine Übereinstimmung gefunden wird, wird die Liste der nicht spezifischen Datenbanktypmeldungen (Fehlermeldungen mit einem NULL-Datenbanktyp) untersucht. Jede Liste ist sortiert nach Index
.
So geben Sie eine neue Fehlermeldung ein:
- Navigieren Sie zu App Builder IDE > Konfiguration > Fehlermeldungen
-
Klicken Sie im Bereich Fehler auf Erstellen und geben Sie die Details ein:
Fehlermeldungsparameter
Die Liste der Parameter für eine Fehlermeldung lautet wie folgt:
Nachricht
Die dem Benutzer anzuzeigende Ersatzmeldung. Diese Meldung kann Ersetzungsparameter in Form benannter Regex-Erfassungsgruppen (der Ausnahmemeldung) enthalten Pattern
) oder Ausnahmedatenparameternamen mit dem {{nm.ab}} {{name}}
Syntax.
Muster
Dies ist das reguläre Ausdrucksmuster, das zum Abgleichen der Ausnahmemeldung verwendet wird. Dieses Muster kann benannte Erfassungsgruppen angeben, z. B. Capture group 'Key' inside quotation marks "(?<Key>.*)"
.
Hinweis
Das Muster verwendet einzeilige reguläre Ausdrücke als Übereinstimmung. Mehrzeilige Übereinstimmungen werden derzeit nicht unterstützt.
Beispielmuster:
Parameter | Wert |
---|---|
Beispiel | Violation of PRIMARY KEY constraint 'PK_OrderDetails'. |
Muster | ^Violation of PRIMARY KEY constraint '(?<Key>.*)'. |
Nachricht | Row already exists for key '{{Schlüssel}}'. |
Ausgaben Row already exists for key 'PK_OrderDetails'.
Die Übereinstimmung beginnt am Anfang der Zeichenfolge. Enthält eine Erfassungsgruppe namens Key
was passt PK_OrderDetails
innerhalb der einfachen Anführungszeichen.
Beispiel
Dies ist ein Beispiel für eine Ausnahmemeldung, die mit der angegebenen übereinstimmt Pattern
. Wenn ein Beispiel eingegeben wird, wird das Muster des regulären Ausdrucks validiert.
Stichwortverzeichnis
Der Index ermöglicht die Sortierung von Fehlermeldungen. Beachten Sie, dass Index
ist kein eindeutiger Schlüssel. Mehrere Fehlermeldungen können den gleichen Index
da die meisten Übereinstimmungen nicht wirklich sortiert werden können Index
ist auf 100 gesetzt und in den meisten Fällen ist es sinnvoll, es so zu belassen. Einige Übereinstimmungen können jedoch offensichtlich an den Anfang oder das Ende der Verarbeitungsliste verschoben werden. Wenn der Entwickler beispielsweise ein Catch-All-Muster erstellen möchte, das mit jeder Zeichenfolge übereinstimmt (so dass die Ausnahmemeldung immer neu zugeordnet wird, auch wenn alle vorherigen Übereinstimmungen fehlschlagen), könnte er einen sehr hohen Wert verwenden Index
Wert (z. B. 9999).
Ausnahmedaten
Der Data
Das Wörterbuch der Parameter für eine Ausnahme kann ebenfalls abgeglichen werden. Dies ist nützlich, wenn eine Ausnahme eine allgemeine Meldung enthält, aber spezifische Ausnahmedetails im Data
Wörterbuch. Es gibt drei Data
Einträge, die einer Fehlermeldung hinzugefügt werden können. Sie müssen auf die Fehlermeldung doppelklicken, um die vollständige Liste der Ausnahmedatenparameter anzuzeigen.
Name
: Der Name des AusnahmedatenparametersRegex
: Der reguläre Ausdruck, der mit dem Wert des Ausnahmedatenparameters abgeglichen werden soll
Auswechslungen
Wie bereits erwähnt, ist die benutzerfreundliche Message
kann Ersetzungen enthalten, die sich wie folgt auflösen:
- Eine benannte Erfassungsgruppe in der
Pattern
oder - Ein Ausnahmedatenparametername
Die Syntax der Ersetzungen lautet {{name}}
und kann überall im Message
.
Versand von Benutzernachrichten
Benutzerdatenbanktypzuordnungen und Fehlermeldungen werden mit LPs gepackt, die auf dem App Builder Instanz. Wenn eine LP auf einem anderen installiert ist App Builder Instanz werden diese Benutzereinträge ebenfalls installiert. Dies folgt demselben Muster wie benutzerdefinierte mvSQL-Funktionen. Die neuen Einträge werden sofort nach der Installation aktiv. Derzeit gibt es keine Möglichkeit, diese Funktion zu deaktivieren.