由网友(私语。)分享简介:我有100个带有多值字段的文档。该字段包含5个可能的值(Albert、Ben、Chris、Don、Ed)。该字段必须包含%1个值,但最多可以包含%5。我需要计算包含每个值的文档数量,因此Albert 56Ben 22Chris 79 等这似乎很容易。我构造了一个包含文档的视图,第一列是字段,并且我选择了Sh...![视图添加字段 8.3 定义和使用视图](https://p.xsw88.cn/allimgs/daicuo/20230903/1975.png)
我有100个带有多值字段的文档。该字段包含5个可能的值(Albert、Ben、Chris、Don、Ed)。该字段必须包含%1个值,但最多可以包含%5。
我需要计算包含每个值的文档数量,因此
Albert 56
Ben 22
Chris 79
![视图添加字段 8.3 定义和使用视图](https://p.xsw88.cn/allimgs/daicuo/20230903/1975.png)
等
这似乎很容易。我构造了一个包含文档的视图,第一列是字段,并且我选择了Show Multiple Documents for Multiple Feed。
在SSJS中,循环遍历字段中的主值列表,并为每个值创建一个getDocumentByKey。
myArray = applicationScope.application;
var dc:NotesDocumentCollection;
for (index = 0; index < myArray.length; ++index) {
dc = view1.getAllDocumentsByKey(myArray[index]);
Print(dc.getCount())
}
这会正确地获取第一个值,但之后没有。如果我只对一个特定值进行硬编码,它就会起作用。但是,当我第二次调用getAllDocumentsByKey时,它没有返回正确的值。
我认为这在LS中可以很好地工作,但在SSJS中,我必须清理或回收或休息一些东西,但我不知道是什么。
推荐答案
您永远不会用getAllDocumentsByKey()
得到正确答案。当文档显示在一个类别中时,它将从下一个类别的集合中消失。这就是它的工作方式。
ViewNavigator
。按类别构建,只需countViewEntries
。相关推荐
最新文章