2014-11-24 61 views
0

我正在查找將返回用Domino服務器進行身份驗證的人的shortName/UserID的UserName方法getShortName()或屬性。在論壇上搜索了一下,StackOverflow,除了在註冊類中找不到任何這樣的方法。XPages - 返回登錄用戶的簡稱

我會在下面發表我的備選解決方案,但如果有人有更好的解決方案,我很樂意聽到它。

感謝,

回答

2

您可以使用公式命令@NameLookup()從人員文檔中返回項目。與session.evaluate()一起,您應該可以在XPages中使用它。

試試這個:

session.evaluate('@NameLookup([EXHAUSTIVE];' + userName + ';"ShortName")'); 

免責聲明:沒有測試過的。

+0

我的人文檔在ShortName字段中包含8個值。只是說... – 2014-11-25 15:10:02

+0

謝謝Per。我修改了我的解決方案: var shortName = session.evaluate(「@ NameLookup([Exhaustive]; \」「+ @UserName()+」\「; \」ShortName \「)」); shortName; – 2014-11-26 17:15:35

+0

Frantisek,謝天謝地,我們的短名/ userid字段每人只有一個條目。 – 2014-11-26 17:50:05

0

我的解決方案如下:

var userName = @Name("[ABBREVIATE]" ,@UserName()); 
var shortName = @DbLookup([@DbName()[0],'names.nsf'],'($VIMPeople)',userName,"ShortName"); 
return shortName; 
+1

按Per建議使用@NameLookup。將在配置的任何目錄中搜索 – stwissel 2014-11-25 14:09:11

0

不知道是什麼版本的NAB的有一個名爲($ NamesFieldLookup)隱藏的觀點,但如果我還記得它包括CN = Bugs Bunny/OU = ACME/O =第一個排序列中的COM。這將允許您跳過代碼的第一步。除此之外,不知道提供的方法來獲取短名稱。

相關問題