I have a Lotus Domino R5 server, three Lotus Domino R6 partitions, five Lotus Domino R7 partitions (one is a Sametime server), plus the Lotus Notes client versions R5, R6, and R7 all loaded onto one single machine, my trusty laptop.
Needless to say, this is not a configuration that Lotus supports. Heck, I don't blame 'em. I hardly want to support it myself! But it sure comes in handy when I'm doing demos or running tests.
Occasionally, I get a nasty "red screen of death." That's why I think the new AutoSave feature in ND7 is the coolest thing ever. But, as they say, you've got to "use it or lose it."
Before I elaborate, let's cover how AutoSave works. Then I'll tell you how to avoid a scary part that might present ugly surprises.
First, you need to set a preference in the Lotus Notes R7 client to turn it on. This is easily done in the Basics section of User Preferences.
Behind the scenes, a special database is created on the Lotus Notes client to support Notes/Domino 7 AutoSave. It is created from the "autosave" template called autosave.ntf. The name of the file is derived from the user's name, and the database is encrypted for that user only.
Plus, the database is configured so it won't show in an Open Database dialogue.
When you use a form that has ND7 AutoSave enabled -- like the Memo form in your email, for example -- this database is used to temporarily save any document you're working on at whatever interval you've set.
If Lotus Notes or your operating system crashes while you're working, and AutoSave is enabled, you'll get a screen like this when you start back up:
Clicking "Yes" will take you to a screen that looks like this so you can select the document you want to recover:
If a Lotus Notes user chooses not to recover when prompted after a crash, the person can still recover manually by selecting Choose File -> AutoSave -> Recover AutoSaved Documents.
Select the document to open and click "Recover;" or click "Recover All" to open all documents in the local Lotus Notes database.
The whole thing works great! So what's the scary part?
AutoSave is not automatically turned on for every Lotus Notes form in every Lotus Notes database. As a matter of fact, very few stock Lotus Notes forms actually have ND7 AutoSave enabled.
Take the Domino Web Access (DWA) 7 mail template, for example. In Lotus Domino R7.0, the memo form was the only form that had AutoSave enabled. In Lotus Domino 7.0.1, the list was expanded to include the "Reply" form and the "Reply with History" form.
To my knowledge, no other forms have it enabled - not even the Journal has a form enabled for AutoSave.
It's easy to change on a template or a database -- you just have to remember to do it. You must be in Designer client to enable it.
If you want to make ND7 AutoSave available on a wider scale for in-house applications, make sure the developers know about the setting.
You can use a Desktop Settings policy to enable it in User Preferences if you didn't roll out ND7 with it enabled already.
I keep my AutoSave interval at five minutes. Since the AutoSave database is local, there is no server performance hit.
By the way, you can contact me if you want more info on my laptop configuration. It's great for testing servers and stuff, as long as you have AutoSave to watch your back!
About the author: Andy Pedisich is President of Technotics, Inc. He has been working with Lotus Notes and Domino since Release 2. Technotics provides strategic consulting and training on collaborative infrastructure projects for customers throughout the world. You can contact Technotics through their Web site at www.technotics.com.
Many Lotus Notes/Domino applications have code in their "Save" and "Post Save" events that create items or perform validations that are checked at load time. But, because we can't execute these events while auto-saving the document, none of this will take place and the auto-saved document will be in a "bad" state. This could lead to failure of the document to load after recovery.
If your application does in fact write items on "Save" events -- and it's dependent upon these items -- you may need to add code into your "QueryOpen" event to mark defaults for those items. You can do special handling only for documents that are recovered by looking for an item called $AutoSaveRecovered. This item will only be available for recovered documents up until the "Post Open" event -- it will be deleted after that.
You can find more valuable information about AutoSave in IBM's article, "All about AutoSave in Lotus Notes/Domino 7."
Do you have comments on this tip? Let us know.
Related information from SearchDomino.com:
Please let others know how useful this tip is via the rating scale below. Do you have a useful Lotus Notes, Domino, Workplace or WebSphere tip or code snippet to share? Submit it to our tip contest and you could win a prize.
This was first published in October 2006