以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 数据加载与保存的冲突如何解决 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=88432) |
-- 作者:凡夫俗子 -- 发布时间:2016/8/2 21:29:00 -- 数据加载与保存的冲突如何解决 一主表与明细表构成的关联表结构 现在希望 在主表的 CurrentChanged 切换事件中 加载明细表对应 的数据 DataTables("测试明细表").LoadFilter = "Sys_FaId = " & Tables("测试主表").Current("Sys_FaId") DataTables("测试明细表").Load 但这样带来一个问题 在主表第一行录入主数据 在明细表录入明细数据,当光标切换到主表后,必须触发主表的CurrentChanged事件,导致系统自动加载该主表的对应明细表数据 但一执行加载明细表数据,导致 明细表数据 被先保存,然后再加载,这就违反了一个原则,非经用户主动操作 就保存了数据。 如何规避其中的逻辑
|
-- 作者:xvkewen -- 发布时间:2016/8/3 8:08:00 -- 这里可能会有两个问题 1,假如后台数据量大的话,用filter显示的明细数据可能会不完整,除非一开始就把后台的明细数据全部加载进来,到这会影响程序的运行速度. 2,既然是关联表,切换主表行的时候,子表也会自动根据关联字段显示相应的内容。 我觉得在currentchanged事件中添加判断语句,判断明细表的数据状态加以处理后在切换主表的行。 |
-- 作者:大红袍 -- 发布时间:2016/8/3 9:32:00 -- 加一个询问呗,比如 “明细表的数据有更新,是否保存重新加载数据” |