The Devil IS In The Details …
A VIP in my company was recently upgraded to Lotus Notes R8.5.1 FP1 and had to print a list of the contacts from the address book of a roaming user (the address book is on the server) in a list format. As you probably know, it’s a very simple thing to do: open the address book of the roaming user (the VIP has access to that address book), click on File -> Print, make sure that “Print Selected View” is selected and then click on “Print”. Then, casually walk to printer, grab the stack and run with it to the person who requested it. It’s easy and it makes everybody happy to know that the list of contacts is safe and sound on sheets on paper in a file somewhere in somebody’s desk drawer.
But if you are using Lotus Notes R8.5.1 (with or without the FP1), there is a bug with the “Print Selected View” in the Contacts (names.nsf) database based on the R8.5.1 design.
The bug might be easy to miss but it’s there: the “Print Selected View” only prints 1 line per contact. You might say “That’s not a big deal” IF you only have 1 phone number per contact BUT if you have contacts with multiple phone numbers … only the 1st number will appear on the printout.
I’m not kidding. The VIP wasn’t impressed either.
And that VIP has the hear of other VIPs in my company and that makes Lotus Notes look bad (yes, a simple thing like that … but hey, the devil IS in the details).
So the CIO called up Patrick and Patrick then called me up and said “find a workaround” … and since nobody reports to me, I can’t delegate this request … dang … oh well … I told myself, “it’s probably something stupid … this should be easy” and after 13+ years of working with this product you’d think I’d remember never to say that … but no. I was wrong …
Before the Workarounds … the PMR (and the SPR)!
After testing a few things, I decided to open a PMR with Lotus Support. And I consider myself super lucky because John St-Germain was assigned the PMR. John St-Germain was instrumental on the gazillion of Smart Upgrade related PMRs that I had opened last year, all of which, allowed me to create the two presentations here and here. And, once again, I received an excellent level of customer service from John St-Germain on this PMR!
Anyhow, after a bit of catching up on the latest news with John and giving him a bit more info about the issue, he went back to his test environment (or evil genius lair somewhere in a volcano on a deserted island as I like to think about it … hey – it makes life less boring to think of it that way) and reproduced it super easily.
Because he was able to reproduce it so easily, he did a bit of digging around and when he called me back he explained that “Yes”, this is a bug in R8.5.1 Standard (but not in 8.5.1 Basic) and that the issue had already been reported and SPR’ed.
The SPR # is CAML7YUTUW and John said that it’s being investigated to be fixed in 8.5.2.
So after I realized that that 8.5.2 won’t be around until a couple more months, we discussed a few options. So here’s a few workarounds.
Workaround #1 - Basic Mode
Simply put: close your Lotus Notes R8.5.1 Standard and launch it back in “Basic” mode. There should be an icon for that either on your desktop or in Start -> Program Files -> Lotus Applications. If not, just create a shortcut to nlnotes.exe and that will launch it in “basic” mode.
The bug does not occur in “Basic” mode because the Contacts database dosen’t load as a Composite Application …
Workaround #2 – Copy Selected As Table
Select the Contacts you want to print, then click on on the menu Edit -> Copy As -> Table. Then start your favorite Word Processor (either Microsoft Word or Symphony Documents). Once you are in the word processing application click on “Edit -> Paste”.
Once the pasted contacts appear, tweak the table, remove the borders, change the fonts, etc, etc … basically spend some time to format the table so that it looks nice when printed … not fun to do.
Workaround #3 – Open Contacts in Basic Mode (Thanks to Craig Wiseman for this one)
I had forgotten about this but Craig Wisemen posted a comment to simply hold down CTRL+SHIFT+ALT and then click the contacts icon (assuming you are clicking on the icon in the bookmark bar). As he wrote in his comment, this will open the Contacts database “Basic” mode (i.e. without the Composite Application settings) and you’ll be able to print the selected view.
Workaround #4 – Add a Form Specifically for Printing the List
If you go back to your R8.5.1 Standard client and then open your contacts, if you click on File -> Print, you’ll notice a drop down list for “Print Styles”. In that drop-down list, there’s a bunch of options to print your contact lists on labels and in various other exotic formats (the phone directory is kinda cool in a old school way). See below for a screenshot of the drop-down list.
Since all the options displayed there are actually forms that are stored in the local Contacts database (or local Address Book if you prefer), what’s stopping you from coding your own form to print a list of all (or selected) contacts that would display properly? Answer: nothing… except maybe time.
So you’ll be happy to know that I spent the time to create the said form and that it works OK for our VIP. I couldn’t figure out an easy way to get the column headers to appear on each page but the VIP didn’t care about that.
The form is stored in the attached zip file below as a DXL file: simply click on it to download the zip file to your hard drive. Once you extract the contents of the zip file, you’ll also see an LSS file and that contains the code for the agent that you’ll need to create to import the DXL file.
So, to import the DXL, start by opening your local names.nsf in Designer (or the one of one of your roaming user who needs this) and then click on Create -> Agent. Give the agent a decent name like “Import Form” and then click OK. Set the agent to be in LotusScript and then import the LSS file for the agent (it’s in the zip file that that you unzipped). Once the code is imported, save the agent and run it.
Once you run the agent, you will be prompted to select the DXL file. And once you select it, it will create the new design element.
At this point, you’re almost done but to wrap things up, you’ll need to open the address book in designer and open the form “Print Selected Contacts – Portrait Format”. Once the form is opened, ask for the form properties and enable the option “Include in Print Menu” and save the form. You can close Designer at this point.

Once you’ve done those steps, you can go back to your list of Contacts, select a few from the list (or all of them), click on File -> Print, select “Print Selected Contacts – Portrait Format” and then click on “Preview” to see what will get printed or print “OK” if you feel lucky …

Conclusion …
Well, there isn’t much to say except to repeat “The Devil IS in the details”. Seriously, their computer(s) can crash once per week … people almost expect it when they use Microsoft Windows nowadays, and they won’t make a big deal out of it. But when something that worked forever (probably since the R1 days!) suddently stops working for no particular reason … some people find this extremely annoying and complain … and sometimes they have other VIPs within earshot … more specifically those that are making the big decisions that can help or hinder the future of a particular groupware solution in a company …
Thanks for reading!
Marc