![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вычисляемые поля [D6, dBase, FoxPro]
Ruslana © (2004-08-27 10:29:00)procedure TForm1.Button1Click(Sender: TObject);
var
a,b,c:variant;
begin
repeat
a:=table1.FieldByName('zn1').Value;
b:=table1.FieldByName('zn2').Value;
c:=a+b;
table1.FieldByName('itog').Value :=c;
until table1.Eof =true;
end;
По отдельности для каждой записи получается но это очень неудобно
я попробовала сделать ткой цикл но почему то не получается
Я пробовала еще сделать как вычисляемые поля но там значение вычисления не пишется (постится) в базу
Ruslana (2004-08-28 10:20:00) [1]Спасибо!!! видно сразу Мастера
s999 (2004-08-27 12:57:00) [2]По-моему, девушка просто не справилась с написанием цикла, а "Вычисляемые поля" упомянула, чтобы запутать :)
Если это так, то:
repeat/until использовать не надо (может быть 0 записей). Цикл стротся обычно так:
table1.First;
while not table1.EOF do
begin
table1.Edit;
.....
a:=table1.FieldByName('zn1').Value;
b:=table1.FieldByName('zn2').Value;
c:=a+b;
table1.FieldByName('itog').Value :=c;
// если короче то:
//table1.FieldByName('itog').Value := table1.FieldByName('zn1').Value + table1.FieldByName('zn2').Value
.....
table1.Post;
table1.Next;
end;
Sergey13 (2004-08-27 12:43:00) [3]Че то я нифига из твоего "русскоязычного" описания не пойму. 8-)
Ruslana (2004-08-27 12:37:00) [4]а поле итога так и так имееющиеся поле в базе данных (т.е. она реально существует) а программу фокспровскую нельзя переделать точнее постановки задачи стоит в вычислении разных сумм, для исползования в других приложениях
Rem (2004-08-27 12:11:00) [5][4]
Заведите дополнительное поле "itog" в базе данных и убрать вычисляемое поле из программы.
А лучше переписать программу FoxPro, чтобы не использовала зависимые поля в своей работе.
Ruslana (2004-08-27 11:50:00) [6]Поле которое вычисляется в программе
Сергей13 я понимаю к чему Вы клоните, но в проблема в том что задача стоит исползование итогов вычислении в других приложениях в частности фокспроовской. И мне очень надо чтоб записывались в базу
Sergey13 (2004-08-27 11:23:00) [7]2Ruslana (27.08.04 11:05)
А которое поле у тебя "вычисляемое" и что в твоем понимании есть вычисляемое поле?
Ruslana (2004-08-27 11:05:00) [8]Ozone спасибо тебе!!
Но еще одна проблема это значение не постится в базу
Ozone (2004-08-27 10:48:00) [9]В DataSet'e у поля "itog" в обработчике OnGetText поставь Text = <zn1> + <zn2>