以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  关联表追加数据怎么分页加载?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=150567)

--  作者:swagger
--  发布时间:2020/6/2 12:01:00
--  关联表追加数据怎么分页加载?
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


然后追加数据,这样关联表怎么对对应的产品的订单进行分页加载呢?


--  作者:有点蓝
--  发布时间:2020/6/2 12:08:00
--  
使用模拟关联:http://www.foxtable.com/webhelp/topics/2222.htm

模拟管理子表改为分页加载:http://www.foxtable.com/webhelp/topics/2269.htm

--  作者:swagger
--  发布时间:2020/6/2 12:21:00
--  
好像没解决问题。我知道怎么模拟关联,然后怎么分页加载,但是不知道怎么对关联表分页加载,譬如订单和订单明细,然后点击订单的ID001的订单,显示关联的订单明细,如果订单ID001的关联订单明细有100行呢,肯定要进行分页加载,如果用正常的分页加载,譬如这样,

With DataTables("订单明细")
    .LoadFilter = "" 
\'一定要清除加载条件
    .LoadTop = 
20
    .LoadPage = 
0
    .Load()

End
 With

就会把所有的订单明细分页加载,而不是对对应订单ID001的订单明细进行分页加载

--  作者:cd_tdh
--  发布时间:2020/6/2 13:05:00
--  
With DataTables("订单.订单明细")

--  作者:swagger
--  发布时间:2020/6/2 13:25:00
--  
用了
With DataTables("订单.订单明细")

显示 "不存在名称为订单.订单明细的datatable"


--  作者:有点蓝
--  发布时间:2020/6/2 13:37:00
--  
关联表无法分页。如果做了模拟关联,是要对子表进行分页,和关联表没有什么关系
--  作者:swagger
--  发布时间:2020/6/2 13:47:00
--  
但是子表也无法分页加载,为什么呢

With DataTables("订单.订单明细")
    .LoadFilter = "" 
\'一定要清除加载条件
    .LoadTop = 
20
    .LoadPage = 
0
    .Load()

End
 With

显示 "不存在名称为订单.订单明细的datatable"


--  作者:swagger
--  发布时间:2020/6/2 13:49:00
--  
就是说无法对关联子表分页加载?

这个问题怎么办呢,如果关联子表数据量大?

--  作者:有点蓝
--  发布时间:2020/6/2 14:06:00
--  
With DataTables("订单明细")
    .LoadFilter = "
产品编号 = \'ID001\'"
    .LoadTop = 20
    .LoadPage = 
0
    .Load()

End
 With


--  作者:swagger
--  发布时间:2020/6/2 14:18:00
--  
如果是对应多个订单呢?是不是这样

With DataTables("订单明细")
    .LoadFilter = "产品编号 = " & .Current("产品编号")
    .LoadTop = 20
    .LoadPage = 0
    .Load()
End With