三层下EDIT,POST的问题。感觉真让我迷惑呀?!(200分)

我建议升级ADO
 
我想问一下,你监视它的DELTA数据了吗?
 
你有QQ吗?我们QQ上说吧,急死人了.
 
我的QQ 18502537
 
>>你监视它的DELTA数据了吗?
监视了,在客户端和APP SERVER端显示的结果都是对的,只是数据库中的结果不对。
下面的是监视客户端的。我监视的结果是对的,但它实际更新在数据库中的结果时
是不对的。。。
procedure TrdmPcAppSvr.dspInOutPutUpdateData(Sender: TObject;
DataSet: TClientDataSet);
begin
frmPcSvr.ClientDataSet1.data:=DataSet.data;
end;
上面的代码就是监视APP SERVER的,结果显示是对的。
procedure TDMPc.cdsPcExceptionAfterPost(DataSet: TDataSet);
var cdsMaster: TClientDataSet;
begin
inherited;
cdsMaster:=TClientDataSet(DataSet);
cdsDelta.Data:=cdsMaster.Delta;
// 这是监视客户端的。
while cdsMaster.DataSetField<>nildo
cdsMaster:=TClientDataSet(cdsMaster.DataSetField.DataSet);
cdsMaster.ApplyUpdates(0);
end;
 
关注,帮你up
 
服务器端和客户端都是对的,说明是解析到数据库时出了错误,具体情况我们明天QQ里聊吧快些.
 
>>说明是解析到数据库时出了错误,
感觉一定是这样的,但我专门作的两层的没有问题呀?!看来还是resolvetodataset的
环节出了问题。。。
 
问题有了初步的解决方法: resolvetodataset := True;
updatamode := upWhereAll:
就是作这样的设置,当它报Record changed by another user.错误时是因为后台数据库
的表中有时间字段,并且它有默认值。只要不用数据库的默认值,问题就不会出现了。。。
但这只是目前的暂时解决方法。
谢谢michael.fly的热心帮助!!!
 
顶部