W
WilliamGui
Unregistered / Unconfirmed
GUEST, unregistred user!
这个问题我也仔细考虑过,到止比较好的方法我是这样的,
别的我就不说了,
1. 用计算字段是不行的,计算字段不能编辑
2. 在表中加一个Seq整数字段,
两个函数:
GetNewSeq() 得到新的Seq值,写在从表DS的NewRecord事件中
RefreshDSSeq() 刷新从表的Seq值,写在主表的Before事件中
函数实现原理是,调用DS的Clone,或CloneSource方法,
当然都是本地操作,怎么慢,对用户来说,一点感觉都没有
不需要从表BeforePost时就刷新,主表保存时才刷新
refreshDSSeq中,如果Seq与刷新值一样,就不需要更改,这样DS不会产生多余的update sql语句给后台
别的我就不说了,
1. 用计算字段是不行的,计算字段不能编辑
2. 在表中加一个Seq整数字段,
两个函数:
GetNewSeq() 得到新的Seq值,写在从表DS的NewRecord事件中
RefreshDSSeq() 刷新从表的Seq值,写在主表的Before事件中
函数实现原理是,调用DS的Clone,或CloneSource方法,
当然都是本地操作,怎么慢,对用户来说,一点感觉都没有
不需要从表BeforePost时就刷新,主表保存时才刷新
refreshDSSeq中,如果Seq与刷新值一样,就不需要更改,这样DS不会产生多余的update sql语句给后台