以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [已解决][求助]设置表关联后,动态同步卸载多个表会报错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=177002) |
||||
-- 作者:rightinfo2014 -- 发布时间:2022/5/6 10:45:00 -- [已解决][求助]设置表关联后,动态同步卸载多个表会报错 请教, 问题一,数据表{客户}通过字段[代码]与数据表{客户其它联系}字段[客户代码]建立了表关联,且生成关联均已设置为“无”。执行以下操作: 1,点击主菜单【销售】-》【报价】,打开“主窗口-销售报价”,对应主表{销售报价单}。 2,点击窗口菜单之【修改】-》选中窗口控件“客户代码”并点击其命令按钮【...】,打开了查询并选定客户的“主窗口-客户”,相应主表切换到数据表{客户}。 3,从“主窗口-客户”选定某一客户数据后,点击窗口菜单中的【选定】按钮,在返回查询来源“主窗口-销售报价”(切换回主表{销售报价单})过程中,系统执行该按钮事件中的这行代码“Datatables.Unload(“客户|客户其它联系”,就跳出错误提示“未将对象引用设置到对象的实例”。而当我把预先设置的{客户}与{客户其它联系}之间的关联删除后,就不会报错了,正常了。 请帮忙看一下,问题出在哪里了? 问题二,为什么我设置的messagebox.show("drp客户代码控件text变化:xxxx"),会被重复触发5次呢?
谢谢! [此贴子已经被作者于2022/5/7 0:09:20编辑过]
|
||||
-- 作者:rightinfo2014 -- 发布时间:2022/5/6 10:47:00 -- 怎么添加不上例子附件呢? |
||||
-- 作者:rightinfo2014 -- 发布时间:2022/5/6 10:57:00 -- 好像不能大于2M,我重做一个例子吧 [此贴子已经被作者于2022/5/6 13:06:38编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2022/5/6 11:25:00 -- http://www.foxtable.com/webhelp/topics/2756.htm 重要提示: 如果两个或多个表之间建立了关联,那么这些表必须在同一个Unload方法中同时卸载,不可以分别卸载。 |
||||
-- 作者:rightinfo2014 -- 发布时间:2022/5/6 13:25:00 -- 例子上传如下,
请指教,感谢!!! @蓝大师, 我在”主窗口-客户“的ItemClick事件中有写如下代码: If DataTables.Contains("客户") And DataTables.Contains("客户其它联系") Then messagebox.show(12) DataTables.Unload("客户|客户其它联系") \'卸载表 messagebox.show(13) End If If Forms("主窗口-客户").Opened Then Forms("主窗口-客户").Close() End If messagebox.show(14) End If End If 可还是不行啊? 另,问题二,在例子中不再出现了,就算解决了。我自行对比例子与实际项目,就可对分找到差别就可解决了。 |
||||
-- 作者:有点蓝 -- 发布时间:2022/5/6 13:41:00 -- 所有和"客户|客户其它联系"这2个表有直接或者间接关联的其它表也必须一起卸载,比如表A和客户有关联,表A也要一起卸载,同时如果表B和表A有关联,表B也要一起卸载,.... 个人的建议是,如果关联比较复杂,加载的表就不用卸载了。
|
||||
-- 作者:rightinfo2014 -- 发布时间:2022/5/6 16:40:00 -- 好的,明白了。 十分谢谢!
|