【发布时间】:2014-09-15 10:20:37
【问题描述】:
你好 Domino 程序员!
我在开发 Xpages 应用程序时遇到了以下问题:
我必须使用 sessionAsSigner 对象来获取视图中所有文档的数量。 我使用单个计算字段来显示:用户可见文档计数/所有文档计数值和另一个计算字段来显示当前(不是 sessionAsSigner)用户名。
页面如下:
在用户名计算字段代码下,我输入了以下代码:
session.createName(session.getEffectiveUserName()).getCommon()
在 DocCount Computed 域代码下,我输入了以下代码:
var viewAsUser = database.getView("AllByHID");
var docCountUser = viewAsUser.getAllEntries().getCount();
var dbAsSigner = sessionAsSigner.getCurrentDatabase();
var viewAsSigner = dbAsSigner.getView("AllByHID");
var docCountSigner = viewAsSigner.getAllEntries().getCount();
return docCountUser.toString() + "/" + docCountSigner.toString();
我收到以下结果:
这是当前用户可以看到的正确文档数量,但似乎 sessionAsSigner 的使用被完全忽略了。 (?)
经过一些“修补”后,我交换了几行代码以获得:
var dbAsSigner = sessionAsSigner.getCurrentDatabase();
var viewAsSigner = dbAsSigner.getView("AllByHID");
var docCountSigner = viewAsSigner.getAllEntries().getCount();
var viewAsUser = database.getView("AllByHID");
var docCountUser = viewAsUser.getAllEntries().getCount();
return docCountUser.toString() + "/" + docCountSigner.toString();
结果...
这两个值都是正确的,但我想知道为什么我不能在一次调用中得到它们? 我在这里遗漏了什么吗?
任何帮助将不胜感激。
【问题讨论】:
标签: session xpages lotus-notes