Foxtable(狐表)用户栏目专家坐堂 → 追加数据以及分页加载问题


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

主题:追加数据以及分页加载问题

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5362 威望:0 精华:0 注册:2012/8/25 20:50:00
追加数据以及分页加载问题  发帖心情 Post By:2020/7/3 12:54:00 [只看该作者]

窗口1的table1 的 currentchanged 输入以下代码:


If Tables("窗口1_table1").current("产品")= "产品1" And Tables("窗口_table1").current("规格")= "规格1"  Then
Tables("窗口1_table2").DataSource = DataTables("产品明细1")
Tables("窗口1_table2").SetColVisibleWidth("产品ID|98|产品名称|98|规格|98|数量|98")
Tables("窗口1_table1").Cols("产品ID").DropForm = "产品库"
Tables("窗口1_table2").AutoSizeRow(-1)


DataTables("产品明细1").loadFilter = ""
DataTables("产品明细1").loadtop = 300
DataTables("产品明细1").load


If e.Table.Current IsNot Nothing Then
    Dim Filter As String = "产品ID = '" & e.Table.Current("产品ID") & "'"
    If DataTables("产品明细").Find(filter) Is Nothing Then
        DataTables("产品明细").AppendLoad(filter)
    End If
        Tables("窗口1_Table2").filter = filter
End If

elseif Tables("窗口1_table1").current("产品")= "产品2" And Tables("窗口_table1").current("规格")= "规格2"  Then


Tables("窗口1_table2").DataSource = DataTables("产品明细2")
Tables("窗口1_table2").SetColVisibleWidth("产品ID|98|产品名称|98|规格|98|数量|98")
Tables("窗口1_table1").Cols("产品ID").DropForm = "产品库"
Tables("窗口1_table2").AutoSizeRow(-1)

DataTables("产品明细2").loadFilter = ""
DataTables("产品明细2").loadtop = 20
DataTables("产品明细2").loadpage = 0
DataTables("产品明细2").load


If e.Table.Current IsNot Nothing Then
    Dim Filter As String = "产品ID = '" & e.Table.Current("产品ID") & "'"
    If DataTables("产品明细2").Find(filter) Is Nothing Then
        DataTables("产品明细2").AppendLoad(filter)
    End If
        Tables("窗口1_Table2").filter = filter
End If

end if 



问题1:DataTables("产品明细1").loadtop = 300 或者 DataTables("产品明细1").loadtop = “” 或者 DataTables("产品明细1").loadtop = nothing 会导致加载速度慢,有没有其它办法加载速度快些?(不分页加载)

问题2:如果table2 采用分页加载,因为按条件加载不一样的表,那么怎么写上一页,下一页代码? 如 上一页 

With DataTables("产品明细1")
    If .LoadPage > 0 Then
        .LoadPage = .LoadPage - 1
        .Load()
    End If
End With


[此贴子已经被作者于2020/7/3 12:57:12编辑过]

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


加好友 发短信
等级:五尾狐 帖子:1093 积分:6682 威望:0 精华:0 注册:2013/7/1 9:05:00
  发帖心情 Post By:2020/7/3 13:55:00 [只看该作者]

1、如果加载的数据量较多,肯定会变慢,没有办法。, 此外建议table2不要用DataSource绑定到表,用Fill比较合适:

2、你可以用一个全局变量保存加载的表名:

这样就可以:

With DataTables(Vars("变量名”)
    If .LoadPage > 0 Then
        .LoadPage = .LoadPage - 1
        .Load()
    End If
End With

 回到顶部