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

Вниз

По поводу процедуры "BeforePost" в Ttable   Найти похожие ветки 

 
Heretic ©   (2004-09-09 15:21) [0]

Есть две таблицы. При изменении одной таблицы необходимо произвести изменения в другой таблице.
Делаю так:

В Table1 "AfterEdit" пишу:

Begin
 OldValue:=table1.fieldvalues["Pole1"];
end;


В Table1 "BeforePost" пишу:

Begin
 if OldValue<>table1.fieldvalues["Pole1"] then
 begin
   table2.filter:="Pole1="""+vartostr(OldValue)+"""";
   table2.first;
   while not table2.eof do
   begin
     table2.edit;
     table2.fieldvalues["Pole1"]:=table1.fieldvalues["Pole1"];
     table2.post;
   end;
 end;
end;


При выполнении процедуры Table1 "BeforePost" в Table2 изменяется только первая запись, затем выдает ошибку "KeyViolations"
При повторном выполнении процедуры Table1 "BeforePost" в Table2 изменяется следующая запись, затем опять выдает ошибку "KeyViolations". Таким образом обрабатывается только одна запись Table2.

Уважаемые Гуру, что я делаю не так?


 
Ditrix ©   (2004-09-09 15:32) [1]

забыл table2.next;


 
Heretic ©   (2004-09-09 15:37) [2]

Я не забыл.
Просто разницы нет. У меня стоит фильтр на Table2 по полю "Pole1", и при выполнении "Table2.Post" Table2.RecordCount автоматически уменьшается на одну запись, так как измененная запись уже не попадает под фильтр.
Но даже если использовать table2.next - ошибка та же.


 
megabyte ©   (2004-09-09 16:33) [3]

А если попробовать, не знаю, поможет ли обновление,
table2.refresh



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
1-1095946900
wyt
2004-09-23 17:41
2004.10.10
Форма LogIn


3-1094996828
Артем Владимирович
2004-09-12 17:47
2004.10.10
Взаимодействие приложения с удаленной БД


1-1096009386
NewDelpher
2004-09-24 11:03
2004.10.10
проблемы с AV при вызове Procedure Of Object


10-1045474963
Vladimir
2003-02-20 11:03
2004.10.10
corba callback


14-1095919272
gn
2004-09-23 10:01
2004.10.10
Читайте назночение программ некоторые фразы меня впечатлили :-)