Вниз
Скачать: CL | DM;

Вычисляемое поле   Найти похожие ветки 

 
Fed ©   (2005-12-24 23:28) [0]

Добрый день. БД в BDE. Нужно подсчитать сумму одной из колонок "Prostoi" и создать вычислямое поле, где будет отображаться в процентах отношение значения поля "Prostoi" к сумме всей колонки.
Хотелось бы обойтись без SQL. Сумма подсчитывается так
var i:integer;
   s:real;
begin
s:=0;
Table1.First;
for i:=1 to Table1.RecordCount do begin
s:=s+Table1Prostoi.AsFloat;
Table1.Next;
end;
Label2.Caption:=FloatToStr(s);

end;

Если этот код использовать при создании формы, все вроде бы хорошо, но при изменении в какой-нибудь записи значения "Prostoi", сумма не изменеяется и следовательно в вычисляемом поле высчитывается неверное значение.
Вычисляемое поле
procedure TForm1.Table1CalcFields(DataSet: TDataSet);
var i,s1:integer;
   s:real;
begin
s:=(Table1Prostoi.AsFloat/StrToFloat(Label2.Caption))*100;//Label1-сумма
s1:=Round(s);
Table1Otn.Value:=s1;
end;

Если вставить код вычисления суммы в TForm1.Table1CalcFields(DataSet: TDataSet) Delphi ругается. Как заставить прогу пересчитывать сумму при изменении значения поля?


 
atruhin ©   (2005-12-25 08:22) [1]

См OnAfterPost для соответствующего поля



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.037 c
15-1138195518
Толян
2006-01-25 16:25
2006.02.19
Выполнение кода в Memo


2-1139069561
Michael5
2006-02-04 19:12
2006.02.19
Вопрос по OpenGL, программа не работает, подскажите, в чем дело!


2-1138427962
ArtemESC
2006-01-28 08:59
2006.02.19
Тип String


2-1138968917
~ShamaN~
2006-02-03 15:15
2006.02.19
Перемещение курсора в DateTimePicker


2-1139001993
ListBox
2006-02-04 00:26
2006.02.19
Можно ли в ListBox узнать по какой букве в строке был клик




   Наверх