XPages - 返回登录用户的shortName

时间:2014-11-24 23:53:43

标签: xpages

我正在寻找一个方法getShortName()或UserName的属性,它将返回已经通过Domino服务器验证的人的shortName / UserID。在论坛上进行了搜索,StackOverflow并且无法在注册类中找到任何此类方法。

我将在下面发布我的替代解决方案,但如果有人有更好的解决方案,我很乐意听到它。

谢谢,

3 个答案:

答案 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。这将允许您跳过代码的第一步。除了不知道提供短名称的方法之外。