VBScript 오류 처리

Rational® ClearQuest® API의 루틴에서 예기치 않은 조건이 발생하는 경우 예외가 발생합니다. 호출 프로그램이 예외를 포착하지 못하면, 언어 해석기가 프로그램을 종료합니다. Rational ClearQuest API 호출이 실패할 가능성이 있는 경우, 예외를 포착하여 처리해야 합니다.

VBScript On Error문을 사용하여 VBScript 오류를 처리하는 표준 방법을 사용하십시오. 그러면 Err 오류 오브젝트를 조사하고 언제든지 오류를 분석할 수 있습니다. 예를 들어, 다음과 같습니다.
On Error Resume Next
Err.Clear
' perform some operation here...
if  Err.Number <> 0  then       
   ' An exception occurred
    StdOut "Exception:" & vbCrLf &_
        "    Error number: " & Err.Number & vbCrLf &_
        "    Error description: '" & Err.Description & vbCrLf
	...
GoTo 명령문을 Visual Basic에는 사용할 수 있지만 VBScript에는 사용할 수 없습니다. 예를 들어, 다음과 같습니다.
' VB exception handling example
	On Error GoTo HandleError
	fieldValue = record.GetFieldStringValue(fieldname)
	...
	HandleError:
	StdOut "Got error number " & Err.Number & ":"
	StdOut Err.Description

일반적으로 실패가 예상되는 몇 개의 함수는 이 경우의 예외입니다. 특히, validate field 및 set field 함수는 예외를 발생시키는 대신 오류 표시를 리턴합니다. 자세한 정보는 "오류 검사 및 유효성 검증"을 참조하십시오.

VARIANT 리턴값 처리

VBScript의 경우, 일부 특성 및 메소드는 오브젝트 또는 문자열 배열을 포함하는 VARIANT 값을 리턴합니다. 배열이 0개의 요소를 포함하는 경우, VARIANT 값은 EMPTY 값을 갖습니다. 비어 있는 값은 배열로 간주되지 않으며, 배열이 아닌 것을 반복하려고 시도하면 유형 불일치로 간주됩니다. 배열 관련 함수를 적용하기 전에 IsEmpty 또는 IsArray 함수를 사용하여 이러한 리턴값을 확인해야 합니다. 예를 들어, 다음과 같습니다.

fieldObjs = GetInvalidFieldValues
' Check the return value
If (IsArray(fieldObjs)) Then 
   For Each fieldInfo In fieldObjs
      fieldValue = field.GetValue
      fieldName = field.GetName
      currentsession.outputdebugstring "This is the fieldvalue " & fieldvalue
   Next
Else
      currentsession.outputdebugstring "This is not an array or it is empty" 
End If 

피드백