我设计了两个窗口,一个订单编辑窗口,一个订单汇总窗口。订单表和订单明细表通过订单号关联。并且打开窗口的时候一起加载,关闭窗口的时候一起卸载。
订单表名:R_AllocBill,关联的订单明细表名:R_AllocBill.R_AllocList
订单表编辑窗口如下:
此主题相关图片如下:2.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2018-1/2018151549375317.jpg)
订单汇总及明细窗口如下:
此主题相关图片如下:1.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2018-1/20181515322278329.jpg)
经过调试我发现,所有的库存计算和程序的执行都没有问题,但是在关闭窗口,同时卸载这两个相互关联的表的时候会有问题
订单编辑窗口的AfterClose事件代码如下:
If Forms("AllocSumList").Opened Then '如果汇总窗口是打开的,并且隐藏的,那么显示汇总窗口,否则同时卸载两个关联表
If Forms("AllocSumList").Visible = False Then
Forms("AllocSumList").Visible = True
End If
Else
DataTables.Unload("R_AllocBill|R_AllocList")
End If
订单汇总及明细窗口的AfterClose事件代码如下:
If Forms("AllocBill").Opened Then '如果订单编辑窗口是打开的,那么显示订单编辑窗口,否则同时卸载两个关联表
Forms("AllocBill").Visible = True
Else
DataTables.Unload("R_AllocBill|R_AllocList")
End If
如果是这样的话,那么关闭订单汇总窗口的时候会报错,找不到列"sys_Del",有的时候在关闭和打开订单编辑窗口的时候也是同样的报错,说不好什么时候就报错了
此主题相关图片如下:3.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2018-1/20181515593529006.jpg)
但是如果把两个窗口的AfterClose事件代码中的代码
DataTables.Unload("R_AllocBill|R_AllocList")
都注释掉或者删掉,那么就完全没有问题了。
我想问一下老师,这是怎么回事呢?