以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何在打开一个窗口的时候自动关闭另一个窗口  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=188930)

--  作者:creastzh
--  发布时间:2023/10/31 16:11:00
--  如何在打开一个窗口的时候自动关闭另一个窗口
老师,
我发现一个问题, 在我打开一个窗口操作完毕后,我需要切换到另一个窗口中,结果发现上一个窗口并没有被关闭, 当期窗口中因为存在CurrentChanged事件,会导致上一窗口中的某变化的字段会在当前的窗口中提示对应列不存在这个字段这样的报错, 后来我发现只要手工将上一窗口Close掉,问题就解决了,但从帮助文件中了解到,理论上只要打开新的窗口,原来的窗口应该就自动关闭了, 我检查窗口设计中确认无误, 图片点击可在新窗口打开查看(窗口自动打开,已经设置了False)

如下所示:
上一操作的窗口是ProductBom,其中的主表为ProductBom,点击行后会提取其ProductID,然后进行筛选操作;
在我进入AssemblyTrackPlan窗口后,系统却使用ProductBom窗口中的这个字段ProductID运算,提示错误.


.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:ProductBom,CurrentChanged
详细错误信息:
Column \'ProductID\' does not belong to table AssemblyTrackPlan.

未打开其它窗口时,直接打开该窗口是没有问题的. 

谢谢!


--  作者:有点蓝
--  发布时间:2023/10/31 16:30:00
--  
正常情况下,打开第二个窗口,不会导致第一个窗口关闭的。

只有一种情况会,就是第一和第二个窗口都是主窗口类型,并且所有者表都是同一个表。

--  作者:creastzh
--  发布时间:2023/10/31 18:24:00
--  
我这两个表确实都是主窗口类型,但所有者表不是同一个表
--  作者:creastzh
--  发布时间:2023/10/31 18:25:00
--  
或者如何避免这个问题发生, 就是当一个窗口切换到另一窗口时, 不会出现上一窗体应用过的列在新的窗体中的检索不存在的错误,谢谢!
--  作者:有点蓝
--  发布时间:2023/10/31 20:28:00
--  
出错事件的完整代码发上来看看

出错提示的是AssemblyTrackPlan表没有ProductID列,和另外一个窗口表没有关系呀

--  作者:creastzh
--  发布时间:2023/10/31 22:18:00
--  
由于出错是随机的,有时候又没有出错, 但有时候又冷不丁地冒出来了, 我将附件中的数据表尽量保留了,附件使用的是Win10 自带的7z压缩软件
--  作者:creastzh
--  发布时间:2023/10/31 22:34:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:指导.part01.rar


--  作者:creastzh
--  发布时间:2023/10/31 22:34:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:指导.part02.rar


--  作者:creastzh
--  发布时间:2023/10/31 22:34:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:指导.part03.rar


--  作者:creastzh
--  发布时间:2023/10/31 22:37:00
--  
我的操作是,从1进入工程与开发, 2点击"产品Bom",然后再点击(3)"NPI Summary", 此时就会跳出错误:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:ProductBom,CurrentChanged
详细错误信息:
Column \'ProductID\' does not belong to table NewProjectsList.

本来想用截图,但由于提示文本字节太大,无法上传,这里只能这样了.

[此贴子已经被作者于2023/10/31 22:40:02编辑过]