以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]父表更新,子表同步更新的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=79198) |
-- 作者:nuhou -- 发布时间:2015/12/26 0:48:00 -- [求助]父表更新,子表同步更新的问题 订单表和订单明细表通过“订单ID”关联,现在修改订单表的内容,怎么让明细表同步更新
原来用的是在订单表的DataColChanged里面用 DataTables("订单明细").DataCols("订单ID").RaiseDataColChanged() 实现
现在发现这个方法太耗资源,新增订单和修改订单内容的时候卡顿比较明显
请问有什么好的方法来实现,谢谢! |
-- 作者:Hyphen -- 发布时间:2015/12/26 9:32:00 -- http://www.foxtable.com/help/topics/1644.htm
http://www.foxtable.com/help/topics/1453.htm
|
-- 作者:Hyphen -- 发布时间:2015/12/26 9:34:00 -- 应该直接查找更新明细表的指定行数据,没必要刷新整个列 |
-- 作者:nuhou -- 发布时间:2015/12/26 9:49:00 -- 是用 RaiseDataColChanged(Filter) 吗 |
-- 作者:nuhou -- 发布时间:2015/12/26 9:55:00 -- 多列跨表更新 如果订单表有多列数据来自于产品表,一样可以采用类似的设计实现跨表更新。 If e.DataCol.Name = "产品编号"
Then 现在希望在产品表修改上述四列数据后,订单表能够自动更新这些列的数据,为此可以将产品表的DataColChanged事件设置为: Select
Case e.DataCol.Name
或者: Select
Case e.DataCol.Name
可以看到不管是单列还是多列,自动更新的代码都一样的简洁。
应该是这个吧 |
-- 作者:Hyphen -- 发布时间:2015/12/26 10:10:00 -- 是的 |