![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
try... ; ; ;except [D5, Win95/98]
Vint © (2002-05-20 13:02:00)Уважаемые мастера, помогите пожалуйста у кого есть свободная минутка, что я делаю неправильно?
Переношу данные, при появлении одинаковых индексов надо обработать "Key violation" и продолжить копирование ...
пытаюсь сделать что-то вот так:
Form85.Table1.First;
while not Form85.Table1.Eof do
begin
Form1.Table1.Insert;
Form1.Table1.Edit;
try
Form1.Table1.FieldByName... := Form85.Table1.FieldByName...;
.
.
.
except
on EDBEngineError do
MessageDlg("Ошибка записи",
mtWarning, [mbOk], 0);
Form1.Table1.Post;
Form85.Table1.Delete;
end;
end
else
Form85.Table1.Next;
end;
Destroyer (2002-05-20 13:32:00) [21]1. Зачем Edit после Insert? Ведь Insert и так переводит таблицу в режим редактирования...
2. Ошибка должна возникать при вызове метода Post, а я его в теле Try не наблюдаю.
3. К чему относится else?????
Vint (2002-05-20 13:23:00) [22]>Destroyer (20.05.02 13:08) спасибо Вам :-)
Все работает, только при появлении записи с одинаковым значением выдается "Key violation",
а мне надо чтобы перенос данных не прерывался этим сообщением, а запись вызывающая ошибку осталась во второй таблице (Form85).
Destroyer (2002-05-20 13:08:00) [23]А что не работает, какую ошибку выдает? По ходу дела все неправильно...