以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]如何设置窗口表之间的关联  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=55158)

--  作者:jygyyl
--  发布时间:2014/8/11 23:23:00
--  [求助]如何设置窗口表之间的关联
请教老师,窗口表之间的关联如何设置?谢谢!

    之所以提出这个问题,主要基于以下考虑:
    1、我设计的项目基本采用窗口表的形式,需要哪些表,在打开窗口才调用,不想在启动项目时就加载所有的表;
    2、虽然父表与子表数据可以通过在CurrentChanged中写入代码同步加载,但不知如何实现子表增加行自动引用父表相关列的数据的功能,所有想通过设置窗口表(SQLTable型)之间的关联来实现。
   
能否将以下代码修改实现?
Dim t As Table = Tables("窗口1_Table1")
With Tables("产品")
    If
 .Current Is Nothing Then
        t.Filter = 
"False"
    
Else
        t.Filter = 
"产品编号 = " & .Current("产品编号")
    End
 IF
End
 With

改成这样行不?
Dim t As Table = Tables("窗口1_订单")
With
 Tables("窗口1_产品")
    If
 .Current Is Nothing Then
        t.Filter = 
"False"
    
Else
        t.Filter = 
"产品编号 = " & .Current("产品编号")
    End
 IF
End
 With
[此贴子已经被作者于2014-8-12 0:31:30编辑过]

--  作者:狐狸爸爸
--  发布时间:2014/8/12 8:28:00
--  

方案一,在打开窗口之后,动态创建关联:

http://www.foxtable.com/help/topics/1942.htm

 

方案二,常规设计表和关联,默认不加载表,需要的时候加载表:

http://www.foxtable.com/help/topics/2752.htm

http://www.foxtable.com/help/topics/2755.htm

 

 

 


--  作者:jygyyl
--  发布时间:2014/8/12 9:57:00
--  回复:(狐狸爸爸)方案一,在打开窗口之后,动态创建...
谢谢狐爸的指点!第一方案比较适合我的项目要求, 父子表之间通过两列建立关联,如:GB103和GB000 。但是代码如何编写实在不会(我很菜,只会照葫芦画瓢),还望给予帮助!谢谢!
--  作者:Bin
--  发布时间:2014/8/12 9:58:00
--  
代码很简单照着帮助做就可以了,改下列名
--  作者:jygyyl
--  发布时间:2014/8/13 19:11:00
--  OuterTableBuilder问题
帮助中提示:2、对于外部表,如果事先没有通过菜单将其添加到项目中,不能使用Load方法加载,但是可以使用OuterTableBuilder加载。
但却找不到OuterTableBuilder的帮助内容

--  作者:jygyyl
--  发布时间:2014/8/13 19:13:00
--  回复:(Bin)代码很简单照着帮助做就可以了,改下列名...
实在是不会啊,求老师帮忙!谢谢!
--  作者:有点甜
--  发布时间:2014/8/13 19:20:00
--  
 哪里不会,把例子发上,说明哪里卡着了。
--  作者:有点甜
--  发布时间:2014/8/13 19:21:00
--  
以下是引用jygyyl在2014-8-13 19:11:00的发言:
帮助中提示:2、对于外部表,如果事先没有通过菜单将其添加到项目中,不能使用Load方法加载,但是可以使用OuterTableBuilder加载。
但却找不到OuterTableBuilder的帮助内容

 

 

http://www.foxtable.com/help/topics/1279.htm

 


--  作者:jygyyl
--  发布时间:2014/8/13 19:40:00
--  回复甜大师
   1、我设计的项目基本采用窗口表的形式,需要哪些表,在打开窗口才调用,不想在启动项目时就加载所有的表;
    2、虽然父表与子表数据可以通过在CurrentChanged中写入代码同步加载,但不知如何实现子表增加行自动引用父表相关列的数据的功能,所有想通过设置窗口表(SQLTable型)之间的关联来实现。
  3、父子表之间通过多列建立关联,如:GB103、GB000 、GS101。

    基于上述原因,请求老师指点实现的办法!除了设置关联外,能否设置增加行的代码来实现?

   最关键的是我基本不会自己写代码
[此贴子已经被作者于2014-8-13 19:41:21编辑过]

--  作者:有点甜
--  发布时间:2014/8/13 19:42:00
--  
以下是引用jygyyl在2014-8-13 19:40:00的发言:
CurrentChanged中写入代码同步加载,但不知如何实现子表增加行自动引用父表相关列的数据的功能,所有想通过设置窗口表(SQLTable型)之间的关联来实现。

 

这样写,子表DataRowAdded

 

Dim r As Row = Tables("父表").Current

e.Datarow("第一列") = r("第一列")