以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请教一个动态加载的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=64237)

--  作者:花开的声音
--  发布时间:2015/2/8 12:21:00
--  请教一个动态加载的问题
帮助文件中有一个动态加载的例子:

示例四

分页加载的时候,默认是根据主键分页的,可以用LoadOver属性改变分页列。

例如:

With DataTables("订单")
    .LoadTop =
20

    .LoadPage =
3
    .LoadOver =
"日期"
    .Load()

End
With

表示根据日期列分页,每页20行,加载第四页。

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


现在因项目中的确需要以“日期”序加载订单表中的数据,但在窗口表中也希望按每页显示20条记录,包括对这个有40条订单记录的某一天,也按每页显示20条订单记录,也就是分成2页显示,怎么写代码。


--  作者:有点甜
--  发布时间:2015/2/8 14:30:00
--  

1、LoadOver必须用主键;

 

2、要自己弄,就参考 http://www.foxtable.com/help/topics/2721.htm

 


--  作者:花开的声音
--  发布时间:2015/2/8 15:16:00
--  
这句代码运行出错,电脑上没有装有sql server,用的是access数据库,是不是不能运行,没有那个ROW_NUMBER函数
--  作者:花开的声音
--  发布时间:2015/2/8 15:18:00
--  
怪得很,代码发不上来,截图:
图片点击可在新窗口打开查看此主题相关图片如下:000.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2015/2/8 15:18:00
--  

 参考语法

 

http://www.cnblogs.com/morningwang/archive/2009/01/02/1367277.html

 


--  作者:花开的声音
--  发布时间:2015/2/8 16:37:00
--  
那代码的运行环境呢?
--  作者:有点甜
--  发布时间:2015/2/8 16:38:00
--  
 关键是你去参考人家的sql语句的写法啊。
--  作者:花开的声音
--  发布时间:2015/2/8 21:23:00
--  
看了半天,还是看不懂怎么弄这个分页加载,甜老师指点下。
--  作者:有点甜
--  发布时间:2015/2/8 21:27:00
--  
 5楼的sql语句啊,已经讲得很清楚了啊
--  作者:花开的声音
--  发布时间:2015/2/8 22:21:00
--  

示例四

分页加载的时候,默认是根据主键分页的,可以用LoadOver属性改变分页列。

例如:

With DataTables("订单")
    .LoadTop = 
20

    .LoadPage = 
3
    .LoadOver = 
"日期"
    .Load()

End
 With

表示根据日期列分页,每页20行,加载第四页。

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


现在因项目中的确需要以“日期”序加载订单表中的数据,但在窗口表中也希望按每页显示20条记录,包括对这个有40条订单记录的某一天,也按每页显示20条订单记录,也就是分成2页显示,怎么写代码。


即既要按主建来分页,确保每页20行(不能多于20行),又要确保这每页的20行又要按另一字段“日期”来排序。


5楼的链接所给的分页方法,可能达不到想要的目的,4楼贴图所示的代码好像可以,但运行出错,不知道怎么改。

[此贴子已经被作者于2015/2/8 22:23:45编辑过]