Verwenden benutzerdefinierter Ausdrücke in Exception Monitor

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 „Exception Monitor“-Schritt 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.

Ü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'; 

Ü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; 

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; 

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.