PB中实现数据窗口动态排序的三种方法[2]

PB中实现数据窗口动态排序的三种方法[2],第1张

string ls mod ls order ls old ls column

ls old=dw describe(′datawindow table select′)

dw settransobject(sqlca)

choose case ddlb text

case ″学号″ls column=″sid″

case ″姓名″ls column=″sname″

case ″住址″ls column=″saddr″

case ″班号″ls column=″class cid″

case ″班级名称″ ls column=″cname″

end choose

if rb checked then ls order=″ASC″

else ls order=″DESC″

end if

ls mod=″datawindow table select=′ ″+ls old+&

′ORDER BY ″ ′+ls column+′ ″ ′+ls order+″ ′ ″

dw modify(ls mod)

dw retrieve()

dw modify(″datawindow table select= &

′ ″+ls old+″ ′ ″)

方法 :用setsort()和sort()

string ls sort ls order ls column

choose case ddlb text

case ″学号″ ls column=″# ″

case ″姓名″ ls column=″# ″

case ″住址″ ls column=″# ″

case ″班号″ ls column=″# ″

case ″班级名称″ ls column=″# ″

end choose

if rb checked then ls order=″A″

else ls order=″D″

end if

ls sort=ls column+′′+ls order

dw setsort(ls sort)

dw sort()

三 三种方法的比较

第一种和第二种方法要求数据窗口在生成时是无序的 第三种方法无此要求

对于来自不同表单的相同的列名(如student cid class cid)用第二种方法排序实现起来较麻烦 因为在用modify()函数时要特别注意引号的使用 但是第二种方法比第一种方法的执行速度要快

第三种方法使用起来最方便 既可以引用列名也可引用列号(如# 表示第四列)来指定序列

      编辑推荐

       ASP NET开发培训视频教程

       Microsoft NET框架程序设计视频教程

lishixinzhi/Article/program/PB/201311/24608

排序数据:dw_1.setsort(ls_sort) 其中,dw_1为datawindow控件名.ls_sort为排序条件字符串。

比如:某数据窗口对象中某一列名为nl, 需要按nl升序的顺序排序。

Dw_1.setsort(“nl asc”) 设置排序条件“nl asc”(升序用asc,降序用desc)

Dw_1.sort( )


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11663260.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存