LDD Today

Domino.Doc 3.5 technical overview

by
Dick
McCarrick

Level: All
Works with: Domino.Doc 3.5
Updated: 01-Jul-2002


Domino.Doc 3.5 is the latest release of Lotus's enterprise document management system. The primary focus of this release is integration—the ability to access Domino.Doc features and functionality while working in other applications. This gives users the feeling they're working with a single, enhanced product, extending the usefulness of both Domino.Doc and the application they're in. These applications include the Microsoft Office 2000 suite of products, other desktop applications (both ODMA compliant and non-ODMA), and email (including Notes and Microsoft Outlook). Another important feature of Domino.Doc 3.5 is the Desktop Administrator, a new interface for configuring Domino.Doc.

This article presents a technical overview of Domino.Doc 3.5. It describes new functionality and explains what's going on "under the hood." It assumes that you're familiar with Domino.Doc and know its basic concepts and terminology. For detailed Domino.Doc information, consult the product documentation, which you can download from the Documentation Library. You can also consult the LDD Domino.Doc page.

A quick review of application types
Before we describe Domino.Doc 3.5, we need to be clear on which applications it's integrating with. As mentioned above, some new features help Domino.Doc to work better with Notes and Outlook email. Others are intended to integrate Domino.Doc with non-mail desktop applications. For the sake of simplicity, we'll place these desktop applications into three categories: Microsoft Office 2000, ODMA-compliant, and non-ODMA compliant:

Office 2000 applications
(Excel ‘97)
ODMA applicationsNon-ODMA applications
MS Word 2000/XPMS Word ’97MS Access 2000
MS Excel 2000/XPMS Power Point ’97MS Front Page 2000
MS Power Point 2000/XPMS Photo Draw 2000Lotus 1-2-3
MS Excel ‘97VisioLotus Approach
Lotus Word ProNotepad
Lotus FreelanceAdobe Photoshop
Corel WordPerfectMacromedia Dreamweaver
Paint

Microsoft Office 2000
As you might expect, these include most of the Microsoft Office 2000 suite of products. For the purposes of Domino.Doc integration, the important common feature of these applications is their ability to provide event notifications such as file open, close, and save. Domino.Doc uses event notifications as "hooks" into the Office 2000 interface, giving users the experience that Domino.Doc functionality is an integral part of Office 2000. This offers a high level of Domino.Doc integration, considerably more seamless than with other applications. (Because Microsoft Excel 97 also provides event notification and is macro-compatible with Excel 2000, this article will include it in the Office 2000 category.)

