以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 父表appendload后子表数据消失的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=82700) |
|
-- 作者:sjzsdu -- 发布时间:2016/3/23 10:26:00 -- 父表appendload后子表数据消失的问题 父表客户表设置了afterload事件的代码:e.DataTable.LoadChildren(“客户联系人”) 当客户表中增加一行保存后,QQClient的ReceivedMessage事件触发,使得客户表将新增行appendload,此时子表客户联系人的记录却消失了 有没有好的的办法,也使客户联系人相应的记录appendload进来,而不是load进来
|
|
-- 作者:大红袍 -- 发布时间:2016/3/23 10:32:00 -- 父表appendload这样写
Dim str As string = DataTables("表A").LoadFilter DataTables("表A").appendload("xxx") DataTables("表A").LoadFilter = str DataTables("表A").LoadChildren("客户联系人") |
|
-- 作者:sjzsdu -- 发布时间:2016/3/23 10:58:00 -- openQQ及时同步数据的appenload涉及很多子父表的结构,每一个都像这样的话似乎做不了啊,要判断表名,还有子表名,DataTables("表A").LoadChildren("客户联系人") |
|
-- 作者:大红袍 -- 发布时间:2016/3/23 11:06:00 -- 那,在beforeLoad事件写
vars("temp") = e.DataTable.LoadFilter
afterLoad事件写
e.DataTable.LoadFilter = vars("temp") e.DataTable.LoadChildren("客户联系人") |
|
-- 作者:sjzsdu -- 发布时间:2016/3/23 11:26:00 --
|
|
-- 作者:大红袍 -- 发布时间:2016/3/23 11:28:00 -- 那你AppendLoad的时候不要触发事件啊
SystemReady = False
DataTables("表A").appendload("xxx")
SystemReady= True |
|
-- 作者:sjzsdu -- 发布时间:2016/3/23 12:19:00 -- 这样还是不行呢,没效果 SystemReady = False
DataTables("表A").appendload("xxx")
SystemReady= True |
|
-- 作者:大红袍 -- 发布时间:2016/3/23 12:20:00 -- 上传实例。 |
|
-- 作者:sjzsdu -- 发布时间:2016/3/23 13:33:00 -- SystemReady = False e.DataRow("第一列") = "阿萨德分" SystemReady = True e.DataRow("第二列") = "阿萨德分" datarowadding事件中测试了一下,第一列和第二列都写进去了,似乎SystemReady这个变量没起作用
|
|
-- 作者:sjzsdu -- 发布时间:2016/3/23 14:18:00 -- 是哪里出错了 |