Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

Как от этого исбавиться - BOF или EOF имеет значение True ???   Найти похожие ветки 

 
Kardash   (2006-06-23 13:30) [0]

Народ подскажите пожалуйста что и где надо исправить.
Есть две формы и база(ACCESS) через ADOconnection. На первой форме DBGrid, в к-м соответственно отображаютя данные таблицы.На второй форме DBEditы. Есть поиск через filtered:

AdoTable1.Filter:="(fam="""+ Edit1.Text + """"+" )";
AdoTable1.Filtered:=true;

Вторая форма сделана для изменения данных таблицы.
Проблема в следующем: когда нахожу какое-то значение из таблицы (в Гриде оно становится единственным) и хочу его потом изменить мне выскакивает след. сообщение:

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

Если поиск не включать, то всё заменяется нормально.

Вторая форма открывается сразу с form1.ADOTable1.Edit;
А на сохранении стоит form1.ADOTable1.Refresh;

В чём тут может быть проблема???


 
Desdechado ©   (2006-06-23 13:34) [1]

Поставить все Update"ы с сайта борланда.


 
Johnmen ©   (2006-06-23 13:35) [2]

Достаточно в строке поиска (над "показать мои вопросы") указать "BOF" и нажать кнопу "найти".


 
Kardash   (2006-06-23 14:06) [3]

Update"ы помогут? У меня подозрения, что я где-то, что-то не учёл.


 
Desdechado ©   (2006-06-23 15:58) [4]

> Есть поиск через filtered
Это называется "отбор нужного".
А поиск - это позиционирование на одном из нужных.


 
ЮЮ ©   (2006-06-24 06:00) [5]


> Вторая форма открывается сразу с form1.ADOTable1.Edit;
> А на сохранении стоит form1.ADOTable1.Refresh;


Вторая форма тоже редактирует form1.ADOTable1? Тогда зачем Refresh?
Ключевое поле в таблице есть? Refresh идет по ключевому полю?

При наличии хотя бы одного "нет" имеем нормальную реакцию:
form1.ADOTable1.Refresh пытается найти текущую запись в базе, а её такой уже нет


 
Kardash   (2006-06-24 16:24) [6]

Народ, я конечно не мастер, но походу действительно у меня тупит сама делфа. Потому как при запуске скомпилированного ехе-шника данные траблы исчезли. Я так понимаю мне надо 100% качать апдейты. Спасибо всем за ответы.


 
sniknik ©   (2006-06-24 16:41) [7]

> Потому как при запуске скомпилированного ехе-шника данные траблы исчезли.
ошибка времени исполнения у тебя "спрятана", в дизайне нет. т.е. например сделай новый проект, добавь кнопку. на нее код
procedure TForm1.Button1Click(Sender: TObject);
var
 i, j: double;
begin
 try
   i:= 0;
   j:= 100;
   ShowMessage(FloatToStr(j / i));
 except end;
end;

явная ошибка, но в защищеном блоке и без обработки т.е. "спрятана", при нажатии при выполнении из под дельфей ошибка все одно будет показываться, а при запуске екзешника нет. (отключить в дизайне это в "tools-debuger options-languige exceptions-stop on delphi exceptions" галку снять... но не советую... лучше пусть останется)



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

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.064 c
2-1155667989
novill
2006-08-15 22:53
2006.09.03
Как в runtime показать время компиляции программы?


4-1146964023
Владимир
2006-05-07 05:07
2006.09.03
Перевод монитора в режим stand-by: грябли


4-1147110870
Polas
2006-05-08 21:54
2006.09.03
как узнать Handle окна зная handle процесса


1-1153308395
Youta
2006-07-19 15:26
2006.09.03
Как расположить окно поверх другого, когда выполняется длинный пр


1-1153423236
rlzz
2006-07-20 23:20
2006.09.03
Как вытащить файл из ресурса ???