Проверьте, существует ли объект в VBScript

Я использую HP ALM API для извлечения поля из базы данных. Проблема в том, что это может произойти, что это поле не существует в проекте, и каждый раз, когда это происходит, я получаю ошибку ниже.

Как правильно проверить объект поля, чтобы убедиться, что я больше не получаю это "Неверное имя поля настройки"?

Код:

Set field = custFields.Field("TEST", "TS_USER_88") <-- crashes here

label = field.UserLabel
If label = Null Then
    Print "[" & Sysdate() & "] Project can NOT be migrated..."
    Print "[" & Sysdate() & "] FIELD TS_USER_88 NOT FOUND - PROJECT IS NOT SUPPORTED."
Else
    ...
End If

Ошибка:

xy.vbs(126, 7) (null): Invalid customization field name

1 ответ

Решение

Вы захотите обернуть свой код в "On Error Resume Next", а затем обработать ошибку.

On Error Resume Next
Set field = custFields.Field("TEST", "TS_USER_88")

If Err.Number <> 0 Then
  'Do Something to handle your error
  'stuff

  'Clear the error
  Err.Clear
End If
On Error Goto 0

'more stuff down here

Вот еще немного информации об объекте Err и некоторых его свойствах:

http://msdn.microsoft.com/en-us/library/sbf5ze0e(v=vs.84).aspx

Другие вопросы по тегам