Rational® ClearQuest® API의 많은 메소드 및 특성에 대해 리턴값을 검사하여 호출이 오류를 리턴하는지 여부를 유효성 검증해야 합니다.
예를 들어, Entity 오브젝트 SetFieldValue 메소드는 문자열 값을 리턴하는 것으로 정의됩니다. 필드 변경이 허용되고 오퍼레이션에 성공하면 이 메소드는 빈 문자열을 리턴합니다. 그렇지 않고 오퍼레이션이 실패하면, 이 메소드는 오류에 대한 설명이 들어 있는 문자열을 리턴합니다.
오류를 트랩하려면 코드가 리턴값을 검사해야 합니다. 예를 들어, 다음과 같습니다.
strRetVal = SetfieldValue ("Invalid_field", "Invalid value") If "" <> strRetVal Then REM handle the error End If
올바르지 않은 필드를 지정하면, 오류가 리턴됩니다. 예를 들어, 다음과 같습니다.
The Defect SAMPL00000123 does not have a field named "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... }
VBScript의 경우, On Error문을 사용하여 예외를 트랩하십시오. 자세한 정보는 VBScript 오류 처리 및 Perl 오류 처리를 참조하십시오. 조치 확약 후크 예제에 Commit 메소드를 호출할 때 발생하는 오류 및 예외 처리 예제가 제공되어 있습니다.