Foxtable(狐表)用户栏目专家坐堂 → 分页只加载分页后的多余行


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

主题:分页只加载分页后的多余行

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
分页只加载分页后的多余行  发帖心情 Post By:2018/8/17 16:51:00 [只看该作者]

老师,我现在分页加载如下:

With DataTables("采购申请表")
    .LoadFilter = ""
    .LoadPage = 0 '加载第一页
    .LoadTop =  20 '每页20行
    .LoadOver =  "申请单号"
    .LoadReverse = True
    .Load()
    e.Form.Controls("TextBox1").Value = 1 & "/" & .TotalPages
End  With

想修改为这样:当我每页20行,总行数50行时/3页,只显示最后面10行,不是显示最后的20行,怎么弄?


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


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

With DataTables("采购申请表")
    .LoadFilter = ""
    .LoadPage = .TotalPages - 1
    .LoadTop =  20 '每页20行
    .LoadOver =  "申请单号"
    .LoadReverse = True
    .Load()
    e.Form.Controls("TextBox1").Value = 1 & "/" & .TotalPages
End  With

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/8/17 17:21:00 [只看该作者]

谢谢有点蓝老师,解决了,个人觉得这样更符合加载的逻辑。

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/8/21 9:00:00 [只看该作者]

老师还有个疑问,我初始加载的是最后一页,筛选后,在重置取消筛选,加载出来的是第一页呢,不是最后一页了呢?

Tables("中标统计").ApplyFilter = False


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


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

不可能,筛选用法不会到后台重新加载数据。肯定是触发了重新加载的代码

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/8/21 9:19:00 [只看该作者]

筛选后也分页了,是触发了重新加载,现在代码是这样的,怎么修改?

Dim dt As Table = CurrentTable
dt.DataTable.LoadFilter =  iif(filter > "", "(" & filter & ") And ", "") & "(" & Functions.Execute("单表加载") & ")"
dt.DataTable.LoadPage = 0
dt.DataTable.LoadTop =  20
dt.DataTable.Load()
e.Form.Controls("TextBox1").Value = 1 & "/" & dt.DataTable.TotalPages

[此贴子已经被作者于2018/8/21 9:20:36编辑过]

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


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

用法完全一样啊,看2楼

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/8/21 9:33:00 [只看该作者]

以下是引用有点蓝在2018/8/21 9:27:00的发言:
用法完全一样啊,看2楼

With CurrentTable.DataTable
    .LoadFilter =  iif(filter > "", "(" & filter & ") And ", "") & "(" & Functions.Execute("单表加载") & ")"
    .LoadPage = .TotalPages - 1
    .LoadTop =  20
    .Load()
    e.Form.Controls("TextBox1").Value = (.LoadPage + 1) & "/" & .TotalPages
End  With

红色代码位置就只能这样改成这样,先显示最后一页呢?

 

按照帮助,最后一页显示为1,上一页,下一页代码怎么修改?

e.Form.Controls("TextBox1").Value = 1 & "/" & .TotalPages

 

上一页

With DataTables("中标统计")
    If .LoadPage > 0  Then
        .LoadPage = .LoadPage - 1
        .Load()
        e.Form.Controls("TextBox1").Value = (.LoadPage + 1) & "/" & .TotalPages
    End If
End With

下一页

With DataTables("中标统计")
    If .LoadPage < .TotalPages - 1 Then
        .LoadPage = .LoadPage + 1
        .Load()
        e.Form.Controls("TextBox1").Value = (.LoadPage + 1) & "/" & .TotalPages
    End If
End With

 


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


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

不用改的。这个代码有什么问题?

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/8/21 9:52:00 [只看该作者]

目前加载出来结果是24/24,上一页,下一页没问题,

想加载出来是1/24的效果,现在点上一页出来结果就是23/24,2224......,点下一页没反应,一直是1/24

With CurrentTable.DataTable
    .LoadFilter =  iif(filter > "", "(" & filter & ") And ", "") & "(" & Functions.Execute("单表加载") & ")"
    .LoadPage = .TotalPages - 1
    .LoadTop =  20
    .Load()
    e.Form.Controls("TextBox1").Value = 1 "/" & .TotalPages
End  With

[此贴子已经被作者于2018/8/21 9:52:53编辑过]

 回到顶部
总数 17 1 2 下一页