Форум: "Базы";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
ВнизВопром по DBF таблицам... Найти похожие ветки
← →
Nimnul (2001-12-26 08:49) [0]Есть таблица Table2 и связаный DBGrid.
Всего 6 колонок. 4 колонки пользователь
может изменять,а в 6 должна писаться сумма
всех четырех.Вопрос:
Надо считать это все динамически.
Пыталься использовать DataSource2.OnDataChange,
Table2.AfterPost
Но когда я пишу в 6 колонку(итоговую) вызываются эти события,
цикл однако.
Как можно выйти из ситуации?
(Ничего не могу придумать)
← →
panov (2001-12-26 09:13) [1]Создай вычисляемое поле.
← →
Nimnul (2001-12-26 14:46) [2]2panov
Спасибо, создал.
Но мне нужно сохранять в базу, я нашел
свойство fkinternalCalc, но генерит ошибку.
При fkcalculated все нормально, сделал
Table2.Edit все равно ошибка. :-(
← →
Delirium (2001-12-26 15:02) [3]
var Ok:boolean;
procedure TForm1.Table1BeforeEdit(DataSet: TDataSet);
begin
Ok:=True;
end;
procedure TForm1.Table1BeforeInsert(DataSet: TDataSet);
begin
Ok:=True;
end;
procedure TForm1.Table1BeforePost(DataSet: TDataSet);
begin
if Ok then
begin
Table1.FieldByName("S").AsInteger:=Table1.FieldByName("N1").AsInteger+
Table1.FieldByName("N2").AsInteger;
Ok:=False;
end;
end;
И никаких "циклов".
← →
Delirium (2001-12-26 15:18) [4]Хотя, я тут попробывал, можно и просто:
procedure TForm1.Table1BeforePost(DataSet: TDataSet);
begin
Table1.FieldByName("S").AsInteger:=Table1.FieldByName("N1").AsInteger+
Table1.FieldByName("N2").AsInteger;
end;
всё равно ничего не циклится.
← →
Jony (2001-12-26 15:43) [5]Попробуй суммирование поставить в обработчики события OnChange всех четырех полей в наборе данных, связанным с гридом. Если не ошибаюсь, то реагировать будет чуть ли не на каждый разряд, вводимый в поле.
← →
Nimnul (2001-12-26 15:49) [6]Теперь разобрался, но теперь когда ставлю
fkcalculated
то все считается, а когда
fkinternalCalc
то никаких изменеий ничего не считается и в
базу не пишется...
2Delirium
Спасибо, попробую.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c