Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];

Вниз

Как различить исключения и правильно их обработать?   Найти похожие ветки 

 
PONTIY   (2003-01-14 08:32) [0]

Возможно, вопрос можно поместить в раздел БД, но мне кажется, направленность к БД в данном случае не столько важна.
Ситуация такая: клиентским приложением возбуждаю исключительную ситуацию при добавлении записей в таблицу. Возникает из-за несоблюдения правил констрейнов на таблице. Причем несмотря что констрейны разные исключение всегда имеет один класс EoleError. Текст сообщения исключения разный, зависит от того констрейна на который напарывается клиент. Возникают следующие вопросы:
1. Может быть все же есть классы которые будут ловить свой констрейн?
2. Есть ли код у этих исключений (возможно он будет разный в обоих случаях) и как его поймать?
3. Как мне получить текст сообщения исключения?


 
Думкин   (2003-01-14 08:40) [1]

EoleError : class(Exception);

raise EoleError.Create("jhkjhkjhjkhkj");

try
except
on E : EoleError do ShowMessage(E.Message);
end;

Или что надо?


 
PONTIY   (2003-01-14 08:47) [2]

Нет. Исключения я принудительно Raise"ом не вызываю, они сами возбуждаются в той строке где я пытаюсь сделать вставку в таблицы противоречащую правилам констрейнов.


 
Delirium^.Tremens   (2003-01-14 09:19) [3]


try
...
except on E:Exception do
MessageBox(Form.Handle, PChar(E.Message)+#10#13+"Непонятная ошибка", PChar(String(E.ClassName)), MB_OK+MB_SYSTEMMODAL+MB_ICONEXCLAMATION);
end;

Посмотри по свойствам E, может что-то устроит.


 
PONTIY   (2003-01-14 13:33) [4]

Спасибо, то что нужно. EOleException (у меня вызывается именно это исключение во всех моих случаях) к свойству Messages там еще и (код ошибки) ErrorCode добавлен.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
3-72096
Criptus
2002-12-26 12:45
2003.01.23
Список активных пользователей


1-72269
Anatoly P
2003-01-11 19:37
2003.01.23
Дуга по трем точкам


1-72303
badaxe
2003-01-15 15:37
2003.01.23
Проблема с random


1-72206
malkolinge
2003-01-13 16:37
2003.01.23
Специалистам по компонентам !


1-72226
pavel_ak
2003-01-10 21:52
2003.01.23
*.doc в *.txt, и снести форматирование!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский