您现在的位置: 爱51代码网 >> 范文 >> 文章正文
lotus代理搜索文档结果的排序问题

lotus代理搜索文档结果的排序问题

Dim vc As NotesDocumentCollection Dim view As NotesView Set view = db.GetView("视图名") Dim formula As String   '对nsf数据库中的文档的搜索主要有以下几种方式: formula = {Form = "mainform" & sys_SoftDelete != "1"} db.Search(formula,Nothing,0) formula = { FIELD Form Contains mainform and not Field sys_SoftDelete  Contains "1"}  vc.Ftsearch(formula, 0)  vc = view.GetAllDocumentsByKey(SearchKey,true)  vc = view.GetAllEntriesByKey(SearchKey ,True)

其中GetAllDocumentsByKey和GetAllEntriesByKey依赖于视图,GetAllDocumentsByKey搜索结果不保留视图的排序,GetAllEntriesByKey搜索结果保留视图的排序。
但实际应用中模糊搜索比按指定个数的关键字搜索更常用到,比如:列出一堆输入框,输入值非空时才算一个搜索条件,为空时忽略。但是db.Search和vc.Ftsearch的搜索结果都不能按指定n个域来排序,这让我灰常纠结
网上搜了下,有个方法说是把搜索结果放进一个已设计好排序的文件夹,然后再输出。这个方法倒是能有序输出,但文件夹要先建好,搜索一次并输出后不能删了文件夹,否则下一次运行LS代理就没有这个排好序的文件夹;但如果不删文件夹,搜索很多次以后,文件夹里的文档就越来越多了,就输出了不符合当前搜索条件的以前搜出来的文档,肿么办?
我现在灰常想写SQL语句select * from tablename order by 1 asc,2 desc,3 怎么破

有几种办法:
1. 同楼上用LS排序。
2. 利用NotesViewEntryCollection。仅Domino R8以上有效。

Plain Text code?Dim vec As NotesViewEntryCollection set vec=view.AllEntries set vc=db.search(....) Call vec.Intersect(vc)

vec是保留视图排序的搜索结果。
3. 输出的结果做成表格用javascript排序,jquery有很多现成排序插件,可以把每一列都做成点击升序或降序的。

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新文章 热点文章 相关文章
    GIS用百度行政区域的经纬度直接画
    不小心卸载了.net 4 extend,vs2
    C#byte【】里的数转换成string时
    C#的session取不到值
    java如何判断一个字符串里的数字
    随机找出24个不一样的字,在把一
    java怎么实现html转为pdf
    lotus数据列表文档个数如何实时统
    lotus代理中LS如何将字符串保存到
    在lotus BS系统里怎样方便实现统
    不小心卸载了.net 4 extend,vs2
    C#的session取不到值
    java如何判断一个字符串里的数字
    java怎么实现html转为pdf
    undefined reference timer_crea
    Failed to open eth0
    android手机无法与eclipse或电脑
    C/C++洗牌算法源代码
    ZOJ 3700 Ever Dream 文章中单词
    TortoiseGit和msysGit安装及使用
    lotus隐藏的域本来该在下一个
    xpage做视图搜索如何搜索日期
    Domino数据库如何拆分
    lotus数据列表文档个数如何实
    lotus代理中LS如何将字符串保
    在lotus BS系统里怎样方便实
     



    设为首页 | 加入收藏 | 网站地图 | 友情链接 |