O
OpuBF
Unregistered / Unconfirmed
GUEST, unregistred user!
想使用通用的过程提交ClientDataSet的Delta数据包,可是遇到一个预想不到的问题,
如果这样写
//直接提交
DCOMConnection.AppServer.Update('EMPLOYEE', cdsEmployee.Delta);
其中'EMPLOYEE'是查询ID,cdsEmployee是本地数据集,提交没有问题,可是如果Delta作为
参数传递后,或者将Delta付给一个临时变量再提交,会发生异常,例如
//作为参数提交,封装函数如下
//function InternalUpdate(QueryID: String;
vDelta: OleVariant): Integer;
InternalUpdate('EMPLOYEE', cdsEmployee.Delta);
//测试首先付给临时变量
var
vDelta: OleVariant;
begin
vDelta := cdsEmployee.Delta;
DCOMConnection.AppServer.Update('EMPLOYEE', vDelta);
end;
上面两种情况都会抛出异常"missing data provider or data packet",请问如何解决?
或者换一个解决方案也可以!
如果这样写
//直接提交
DCOMConnection.AppServer.Update('EMPLOYEE', cdsEmployee.Delta);
其中'EMPLOYEE'是查询ID,cdsEmployee是本地数据集,提交没有问题,可是如果Delta作为
参数传递后,或者将Delta付给一个临时变量再提交,会发生异常,例如
//作为参数提交,封装函数如下
//function InternalUpdate(QueryID: String;
vDelta: OleVariant): Integer;
InternalUpdate('EMPLOYEE', cdsEmployee.Delta);
//测试首先付给临时变量
var
vDelta: OleVariant;
begin
vDelta := cdsEmployee.Delta;
DCOMConnection.AppServer.Update('EMPLOYEE', vDelta);
end;
上面两种情况都会抛出异常"missing data provider or data packet",请问如何解决?
或者换一个解决方案也可以!