以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  加载的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=3048)

--  作者:hejfen
--  发布时间:2009/6/5 20:47:00
--  加载的问题

表A的第一列和表B的第一列关联,我想打开项目后,只加载表A的数据,表B的数年据不加载,如果我想在选择了父表的记录后,自动加载子表的关联记录,要怎么做啊?

[此贴子已经被作者于2009-6-5 20:52:31编辑过]

--  作者:woodiy
--  发布时间:2009/6/5 20:57:00
--  

我也想知道啊!


--  作者:yangming
--  发布时间:2009/6/5 20:59:00
--  
例如,加载产品为PD01的订单:

With DataTables("订单")
    .LoadFilter =
"[产品] = \'PD01\'"
    .Load()

End
With




GetChildRows返回一个集合,这个集合包括子表中全部对应的关联行。
假定产品表和订单表之间通过产品编号建立了关联,下面的代码获得第一个产品的全部订单:

Dim drs As List(Of Datarow)
drs =
DataTables("产品").
DataRows(0).GetChildRows("订单")

[此贴子已经被作者于2009-6-5 21:04:19编辑过]

--  作者:hejfen
--  发布时间:2009/6/5 23:15:00
--  
With DataTables("订单")
    .LoadFilter =
"[产品] = \'PD01\'"
    .Load()

End
With
是用于内部表的吗?外部表也可用吗?
--  作者:银狐
--  发布时间:2009/6/5 23:31:00
--  

一样,只是事件不一样
对于内部表,请参考事件:BeforeLoadInnerTable
对于外部表,请参考事件:
BeforeLoadOuterTable


--  作者:hejfen
--  发布时间:2009/6/5 23:34:00
--  
我在表属性的CurrentChanged处加以下代码
dim dr as datarow = DataTables("表A").DataRows(0)
With DataTables("表B")
    .LoadFilter = "[第一列] = \'" & dr("第一列") & "\'"
    .Load()
End With
为什么会出错?

--  作者:八婺
--  发布时间:2009/6/5 23:44:00
--  
PositionChanged事件:

Dim dr As Row = CurrentTable.Current
With DataTables("表B")
    .LoadFilter = "[第一列] = \'" & dr("第一列") & "\'"
    .Load()
End With