Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как понимать ошибку? [D5, Access]


AM ©   (2002-11-27 13:33:00) 

Доброго всем дня! Подскажите, пожалуйста, как понимать ошибку:
Project Contur1.exe raised axception class EOleException with message "BOF или EOF имеет значение True, либо текущая запись удалена. Для выоплняемой операции требуется текущая запись."

Ошибка выдается во время выполнения:

If DMModels.ADOTabSPointsTmp.Locate("O_ID", DMModels.ADORabQuery.FieldValues["O_ID"], []) then ...

Перед тем как выполнить команду я проверяю - в таблице ADOTabSPointsTmp - нет записей, но неужели, если там нет записей, то команда Locate - должна выдавать ошибку???
В таблице DMModels.ADORabQuery - записи точно есть!

У кого какие соображения?

Примечание:
Соединение производится через ADOConnection, если кто недогадался.


AM   (2002-11-27 14:00:00) [1]

Спасибо за помощь!


Ihor Osov'yak   (2002-11-27 13:40:00) [2]

Если мне не изменяет память - баг там.
http://delphi.mastak.ru/download/104.zip
Также может поможет D5ADOUpgrade.exe c Борланда (предпочтение 104.zip)


BlackTiger   (2002-11-27 13:40:00) [3]

Да, оно вызывает исключение и ты должен его обрабатывать.
Если O_ID (довольно плохой тон - так обзывать поля) - уникальное поле, то можешь писать без предварительной проверки и потом обрабатывать исклюния (try ... except ... end;).


Наверх

Титульная страница Поиск, карта сайта Написать письмо