|
|
|
|
|
|
|
|
|
|
|
|
|
|
PROGRAMMING POWER
The real scoop on the ($Users) view
By Mick Moignard
Over the last two weeks, we've talked a bit about the ($Users) view. The real scoop on the ($Users) view is that it is used by the Domino server for mail address resolution, among other things. To that end, there are two things in this view to be aware of.
First is the selection formula. Why not follow along with me, if you have a designer client, by looking at the ($Users) view in your client's name and address book -- it's the same view. The selection formula describes what actually gets included in the view. The formula is
SELECT (Type = "Person" : "LoginUser" : "Certifier" : "Database") | (Type = "Group" & (@IsUnavailable(GroupType) | (GroupType = "0" : "1"))) |
((@IsAvailable(InternetAddress) | @IsAvailable(httpPassword) | @IsAvailable(userCertificate) & @IsUnavailable($Conflict)) & !(GroupType = "2" : "3"))
|
This basically includes all Person documents, all mail-in databases, all Groups of types 0 and 1 -- which are Mail only and Multi-purpose, anything with an Internet address, and a few other bits and pieces. It shows anything that can be mailed to. I should say at this point that the formulae I'm showing here were taken from a 6.0.3 Domino Directory. If you run earlier versions, your formulae will be slightly different, but the general thrust will be the same.
The second piece of the pie is the formula that derives the Name column. This is the column that everything is looked up against. For mail delivery, the local part of the Internet address, or the Lotus Notes name, are looked up in here to find a match. If one is found, then Notes uses that document to determine the delivery point. That could be a real Notes database, if the name matches a person or mail-in database. If it matches a group, it will give a whole new list of names to check. If it's a person document with a forwarding address, then the whole router process starts again to determine what to do with the new address it's found. Look at the formula for this column:
REM {Get distinguished name (if exists) in dn}
dn := @Subset(@If(Type = "Group"; ListName; FullName); 1);
REM {Permute names in users}
users := @Trim(
@LowerCase(
@If(
Type = "Group";
ListName
: @Soundex(ListName)
: @If(@Contains(ListName; "="); @Name([Abbreviate]; ListName); "")
: InternetAddress;
Type = "Database";
@Soundex(FullName)
: FullName
: @Name([Abbreviate]; FullName)
: InternetAddress;
Type = "Person";
FirstName
: LastName
: FullName
: @Name([CN]; dn)
: ShortName
: @Soundex(LastName)
: (Lastname + " " + FirstName + " " + MiddleInitial)
: @Name([Abbreviate]; FullName)
: AltFullName
: @Name([Abbreviate]; AltFullName)
: @Name([CN];AltFullName)
: InternetAddress
: NetUserName;
Type = "Certifier";
FullName
: @Name([CN]; dn)
: @Name([Abbreviate]; FullName);
FullName:InternetAddress : @If(ShortName != ""; ShortName; "")
)
)
);
REM {If (virtual directory entry)}
REM { then return org-qualified permutations}
REM { else return normal permutations}
@If(
@TextToNumber(@Version)<171;
users;
@If(@IsVirtualizedDirectory & @Length(@Name([O]; dn))>0;
("@" + @LowerCase(@Name([O]; dn)) + @Char(9) *+ users);
users
)
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Advertisement --
PDF Conversion for Lotus Notes
Convert Lotus Notes documents to PDF for sharing, archiving or web printing.
- 1-step PDF: As easy as clicking a Lotus Notes toolbar icon
- Archive email folders or views as a self-contained PDF
- Convert any document collection into a PDF file
- Produce print-quality output from Web applications
- Client side or Server side conversion
- Doesn't require any DLL files
- LotusScript API for developers
Ready to learn more? |
-- Advertisement --
Easy Domino Access: Remove Passwords, End Login Prompts, Reduce Password Management
PistolStar's Password Power provides browser-based single sign-on to Lotus Domino, Sametime and Quickr with the enhanced security of the Kerberos or NTLM authentication protocol.
- Full support available for NTLM authentication protocol in non-Active Directory environments
- Seamlessly integrate Microsoft Active Directory and the Kerberos authentication protocol
- Leverage Active Directory password policies to unify Lotus applications
Learn more about Password Power's powerful, advanced functionality. |
|
|
|
|
|
|
|
|
|
|