大数据量retrieve的问题

simplewho 2009-02-13 11:16:13
有一个问题想请教一下大家:
问题1:想实现在dataobject中retrieve的效果一样,当数据量大时,我可以点上面的红色小手,中止这次查询
问题2:想实现象retrieve.asneeded一样,当上面中止查询后,我想继续查询,可以从上次中止的数据继续往下查询。
本来想用retrieve.asneeded的,但是在dataobject的属性中如果进行了sort排序,retrieve.asneeded这个功能就不起作用了,而在程序中很多地方的sort都是写在这里了,所以请教有什么好的思路或者解决办法,谢谢。。。
...全文
136 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
softvery 2009-02-16
  • 打赏
  • 举报
回复
问题一:可以在dw的retrieverow时间里进行判断,之前要加上yield(),但这样会大大的降低速度的。
yeild()
if ib_cancel then
return 1
end if

问题二:如果不适用As Needed,很难做成中断后在继续,排序通过在SQL里实现的确是一种不错的方式。As Needed是通过类似指针的方式实现的。

以前在asp.net里实现分页,有份仁兄写了各存储过程是实现的,可以搜索一下看看。
金大哈 2009-02-16
  • 打赏
  • 举报
回复
yeild
ckc 2009-02-16
  • 打赏
  • 举报
回复
在sql中直接排序试试啊
gll3 2009-02-16
  • 打赏
  • 举报
回复
dw的事件retrieverow,return 1后也可以终止查询
dyf0130 2009-02-13
  • 打赏
  • 举报
回复
groupcalc()
liubocy 2009-02-13
  • 打赏
  • 举报
回复
dw的事件retrieverow,return 1后也可以终止查询
simplewho 2009-02-13
  • 打赏
  • 举报
回复
retrieverow只能中止retrieve,但不能实现从先前中止的retreive的数据中继续retrieve,就是第一次显示了2000条,return 1了,怎么能继续从第2001条继续开始。。。
PB菜鸟 2009-02-13
  • 打赏
  • 举报
回复
另外多加一个数据窗口用来存放retrieve的数据。

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