ClientDataset的多data合并?(200分)

  • 主题发起人 主题发起人 Jinie
  • 开始时间 开始时间
J

Jinie

Unregistered / Unconfirmed
GUEST, unregistred user!
在服务器中的DATAPROVIDER传出两个DATA数据包到一个CLIENTDATASET,其中两个DATA数据包有重复
记录,如何合并重复数据包到该CLIENTDATASET?我的做法:
ClientDataSet.Data:=Data1;
ClientDataSet1.Data:=Data2;
ClientDataSet.Frist;
while ClientDataSet.Eofdo
begin
if FoundData then
//我的对应查找重复记录方法
begin
ClientDataSet.ReadOnly:=False;
ClientDataSet.Append;
//发生错误,CLIENTDATASET READONLY
for i:=0 to ClientDataSet1.Fields.Count-1do
begin
ClientDataSet.Fields.Value:=ClientDataSet1.Fields.Value
end;
end;

ClientDataSet.Next;
end;

以上程序发生CLIENTDATASET为READONLY,为什么呢?
 
你的 ClientDataSet 是如何连接数据库的?
请看TClientDataSet的Help:
Note: Even if ReadOnly is False, users may not be able to modify or
add data to a client dataset if it gets its data from a provider.
The provider's Options property can limit whether data can be edited,
and if so, what types of edits are allowed.
 
嗯,应该是你的DATAPROVIDER的问题。
 
我的CLIENTDATASET没有PROVIDER,只是取PROVIDER.DATA付值。
 
换换delta试试
 

ClientDataSet.ReadOnly:=False;//看看这句是否有效
ClientDataSet.Append;
 
用ClientDataset.MergeChangeLog.
 
后退
顶部