Исключения

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
gsAlexander
Сообщения: 12
Зарегистрирован: 07 ноя 2007, 16:28

Исключения

Сообщение gsAlexander » 23 ноя 2007, 20:13

Добрый день всем.
Исключения в программе обрабатываю следующим образом:

Код: Выделить всё

except
   on E: EIBError do
    if (E.IBErrorCode = isc_except) and (Pos('Period', E.Message) > 0) then
      ........

Хотелось бы ещё вытянуть имя исключения, подскажите как это сделать.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 24 ноя 2007, 00:58

Почитать хелп чутка дальше. Например, про E.Message. И ваще про Е...

gsAlexander
Сообщения: 12
Зарегистрирован: 07 ноя 2007, 16:28

Сообщение gsAlexander » 26 ноя 2007, 22:11

А я думал, что надо анализировать вручную статус-вектор. Для пользовательских исключений GDSCODE всегда равен isc_except, за которым следует ID исключения. Видать ошибался...

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 26 ноя 2007, 22:54

gsAlexander писал(а):А я думал, что надо анализировать вручную статус-вектор. Для пользовательских исключений GDSCODE всегда равен isc_except, за которым следует ID исключения. Видать ошибался...
Так нам таки надо алгоритмы обработки строить или имя получить? Это как бы слегка разные вещи...

gsAlexander
Сообщения: 12
Зарегистрирован: 07 ноя 2007, 16:28

Сообщение gsAlexander » 26 ноя 2007, 22:59

Для начала имя пользовательского эксепшена, который вызвал isc_except.

Ответить