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

Вниз

Lookup поле   Найти похожие ветки 

 
asusfi   (2002-12-17 13:37) [0]

Помогите, пожалуйста, с проблемой.
Есть Tb1 - master и Tb2 - detail. Создаю в Tb2 Lookup-поле. Все ОК. Информация просматривается корректно, однако
1) если я перевожу таблицу в режим реактирования методом Edit и присваеваю полю значение, выдается сообщение об ошибке, что таблица не находится в режиме редактирования.
2) если же я вношу изменения с помощью Navigator, то вообще пишет что стек переполнен.
Убираю это поле все работает нормально.
Прикол в том что в другой базе эта технология работает.
Что за хрень.


 
Johnmen ©   (2002-12-17 13:47) [1]

1) см. процедуры обработки событий НД, ДатаСорса, Полей, Грида...
2) см. п.1) - где-то рекурсивный бесконечный вызов...


 
asusfi   (2002-12-17 16:06) [2]

Да переполнение может быть от бесконечной рекурсии,но я проверил никаких обработок событий нет. А как быть с вызовом Edit, почему ругается


 
Johnmen ©   (2002-12-17 16:11) [3]

Возможно тебе придется привести здесь кусок кода...Мало информации...


 
asusfi   (2002-12-17 16:19) [4]

Дело в том что кода вообще нет. Я просто в голом проекте разместил два ДатаСорса, два Тайбла, два Грида. С помощью мастера полей создал Lookup-поле, и организовал связь мастер-детальный между таблицами, опять-таки с помощью мстера. Все. И не работает.


 
asusfi   (2002-12-17 16:23) [5]

Дополнение: если изменяешь значения в гриде, то переполнение, если в коде, а именно:
Table2.Edit;
Table2["TwoRow"]:=StrToInt(Edit1.text);
Table2.Post;
то "набор данных не находится в режиме редактирования"


 
Johnmen ©   (2002-12-17 16:31) [6]

>Table2.Edit;
>Table2["TwoRow"]:=StrToInt(Edit1.text);
>Table2.Post;

Где же прописан этот код ??? У меня нет клещей для вытягивания из тебя подробностей...:)





 
asusfi   (2002-12-17 16:38) [7]

>Где же прописан этот код ???

Код прописан здесь
procedure TForm1.Button1Click(Sender: TObject);
befin
Table2.Edit;
Table2["TwoRow"]:=StrToInt(Edit1.text);
Table2.Post;
end;


 
Johnmen ©   (2002-12-17 16:42) [8]

И на какой строке кода вываливается ошибка ?


 
asusfi   (2002-12-17 16:48) [9]

На второй строке.


 
Johnmen ©   (2002-12-17 17:09) [10]

Пожалуйста, покорректней, а то опять приходится гадать в какой...
Если в Table2["TwoRow"]:=StrToInt(Edit1.text); то перед ней убедись, что НД действительно перешел в Edit. Если не перешел - надо искать причины в твоей проге...



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

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

Наверх




Память: 0.48 MB
Время: 0.019 c
1-37051
Brat-2
2003-01-02 21:34
2003.01.13
Str2Byte


1-37128
greenrul
2003-01-04 15:07
2003.01.13
Как заменить перерисовку SpeedButton?


4-37468
Bukerman
2002-11-27 15:31
2003.01.13
PID процесса по заголовку окна


1-37100
race1
2002-12-28 15:47
2003.01.13
mouse


3-36997
TAN
2002-12-19 11:29
2003.01.13
Dbgrid