请问各位高手,以下代码出错在何方,可否给出源代码,谢谢!!!
//应用服务器
procedure Tzcgl.apply(cdustvar: OleVariant);
var
errcount:integer;
begin
zxconn.BeginTrans;
try
if not varisnull(cdustvar) then
begin
//数据在这里出错
cdustvar:=datasetprovider1.ApplyUpdates(cdustvar,-1,errcount);
if errcount > 0 then abort;
end;
zxconn.CommitTrans;
except
zxconn.RollbackTrans;
end;
end;客户端//
var ccustvar:olevariant;
begin
clientdataset1.CheckBrowseMode;
if clientdataset1.ChangeCount > 0 then
ccustvar:=clientdataset1.Delta else ccustvar:=null;
socketconnection1.AppServer.apply(ccustvar);
if not varisnull(ccustvar) then
begin
clientdataset1.reconcile(custvar);
clientdataset1.refresh;
end;end;
//应用服务器
procedure Tzcgl.apply(cdustvar: OleVariant);
var
errcount:integer;
begin
zxconn.BeginTrans;
try
if not varisnull(cdustvar) then
begin
//数据在这里出错
cdustvar:=datasetprovider1.ApplyUpdates(cdustvar,-1,errcount);
if errcount > 0 then abort;
end;
zxconn.CommitTrans;
except
zxconn.RollbackTrans;
end;
end;客户端//
var ccustvar:olevariant;
begin
clientdataset1.CheckBrowseMode;
if clientdataset1.ChangeCount > 0 then
ccustvar:=clientdataset1.Delta else ccustvar:=null;
socketconnection1.AppServer.apply(ccustvar);
if not varisnull(ccustvar) then
begin
clientdataset1.reconcile(custvar);
clientdataset1.refresh;
end;end;
cdustvar:=datasetprovider1.ApplyUpdates(cdustvar,-1,errcount); 我是希望能够使用以上代码实现一个数据库中的不同表要么同时成功添加数据,要么同时失败添加数据的功能!也就是说当我更改了A,B,C表时要么这三个表都成功提交,要么这三个表提交都失败!另外能否给出你们的代码,可让我做参考!谢谢!