Friday, December 1, 2000

Reusing the Web address dialog from the R5 mail template

PROGRAMMING TRICKS

By Glenn S. Orenstein

In developing Web-based applications in Domino R5, I often find it necessary to provide a means to select names of individuals or groups from a Domino directory (address book). Although I could spend a great deal of effort in creating a form and programming the code necessary to do the job, I've found a simple, elegant way to circumvent the development effort entirely.

Everything you need

The standard R5 Web-enabled mail database template contains everything you need to provide a robust, Web-based dialog to select entries from an address book. By using the Lotus-developed code without modification, you can provide users with the ability to select on the basis of any of the following:

  • Multiple user and group names returned into the three standard email address fields (SendTo, CopyTo, and BlindCopyTo);
  • A single user or group name;
  • Multiple user and group names returned into a single field.

In addition, the dialog can be used to copy person documents from an address book to your application's database. Which format of the address dialog presents itself and how it gets used depends on the code you use to invoke it.

A number of simple modifications can make the address dialog even more useful and powerful. You can change the names of the address book(s) that are used, you can change the names of the fields into which results are returned, and you can change the format of the names that are returned to you.

What it looks like

Figure A shows the address dialog with the usual email fields: To, Cc, and Bcc.

FIGURE A

The standard dialog selects multiple names into three fields. (click for larger image)

When used in this manner, the address dialog will return selected names to your form in fields called SendTo, CopyTo, and BlindCopyTo. This is the default version of the dialog.

Figure B shows the address dialog in its simplest form--selecting a single name from an address book.

FIGURE B

The "Delegate" dialog selects one name into a single field. (click for larger image)

The resulting name will be returned to your form in a field called Delegee. The Lotus developers called this the "Delegate" dialog. As you'll see, that name is important in invoking the address dialog.

A slightly more elaborate version of the address dialog is shown in Figure C.

FIGURE C

The "Group" dialog selects multiple names into a single field. (click for larger image)

This format allows your users to select multiple names from an address book. All names will be returned to a single multi-value field called "Members." Again, the name is case-sensitive. This is referred to as the "Group" dialog.