Foxtable(狐表)用户栏目专家坐堂 → 翻页没有数据


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

主题:翻页没有数据

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
翻页没有数据  发帖心情 Post By:2018/8/28 20:19:00 [只看该作者]

用分页加载,有5页数据,但只显示第一页的,翻页时2、3、4、5页数据都不显示,如图,我检查了翻页代码,应该没问题。请问老师,可能是什么原因?

图片点击可在新窗口打开查看此主题相关图片如下:11111.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/28 20:30:00 [只看该作者]

第一次加载、翻页代码呢?发上来看咯

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/28 20:34:00 [只看该作者]

加载树代码:
Dim Filter As String = "1=1"

Dim dr = e.node.FullPath.split("\") '获取生成此节点的行
If e.Node.Text <> "加载所有数据" Then
    Select Case e.Node.Level
        Case 0
            Filter = "[项目名称] = '" & dr(0) & "'"
        Case 1
            Filter = "[项目名称] = '" & dr(0) & "'And [施工合同段] = '" & dr(1) & "'"
        Case 2
            Filter = "[项目名称] = '" & dr(0) & "'And [施工合同段] = '" & dr(1) & "' And [安全费用分类] = '" & dr(2) & "'"
    End Select
End If

If User.Name = "开发者" Or User.Name = "管理员" Then
    DataTables("安全费用表").LoadFilter = filter
    DataTables("安全费用表").LoadOver="支出日期"
    DataTables("安全费用表").LoadReverse = True
    DataTables("安全费用表").LoadTop= 10
    DataTables("安全费用表").Load
    Tables("安全费用表").sort="支出日期"
Else
    DataTables("安全费用表").loadfilter = "(承包人机构 in ('" & User.Roles.replace(",","','") & "') or 监理机构 in ('" & User.Roles.replace(",","','") & "')  or 业主机构 in ('" & User.Roles.replace(",","','") & "')) and " & Filter
    DataTables("安全费用表").LoadOver="支出日期"
    DataTables("安全费用表").LoadReverse = True
    DataTables("安全费用表").LoadTop= 10
    DataTables("安全费用表").Load
    Tables("安全费用表").sort="支出日期"
End If
e.Form.Controls("TextBox5").Value = 1 & "/" & DataTables("安全费用表").TotalPages
vars("安全费用表filter") = DataTables("安全费用表").LoadFilter

翻页代码:
With DataTables("安全费用表")
    .LoadPage = 0 '加载第一页
    .Load()
    e.Form.Controls("TextBox5").Value = 1 & "/" & .TotalPages
End With

With DataTables("安全费用表")
    If .LoadPage > 0 Then
        .LoadPage  = .LoadPage - 1
        .Load()
        e.Form.Controls("TextBox5").Value = (.LoadPage + 1) & "/" & .TotalPages
    End If
End With

With DataTables("安全费用表")
    If .LoadPage < .TotalPages - 1
        .LoadPage = .LoadPage  + 1
        .Load()
        e.Form.Controls("TextBox5").Value = (.LoadPage + 1) & "/" & .TotalPages
    End If
End With


With DataTables("安全费用表")
    If .LoadPage < .TotalPages - 1
        .LoadPage  = .TotalPages - 1
        .Load()
        e.Form.Controls("TextBox5").Value = .TotalPages & "/" & .TotalPages
    End If
End With

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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/28 20:42:00 [只看该作者]

支出日期是不是很多都重复的?

我们的建议是:尽量采用主键列或者其他值不会重复的列(如身份证号码),作为分页依据列,因为如果分页依据列的值有重复,将会影响分页的准确性,例如上面的代码根据日期分页,每页显示20行,如果某一天有40个订单,那么这40个订单会显示在同一个页面中,而不会按我们期望的那样分成两页显示。

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/28 20:54:00 [只看该作者]

取消支付日期作为分页依据列,还是不行


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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/28 20:59:00 [只看该作者]

解决了

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/28 21:25:00 [只看该作者]

还是解决不了

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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/28 21:40:00 [只看该作者]

实例发上来看看

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/29 10:21:00 [只看该作者]

1、你的【支出日期】有重复值吗?如果有重复值,不建议作为分页依据,尽量用_Identify主键做依据

 

DataTables("安全费用表").LoadOver="支出日期"

 

2、做个例子发上来测试一下。


 回到顶部