获取从viewEntry返回的文档数

时间:2014-11-20 00:05:45

标签: xpages ssjs

我有一个面板,我在其上定义了Domino视图并将其命名为viewEntry并将其附加到当前数据库中的视图。在数据定义中,我将它设置为按类别名称进行过滤,所有这些都非常好。现在我想知道viewEntry包含多少文档。据我所知,viewEntry是一个NotesXspViewEntry,我应该可以做一些像viewEntry.getChildCount()。所以我使用公式viewEntry.getChildCount()在panelData中创建了一个computedFiled,但是我得到了错误: 脚本解释器错误,line = 1,col = 11:[TypeError]错误调用方法' getChildCount()'在类型为' lotus.domino.local.View的对象上[Static Java Interface Wrapper,lotus.domino.local.View:lotus.domino.View]'

所以我认为这就是说viewEntry是一个NotesView而不是NotesXspEntry,我猜错了。那么问题仍然是如何处理viewEntry中返回的文档计数?

1 个答案:

答案 0 :(得分:3)

你的目标是太高......

 NotesView -> ViewControl --> Entries

我不会调用ViewControl" ViewEntry"非常混淆这个问题......因为它更像是一个EntryCollection。您要查找的属性是ViewControl.getRowCount() ViewControl确实"知道"它只获得数据源的过滤结果,因此ViewControl.getRowCount()返回传递给控件的数据源。

注意:如果您有大量数据,该方法可能会非常慢。

替代思想(我猜测用例:-))......

我们经常看到类别为selectable using a dropdown - 这也可能适用于您的用例。一个不错的功能"将显示类别名称背后的条目数。类似的东西:

   blue (27) | blue
   red (34) | red
   black (345) | black

在这种情况下,您希望使用ViewNavigator来预先检索值。为此偷了一些code

让我们知道它是怎么回事