以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 2次打开关联表问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=65521) |
-- 作者:chenbh_yz -- 发布时间:2015/3/17 17:30:00 -- 2次打开关联表问题 由于关联表无法在2个窗口中同时打开,设想在第2个窗口利用过滤,模拟出关联信息! 问题: 表A: 表B: 关联字都为编码, 问:如何在窗口 Afterload 事件中, 用代码实现在 表B 中,只显示 表A 编码相同的记录? |
-- 作者:Bin -- 发布时间:2015/3/17 17:32:00 -- 帮助有模拟关联的例子 http://www.foxtable.com/help/topics/2222.htm |
-- 作者:chenbh_yz -- 发布时间:2015/3/17 17:45:00 -- If Forms("卡片可调剂料").Opened() \'一定要判断用于模拟关联表的窗口是否已经打开 Dim t As Table = Tables("可调B") With Tables("可调剂料") If .Current Is Nothing Then t.Filter = "False" Else t.Filter = "编码 = " & .Current("编码") End If End With End If 显示结果: 未查到 相关记录!
|
-- 作者:有点甜 -- 发布时间:2015/3/17 17:49:00 -- 加入msgbox看是否执行了对应代码
msgbox(1) If Forms("卡片可调剂料").Opened() \'一定要判断用于模拟关联表的窗口是否已经打开
msgbox(2)
Dim t As Table = Tables("可调B")
With Tables("可调剂料")
If .Current Is Nothing Then
t.Filter = "False"
Else
t.Filter = "编码 = " & .Current("编码")
End If
End With
End If
|
-- 作者:chenbh_yz -- 发布时间:2015/3/17 17:57:00 -- 已执行对应代码。 显示运行错误: |
-- 作者:chenbh_yz -- 发布时间:2015/3/17 18:36:00 -- 为何用这个代码可以实现? tr1 = Tables("可调剂料").Current("编码") tr1 ="[编码] =" + "\'" + TR1 + "\'" Tables("可调B").Filter = TR1 |
-- 作者:有点甜 -- 发布时间:2015/3/17 19:07:00 -- 对于字符串列,必须用单引号把它括起来
t.Filter = "编码 = \'" & .Current("编码") & "\'" |
-- 作者:swagger -- 发布时间:2015/3/19 20:48:00 -- 以下是引用有点甜在2015/3/17 19:07:00的发言:
对于字符串列,必须用单引号把它括起来
t.Filter = "编码 = \'" & .Current("编码") & "\'" 原来这样子,浪费我几个小时研究这个 |