我有一个名为“查看所有主题”的表格行,其中有一个计算字段,该字段指示来自名为“主题”的视图的文档总数。
此视图是分类视图,没有单独的响应表单。
因此,现在我希望从此视图中获取文档的总数,但是,我只想返回父文档计数,而不是返回所有带有响应文档(子文档)的条目。
视图中的文档总数为 6,其中 2 个是响应。因此,除了响应之外,我想检索父文档计数为 4。
我找到了这个javascript的解决方案。但需要知道是否有任何更简单的解决方案。任何建议将不胜感激。
<xp:text escape="true" id="computedField1">
<xp:this.value><![CDATA[#{javascript:var currentDb:NotesDatabase = session.getCurrentDatabase();
var currentView:NotesView = currentDb.getView("topic");
var docColl:NotesViewEntryCollection = currentView.getAllEntries();
var c = docColl.getCount();
var r =0;
for(i=1;i<=c;i++){
var en:NotesViewEntry = docColl.getNthEntry(i);
var docs:NotesDocument = en.getDocument();
if(!docs.isResponse())
r++;
}
return r;}]]>
</xp:this.value>
<xp:this.converter>
<xp:convertNumber type="number"></xp:convertNumber>
</xp:this.converter>
</xp:text>