我们知道通过 ?SearchView&SearchOrder=4 命令,可以搜索一个视图并以视图原序返回结果。但是这个功能目前有些问题,Designer 帮助(R7)里面有如下说明:

在以下情况,指定 SearchOrder=4 会产生错误的结果:

  • 指定 count=n 并且 n 小于找到的文档数
  • 指定 start=n 并且 n 不等于1
  • 默认搜索返回结果数小于找到的文档数
  • 最大搜索返回结果数小于找到的文档数

如果需要指定 SearchOrder=4,请参考以下建议:

  • 不要使用 start、count参数
  • 总是指定 SearchMax=0
  • 将服务器的最大搜返回结果数设定到一个比较大的值

考虑以上建议,我们的结论是。。。。。。不要使用 SearchOrder=4 🙁

在OpenView、ReadViewEntries命令中,使用RestrictToCategory参数可以只显示一个分类。

但是这个方法有一个问题:比如你指定了显示“ABC”分类,而“ABC”这个分类是空的,那么Domino会显示第一个以“ABC”开始的分类,比如“ABCD”。这有点像byKey查找中的非精确匹配。在IBM网站上有提及这个问题,并且说原本就是这样设计的,并非Bug。同样存在问题的还有嵌入视图的显示单个分类选项。

可以用如下方法绕过这个问题:在分类列值的最后追加一个“~”,这样“ABCD~”就不是以“ABC~”开头的,这个问题也就不存在了。