Para la mayoría de los métodos y las propiedades de la API deRational ClearQuest, debe comprobar el valor de retorno a fin de validar si la llamada devuelve un error o no.
if (!defined($result)) { ... };
para detectar esta condición.Por ejemplo, el objeto Entity del método SetFieldValue se define al devolver un valor String. Devuelve un String vacío si se permiten cambios en el campo y la operación es satisfactoria; en cambio, si la operación falla, este método devuelve un String que contiene una explicación del error.
Para bloquear el error, el código debe comprobar el valor de retorno. Por ejemplo:
strRetVal = SetfieldValue ("Invalid_field", "Invalid value")
If "" <> strRetVal Then
REM handle the error
End If
Si se especifica un campo incorrecto, se devuelve un error. Por ejemplo:
El defecto SAMPL00000123 no tiene ningún campo llamado "Invalid_field".
# trap exceptions and error message strings
# ...
eval { $RetVal = ${$CQEntity}->Validate(); };
# EXCEPTION information is in $@
# RetVal is either an empty string or contains a failure message string
if ($@){
print "Exception: '$@'\n";
# other exception handling goes here...
}
if ($RetVal eq "")
{# success...
}
else {
# failure...
# return the message string here...
}
Para VBScript, utilice una sentencia On Error para bloquear excepciones. Para obtener más información, consulte el apartado Manejo de errores de VBScript y Manejo de errores de Perl. En el apartado Ejemplo de enganche de confirmación de acción se proporcionan ejemplos de manejo de errores y excepciones al llamar al método Commit.