急!三层结构的数据更新和错误报告问题(150分)

  • 主题发起人 主题发起人 chengsa
  • 开始时间 开始时间
C

chengsa

Unregistered / Unconfirmed
GUEST, unregistred user!
正在编写一个三层结构的程序,出现如下两个问题挺困扰的,请大虾出手帮忙啊:
1.在中间层的BeforeUpdateRecord中作两个表的更新,如何使用事物?企图用Database.StartTransaction,但是报错说已经有事务在进行,是否这个事件已经作为事物运行?
2.还是BeforeUpdateRecord,在这里按照一些规则检查数据,如果不满足条件则不予更新,那么如何向客户端返回错误信息?简单地EUpdateError.Create(....)似乎不可行。
3.客户端调用ApplyUpdates(0)后,想在AfterApplyUpdate中更新ClientDataSet,但是报错说还不能refresh没有Apply update的数据集。
小弟很急的说,诸位大虾帮忙啊。。。
 
[:(][:(][:(]都急了好几天了,咋还是没有人回答涅?
 
一个比较笨的方法:
使用使用一个特定的DSP,Client调用DataRequest把你的参数传到AppServer中去,在AppServer的指定的Dsp的BeforeDataRequst中分解,使用ADO的事务处理!
 
1.在中间层的BeforeUpdateRecord中作两个表的更新,如何使用事物?企图用Database.StartTransaction,但是报错说已经有事务在进行,是否这个事件已经作为事物运行?---应该会自动开启事务的!
2.还是BeforeUpdateRecord,在这里按照一些规则检查数据,如果不满足条件则不予更新,那么如何向客户端返回错误信息?简单地EUpdateError.Create(....)似乎不可行。-----raise Exception.Create('');
3.客户端调用ApplyUpdates(0)后,[red]想在AfterApplyUpdate中更新ClientDataSet,[/red]但是报错说还不能refresh没有Apply update的数据集。---afterapplyupdate为什么要更新clientdataset?如果你applyupdate不要更新数据的话,好象有一个标记applied的改为true它就不更新了!
 
这个问题,基本上,很复杂,俺跟你慢慢说好了。。。
[:D]
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部