Foxtable(狐表)用户栏目专家坐堂 → 如何判定某表的父表


  共有3933人关注过本帖树形打印复制链接

主题:如何判定某表的父表

帅哥哟,离线,有人找我吗?
cxabc123
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
如何判定某表的父表  发帖心情 Post By:2013/7/3 9:40:00 [只看该作者]

有表A 、表B、表C、表D,其中表A是父表,表B是子表,现在从表A、表C、表D中判断表B的父表是表A,判断代码如何写

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/3 9:42:00 [只看该作者]

可以根据关联名称来获得  http://www.foxtable.com/help/topics/1941.htm

如果不知道关联名称 也可以循环所有关联 判断子表名称来实现

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/7/3 11:36:00 [只看该作者]

以下是引用Bin在2013-7-3 9:42:00的发言:
可以根据关联名称来获得  http://www.foxtable.com/help/topics/1941.htm

如果不知道关联名称 也可以循环所有关联 判断子表名称来实现

我的意思是:在窗口的ComboBox1组合框中选定的是表B,那么在ComboBox2组合框中自动根据表B生成表B的父表为列表项目(表B的父表可能不止一个),这样代码应该如何写,请指点


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/3 11:38:00 [只看该作者]

2楼不是给出思路给你了吗?

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/7/3 14:50:00 [只看该作者]

以下是引用Bin在2013-7-3 11:38:00的发言:
2楼不是给出思路给你了吗?

还是没有看出思路,在窗口的ComboBox1组合框中列表项目可能有10个待选的表,当选定某个表,比如是表B,那么在ComboBox2组合框中自动根据ComboBox1组合框选定的表列出父表,在Output.Show("父表:" & Re.ParentTable.Name)这段代码中,他判定的是关联的父表,如何判定某表(表B)的父表并没有介绍清楚

[此贴子已经被作者于2013-7-3 14:53:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/7/3 15:05:00 [只看该作者]

知道了,谢谢,应该是这样的思路
For Each re As Relation In Relations    
    If Tables("表B").IsChild = False Then
        Output.Show("父表:" & Re.ParentTable.Name)
    End If
Next

 

但还是有问题,所有关联表的父表都列出来了

[此贴子已经被作者于2013-7-3 15:09:17编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/3 15:14:00 [只看该作者]

For Each re As Relation In Relations
  if Re.ChildTable.Name="表B" then
    Output
.Show("父表:" & Re.ParentTable.Name
)
 end if
Next

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/7/3 15:18:00 [只看该作者]

谢谢,得到解决

Dim s As String
For Each re As Relation In Relations
    If Re.ChildTable.Name="表B" Then       
        s= s &  "|" & Re.ParentTable.Name       
    End If
Next
Output.Show("父表:" & s)

[此贴子已经被作者于2013-7-3 15:21:15编辑过]

 回到顶部