ODMA
ODMA (Open Document Management API) is an industry standard for simplifying integration and interoperability of desktop applications with document management systems such as Domino.Doc. ODMA-compliant applications include Microsoft Word 97 and Lotus Word Pro among others. This category also includes Microsoft Office ODMA-aware applications, for example Photo Draw. Domino.Doc integration with these applications supports the ODMA specification. Note, however, that the ODMA specification allows applications to directly access the local file system, bypassing Domino.Doc. When an ODMA application accesses the local file system, Domino.Doc treats it as a non-ODMA application for the remainder of the operation. (Note that most Office 2000 applications are ODMA compliant, but due to their especially close integration with Domino.Doc 3.5, we've placed them into their own category.)

Non-ODMA
These applications include Lotus 1-2-3, as well as other non-ODMA applications from Microsoft and other vendors. And as noted above, Domino.Doc temporarily considers an ODMA application as "non-ODMA" when it performs an operation on the local file system. Non-ODMA applications offer the least seamless integration with Domino.Doc 3.5.

Integrating with Office 2000
Office 2000 applications and Excel 97 provide hooks to specific file events such as open, save, and close. With these hooks enabled, code provided by Domino.Doc 3.5 executes when these events occur. This makes it possible to turn off the "native" dialog boxes that ship with Office 2000 applications and instead present dialog boxes provided by Domino.Doc. This lets you do the following from within Office 2000:
These features provide smooth Domino.Doc integration for important Office 2000 file functions. In the following sections, we describe the functionality Domino.Doc provides to Office 2000 users and how Domino.Doc processes file requests for these users.

User interface
The user interface provided by Domino.Doc to Office 2000 users primarily involves performing file functions (for example, opening a document) and subsequently obtaining the appropriate file names. There is additional user interface for other Domino.Doc features, for example selecting a particular revision of a document to work with. To display this alternate interface, Domino.Doc uses Windows Common Dialogs.

Windows Common Dialogs
The standard Office 2000 Open and Save As dialog boxes include several options that will not function properly when navigating a Domino.Doc namespace. Therefore, Domino.Doc 3.5 replaces these Office 2000 dialog boxes with Windows Common Dialogs. The Windows Common Dialogs are defined by the Windows API functions GetOpenFileName and GetSaveFileName. The dialog boxes are slightly different for each version of Windows. Domino.Doc minimizes these differences so Open and Save dialog boxes appear consistent in all Windows versions and resemble native Office 2000 file dialog boxes as closely as possible. Once you install Domino.Doc 3.5, these Common Dialogs appear whether you're working with a Domino.Doc document or with a file on your local file system.

Thus, when you run Domino.Doc and Office 2000 on the same machine, by default Open and Save As dialog boxes in Office 2000 applications are actually provided by Domino.Doc and not Office 2000.

Although we've tried to make the dialog boxes match as closely as possible, users may notice some functionality differences. The Domino.Doc 3.5 documentation lists these differences. (Note that if users want to restore the original Office 2000 dialog boxes, they can access them by mapping shortcut keys to the File - Open and File - Save As commands.)

Here is an example of an Office 2000 Open dialog box provided by Domino.Doc:

Office 2000 Open dialog box, provided by Domino.Doc.

Because these dialog boxes are not a standard part of Office 2000, it's possible that users may not be completely familiar with them. To familiarize users, Domino.Doc provides "hover" help, pop-up descriptions of each option.

Revision History
In previous releases of Domino.Doc, you can choose the revision number of a document you want to open by entering Windows Explorer, right-clicking the file name, and selecting Revision History. With Domino.Doc 3.5, you can now also do this from within the Office 2000 interface. Domino.Doc adds a checkbox called Revision History to the Office 2000 Open dialog box. When you select this option, the revision history of the selected file appears in a pane at the bottom of the dialog box. This pane remains visible as long as Revision History is checked. The content of the pane updates dynamically to reflect the revision history of the file selected in the left pane of the dialog box, so as you move from file to file the revision history of the current document appears. The revision pane also displays the Author of the selected revision, along with any comments.

Office 2000 Open dialog box, provided by Domino.Doc, showing revision history.

Document processing
After you've used the dialogs provided by Domino.Doc 3.5 to select a document in Office 2000, Domino.Doc makes the document available to you. If the file is outside the Domino.Doc Neighborhood, Domino.Doc delivers it to your Office 2000 application "as is," without performing any other processing on it. If the document is within the Domino.Doc Neighborhood, Domino.Doc considers the following questions before delivering it to your application:
Depending on the answers to these questions, Domino.Doc performs a series of processing steps. If for any reason a step fails to complete (for example, you don't have access to the file), you'll see an error message, and all further processing for this operation stops. Also, any actions taken prior to the failure step are reversed. For instance, if you attempt to access a document that is checked out but the copy to your local file system cannot be completed, you'll see an error message and the document will be checked in without your changes.

There is a special failure case for a document that you can access but that is currently checked out by another user. If you attempt to open a document checked out by another user, Domino.Doc displays a dialog box informing you of this and asking whether you want to open a read-only version. If you answer no, the entire operation fails and any prior actions are discarded. If you reply yes, Domino.Doc proceeds as though you've checked the “read-only” checkbox.

Opening a document in Word or PowerPoint
If you open a document in Word 2000 or PowerPoint 2000, Domino.Doc performs one of the following actions, depending on whether the document is read-only and/or checked out by you:

Read only?Checked out by you?Delivery actions
NoNoCheck out document. Open using ODMA ID.
NoYesOpen working copy using ODMA ID.
YesNoOpen latest revision using ODMA ID and the ODM_VIEWMODE.
YesYesOpen latest revision using ODMA ID and the ODM_VIEWMODE.

Opening a document in Excel
When you open an Excel 2000 or Excel 97 document, Domino.Doc does one of the following, depending on whether the document is read-only and/or checked out by you. Note that the file name of any documents copied to the local file system will be the document title plus the attachment’s extension. These files are deleted when you close them in Excel.

Read only?Checked out by you?Delivery actions
NoNoCheck out document. Copy to local file system. Open in application.
NoYesCopy working copy to local file system. Open in application.
YesNoCopy latest revision to local file system. Mark as read-only. Open in application.
YesYesCopy latest revision to local file system. Mark as read-only. Open in application.

Performing Save As on a Word or PowerPoint document
If you execute a Save As on a document in Word 2000 or PowerPoint 2000, Domino.Doc performs one of the following actions, depending on whether the document is a new Domino.Doc file and/or checked out by you:

New Domino.Doc document?Checked Out by you?Delivery actions
NoNoCreate new document. Save as new working copy (0.0) to Domino.Doc server using ODMA.
NoYesAllowed if this is document A being “saved as” document A. Also allowed if the title is changed and a new document will be created, in which case, save as new working copy (0.0) to Domino.Doc server using ODMA.
YesNASave as new working copy (0.0) to Domino.Doc server using ODMA. This case allows you to open the file on your local file system and save it as a new Domino.Doc document.

Performing Save As on an Excel document
If you execute a Save As on a document in Excel 2000 or Excel 97, Domino.Doc performs one of the following actions, depending on whether the document is a new Domino.Doc file and/or checked out by you:

New Domino.Doc document?Checked out by you?Delivery actions
NoNoAllowed but title must be changed and a new document will be created. Save to local file system and then save as new working copy (0.0) to Domino.Doc server.
NoYesAllowed if this is document A being “saved as” document A. Also allowed if title is changed and a new document is to be created, in which case, it is saved to your local file system and then saved as a new working copy (0.0) to Domino.Doc server.
YesNASave to local file system, or save as new working copy (0.0) to Domino.Doc server.

Saving a file
Domino.Doc processes Save requests differently than Save As requests. If you execute a Save on a document in Office 2000, Domino.Doc performs one of the following actions, depending on whether or not the application uses an ODMA ID to open the document. (ODMA applications such as Word, PowerPoint, and Lotus Word Pro use an ODMA ID to open a Domino.Doc document. Excel and other non-ODMA application do not use an ODMA ID to open files.)

Domino.Doc file opened with ODMA ID? Save action
NoSave to local file system or save as working copy to Domino.Doc server.
Yes (Word, Power Point, Word Pro, and so on)Save via ODMA ID.

Adding Domino.Doc information to Office 2000 documents
Domino.Doc 3.5 also provides features for adding the following Domino.Doc information to Office 2000 documents:
There are two ways you can add this Domino.Doc information to Office 2000 documents. You can do this through an option in the Desktop Administrator (described later in this article). With this option selected, the above information is automatically added to the document’s properties when you open it. You can also add this information manually to a document by selecting a Domino.Doc-provided option in the Word, Power Point, or Excel interface, as shown below:

Office Fields tab, showing Domino.Doc information for a selected document.

Setting Domino.Doc document properties in Office 2000
Domino.Doc 3.5 lets you set and retrieve Domino.Doc document properties from the File - Properties menu in Word 2000, PowerPoint 2000, and Excel, as well as other ODMA applications that use ODMActivate(handle, ODM_EDITATTRIBUTES, odmaid) to edit document properties. For these applications, the Domino.Doc Document Properties dialog box shown below appears when this function is called. This interface is the same interface currently used within Domino.Doc itself. The properties dialog box is also displayed as part of the check-in dialog box.

Domino.Doc Modify Document Properties dialog

You can also display the application's native properties dialog box. You do this through the registry setting HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Domino.Doc Desktop Enabler\Native Prop Dialog. If you set this to N, only the Domino.Doc properties dialog box appears. If you set this to Y, the application's native properties dialog box is displayed after the Domino.Doc dialog box appears.

For ODMA applications that do not use the ODMActivate call, the Domino.Doc document properties dialog box cannot be displayed. Instead, the application's native properties dialog box always appears in response to File - Properties.

Integrating with other ODMA-compliant applications
Domino.Doc 3.5 provides essentially the same level of ODMA support as in previous releases. This means we don't include a full 1.0 or 2.0 level of ODMA support. However, Domino.Doc 3.5 does ship with the latest 2.0 ODMA DLL. To accommodate this, we've made minimal changes to the development environment. Although the underlying level of support hasn't changed, Domino.Doc 3.5 includes a significantly revamped interface to integrate this functionality.

User interface
As with Office 2000, Domino.Doc 3.5 uses Windows Common Dialogs to provide an integrated interface for other ODMA-compliant applications. However, unlike the dialog boxes offered to Office 2000 applications, the dialog boxes in other ODMA applications do not allow access to the local file system. When working within these dialog boxes, you can't leave the Domino.Doc Neighborhood. As a result:
Domino.Doc Open dialog

Because you'll be confined to the Domino.Doc Neighborhood, Domino.Doc 3.5 replaces your application's native locations bar with one specific to Domino.Doc. This locations bar includes the following buttons:
The Favorites, Checked Out, and History buttons do not appear on the ODMA Save As dialog box provided by Domino.Doc 3.5. "Hover help" messages provide pop-up help in these ODMA dialog boxes.

Integrating with non-ODMA–compliant applications
In Domino.Doc 3.5, non-ODMA applications will only have integration through the Domino.Doc Neighborhood namespace extension inside Explorer. Non-ODMA applications (and ODMA applications acting on the local file system) will not be able to access the Domino.Doc library directly. If a non-ODMA application opens the Domino.Doc Neighborhood from inside a native file dialog box, you will be alerted that the application is not supported by Domino.Doc. In this case, no libraries appear in the Domino.Doc Neighborhood. Additionally, the Attaché Case does not appear. Also, the option to connect to a Domino.Doc library is disabled.

Email integration
You can access Domino.Doc 3.5 libraries from Notes or Outlook email and attach one or more documents from them. You can also detach documents received as email attachments directly into your Domino.Doc libraries. And you can save an entire email (excluding Notes attachments—a limitation of Notes) to Domino.Doc using the Notes client File Export option, as well as Outlook’s Save As option. Domino.Doc 3.5 also supports putting documents directly into the email body from a Domino.Doc library, through the Notes File Import option and Outlook Insert Text from File option.

Domino.Doc Desktop Administrator
To make administration easier, Domino.Doc 3.5 includes the Desktop Administrator, a new interface for configuring settings and performing maintenance functions. You launch the Desktop Administrator from the Windows Control Panel. When you do, you'll see the Desktop Administrator window:

Domino.Doc Desktop Administrator screen

When you open the Desktop Administrator window, it displays the current Domino.Doc settings for log files, connections, and applications. These offer the same options that are available when you launch domdoc.exe, with the exception of Application Settings. This option also lists all supported applications.

The Desktop Administrator also includes the File, Settings, and Help menus. Help launches Desktop Administrator's on-line Help system. File displays a menu that lets you exit Desktop Administrator. Settings displays a menu that allows you to clean up temporary disk space and set Domino.Doc preferences. You enter initial settings during installation. You can then set a registry key to prevent users from modifying these settings, which are as follows:
Other new Domino.Doc 3.5 features
In addition to the new application integration and Desktop Administrator functionality, Domino.Doc 3.5 includes the following new features:

Changes to Domino.Doc Neighborhood interface
The Domino.Doc Neighborhood interface has been modified to present a look-and-feel consistent with Microsoft’s Network Neighborhood. The remainder of the Domino.Doc interface will remain essentially the same as in previous releases.

Default library
The ODMA interface requires you to select a default library. You can set the default library through an option in the library’s context menu. To aid large scale deployment, the entire registry layout for libraries is now documented in the Domino.Doc Administrators Guide. This includes instructions for setting the default library in the registry.

Create New Library icon
Domino.Doc includes an icon at the top level of the Domino.Doc Neighborhood called Create New Library. This icon lets you create a new library connection. This icon will only be available in the Explorer; it will not appear in the file dialog boxes.

Edit Connection Properties
You can right click a library connection to display and edit the properties of the connection. This lets you quickly update the URL for a library connection.

Create Binder
You can create a binder by right-clicking a file cabinet name.

Recently Edited versus History
To match the ODMA terminology, the Recently Edited icon has been renamed History.

Search
Search has been enhanced to include a most-recently-used list. The default entry in the search box will be the most recent string used for a search. The box is now a combo box, and most-recently-used search strings are listed in the drop-down list. A registry entry in HKEY_CURRENT_USERS controls the maximum number of items that appear in the list. Items are sorted from newest (most recent search) to oldest. See the table below for details:

NameData typeDescription
MaximumDWORDMaximum number of entries in the search MRU list. The default value is 10. Maximums larger than 50 are not recommended.
Entry1 - EntryNStringSearch string. Entry1 is the most recent search and EntryN is the oldest

Below is a sample registry entry, illustrating this key:

REGEDIT4

[HKEY_CURRENT_USER\Software\Lotus\Domino.Doc Desktop Enabler\SearchMRU]
"Maximum"=dword:00000010
"Entry1"="zig ziggler"
"Entry2"="War Eagle!"
"Entry3"="Go Braves!"

Help
The Help menu offers an About menu option, displaying information about the version of Domino.Doc installed on your machine. There is also a Domino.Doc Help option to present Domino.Doc Help while in other applications.

Library connections
The registry setting necessary for creating Domino.Doc Neighborhood library connections is now documented in the Administrator's Guide. To create a library connection, you must modify the following key in the client registry:

HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Domino.Doc Desktop Enabler\Mapped Libraries

The following table shows valid entries in this registry key:

NameData typeDescription
CountDWORDThe total number of library connections
Address0 - AddressNStringThe URL for the library connection
Name0 - NameNStringDisplay name for the library

Here is a sample registry file entry illustrating this key:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Domino.Doc Desktop Enabler\Mapped Libraries]
"Count"=dword:00000003
"Address0"="http://server.lotus.com/DominoDocLib.nsf"
"Name0"="Sample Docs(http)"
"Address1"="notes://server.atlanta.ibm.com/domdoc/ATLDDOCDominoDoc2Lib.nsf"
"Name1"="ATLDDoc"
"Address2"="http://server/domdoc/homelib.nsf"
"Name2"="Home"

Domino.Doc 3.5: Extending your applications
As you've seen, Domino.Doc 3.5 is designed to work more closely with your desktop applications, providing advanced document management features from within the application interface. Thus, your applications become more robust and useful—making Domino.Doc 3.5 an even more valuable tool for helping manage your organization's ever-growing storehouse of content and knowledge.