![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вычисление суммы [D6, Access]
shnidke © (2003-08-25 22:32:00)
Не могу разобраться в чем дело?! Пишу код
procedure TDataModule2.MainTableCalcFields(DataSet: TDataSet);
var s,s1: LargeInt;
begin
s:=0; s1:=0;
Datamodule2.MainTable.First;
while not datamodule2.MainTable.Eof do begin
s:=s+Datamodule2.MainTableFact.Value;
s1:=s1+Datamodule2.MainTableKorrection.Value;
datamodule2.MainTable.Next;
end;
Datamodule2.MainTableTotalF.Value:=s;
Datamodule2.MainTableTotalK.Value:=s1;
end;
end.
...... и выскакивает такая ошибка
Project AGRS.exe raised exception class EStackOverflow with message "Stack overflow". Process stoped.
Use Step or Run to continue.
Помогите чем можно. Заранее спасибо
ЮЮ (2003-08-26 03:20:00) [1]
>onCalcFields вызывается для каждого расчитываемого значения
onCalcFields вызывается для текущей записи. В этом обработчике нельзя перемещаться по НД, что приводит к смене текущей записи и новому вызову обработчика
sniknik (2003-08-26 00:36:00) [2]
onCalcFields вызывается для каждого расчитываемого значения, а ты в нем всю таблицу с начала до конца, нехорошо, да еще и присваивание. циклишся однако.
(вынеси то же самое на кнопку, не будет)