Web applications enable users to view or enter information through the Internet. This enables access from both the Lotus Notes client and Web browserssuch as Netscape Navigator, Microsoft Internet Explorer, and Mozilla Firefox. The ability to implement a single Domino database that is accessible from many clients has many advantages and is one of the most powerful features of Lotus Notes.
The ability to have a common database accessible from both Lotus Notes and a Web browser enables access to information for a much wider set of users. It also offers advantages such that information can be controlled based on the client type (meaning the content or display of information for the Web browser may intentionally vary from that displayed on the Lotus Notes client). For example, say you have a database that is accessed by both your employees and your customers. With this type of database, you can set access permissions such that employees can see all information and customers can only see a subset of information. Alternatively, you could have no restrictions where everyone can view all information in the database.
In many cases, any given Lotus Notes database can be accessed via a Web browser without having to add HTML to the design. This is because the Domino server renders the HTML by default. However, depending on the design and complexity of the database, some design elements of the database may need to be updated to work over the Internet or enhanced to improve the visual appearance in a browser.
This chapter will illustrate how to enhance a database by incorporating additional design elements in the database. These design elements improve the overall usability of the database and help to maintain a consistent appearance between clients. Let's take a moment to review project architecture. When complete, the Lotus Notes client will look like Figure 12.1.
Figure 12.1. Completed Web application in Lotus Notes
The same database, when accessed from a Web browser, will look like Figure 12.2. You'll notice that the overall appearance is similar, but there are some changes. First, a company logo and Web site name have been added. Second, a welcome page has been included to provide general usage information (but could be tailored to contain anything). Otherwise, the New Document action button is used to create new documents and the views are used to display information sorted as desired.
Figure 12.2. Completed Web application in a Web browser
Implementing these changes requires several additional design elements to be incorporated in the database design.
Domino uses several special design elements to manage Web content. This includes the $$NavigatorTemplate and $$NavigatorView design elements. These elements are used to associate a particular design element with a Web browser. Both of these items are dependent on other design elements (such as forms, outlines, pages, etc.), and they must follow a specific naming convention in order to be utilized.
For the purpose of this project, $$NavigatorTemplate will point to the MainNava navigator for the databaseand $$NavigatorView will point to the default view for the database. As mentioned previously, both design elements must follow a specific naming nomenclature. The syntax must be $$NavigatorTemplate for navigator (where navigator represents the name of the navigator design element). Similarly, the second item must be named $$NavigatorView for view (where view represents the name of a database view). This effectively embeds one design element in the other. In other words, these two items will work in conjunction with the navigator. The navigator, which includes a frameset, page, and outline, will give both clients a similar visual appearance.
The last design element for the project includes a LotusScript library. This library will include subroutines that will display information back to the user and that will process transactions initiated via Web browser.
Finally, implementing a Web-based architecture will most likely require coordination with the Domino server administrator. There are a variety of server settings that manage the ability to "Web-enable" a Notes database. For example, some administrators implement "user authentication," which requires users to provide an ID and password in order to access the database through a Web page. The administrator can also disable the ability to render Web pages and control how many documents are displayed in a view.
Project Building a Domino Web Site
An Introduction to the Lotus Domino Tool Suite
Getting Started with Designer
Navigating the Domino Designer Workspace
Domino Design Elements
An Introduction to Formula Language
An Introduction to LotusScript
Fundamentals of a Notes Application
Reference Library Applications
Design Enhancements Using LotusScript
Design Enhancements Using Formula Language
Miscellaneous Enhancements and Tips for Domino Databases
Application Deployment and Maintenance
Appendix A. Online Project Files and Sample Applications
Appendix B. IBM® Lotus® Notes® and Domino®Whats Next?