我正在查找将返回用Domino服务器进行身份验证的人的shortName/UserID的UserName方法getShortName()或属性。在论坛上搜索了一下,StackOverflow,除了在注册类中找不到任何这样的方法。XPages - 返回登录用户的简称
我会在下面发表我的备选解决方案,但如果有人有更好的解决方案,我很乐意听到它。
感谢,
丹
我正在查找将返回用Domino服务器进行身份验证的人的shortName/UserID的UserName方法getShortName()或属性。在论坛上搜索了一下,StackOverflow,除了在注册类中找不到任何这样的方法。XPages - 返回登录用户的简称
我会在下面发表我的备选解决方案,但如果有人有更好的解决方案,我很乐意听到它。
感谢,
丹
您可以使用公式命令@NameLookup()从人员文档中返回项目。与session.evaluate()一起,您应该可以在XPages中使用它。
试试这个:
session.evaluate('@NameLookup([EXHAUSTIVE];' + userName + ';"ShortName")');
免责声明:没有测试过的。
我的解决方案如下:
var userName = @Name("[ABBREVIATE]" ,@UserName());
var shortName = @DbLookup([@DbName()[0],'names.nsf'],'($VIMPeople)',userName,"ShortName");
return shortName;
按Per建议使用@NameLookup。将在配置的任何目录中搜索 – stwissel 2014-11-25 14:09:11
不知道是什么版本的NAB的有一个名为($ NamesFieldLookup)隐藏的观点,但如果我还记得它包括CN = Bugs Bunny/OU = ACME/O =第一个排序列中的COM。这将允许您跳过代码的第一步。除此之外,不知道提供的方法来获取短名称。
我的人文档在ShortName字段中包含8个值。只是说... – 2014-11-25 15:10:02
谢谢Per。我修改了我的解决方案: var shortName = session.evaluate(“@ NameLookup([Exhaustive]; \”“+ @UserName()+”\“; \”ShortName \“)”); shortName; – 2014-11-26 17:15:35
Frantisek,谢天谢地,我们的短名/ userid字段每人只有一个条目。 – 2014-11-26 17:50:05