![]() |
|
|
#1
|
|||
|
|||
![]() Имеется процедура которая считает сумму цен в поле Цена
Код:
procedure TForm6.Button1Click(Sender: TObject); var ST: string; s: integer; begin Table1.First; S:=0; While Not (Table1.Eof) do begin S:= S+Table1Stoimost.Value; Table1.Next; end; ST:= FloatToStr(s); STR(S:12, st); Label6.Caption:= 'Сумма заказа составляет '+ st+'р.'; Label6.Visible:= True; end; Как к этой сумме прибавить значение, которое вводится в Edit1 который находится на этой же форме? PS... у меня чего-то прибавляет значение в три раза больше чем введенное в Edit |
#2
|
||||
|
||||
![]() Лучше сумму считать через запрос, значительно быстрее.
Например так. Код:
procedure TForm1.Button2Click(Sender: TObject); var s:real; begin With ADOQuery2 do begin Close; SQL.Clear; SQL.Add('Select sum(PriceRUB) as summa from main'); Open; end; Label2.Caption:= 'Сумма заказа составляет ' + FloatToStr(ADOQuery2.fieldByName('summa').AsFloat + StrToFloat(edit1.Text))+'р.'; end; |
#3
|
|||
|
|||
![]() а если без запроса?
и как передать ST(Label6.Caption:= 'Сумма заказа составляет '+ st+'р.' ![]() Последний раз редактировалось Horror, 24.04.2008 в 04:19. |
#4
|
||||
|
||||
![]() Цитата:
Код:
procedure TForm1.Button1Click(Sender: TObject); var ST: string; s: real; begin Table1.First; S:=0; While Not (Table1.Eof) do begin S:= S+Table1.fieldByName('Stoimost').AsFloat; Table1.Next; end; s:=s+StrToFloat(edit1.text); ST:= FloatToStr(s); STR(S:12:2, st); Label6.Caption:= 'Сумма заказа составляет '+ st+'ð.'; Label6.Visible:= True; end; |
#5
|
|||
|
|||
![]() как переменную ST передать в QRLabel?
|
#6
|
|||
|
|||
![]() внутри процедуры.
ReportForm.QRLabel1.Caption := ST; где ReportForm - форма отчета. |