fCDS中的SUM 字段 。 sum:=price*quantity;如何能给SUM 字段的值 赋值成price*quantity相乘的合? 并且显示在fcds中!下面是我的代码-----------------------------form2窗体,负责添加数据。-----------
unit Unit2;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls,T_fwDataDriver;type
TForm2 = class(TForm)
pnl1: TPanel;
edt1: TEdit;
edt2: TEdit;
edt3: TEdit;
edt4: TEdit;
btn1: TButton;
btn2: TButton;
procedure btn1Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
private
acds : TfwClientDataset;
{ Private declarations }
public
class procedure createSelf(fcds : TfwClientDataset);
{ Public declarations }
end;var
Form2: TForm2;implementation
uses
Unit1;{$R *.dfm}procedure TForm2.btn1Click(Sender: TObject);
begin
with acds do
begin
append;
FieldByName('unit_code').AsString:=edt1.Text;
FieldByName('parts_code').AsString:=edt2.Text;
FieldByName('price').AsFloat:=StrToFloat(edt3.Text);
FieldByName('quantity').AsFloat:=StrToFloat(edt4.Text);
FieldByName('sum').AsFloat:=StrToFloat(edt3.Text)*StrToFloat(edt4.Text);
post;
end;
end;procedure TForm2.btn2Click(Sender: TObject);
begin
Close;
end;
class procedure TForm2.createSelf(fcds: TfwClientDataset);
var aform : TForm2;
begin
aform := tform2.create(nil);
aform.acds := fcds;
if aform.acds.active = False then aform.acds.open; aform.ShowModal;
FreeAndNil(aform);end;
end.
------------------------------------------------------------
-----------------------form1窗体主窗体-----------------如何进行 SUM合的计算?
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGrid, Grids, DBGrids, T_fwDataDriver, ExtCtrls,
cxDBLookupComboBox;type
TForm1 = class(TForm)
pnl1: TPanel;
dbgrd1: TDBGrid;
btn1: TButton;
btn2: TButton;
btn3: TButton;
fcds1: TfwClientDataset;
strngfldfcds1unit_code: TStringField;
strngfldfcds1parts_code: TStringField;
ds1: TDataSource;
pnl2: TPanel;
ds2: TDataSource;
fcds2: TfwClientDataset;
fcds1price: TFloatField;
fcds1quantity: TFloatField;
strngfldfcds2unit_code: TStringField;
fcds1sum: TFloatField;
strngfldfcds2parts_code: TStringField;
strngfldfcds2clienSite: TStringField;
strngfldfcds2clienName: TStringField;
cxgrdbtblvwGrid1DBTableView1: TcxGridDBTableView;
cxgrdlvlGrid1Level1: TcxGridLevel;
lv1: TcxGrid;
cxgrdbtblvwGrid1DBTableView1RECORD_ID: TcxGridDBColumn;
cxgrdbtblvwGrid1DBTableView1unit_code: TcxGridDBColumn;
cxgrdbtblvwGrid1DBTableView1clienName: TcxGridDBColumn;
cxgrdbtblvwGrid1DBTableView1clienSite: TcxGridDBColumn;
cxgrdbtblvwGrid1DBTableView1parts_code: TcxGridDBColumn;
btn4: TButton; procedure FormCreate(Sender: TObject);
procedure btn1Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
procedure btn3Click(Sender: TObject);
procedure cxgrdbtblvwGrid1DBTableView1EditChanged(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem);
procedure btn4Click(Sender: TObject); private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation
uses
Unit2;
{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
fcds1.LoadFromTextFile('E:\作业\习题5\数据.txt');
fcds1.FieldByName('sum').AsFloat:=
end;procedure TForm1.btn1Click(Sender: TObject);
var
Form2:TForm2;
begin Form2.createSelf(fcds1);
end;procedure TForm1.btn2Click(Sender: TObject);
begin
if fcds1.RecordCount>0 then
begin
fcds1.Delete;
end;
end;procedure TForm1.btn3Click(Sender: TObject);
begin
fcds1.SaveToTextFile('E:\作业\习题5\数据.txt');
end;procedure TForm1.cxgrdbtblvwGrid1DBTableView1EditChanged(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem);
begin
fcds2.Append;
fcds2.FieldByName('unit_code').AsString:='ss';
fcds2.FieldByName('clienName').AsString:='sss黑';
fcds2.FieldByName('clienSite').AsString:='天上';
fcds2.FieldByName('parts_code').AsString:='code2';
fcds2.Post;
end;procedure TForm1.btn4Click(Sender: TObject);
begin
Form1.fcds1.LoadFromTextFile('E:\作业\习题5\数据.txt');
end;end.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货