以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  如何测试关联表子表是在主表中使用?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=141603)

--  作者:YANGYUNLIN
--  发布时间:2019/10/6 15:59:00
--  如何测试关联表子表是在主表中使用?
老师请问一下:“收款.收款明细表”  有时在主表中使用,有时绑定在窗口的Table控件中使用,如何判断在主表中使用的?
下面的代码,是绑定在窗口的Table控件中使用的,测试OK, 在主表中使用时运行就出错:
If e.Form.DropTable.Form.Name  IsNot Nothing
    MESSAGEBOX.SHOW(e.Form.DropTable.Form.Name)
Else
    MESSAGEBOX.SHOW("窗口就是主表  " & MainTable.Name)
End If
[此贴子已经被作者于2019/10/6 16:01:08编辑过]

--  作者:有点蓝
--  发布时间:2019/10/6 16:24:00
--  
代码在什么事件?
--  作者:YANGYUNLIN
--  发布时间:2019/10/6 16:34:00
--  
有点蓝老师,代码在下拉窗口中的Button12的Click下测试的。
下拉窗口安在”收款.收款明细表“的“用途”列
[此贴子已经被作者于2019/10/6 16:36:48编辑过]

--  作者:有点蓝
--  发布时间:2019/10/6 16:55:00
--  
区分这个应该没有什么意义,关联表只能存在一个地方,没有主表副本之分

If e.Form.DropTable.grid.name > ""
    MESSAGEBOX.SHOW("放在窗口控件中")
Else
    MESSAGEBOX.SHOW("主表关联表窗口中")
End If

--  作者:YANGYUNLIN
--  发布时间:2019/10/6 17:51:00
--  
上传一个测试模型说明一下问题。
--  作者:YANGYUNLIN
--  发布时间:2019/10/6 17:52:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2_201910061748.zip


--  作者:有点蓝
--  发布时间:2019/10/6 20:08:00
--  
这样

窗口1,table控件名称改为“TableC”,窗口AfterClose事件:Tables("表A.表B").grid.name = "table1"

然后下拉窗口按钮:MESSAGEBOX.SHOW(e.Form.DropTable.grid.name)