我正在寻找一个方法getShortName()或UserName的属性,它将返回已经通过Domino服务器验证的人的shortName / UserID。在论坛上进行了搜索,StackOverflow并且无法在注册类中找到任何此类方法。
我将在下面发布我的替代解决方案,但如果有人有更好的解决方案,我很乐意听到它。
谢谢,
丹
答案 0 :(得分:2)
您可以使用公式命令@NameLookup()返回人员文档中的项目。与session.evaluate()一起,你应该能够在XPages中使用它。
试试这个:
session.evaluate('@NameLookup([EXHAUSTIVE];' + userName + ';"ShortName")');
免责声明:完全没有经过测试。
答案 1 :(得分:0)
我的解决方案如下:
var userName = @Name("[ABBREVIATE]" ,@UserName());
var shortName = @DbLookup([@DbName()[0],'names.nsf'],'($VIMPeople)',userName,"ShortName");
return shortName;
答案 2 :(得分:0)
不确定哪个版本的NAB有隐藏视图($ NamesFieldLookup),但如果我记得它将在第一个排序列中包含CN = Bugs Bunny / OU = ACME / O = COM。这将允许您跳过代码的第一步。除了不知道提供短名称的方法之外。