请问 TClientDataset 中如何用程序加入计算字段? 谢谢!! (50分)

  • 主题发起人 主题发起人 superFans
  • 开始时间 开始时间
S

superFans

Unregistered / Unconfirmed
GUEST, unregistred user!
请问 TClientDataset 中如何用程序加入计算字段?
查了很多资料都无结果,救救我吧!!
我的 ClientDataset 中的字段是动态的因此需要反复调用类似如下的代码:
with self.tempitem.FieldDefs.AddFieldDef do
begin
NAme:='RefId';
DataType := ftString;
Size := 20;
end;
如果用 tempitem.Fields.Add 则不好处理
谢谢!!
 
procedure TForm1.ClientDataSet1CalcFields(DataSet: TDataSet);
begin
if ClientDataSet1.FindField('Added')<>nil then
ClientDataSet1.FieldByName('Added').AsInteger := ClientDataSet1.RecNo ;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
FieldAdd : TFieldDef;
begin
CLientDataSet1.Close;
ClientDataSet1.FieldDefs.Add('Added',ftInteger);
//因为是刚添加的所以是最后一个。
FieldAdd := ClientDataSet1.FieldDefs.Items[ClientDataSet1.FieldDefs.Count-1];
//创建字段并设置为计算字段;
FieldAdd.CreateField(ClientDataSet1,nil,'Added').FieldKind := fkCalculated;
ClientDataSet1.Open ;
end;
 
多谢 realLearning 大力相助。
 
后退
顶部