自定义DataSet,并写入数据

2008-04-09 04:24:40来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

新建一 DataSet , 并加入数据 : prepareTable
function TFrm_Print.CreateTableInMemory(const AFieldDefs:TFieldDefs):TDataSet;
var
TempTable:TClientDataSet;
begin
TempTable:=nil;
Result:=nil;
if AFieldDefs<>nil then
begin
try
TempTable:=TClientDataSet.Create(Application);
TempTable.FieldDefs.Assign(AFieldDefs);
TempTable.CreateDataSet;
Result:=(TempTable as TDataSet);
Except
if TempTable<>nil then
TempTable.Free;
raise;
end
end;
end;

procedure TFrm_Print.CreateDataSet(var gDataSet:Tdataset);
var ADataSet:TDataSet;
begin
try
if assigned(gDataSet) then gDataSet.free;
except
end;
ADataSet:=TDataSet.Create(Self);
try
with ADataSet.FieldDefs do
begin
add(''''OrderNo'''',ftInteger);
add(''''prjName'''',ftString,200);
add(''''srcPrice'''',ftFloat);
end;
gDataSet:=CreateTableInMemory(ADataSet.FieldDefs);
gDataSet.Open;
finally
ADataSet.Free;
end;
end;

procedure Tfrm_GoodsMg.prepareTable(var gDataSet:Tdataset);
procedure prepareDataSet;
begin
{ while not 数据源.eof do begin
gDataSet.append;
gDataSet.fieldbyname(''''OrderNo'''').asInteger:= I_Value;
gDataSet.fieldbyname(''''prjName'''').asString := A_Value;
gDataSet.fieldbyname(''''OrderNo'''').asFloat := D_value;
gDataSet.post;
数据源.next;
end; }
end;
begin
CreateDataSet(gDataSet);
prepareDataSet;
end;

procedure getMyDataSet()
var myDataSet:Tdataset
begin
prepareTable(myDataSet);
myDataSet.free;
end;

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:INI文件的读写

下一篇:比 FastPos 还要快 Pos 函数