Sie können Ihre eigenen benutzerdefinierten Ausdrücke schreiben, um zu steuern, wie Exception Monitor zum Erstellen eines Ausdrucks über Groovy-Scripting Datensätze weiterleitet.
Verwenden von Groovy-Scripting
Informationen zu Groovy finden Sie unter groovy-lang.org.
Die Auswertung der im Schritt „Exception Monitor“ verwendeten Groovy-Ausdrücke muss einen booleschen Wert (wahr oder falsch) ergeben, der darauf hindeutet, ob der Datensatz als Ausnahme gilt und zur manuellen Überprüfung weitergeleitet werden soll. Ausnahmedatensätze werden an den Ausnahmeport weitergeleitet.
Wenn Sie beispielsweise Datensätze mit einem Zuverlässigkeitsniveau für Überprüfungen in Höhe von < 85 überprüfen müssen, würde Ihr Script folgendermaßen aussehen:
data['Confidence']<85
Bei der Überwachung würde der Wert im Feld „Zuverlässigkeit“ auf Basis Ihrer Kriterien ausgewertet werden, damit ermittelt werden kann, an welchen Ausgabeport er gesendet werden soll.
Beispiel: Überprüfen eines Feldes auf einen einzelnen Wert
Bei diesem Beispiel ergibt die Auswertung „wahr“, wenn das Statusfeld „F“ enthält. Dies müsste eine genaue Übereinstimmung sein, die Auswertung von „f“ würde folglich nicht „wahr“ ergeben.
return data['Status'] == 'F';
Beispiel: Überprüfen eines Feldes auf mehrere Werte
Bei diesem Beispiel ergibt die Auswertung „wahr“, wenn das Statusfeld „F“ oder „f“ enthält.
boolean returnValue = false; if (data['Status'] == 'F' || data['Status'] == 'f') { returnValue = true; } return returnValue;
Beispiel: Auswerten der Feldlänge
Bei diesem Beispiel ergibt die Auswertung „wahr“, wenn das Feld „PostalCode“ mehr als 5 Zeichen enthält.
return data['PostalCode'].length() > 5;
Beispiel: Prüfen auf ein Zeichen innerhalb eines Feldwertes
Bei diesem Beispiel ergibt die Auswertung „wahr“, wenn das Feld „PostalCode“ einen Gedankenstrich enthält.
boolean returnValue = false; if (data['PostalCode'].indexOf('-') != -1) { returnValue = true; } return returnValue;
Häufige Fehler
Im Folgenden werden häufige Fehler bei der Verwendung des Skriptings aufgeführt.
Das folgende Beispiel ist falsch, da „PostalCode“ (der Spaltenname) in einfachen oder doppelten Anführungszeichen stehen muss
return data[PostalCode];
Das folgende Beispiel ist falsch, da keine Spalte angegeben ist
return data[];
Das folgende Beispiel ist falsch, da „row.set()“ keinen booleschen Wert zurückgibt. Die Auswertung wird immer „falsch“ ergeben und das Feld „PostalCode“ wird immer in 88989 geändert.
return row.set('PostalCode', '88989');
Verwenden Sie ein einfaches Gleichheitszeichen, um den Wert eines Feldes festzulegen, und ein doppeltes Gleichheitszeichen, um den Wert eines Feldes zu überprüfen.