以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]弹出bug (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=135611) |
||||
-- 作者:2474842866 -- 发布时间:2019/5/30 10:22:00 -- [求助]弹出bug 老师,之前的项目中,我已经完成了两张表的关联了,但是总是在启动项目时会弹出不存在列(此列是关联表的关联列) 此主题相关图片如下:360截图20190530101743699.jpg 但是功能是正常的,测试后发现是在currentchangge事件执行下述代码才出现的:(上面红色字体是问题,下面红色字体是关联列) Dim t As Table = Tables("采购系统_tb.1.3.1") \'定义变量父表 Dim t0 As Table = Tables("采购系统_tb.1.3.2") \'定义变量关联表子表 With t If .Current Is Nothing Then \'如果父表当前格是空 t0.Filter = "False" \'不进行过滤 Else \'若不为空 t0.Filter = " 商家编码 = \'" & .Current("商家编码") & "\'" \'筛选出子表的商家编码等同父表的商家编码行 End If End With [此贴子已经被作者于2019/5/30 10:24:18编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/5/30 10:46:00 -- 加入代码
msgbox(t.cols.contains("商家编码")) msgbox(t0.cols.contains("商家编码"))
循环每一列,弹出列名看看
http://www.foxtable.com/webhelp/scr/0561.htm
|
||||
-- 作者:2474842866 -- 发布时间:2019/5/30 10:58:00 -- 弹出true [此贴子已经被作者于2019/5/30 11:00:41编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/5/30 11:01:00 -- 输出项目所有代码,把代码发出来看看
|
||||
-- 作者:2474842866 -- 发布时间:2019/5/30 11:15:00 --
|
||||
-- 作者:有点甜 -- 发布时间:2019/5/30 11:26:00 -- 1、什么时候报错的?打开窗口报错,还是点击某一行的时候报错?
2、做一个内部数据源或者access数据源的实例上来测试。 |
||||
-- 作者:2474842866 -- 发布时间:2019/5/30 11:33:00 -- 打开窗口报错,运行的时候不会报错 |
||||
-- 作者:有点甜 -- 发布时间:2019/5/30 11:39:00 -- AfterLoad事件,先加载1.3.2,再加载1.3.1
Tables("采购系统_tb.1.3.2").fill Tables("采购系统_tb.1.3.1").fill |
||||
-- 作者:2474842866 -- 发布时间:2019/5/30 12:23:00 -- 解决了,还是老师的对,就是表二应该优先生成,否则,表一生成后执行currentchangged事件时不存在表二,会报错。唯一有点奇怪的是他报的是父表不存在关联列,不应该是关联表不存在表二吗,我这一点不得其解,但是调换了表的顺序,程序不在报错,老师说的应该是正确的!测试已经成功了,感谢老师 [此贴子已经被作者于2019/5/30 12:32:21编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/5/30 12:33:00 -- 加入判断,如
Dim t As Table = Tables("采购系统_tb.1.3.1") \'定义变量父表
Dim t0 As Table = Tables("采购系统_tb.1.3.2") \'定义变量关联表子表 If t0.cols.contains("商家编码") Then With t If .Current Is Nothing Then \'如果父表当前格是空 t0.Filter = "False" \'不进行过滤 Else \'若不为空 t0.Filter = " 商家编码 = \'" & .Current("商家编码") & "\'" \'筛选出子表的商家编码等同父表的商家编码行 End If End With End If |