我正在查找將返回用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