Uso de expresiones personalizadas de Exception Monitor

Puede escribir sus propias expresiones personalizadas para controlar cómo Exception Monitor redirige los registros, mediante el lenguaje de scripting Groovy para crear una expresión.

Uso de comandos Groovy

Para obtener más información acerca de Groovy, consulte groovy-lang.org.

Las expresiones Groovy que se utilizan en la etapa Exception Monitor, se deben evaluar como un valor booleano (verdadero o falso), que indica si un registro se considera una excepción y se debe redirigir para su revisión manual. Los registros de excepción son enviados al puerto de excepción.

Por ejemplo, si necesita revisar registros con un nivel de confianza de validación menor que 85, su secuencia de comandos tendría la siguiente apariencia:

data['Confidence']<85

El monitor evaluaría el valor del campo Confianza según sus criterios para determinar a qué puerto de salida enviarlo.

Verificación de un valor único en un campo

Este ejemplo se evalúa como verdadero si el campo Estado contiene 'F'. Tiene que ser un cruce exacto, por lo que 'f' no se evaluaría como verdadero.

return data['Status'] == 'F'; 

Verificación de valores múltiples en un campo

Este ejemplo se evalúa como verdadero si el campo Estado contiene 'F' o 'f'.

boolean returnValue = false;
if (data['Status'] == 'F' || data['Status'] == 'f')
{
 returnValue = true;
}
return returnValue; 

Evaluación de la longitud del campo

Este ejemplo se evalúa como verdadero si el campo PostalCode tiene más de 5 caracteres.

return data['PostalCode'].length() > 5; 

Verificación de un carácter dentro de un valor de campo

Este ejemplo se evalúa como verdadero si el campo PostalCode contiene un guión.

boolean returnValue = false; 
if (data['PostalCode'].indexOf('-') != -1) 
{ 
	returnValue = true; 
} 
return returnValue; 

Errores habituales

A continuación se muestran errores habituales que se cometen al utilizar secuencias de comandos.

La siguiente secuencia es incorrecta porque PostalCode (el nombre de la columna) debe estar dentro de comillas simples o dobles

return data[PostalCode]; 

La siguiente secuencia es incorrecta porque no se especifica ninguna columna

return data[]; 

La siguiente secuencia es incorrecta porque row.set() no devuelve un valor booleano. Siempre se evaluará como falso y se cambiará el campo PostalCode a 88989.

return row.set('PostalCode', '88989'); 

Use un solo signo igual para configurar el valor de un campo y un signo igual doble para verificar el valor de un campo.