我在xpage上定义了一个视图。我也有几个过滤器(基于列),用户可以选择和组合以过滤视图中的结果。我生成一个查询字符串基于这个,我在dominoView.search(做一个完整的刷新)构造。我想要做的是获得搜索结果,以便我可以更新页面上其他位置显示的某些计数。不过,我很难弄清楚我可以在哪里执行这个逻辑。我试图使用view.getAllEntries(),然后遍历集合。有时它看起来像是有效的,但有时候我似乎正在得到未经过滤的观点。有人建议我在其中一个事件(beforePageLoad?)内部显式调用view.FTSearch,并在调用getAllEntries之后立即调用view.cope,但将结果保存在viewScope中,但当我试图做到这一点时,出现“Error while browses Notes view”运行时错误。任何指针? TIA!在已过滤的xpages视图中检索列值
编辑:在学习了xpages生命周期后(这仍然有点令人困惑),我想我可以微调我的问题。这是我的第一个stackoverflow问题,所以我希望这是可以做和生产....
正如我所描述的,我有一个dominoView定义在我的xpage。重复遍历视图的行,显示文档中的某些字段。如果我在搜索属性中定义了一个查询,则重复正确显示缩小的文档集合而不是完整的集合。 (查询是通过SSJS在组合框的eventHandler中的viewScope中定义的某些变量在搜索属性中计算的。)但是,如果我尝试使用myView访问重复呈现部分内部(使用SSJS)视图中的当前条目。 getAllEntries(其中myView被定义为重复的“值”),即使查询已完成,我仍然可以获取所有文档。似乎在这一点上,视图变量已经应用了搜索(因为重复的工作),为什么不同的结果呢?是否有另一种方式来访问视图的行?使这更加复杂化,这只是一个简单的实验,可以澄清问题。正如我之前指出的那样,我实际上并不想访问重复内的视图数据,我想在xpage文件中的重复之前定义的某些组合框的渲染或值部分中访问它。
我希望这是现在更有意义....
编辑#2:我忘了补充一点,如果我打电话myView.getAllEntries之前手动调用FTSearch(或FTSearchSorted),那么我想我可以让这个工作。除了视图的内置搜索之外,似乎没有必要这么做。
我最初的尝试涉及调用javascript中的view.getAllEntries(),并附加到组合框,向用户呈现可用过滤器。实际上,我正在对文档进行迭代,并检索与该组合框过滤器相关的字段值,对它们进行排序,然后计算每个存储在parens中的值。例如,这很像您在亚马逊看到的多面搜索。如果用户选择了第二个过滤器,我似乎得到了整个未过滤的视图,所以感觉我需要了解何时执行视图的搜索并在那里插入我的代码。 –