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

Вниз

Обработка исключений   Найти похожие ветки 

 
HelloWord   (2006-07-22 15:11) [0]

Работаю с базой данный Microsoft Acces 2003, есть поле в таблице которое являеться уникальным - это я определил в самой таблице. Если пользователь ввёл значение которое уже существует в этом поле, то генерируеться ошибка, обрабатываю её так

 try
 if DataModule1.DseQuery.Modified then
   DataModule1.DseQuery.Post;
 except
   MessageDlg("Такая уже существует. Измените запись, или нажмите кнопку "Отмена"", mtInformation,[mbOk],0);
   Exit;
 end;  

А если в этом блоке сгенерируеться другая ошибка ? Как определить что сгенерировалась именно эта ошибка ?


 
Johnmen ©   (2006-07-22 15:25) [1]

Здесь рассказано с примерами - try+F1


 
sniknik ©   (2006-07-22 15:42) [2]

а не надо делить, просто выводи сообшение из самой ошибки .
except
  on E: Exception do ... E.Message ...
end;  
оно наиболее точно отображает происходящее (по возможности в руской винде на русском), скрывая его (переводя/и т.д. неважно почему) себе же и пользователям проблемы создаеш (тем кто может разобраться, те кто не может/не хочет те обычно любую выводимую ошибку игнорируют).

хотя это ексепт класса EOleException, у него есть код ошибки (не у всех бывает)... в принципе посмотреть его и разделить конечно можно... но не нужно ИМХО (в руской интерпретации имхо...  это когда "хрен оспориш" ;о)). наверняка что нибудь пропустиш/забудеш/не учтеш в итоге будет либо полная лажа в сообщении либо его вообще не будет.


 
Anatoly Podgoretsky ©   (2006-07-23 11:57) [3]

HelloWord   (22.07.06 15:11)  
Странная какая то обработка исключений, получается если я введу недопустимое значение, то в ответ получу, что запись уже существует.



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

Форум: "Базы";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.042 c
2-1157603938
Renat
2006-09-07 08:38
2006.09.24
Вопрос по ExcelApplication


15-1157094346
vidiv
2006-09-01 11:05
2006.09.24
Относится ли данная ситуация к ФОРС-МАЖОРу...


1-1155628054
трям
2006-08-15 11:47
2006.09.24
Как определить Rect выделенной ячейки в DBGrid ?


3-1153895544
Андрей Пл
2006-07-26 10:32
2006.09.24
TClientDataSet максимальное количество полей


2-1157048371
Интересующийся
2006-08-31 22:19
2006.09.24
Две копии приложения и одна таблица





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский