Upload
xuankhanh333
View
228
Download
0
Embed Size (px)
Citation preview
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
1/826
Application Development with Lotus Domino Designer
Lotus Domino Designer 6
software
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
2/826
Disclaimer
THIS DOCUMENTATION IS PROVIDED FOR REFERENCE PURPOSES ONLY. WHILE EFFORTSWERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATIONCONTAINED IN THIS DOCUMENTATION, THIS DOCUMENTATION IS PROVIDED “AS IS”WITHOUT ANY WARRANTY WHATSOEVER AND TO THE MAXIMUM EXTENT PERMITTED,IBM DISCLAIMS ALL IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION THE
IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR APARTICULAR PURPOSE, WITH RESPECT TO THE SAME. IBM SHALL NOT BE RESPONSIBLE FORANY DAMAGES, INCLUDING WITHOUT LIMITATION, DIRECT, INDIRECT, CONSEQUENTIALOR INCIDENTAL DAMAGES, ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO,THIS DOCUMENTATION OR ANY OTHER DOCUMENTATION. NOTWITHSTANDINGANYTHING TO THE CONTRARY, NOTHING CONTAINED IN THIS DOCUMENTATION OR ANYOTHER DOCUMENTATION IS INTENDED TO, NOR SHALL HAVE THE EFFECT OF, CREATINGANY WARRANTIES OR REPRESENTATIONS FROM IBM (OR ITS SUPPLIERS OR LICENSORS), ORALTERING THE TERMS AND CONDITIONS OF THE APPLICABLE LICENSE AGREEMENTGOVERNING THE USE OF THIS SOFTWARE.
Copyright
Under the copyright laws, neither the documentation nor the software may be copied, photocopied,reproduced, translated, or reduced to any electronic medium or machine-readable form, in whole orin part, without the prior written consent of IBM, except in the manner described in the documenta-tion or the applicable licensing agreement governing the use of the software.
© Copyright IBM Corporation 1985, 2002
All rights reserved.
Lotus SoftwareIBM Software GroupOne Rogers Street
Cambridge, MA 02142
US Government Users Restricted Rights — Use, duplication or disclosure restricted by GS ADP
Schedule Contract with IBM Corp.
List of Trademarks
1-2-3, cc:Mail, Domino, Domino Designer, Freelance Graphics, iNotes, Lotus, Lotus Discovery Server,Lotus Enterprise Integrator, Lotus Mobile Notes, Lotus Notes, Lotus Organizer, LotusScript, Notes,QuickPlace, Sametime, SmartSuite, and Word Pro are trademarks or registered trademarks of LotusDevelopment Corporation and/or IBM Corporation in the United States, other countries, or both.AIX, AS/400, DB2, IBM, iSeries, MQSeries, Netfinity, OfficeVision, OS/2, OS/390, OS/400, S/390,Tivoli, and WebSphere are registered trademarks of International Business Machines Corporation in
the United States, other countries, or both. Pentium is a trademark of Intel Corporation in the UnitedStates, other countries, or both. Microsoft, Windows, and Windows NT are registered trademarks of Microsoft Corporation in the United States, other countries, or both. UNIX is a registered trademarkof The Open Group in the United States and other countries. Java and all Java-based trademarks andlogos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States, othercountries, or both.
All other trademarks are the property of their respective owners.
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
3/826
2-11Creating formulas and buttons for the
Web . . . . . . . . . . . . . . . . . . . . . .
2-10Domino applets . . . . . . . . . . . . . . . .
2-9HTML tag attributes for a Domino
server . . . . . . . . . . . . . . . . . . . . . .
2-8Tips for designing Web applications . . . .
2-8Planning a Web application . . . . . . . . . . .
2-3Tips for designing Notes and Web
applications . . . . . . . . . . . . . . . . . .
2-2Planning a Notes and Web application . . . .
2-2Planning a Notes application . . . . . . . . . . .
2-1Planning an application . . . . . . . . . . . . . .
2-12 Planning an Application . . . . . . .
1-18Communicating across platforms . . . . . . .
1-17Extending access to applications . . . . . . .
1-16Sharing, locking, and editing design
elements . . . . . . . . . . . . . . . . . . .
1-15Adding automation . . . . . . . . . . . . . . . .
1-14Structuring your display . . . . . . . . . . . .
1-12Creating navigation . . . . . . . . . . . . . . .
1-11Organizing your data . . . . . . . . . . . . . .
1-8Displaying, collecting, and storing
information . . . . . . . . . . . . . . . . . .
1-7Creating a database . . . . . . . . . . . . . . . . .
1-4Exploring Lotus Domino Designer . . . . . . .
1-2Starting Lotus Domino Designer . . . . . . . .
1-1Overview — applications and databases . . .
1-1
1 Introduction to IBM LotusDomino Designer . . . . . . . . . . . . . . .
xiiiPreface . . . . . . . . . . . . . . . . . . . . . . .
3-10Creating folders for bookmarks or
design elements . . . . . . . . . . . . . .
3-8Creating a bookmark on the Bookmark
bar . . . . . . . . . . . . . . . . . . . . . . .
3-7Using toolbars . . . . . . . . . . . . . . . . . . . .
3-7Organizing your application . . . . . . . . . . .
3-6Starting a database from scratch . . . . . . . . .
3-6To protect individual design elements . . .
3-5To copy individual design elements . . . .
3-4To create a new database by copying an
existing database . . . . . . . . . . . . . .
3-4Copying an existing Domino database . . . . .
3-2Creating a database from a template . . . . . .
3-2Creating databases . . . . . . . . . . . . . . . . .
3-1Domino databases . . . . . . . . . . . . . . . . .
3-13 Creating an Application . . . . . . .
2-23Table of Notes and Domino known limits .
2-21Adding translation components to a
Designer application . . . . . . . . . . .
2-19Translating an application using IBM
Domino Global Workbench . . . . . . .
2-17Creating multilingual applications . . . . . .
2-15Design considerations for accessible
applications . . . . . . . . . . . . . . . . .
2-15Designing an application for maximum
accessibility . . . . . . . . . . . . . . . . .
2-14Planning for integration with WebSphere
and DB2 . . . . . . . . . . . . . . . . . . .
2-13Hide-when options for all applications .
2-12Planning an application for mobile users . .
Contents ii
Contents
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
4/826
4-9Creating programmable tables . . . . . . . .
4-8Creating and formatting horizontal
rules . . . . . . . . . . . . . . . . . . . . . .
4-8Changing all text styles . . . . . . . . . . . .
4-7Creating computed text . . . . . . . . . . . .
4-6Styling text for the Web . . . . . . . . . . . .
4-5Creating a home page for an
application . . . . . . . . . . . . . . . . . .
4-5Displaying a page . . . . . . . . . . . . . . . .
4-3Creating pages . . . . . . . . . . . . . . . . . .
4-1Pages . . . . . . . . . . . . . . . . . . . . . . . . . .
4-14 Designing Pages . . . . . . . . . . . . .
3-28Preventing users from accessing forms and
views in a Web application . . . . . . .
3-27Adding instant messaging to an
application . . . . . . . . . . . . . . . . .
3-25Previewing your design work . . . . . . . . .
3-24Document locking . . . . . . . . . . . . . . . .
3-21Creating image resource sets . . . . . . . . . .
3-17Creating an image resource . . . . . . . . . . .
3-17To set up a file resource for use on the
Web . . . . . . . . . . . . . . . . . . . . . .
3-16To delete a file resource . . . . . . . . . . .
3-16To copy a file resource to your
computer . . . . . . . . . . . . . . . . . .
3-16To prevent a file resource from being
refreshed . . . . . . . . . . . . . . . . . .
3-15To refresh a file resource . . . . . . . . . .
3-15To open a file resource . . . . . . . . . . . .
3-14To create a file resource . . . . . . . . . . .
3-14Sharing file resources . . . . . . . . . . . . . .
3-12Reducing database maintenance with
shared code and shared resources . .
3-11Enabling subscriptions . . . . . . . . . . . .
3-11Copying a design element to a new
location . . . . . . . . . . . . . . . . . . .
5-26Aligning and rearranging elements in a
layout region . . . . . . . . . . . . . . . .
5-25Layout regions . . . . . . . . . . . . . . . . . . .
5-22Using subforms . . . . . . . . . . . . . . . . . .
5-20Customizing a form's window title . . . . . .
5-18Version tracking . . . . . . . . . . . . . . . .
5-17Creating a response hierarchy . . . . . . .
5-13Selected form properties . . . . . . . . . . . . .
5-12Making a form available to Web browsers .
5-9Naming forms . . . . . . . . . . . . . . . . . .
5-9Tips for designing forms . . . . . . . . . . .
5-7Creating and deleting forms . . . . . . . . . . .
5-5Forms and documents . . . . . . . . . . . . . . .
5-2Form elements . . . . . . . . . . . . . . . . . . . .
5-1Forms . . . . . . . . . . . . . . . . . . . . . . . . .
5-15 Designing Forms . . . . . . . . . . . . .
4-38Adding JavaScript header information .
4-37Adding HTML header information . . . .
4-37Programming a page or form . . . . . . . . .
4-34Creating style sheets as shared resources . .
4-32
Setting launch properties for pages or
forms . . . . . . . . . . . . . . . . . . . . .
4-26Layers . . . . . . . . . . . . . . . . . . . . . .
4-23Using HTML on a page, form, or
subform . . . . . . . . . . . . . . . . . . .
4-23Inserting a JavaScript library . . . . . . . .
4-22Embedding a date picker . . . . . . . . . .
4-21Embedding elements . . . . . . . . . . . . .
4-21Creating an attachment . . . . . . . . . . .
4-20Adding an applet . . . . . . . . . . . . . . .
4-19Adding a background color or graphic .
4-15Using graphics . . . . . . . . . . . . . . . . .
4-13Creating links . . . . . . . . . . . . . . . . .
4-12Creating sections . . . . . . . . . . . . . . .
iv Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
5/826
6-11Number fields . . . . . . . . . . . . . . . . .
6-9Rich text fields on the Web . . . . . . . . . .
6-7Text, rich text, and rich text lite fields . . .
6-7Field types . . . . . . . . . . . . . . . . . . . . . .
6-6Field names and labels . . . . . . . . . . . . . . .
6-3Creating a shared field . . . . . . . . . . . . . . .
6-1Creating a single-use field . . . . . . . . . . . .
6-1Fields . . . . . . . . . . . . . . . . . . . . . . . . . .
6-16 Designing Fields . . . . . . . . . . . . .
5-60Testing a form before deploying it . . . . . .
5-59Tips for improving document display time .
5-50Customizing search forms . . . . . . . . . . .
5-49Displaying a customized error message on
the Web . . . . . . . . . . . . . . . . . . .
5-48Customizing the “Form processed”
confirmation for Web users . . . . . . .
5-42Designing a form for contact printing . .
5-41Designing a form for a Domino billing
application . . . . . . . . . . . . . . . . .
5-41Designing a form that lets users make
selections from a view . . . . . . . . . .
5-40Designing a form that prompts users
for information . . . . . . . . . . . . . . .
5-38Designing a form that presents a dialog
box . . . . . . . . . . . . . . . . . . . . . .
5-38Forms that prompt users for input . . . . . .
5-36Profile forms . . . . . . . . . . . . . . . . . . . .
5-33Creating an embedded editor . . . . . . .
5-29Creating an embedded scheduler . . . . .
5-29
Creating an embedded file upload
control . . . . . . . . . . . . . . . . . . . .
5-28Embedded controls . . . . . . . . . . . . . . . .
5-27Adding graphics to a layout region . . . .
5-27Changing the size and style of a layout
region . . . . . . . . . . . . . . . . . . . .
6-57Designing fields that prompt users to
select folders . . . . . . . . . . . . . . . .
6-56Fields for version tracking . . . . . . . . . . .6-51
Reserved fields that control mailing
options . . . . . . . . . . . . . . . . . . . .
6-50Predefined fields with built-in
functionality . . . . . . . . . . . . . . . .
6-49Standard fields used in templates . . . . . . .
6-49To inherit information in a response
hierarchy . . . . . . . . . . . . . . . . . .
6-48To create a field that inherits an entire
document . . . . . . . . . . . . . . . . . .
6-47Creating fields that inherit values . . . . . . .
6-46Storing HTML in a field . . . . . . . . . . . . .
6-46Adding HTML attributes to a field . . . . . .
6-44Creating a field in a layout region . . . . . .
6-42Hiding fields . . . . . . . . . . . . . . . . . . . .
6-39Selected field properties . . . . . . . . . . . . .
6-35Editable field formulas . . . . . . . . . . . .
6-35Time zone fields . . . . . . . . . . . . . . . .
6-35Color fields . . . . . . . . . . . . . . . . . . .
6-32Editable and computed fields . . . . . . . . .
6-30Formula fields . . . . . . . . . . . . . . . . .
6-28Password fields . . . . . . . . . . . . . . . .
6-27Creating aliases for choices in a list . . . .
6-25Generating choices for lists . . . . . . . . .
6-22Creating fields to display lists of
choices . . . . . . . . . . . . . . . . . . . .
6-22Readers and Authors fields . . . . . . . . .
6-21Names fields . . . . . . . . . . . . . . . . . .
6-18Creating a graphical display for
Date/Time fields . . . . . . . . . . . . .
6-18Formulas for Date/Time fields . . . . . .
6-13Date/Time fields . . . . . . . . . . . . . . .
Contents v
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
6/826
7-42Adding categories to views . . . . . . . . .
7-40Display options for views . . . . . . . . . . . .
7-38Setting styles for a standard view or folder .
7-38Generating column totals, averages, and
percents . . . . . . . . . . . . . . . . . . .
7-37Using a column to switch to another view .
7-36Overriding alphabetical sorting with a
hidden column . . . . . . . . . . . . . . .
7-33Sorting documents in views . . . . . . . . . .
7-31Displaying an icon in a column . . . . . . . .
7-29Table of simple functions for columns . . . .
7-24Adding programming to columns . . . . . .
7-22Advanced options for columns . . . . . .7-21Displaying numbers in columns
. . . . . . . .
7-19Formatting date and time columns . . . . . .
7-18Setting styles for columns . . . . . . . . . . . .
7-17Adding titles to columns . . . . . . . . . .
7-17Creating columns in a view . . . . . . . . . . .
7-15Description of document selection
conditions . . . . . . . . . . . . . . . . . .
7-14Table of document selection conditions . . .
7-13
Examples: Programming documents to
display in a view . . . . . . . . . . . . .
7-12Selecting which documents display in a
view . . . . . . . . . . . . . . . . . . . . .
7-9Naming a view or folder . . . . . . . . . . . . .
7-9Designing folders . . . . . . . . . . . . . . . . . .
7-9Creating a default design for new views . .
7-8Copying and deleting views . . . . . . . . .
7-7Creating a standard outline view . . . . . . . .7-5Shared and private views
. . . . . . . . . . . . .
7-4Calendar views . . . . . . . . . . . . . . . . .
7-2Standard outline views . . . . . . . . . . . .
7-1Views . . . . . . . . . . . . . . . . . . . . . . . . .
7-17 Designing Views . . . . . . . . . . . . .
7-73Adding a trash folder to an application .
7-71Refreshing view indexes . . . . . . . . . . . .
7-70Hiding a view . . . . . . . . . . . . . . . . . . .
7-69Allowing users to select view
documents on the Web . . . . . . . . . .
7-67Displaying a view as an applet in Web
applications . . . . . . . . . . . . . . . . .
7-66Using HTML formatting for views and
columns . . . . . . . . . . . . . . . . . . .
7-66Opening a view with a particular
frameset on the Web . . . . . . . . . . .
7-65Designing a form as a view or navigator
template . . . . . . . . . . . . . . . . . . .
7-64To set line counts in embedded views . .
7-64To show a single category in embedded
views . . . . . . . . . . . . . . . . . . . . .
7-63Setting display properties for an
embedded view . . . . . . . . . . . . . .
7-61Creating an embedded view or embedded
folder . . . . . . . . . . . . . . . . . . . . .
7-61Specifying how a view displays in a
Web browser . . . . . . . . . . . . . . . .
7-60Displaying views in Web applications . . . .7-59Setting styles for a calendar view
. . . . . . .
7-56Creating a calendar view . . . . . . . . . . . .
7-55Formulas that look for values in columns
and views . . . . . . . . . . . . . . . . . .
7-52Allowing users to set colors in a view . .
7-50Allowing users to edit or create
documents from a view . . . . . . . . .
7-50Default views . . . . . . . . . . . . . . . . . . .
7-49Identifying unread documents . . . . . . . . .
7-48Formulas for response columns . . . . . . . .
7-47Indenting response documents . . . . . . . .
7-46Categorizing in the All by Category
view . . . . . . . . . . . . . . . . . . . . .
7-44Generating category names . . . . . . . . .
vi Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
7/826
9-26Displaying a navigator when users open a
database . . . . . . . . . . . . . . . . . . .
9-23Adding actions to navigators . . . . . . . . . .
9-22Adding hotspots . . . . . . . . . . . . . . . .
9-22Adding text to and highlighting
navigator objects . . . . . . . . . . . . .
9-20Adding and enhancing graphics in a
navigator . . . . . . . . . . . . . . . . . .
9-20Adding graphic objects to navigators . . . .
9-19Creating a navigator . . . . . . . . . . . . . . .
9-17Navigators . . . . . . . . . . . . . . . . . . . . .
9-17Displaying the outline in a frameset . . . . .
9-16Using the outline applet in Web
applications . . . . . . . . . . . . . . . . .
9-10Selected embedded outline properties . .
9-8Selected outline entry properties . . . . . .
9-7Selected outline properties . . . . . . . . . .
9-7Outline, outline entry, and embedded
outline properties . . . . . . . . . . . . . .
9-5Embedding an outline . . . . . . . . . . . . .
9-3Creating an outline . . . . . . . . . . . . . . .
9-2Outlines . . . . . . . . . . . . . . . . . . . . . . . .9-1Outlines, navigators, and imagemaps
. . . . .
9-1
9 Designing Navigation for anApplication . . . . . . . . . . . . . . . . . . . .
8-11Launching a view or folder into a frameset .
8-10Launching a page or form into a frameset .
8-10Launching a database into a frameset . . . .
8-9Specifying a target frame . . . . . . . . . . . . .
8-6Setting the style for frames . . . . . . . . . . . .8-4Providing content for a frame
. . . . . . . . . .
8-2Creating a frameset . . . . . . . . . . . . . . . . .
8-1Overview of framesets . . . . . . . . . . . . . . .
8-18 Designing Framesets . . . . . . . . .
7-74Adding a view for soft deletions . . . . .
10-47Testing agents . . . . . . . . . . . . . . . . .
10-46Troubleshooting agents . . . . . . . . . . . . .
10-41Security for agents on servers and the Web .
10-40Setting up agent security using the
Security tab . . . . . . . . . . . . . . . . .
10-38Examples of agents to run before Web
users open or save documents . . . . .
10-36Useful agent procedures . . . . . . . . . . .
10-34Triggering an agent on a schedule . . . .
10-32Triggering an agent on an event . . . . . .
10-30Creating an agent . . . . . . . . . . . . . . . . .
10-28Creating a program for an event . . . . . . .
10-27Creating an action hotspot . . . . . . . . . . .
10-26Creating a formula pop-up . . . . . . . . . . .
10-25Creating a text pop-up . . . . . . . . . . . . . .
10-22Creating a button . . . . . . . . . . . . . . . . .
10-17Creating and inserting shared actions . . . .
10-15Action bar . . . . . . . . . . . . . . . . . . . . . .
10-9Creating a form, subform, page, or view
action . . . . . . . . . . . . . . . . . . . . .
10-6Events . . . . . . . . . . . . . . . . . . . . . . . .10-5Agents
. . . . . . . . . . . . . . . . . . . . . . . .
10-4Hotspots . . . . . . . . . . . . . . . . . . . . . . .
10-2Actions . . . . . . . . . . . . . . . . . . . . . . . .
10-1Automation . . . . . . . . . . . . . . . . . . . . .
10-110 Automation in Applications . .
9-30Creating an imagemap . . . . . . . . . . . . . .
9-30Testing navigators . . . . . . . . . . . . . . . .
9-29Importing a navigator into a form,
subform, page, or document . . . . . .
9-28Overriding an embedded navigator
with a navigator template . . . . . . . .
9-27Embedding navigators in a form, subform,
page, or document . . . . . . . . . . . .
9-27Hiding navigators . . . . . . . . . . . . . . . . .
Contents vi
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
8/826
11-18Tips and troubleshooting for Java applets .
11-15Saving applet data . . . . . . . . . . . . . .
11-13Setting security for applets . . . . . . . . .
11-12Refreshing and exporting applet files . .
11-11Copying and deleting applets . . . . . . . . .
11-11Stopping, selecting, and restarting applets .
11-10Setting up shared applet resources . . . .
11-8Setting properties . . . . . . . . . . . . . . .
11-7Setting Alternate HTML attributes . . . .
11-7Setting HTML attributes . . . . . . . . . . .
11-6Specifying applet parameters, attributes,
and properties . . . . . . . . . . . . . . .
11-5Setting applet parameters . . . . . . . . . . . .11-5Linking to an applet on the Web
. . . . .
11-2Enabling Java applets . . . . . . . . . . . . . .
11-2Overview of adding a Java applet to an
application . . . . . . . . . . . . . . . . .
11-1 Java applets overview . . . . . . . . . . . . . .
11-1
11 Including Java Applets inApplications . . . . . . . . . . . . . . . . . .
10-66Hiding automated components . . . . . . . .
10-65Actions and agents names . . . . . . . . . . .
10-63Table of supported JavaScript objects
for automated components . . . . . . .
10-62 JavaScript for automation . . . . . . . . . . .
10-61Formulas for automation . . . . . . . . . . . .
10-59Restricted LotusScript and Java agent
operations . . . . . . . . . . . . . . . . . .
10-58Using LotusScript for automation . . . . . .
10-54Simple actions for automation . . . . . . . . .
10-54AgentRunner . . . . . . . . . . . . . . . . . .
10-53NotesLog Class . . . . . . . . . . . . . . . .
10-51Agent Manager debugging information .
10-49Notes server console commands . . . . .
10-48Viewing the agent log . . . . . . . . . . . .
14-5Troubleshooting tips for OLE and
ActiveX objects . . . . . . . . . . . . . . .
14-4Adding OLE custom controls to a form .
14-2Linking and embedding objects in forms . .14-1Designing applications using OLE
. . . . . .
14-1
14 Including OLE and ActiveXObjects in Applications . . . . . . . .
13-16Writing formulas and scripts to access
relational databases . . . . . . . . . . . .
13-15Setting up a view for ODBC access . . . . . .
13-14Registering data sources for ODBC . . . .
13-13Using ODBC to access relational databases
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13-11Importing data from an external
database into an application . . . . . .
13-10Using a data connection resource on a
form . . . . . . . . . . . . . . . . . . . . .
13-9Enabling connections to external
databases . . . . . . . . . . . . . . . . . .
13-7Specifying options for the data
connection resource . . . . . . . . . . . .
13-6Creating a database connection
resource . . . . . . . . . . . . . . . . . . .
13-6Establishing a data source resource for
use with a DCR . . . . . . . . . . . . . .
13-5Overview of Data Connection Resources . .
13-3Table of connectivity solutions . . . . . . .
13-1Accessing data in enterprise applications . .
13-1
13 Connecting to EnterpriseData . . . . . . . . . . . . . . . . . . . . . . . . .
12-4Running servlets in Domino . . . . . . . . . .
12-2Comparing agents, servlets, and CGI
programs . . . . . . . . . . . . . . . . . .
12-1Overview of Java servlets . . . . . . . . . . . .
12-1
12 Including Java Servlets inWeb Applications . . . . . . . . . . . . .
viii Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
9/826
15-17Viewing the XML in an application
with DXL utilities . . . . . . . . . . . . .
15-15Using a Java servlet to generate XML . . . .
15-13Using an agent to generate XML . . . . . . .15-11Using a view to generate XML
. . . . . . . . .
15-8Putting XML in a form or page . . . . . . . .
15-6XML terminology . . . . . . . . . . . . . . . . .
15-5Ways to include XML in a Designer
application . . . . . . . . . . . . . . . . .
15-4Domino applications and XML . . . . . . . .
15-1What is XML? . . . . . . . . . . . . . . . . . . .
15-115 Including XML and ViewingDXL in Designer Applications . . .
14-20Preparing a form to exchange data . . . . . .
14-19Exchanging data using Notes/FX . . . . . . .
14-17Publishing actions . . . . . . . . . . . . . . . .
14-16Hiding an embedded object in a
document . . . . . . . . . . . . . . . . . .
14-14Designing a form to hide the Notes
document . . . . . . . . . . . . . . . . . .
14-13Designing a form that launches an
object from modal dialog boxes . . . .
14-12Specifying the event that causes an
object to autolaunch . . . . . . . . . . .
14-12Launching an object "in-place" or
"out-of-place" . . . . . . . . . . . . . . . .
14-10Designing forms that launch objects
automatically . . . . . . . . . . . . . . . .
14-9Launching objects automatically . . . . . . .
14-8Updating objects by document . . . . . . .14-8
Modifying a form to run a custom
control in Read mode . . . . . . . . . . .
14-6Modifying a form so that it sizes an
OLE custom control . . . . . . . . . . . .
14-6Modifying a form to size an embedded
object . . . . . . . . . . . . . . . . . . . . .
18-12Default ACL entries . . . . . . . . . . . . . . .
18-11Editing the database ACL . . . . . . . . . . . .
18-9Roles in the ACL . . . . . . . . . . . . . . . . .
18-6Access level privileges in the ACL . . . . . .
18-3Access levels in the ACL . . . . . . . . . . . .
18-2Setting up a database ACL . . . . . . . . . . .
18-2The database access control list . . . . . . . .
18-1Security in an application . . . . . . . . . . . .
18-118 Application Security . . . . . . . .
17-10Using WebDAV in a replicated
environment . . . . . . . . . . . . . . . .
17-7Accessing database resources using a
WebDAV client . . . . . . . . . . . . . .
17-4
Editing and managing database resources
using a WebDAV client . . . . . . . . .
17-3Organizing tools on the Tools menu . . .
17-2Customizing the Designer Tools menu . . .
17-1Developing applications using third-party
tools and WebDAV . . . . . . . . . . . .
17-1
17 Using Third-Party Tools andWebDAV to Extend anApplication . . . . . . . . . . . . . . . . . . .
16-8
Example of using an agent that sends
announcements . . . . . . . . . . . . . .
16-7Example of using an agent that mails
action item notices . . . . . . . . . . . .
16-6Example of using an agent that sends
automatic replies . . . . . . . . . . . . .
16-5Creating a database that receives mailings .
16-5Displaying the Mail Send dialog box . . . . .
16-5Mailing features and Web applications . . .
16-3Setting up automatic mailing . . . . . . . . . .
16-2Planning workflow . . . . . . . . . . . . . . . .
16-1Workflow overview . . . . . . . . . . . . . . .
16-1
16 Creating a WorkflowApplication . . . . . . . . . . . . . . . . . . .
Contents ix
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
10/826
18-41Creating write access lists to limit folder
access . . . . . . . . . . . . . . . . . . . . .
18-40Creating read access lists to limit view and
folder access . . . . . . . . . . . . . . . .
18-38Limiting Editor access to sections of forms .
18-36Creating controlled-access sections of forms . . . . . . . . . . . . . . . . . . . . .
18-36Setting up the Administration Process for
databases . . . . . . . . . . . . . . . . . .
18-35Updating Readers and Authors fields . . . .
18-34Tracking who edits a document . . . . . . . .
18-33Examples of restricting who can read or
edit specific documents . . . . . . . . .
18-32To create Readers and Authors fields . .
18-31Using an Authors field to restrict who
can edit specific documents. . . . . .
18-30Using a Readers field to restrict access
to specific documents . . . . . . . . . .
18-30Restricting who can read or edit
documents . . . . . . . . . . . . . . . . .
18-30Controlling access to a database during
design . . . . . . . . . . . . . . . . . . . .
18-29Application design element security . . . . .
18-28Examples of ACL settings for a Webdatabase . . . . . . . . . . . . . . . . . . .
18-26Maximum Internet name-and-password
access . . . . . . . . . . . . . . . . . . . . .
18-26To require an SSL connection to a
database . . . . . . . . . . . . . . . . . . .
18-25Enforcing encrypted Web transactions
using SSL . . . . . . . . . . . . . . . . . .
18-24Application access for Web users . . . . . . .
18-24Security overview for Web applications . . .
18-23To display a name's effective access . . . . .
18-23Displaying the ACL history . . . . . . . . . .
18-21Enforcing a consistent access control list . .
18-20User types in the ACL . . . . . . . . . . . . . .
18-13Acceptable entries in the ACL . . . . . . . . .
19-6Writing Help for fields . . . . . . . . . . . .
19-5Creating context-sensitive Help for an
application . . . . . . . . . . . . . . . . .
19-3Creating "Using Database" and "About
Database" documents . . . . . . . . . .
19-3Providing online Help for an application . .
19-2Creating a database icon for a Notes
application . . . . . . . . . . . . . . . . .
19-1Completing an application . . . . . . . . . . .
19-1
19 Completing an Applicationand Managing Design Changes . .
18-60Attaching signatures to documents . . . . . .
18-57Using electronic signatures in Notes
applications . . . . . . . . . . . . . . . . .
18-57To encrypt all documents automatically .
18-56Managing encrypted information . . . . . . .
18-55Examples: Creating a field that
maintains a list of encryption keys . .
18-54To create a field that maintains a list of
secret encryption keys . . . . . . . . . .
18-53Merging secret encryption keys . . . . . . . .
18-51Distributing secret encryption keys . . . . . .
18-50Creating secret encryption keys . . . . . . . .
18-49Allowing the author to choose the
encryption key . . . . . . . . . . . . . . .
18-49Enabling encryption for a field . . . . . . .
18-49Procedural overview: encrypting
documents . . . . . . . . . . . . . . . . .
18-47Encrypting documents and fields . . . . . . .
18-46To encrypt a database . . . . . . . . . . . .
18-46Encryption levels . . . . . . . . . . . . . . .
18-45Database encryption . . . . . . . . . . . . . . .
18-45Notes and Domino encryption . . . . . . . . .
18-43
Creating public access pages, forms,subforms, outlines, views, agents,and style sheets . . . . . . . . . . . . . .
18-41Access-controlled forms and documents .
x Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
11/826
19-40Design changes and replication . . . . . . . .
19-38Replacing a design . . . . . . . . . . . . . . . .
19-36Refreshing a design . . . . . . . . . . . . . . . .
19-35Making and distributing design changes . .
19-33Synchronizing databases with master
templates . . . . . . . . . . . . . . . . . .
19-32Linking individual design elements to a
template . . . . . . . . . . . . . . . . . . .
19-31Linking a database to a template . . . . .
19-30Creating a design library template . . . .
19-29Examples: Creating templates . . . . . . .
19-28Creating templates . . . . . . . . . . . . . . . .
19-27Templates . . . . . . . . . . . . . . . . . . . . .19-25Setting database launch properties
. . . .
19-24Changing database and design properties .
19-22Using agents to update documents
affected by form changes . . . . . . . .
19-21Checking field values in a document . . . . .
19-20Updating documents after redesigning a
form . . . . . . . . . . . . . . . . . . . . .
19-18Design synopsis . . . . . . . . . . . . . . . . . .
19-17Renaming design elements . . . . . . . . .
19-17Renaming a database . . . . . . . . . . . . . . .
19-16Pilot testing an application . . . . . . . . . . .
19-14Making a design copy of a completed
application . . . . . . . . . . . . . . . . .
19-12Checking view design . . . . . . . . . . . . . .
19-11Checking field design . . . . . . . . . . . . . .
19-10Checking form design . . . . . . . . . . . . . .
19-9Checking the application design before
release . . . . . . . . . . . . . . . . . . . .
19-9Restricting design changes . . . . . . . . . . .
19-8Specifying a home page in the Web site
document . . . . . . . . . . . . . . . . . .
19-7Creating and displaying more detailed
application Help . . . . . . . . . . . . . .
21-9Monitoring database size . . . . . . . . . . . .
21-8Controlling database size . . . . . . . . . . . .
21-7To set database properties that optimize
database performance . . . . . . . . . .
21-1Properties that improve database
performance . . . . . . . . . . . . . . . .
21-1Setting advanced database properties . . . .
21-1
21 Optimizing andTroubleshooting Databases . . . . .
20-19Forcing a server database to replicate . . . .
20-18Disabling and enabling replication of a
database . . . . . . . . . . . . . . . . . . .
20-16Examples of specifying replication
settings for multiple replicas . . . . . .
20-15Specifying replication settings . . . . . . .
20-14Limiting what a replica sends . . . . . . .
20-13Assigning miscellaneous replication
settings . . . . . . . . . . . . . . . . . . . .
20-10Limiting the contents of a replica . . . . .
20-8Replication settings . . . . . . . . . . . . . . . .
20-6Creating one replica manually . . . . . . .
20-6Setting up replication for an application . . .
20-4To copy a new database to a server . . . .
20-4Copying a new database to a server . . . . .
20-3Optional tasks . . . . . . . . . . . . . . . . .
20-2Mandatory tasks . . . . . . . . . . . . . . . .
20-2Rolling out a database . . . . . . . . . . . . . .
20-1Database design, management, and
administration . . . . . . . . . . . . . . .
20-120 Deploying an Application . . . .
19-46Locking a design element . . . . . . . . . . . .
19-44Hiding design elements . . . . . . . . . . . . .
19-43Hiding the design of a database . . . . . . . .
19-42Modifying multiple design elements . . . . .
19-41Preventing design changes . . . . . . . . . . .
Contents x
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
12/826
21-31The database stops replicating . . . . . .
21-30Database replicas are different sizes . . .
21-30Changes to the database title do not
replicate . . . . . . . . . . . . . . . . . . .
21-30
A database replica is not receiving
design changes . . . . . . . . . . . . . . .
21-29A database replica does not contain all
the documents it should . . . . . . . . .
21-28Troubleshooting replication problems . . . .
21-27Using Find Note to analyze a document
reported in the log file . . . . . . . . . .
21-26Users experience a delay when
accessing the database . . . . . . . . . .
21-25Users cannot access the database . . . . .
21-25Troubleshooting database performance . . .
21-24Notifying users of a moved database . . .
21-24Updating database indexes and views . . . .
21-23Managing database activity recording
in databases . . . . . . . . . . . . . . . . .
21-22Viewing database activity statistics
generated by the Statlog task . . . . . .
21-21Monitoring database activity . . . . . . . . . .
21-20Consolidating replication or save
conflicts . . . . . . . . . . . . . . . . . . .
21-19Replication or save conflicts . . . . . . . . . .
21-18Viewing replication events in the log
file . . . . . . . . . . . . . . . . . . . . . . .
21-16The database replication history . . . . . .
21-16Monitoring replication of a database . . . . .
21-15Examples of using an agent to delete
and archive documents . . . . . . . . .
21-14Using an agent to delete and archive
documents . . . . . . . . . . . . . . . . .
21-14Viewing a document Archiving Log . . .
21-12Document archiving tool . . . . . . . . . . . .
21-9Compacting databases . . . . . . . . . . . . . .
Index-1Index . . . . . . . . . . . . . . . . . . . . . . .
F-1
Appendix F Accessibility andKeyboard Shortcuts . . . . . . . . . . . .
E-1
Appendix E URL Commands forWeb Applications
. . . . . . . . . . . . .
D-1
Appendix D Features to AvoidUsing in Web Applications . . . . . . .
C-1
Appendix C DevelopingApplications Using MAPI . . . . . . . .
B-1
Appendix B Importing to andExporting from Views . . . . . . . . . . .
A-1Appendix A Domino DesignerTemplates. . . . . . . . . . . . . . . . . . . .
22-22Adding a directory catalog to a DOLS
subscription . . . . . . . . . . . . . . . . .
22-15Optional tasks for DOLS developers . . . . .
22-5Configuring the DOLS subscription . . . . .
22-4Customizing how users install the
DOLS subscription . . . . . . . . . . . .
22-2Copying DOLS design elements into the
main database . . . . . . . . . . . . . . .
22-2Overview of DOLS developer tasks . . .
22-1Domino Off-Line Services . . . . . . . . . . . .
22-1
22 Enabling an Application forDomino Off-Line Services . . . . . .
21-33Deleted documents reappear . . . . . . . .
21-33Unexpected deletions occur in a replica .
21-32Deletions are not replicating . . . . . . . .
21-32You see the message "Database is notfully initialized yet" . . . . . . . . . . . .
21-31
The new replica contains the ACL of the source server but you did notcopy the ACL . . . . . . . . . . . . . . . .
21-31The database replica has not received
ACL changes . . . . . . . . . . . . . . . .
xii Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
13/826
Preface
The documentation for IBM Lotus Notes, IBM Lotus Domino, and IBMLotus Domino Designer is available online in Help databases and, with theexception of the Notes client documentation, in print format.
License information
Any information or reference related to license terms in this document isprovided to you for your information. However, your use of Notes andDomino, and any other IBM program referenced in this document, is solelysubject to the terms and conditions of the IBM International ProgramLicense Agreement (IPLA) and related License Information (LI) document
accompanying each such program. You may not rely on this documentshould there be any questions concerning your right to use Notes andDomino. Please refer to the IPLA and LI for Notes and Domino that islocated in the file LICENSE.TXT.
System requirements
Information about the system requirements for Lotus Notes and Domino islisted in the Release Notes.
Printed documentation and PDF files
The same documentation for Domino, and Domino Designer that is avail-able in online Help is also available in printed books and PDF files.
You can order printed books from the IBM Publications Center atwww.ibm.com/shop/publications/order.
You can download PDF files from the IBM Publications Center and fromthe Documentation Library at the Lotus Developer Domain atwww-10.lotus.com/ldd.
Related information
In addition to the documentation that is available with the product, otherinformation about Notes and Domino is available on the Web sites listedhere.
IBM Redbooks are available at www.redbooks.ibm.com.
xiii
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
14/826
A technical journal, discussion forums, demos, and other information isavailable on the Lotus Developer Domain site atwww-10.lotus.com/ldd.
Table of conventions
This table lists conventions used in the Notes and Domino documentation.
Hyphens are used between menu names, to showthe sequence of menus.
hyphens in menu names(File - Database - Open)
File names are shown in uppercase, for exampleNAMES.NSF.
file names
Code examples and console commands areshown in monospaced type.
monospaced type
Variables and book titles are shown in italic type.italics
DescriptionConvention
Structure of Notes and Domino documentation
This section describes the documentation for Notes, Domino, and DominoDesigner. The online Help databases are available with the softwareproducts. Print documentation can be downloaded from the Web orpurchased separately.
Release NotesThe Release Notes describe new features and enhancements, platformrequirements, known issues, and documentation updates for Lotus Notes 6,Lotus Domino 6, and Lotus Domino Designer 6. The Release Notes are
available online in the Release Notes database (README.NSF). You canalso download them as a PDF file.
Documentation for the Notes clientThe Lotus Notes 6 Help database (HELP6_CLIENT.NSF) contains thedocumentation for Notes users. This database describes user tasks such assending mail, using the Personal Address Book, using the Calendar andScheduling features, using the To Do list, and searching for information.
Documentation for Domino administrationThe following table describes the books that comprise the Domino Admin-istration documentation set. The information in these books is also foundonline in the Lotus Domino Administrator 6 Help database(HELP6_ADMIN.NSF).
The book Installing Domino Servers ships with Domino. The other books areavailable for purchase, or for free download as PDF files.
xiv Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
15/826
Describes how to set up, manage, and troubleshootDomino clusters.
Administering DominoClusters
Describes how to register and manage users and groups,and how to register and manage servers includingmanaging directories, connections, mail, replication,security, calendars and scheduling, activity logging,databases, and system monitoring. This book alsodescribes how to use Domino in a service providerenvironment, how to use Domino Off-Line Services, andhow to use IBM Tivoli Analyzer for Lotus Domino.
Administering theDomino System,Volumes 1 and 2
Describes how to plan a Domino installation; how toconfigure Domino to work with network protocols suchas Novell SPX, TCP/IP, and NetBIOS; how to installservers; and how to install and begin using DominoAdministrator and the Web Administrator.
Installing DominoServers
Describes how to upgrade existing Domino servers andNotes clients to Notes and Domino 6. Also describes howto move users from other messaging and directorysystems to Notes and Domino 6.
Upgrade Guide
DescriptionTitle
Documentation for Domino DesignerThe following table describes the books that comprise the Domino Designerdocumentation set. The information in these books is also found online inthe Lotus Domino Designer 6 Help database (HELP6_DESIGNER.NSF)with one exception: Domino Enterprise Connection Services (DECS) Installationand User Guide is available online in a separate database, DECS User Guide
Template (DECSDOC6.NSF). The printed documentation set also includesDomino Objects posters.
In addition to the books listed here, the Domino Designer Templates Guide isavailable for download in NSF or PDF format. This guide presents anin-depth look at three commonly used Designer templates: TeamRoom,Discussion, and Documentation Library.
continued
Introduces programming in Domino Designer anddescribes the formula language.
Domino Designer ProgrammingGuide,Volume 1: Overview andFormula Language
Explains how to create all the design elements usedin building Domino applications, how to share
information with other applications, and how tocustomize and manage applications.
Application Development withDomino Designer
DescriptionTitle
Preface xv
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
16/826
Provides information and instructions for using LEIand its activities. The online documentation file
names are LEIDOC.NSF and LEIDOC.PDF. Thisdocument is for LEI customers only and is suppliedwith LEI, not with Domino.
IBM Lotus EnterpriseIntegrator for Domino (LEI)
Activities and User Guide
Describes installation, configuration, and migrationinformation and instructions for LEI. The onlinedocumentation file names are LEIIG.NSF andLEIIG.PDF. This document is for LEI customersonly and is supplied with LEI, not with Domino.
IBM Lotus EnterpriseIntegrator for Domino (LEI)Installation Guide
Describes how to use the LC LSX to
programmatically perform Lotus Connector-relatedtasks outside of, or in conjunction with, either LEIor DECS. This online documentation file name isLSXLC6.NSF.
Lotus Connector LotusScript
Extensions Guide
Describes how to configure Lotus Connectors foruse with either DECS or IBM Lotus EnterpriseIntegrator for Domino (LEI). It also describes howto test connectivity between DECS or LEI and anexternal system, such as DB2, Oracle, or Sybase.Lastly, it describes usage and feature options for allof the base connection types that are supplied withLEI and DECS. This online documentation filename is LCCON6.NSF.
Lotus Connectors andConnectivity Guide
Describes how to use Domino EnterpriseConnection Services (DECS) to access enterprisedata in real time.
Domino Enterprise ConnectionServices (DECS) Installationand User Guide
Describes the LotusScript programming language.LotusScript Language Guide
Describes the XML and JSP interfaces for access todatabases and other Domino structures.
Domino Designer ProgrammingGuide,Volume 4: XML Domino DTDand JSP Tags
Provides reference information on using the Javaand CORBA classes to provide access to databasesand other Domino structures.
Domino Designer ProgrammingGuide,Volume 3: Java/CORBA Classes
Describes the LotusScript/COM/OLE classes foraccess to databases and other Domino structures.
Domino Designer ProgrammingGuide,Volumes 2A and 2B:LotusScript/COM/OLE Classes
DescriptionTitle
xvi Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
17/826
Chapter 1Introduction to IBM Lotus Domino Designer
Welcome to IBM® Lotus® Domino Designer®. Domino Designer is anintegrated application development environment that lets developersand Web site designers create, manage, and deploy secure, interactiveapplications.
This overview introduces some of the features you will use to createapplications.
The “What’s new in this release” chapter provides quick links to topicsdefining the new features in Lotus Domino Designer Release 6.
Overview — applications and databases
One major focus of Domino Designer Release 6 is on enhancing theaccessibility of your Domino applications by enabling you to:
Share, lock, and edit design elements
Provide nontraditional means for accessing your applications
Communicate across platforms
Applications
Domino applications enable people to share, collect, track, and organizeinformation, using Lotus Notes® or the Web. Using Lotus DominoDesigner, developers can create applications to meet a variety of businessneeds, including:
Workflow applications that route information.
Tracking applications that monitor processes, projects, performance,or tasks.
Collaboration applications that create a forum for discussion andcollaboration.
Data integration applications that work with relational databases andtransactional systems.
Dynamic applications that produce content based on, for example,user name, user profile, access rights, or time of day.
1-1
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
18/826
Localization and Management applications that use Domino GlobalWorkBench to translate Lotus Domino databases and Web sites.
Databases
All Notes applications contain one or more databases. You create adatabase to use as the container for the data, logic, and design elements
in your application. Design elements include:
Pages
Forms
Outlines
Navigators
Views
Folders
Framesets
Shared Resources
Agents
Starting Lotus Domino Designer
There are three ways to start Lotus Domino Designer from the Notes®client:
From the Bookmark bar
From a database
From the command line
To start Domino Designer from the Bookmark bar in the Notes client
Click the Domino Designer icon on the Bookmark bar.
Note If you do not see the Domino Designer icon, Domino Designermay not be installed on your system.
The customizable welcome page of Domino Designer displays.
From the Domino Designer welcome page you can open an existingdatabase or create a new one. When you open a database, either a new orexisting one, the Domino Designer Work pane displays.
1-2 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
19/826
To start Domino Designer from a database in the Notes client
If you already have a database to work with, you can start DominoDesigner directly from that database. You must have Designer orManager access to the database in the ACL.
1. Open the database.
2. Choose View - Design.
Tip You can also right-click the database icon on the Bookmark bar andselect Open in Designer from the list.
To start Domino Designer from the command line
Note You can only use this method if you have already openedDesigner and know the Replica ID of a database and Note ID of adocument in that database. Also, the user whose Notes ID is used whenNotes is launched must have at least Designer access to the database.
You can open a specific database in Domino Designer by entering itsReplica ID and a Note ID in the command line.
1. From the MS-DOS prompt, switch to the Notes directory.
2. Enter either:
designer Notes:///Rep_id/Note_id (for a local database)
designer Notes://Server_Name/Rep_id/Note_id (for a hosteddatabase)
where Rep_id is the Replica ID of the database(do not include thecolon), Note_id is the Note ID of a document in that
database(include only the characters that follow the NT and theseries of zeros that make up the ID), and Server_Name is the name of the server/database as it appears in the Design pane, with the servername, followed by a slash, then the database name.
From Designer, you can find a database’s Replica ID by opening theDatabase Properties box. The Replica ID, which is a series of numbersand letters, for example, 85256BE5:0051F014, is listed on the Info tab.From Notes, you can find the Note ID for a document by opening theDocument Properties box. The Note ID, which is a series of numbers andletters following the letters NT, for example, NT000002AA, is listed on
the Document IDs tab. Given these Replica and Note IDs, you could openthis database if it was local by entering:
designer Notes:///85256BE50051F014/2AA
To open this database (named customer.nsf) hosted by the Casco/Bayserver, enter:
designer Notes://Casco/customer.nsf/85256BE50051F014/2AA
Introduction to IBM Lotus Domino Designer 1-3
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
20/826
Alternatively, you can use LotusScript to retrieve the Replica ID of adatabase and Note ID of a document. You can also use the formulalanguage @functions @ReplicaID and @NoteID to retrieve them.
Exploring Lotus Domino DesignerBuilding a great application requires the right tools. You can think of Domino Designer as your workshop — it contains all the tools you needto build a powerful application. Before you start building, examine thework area.
Menu barPreview buttons
Properties box button
Window tabs
Design bookmarks
Design action buttons
Bookmark bar
Design pane
Work pane
1-4 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
21/826
When a design element or resource type is selected inthe Design pane, displays the Design list. When anelement or resource is selected from the Design list,displays two sections. The upper section contains theWork area for the element or resource. The lowersection contains the Programmer’s pane, which isshown in the illustration below.
Work pane
Let you navigate among the open windows in yourworkspace.
Window tabs
Opens the Properties box for the active design element.Properties box button
Launch a browser to preview your work.Preview buttons
Presents context-sensitive menus of Designercommands.
Menu bar
Listed along the left side of the welcome page, bookmarks help you to quickly access and organize
your databases. You can drag a database onto the bookmark pane to bookmark it or you can create afolder on the bookmark pane to which you can dragrelated databases. By default, Designer provides aRecent Databases folder. You can create additional bookmarks and folders.
Designer bookmarks
Displays the design elements and resource types that adatabase can contain. If you click an element, such asPages for example, a list of the pages stored in thecurrent database displays in a Design list on the Workpane. The Design action button at the top of the Designlist for Pages enables you to create a new page.
Design pane
Displays a list of the design elements or resources thatare stored in the current database. This list displays in
the Work pane. When you click a list item, the Workpane changes to display the work area for the selectedelement or resource.
Design list
These convenient buttons trigger common tasks, such ascreating new design elements.
Design action buttons
PurposeItem
Introduction to IBM Lotus Domino Designer 1-5
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
22/826
Title barReference tab
Objects tab
Info list
Script area
Errors box
Lets you enter formulas in the Script area. Formulas can be written inFormula language, LotusScript, JavaScript, or simple actions.
Note that you can print source code by selecting File - Print when youare in the Programmer’s pane. You can print any code you can view inthe Programmer’s pane.
Scriptarea
The Reference tab of the Info List is language sensitive; the contents of the Reference tab change depending on the language selected. If youare editing in the Formula language, the window contains@commands, @functions and fields. If you are editing in LotusScript,the window contains LotusScript information. If you are editing in
JavaScript, the window contains information about the DocumentObject Model. If you are editing in Java, the window contains Java-related information.
Reference tab
Lets you navigate between objects and events in the Programmer’spane. To work on an object, select it to expand its list of properties andevents. If you select a property or event, the script area of theProgrammer’s pane changes to show the code that describes it. Eventsand properties that are already programmed appear in a darker color.
Objectstab
Scrollable window that displays the objects and coding referenceinformation for the design element currently displayed in the Work
area.
Info List
PurposeItem
1-6 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
23/826
Properties boxes
Properties boxes are tools you use to select or modify settings for adesign element. Properties boxes have tabs and each tab presentsdifferent attributes or options. If you hold the cursor over the icon on atab, the name of the tab appears. In most windows, right clicking opens
the Properties box for the active design element. You can also chooseDesign — Properties from the menu.
Properties boxes are context-sensitive so you can leave them open onyour workspace and they will change to reflect the element that you areworking with.
Tip You can also collapse some Properties boxes into context-sensitivetool bars by double-clicking the top of the box.
Creating a database
There are three ways to create a database:
Using a template.
The fastest way to create a database is to use one of the Dominotemplates included with Domino Designer. Domino Designer
includes templates for creating a variety of applications. Applicationscreated using one of the Domino Designer templates can be used asis or customized.
To decide if there is a template that is right for you, see the Table of Domino Designer templates.
Copying an existing database.
Introduction to IBM Lotus Domino Designer 1-7
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
24/826
If you have access to a database that already has all the elements youare looking for, you can copy the design and create a new databasewith the same features. Once you have created the database, you cancustomize it to meet your company’s needs.
Building your own.
If you need to create a unique database, build your own. Choose File- Database - New from the Domino Designer menu. Name thedatabase, select Blank from the template list, and click OK. Thiscreates an empty database in which you can create your own designelements.
For more information, see the chapter, “Creating an application.”
Displaying, collecting, and storing information
How you display, collect, and store information is an important part of any application. The design elements you use to accomplish these tasksare:
Pages
Forms and documents
Fields
Starting in Lotus Domino Designer Release 6, you can use layers onpages and forms. Arranging fields, buttons, and other UI content on alayer enables you to develop your page or form content in chunks that
can then be easily organized and quickly rearranged.
Pages
A page is a database design element that displays information. Pages area familiar Web concept. Almost every Web site has a home page — apage that contains information about the company, graphics thatenhance the page, and links that take you to other places within the siteor elsewhere on the Web.
1-8 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
25/826
Pages can be used anytime you are displaying information to the user.Pages can contain:
Layers
Text
Tables Graphics
Applets
Embedded objects such as views
Links
Pages often work in conjunction with framesets to display graphics, sitenavigation, or applets.
For more information on layers, see the chapter “Designing Pages.”
Forms and documents
Forms, like pages, display information. Everything that can be done witha page can be done with a form. What sets forms apart from pages is thatforms can be used to collect information. A form provides the structurefor creating and displaying documents. Documents are the elements thatstore data in the database.
Introduction to IBM Lotus Domino Designer 1-9
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
26/826
When you create a form in Designer, users can open the form in theNotes client from the Create menu. On the Web, you must provide a
button or action that opens the form. When the user completes the formand saves it, the information is saved as a document. When a userreopens the document, the document uses the form as a template fordisplaying the data.
For more information on forms and documents, see the chapter“Designing Forms.”
Fields
Fields are the elements on forms that collect data. Each field on a formstores a single type of information, which is stored in documents. A
field’s data type defines the kind of information a field accepts.
You can create fields in the following data types:
Text
Date/Time
Number
Dialog List
Check box
Radio button Listbox
Combo box
Rich text
Authors
Names
1-10 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
27/826
Readers
Password
Formula
Time zone
Rich text lite
Color
You decide if a field is editable — that is, populated by user input, orcalculated by formulas. You can program fields to retrieve data fromother Domino applications or from external sources. In addition, you cancreate shared fields, which can be used in many forms within the samedatabase.
For more information, see the chapter “Designing Fields.”
Organizing your data
You organize the documents in your database using:
Views
Folders
Views
Views are the entry point to the data stored in a database because theydisplay a sorted or categorized list of documents. Every database must
have at least one view, although most databases have more than one.Views select the documents they display programmatically, so you cancreate a view that shows all of the documents in your database or onlysome of the documents, based on a formula. Views can also sort thedocuments they display by a field on the form, such as date, category, orauthor. Note that you can create views that are hidden from users butorganize your data so that other applications can retrieve the informationfrom the documents.
Introduction to IBM Lotus Domino Designer 1-11
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
28/826
For more information, see the chapter “Designing Views.”
Folders
A folder is a container that stores documents. Folders have the same
design elements as views, and you design folders in much the same wayas a view. The difference between folders and views is that a viewalways has a document selection formula that collects and displaysdocuments automatically. A folder remains empty until users orprograms add documents to the folder.
For more information on folders, see Lotus Notes 6 Help.
Creating navigation
Every application needs to include a way to navigate from one place toanother. You add navigation to an application using:
Outlines
Navigators
When you create a new database from a blank template, Designerprovides a default navigation structure called the Folder pane(sometimes called the Navigation pane). The Folder pane displays all theshared views and folders in the database. It displays on the left pane of the Notes client and on the top left of a browser window. You can chooseto use this navigation structure or design a different one.
Outlines
You can create an outline to customize the Folder pane of an application.An outline is the skeleton of your application: each outline entryrepresents a key piece of the application. An outline can include background graphics, custom icons, links, or actions. When the outline is
1-12 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
29/826
embedded on a page or form, users can click on the outline entries,which take them where you want them to go. The process of creating anavigation structure with an outline involves three steps:
Create a new or default outline and create an outline entry for eachpiece of the application you want to include in the navigation
structure or site map. Embed your outline on a form or page.
Format the display of the embedded outline. You can put the page orform in which the outline is embedded into a frameset if you choose.
You can also use an outline to plan your application before you createany design elements.
For more information, see the chapter “Designing Outlines.”
Navigators
Navigators are graphical road maps that direct users to specific parts of adatabase. They let users find documents or take actions without havingto open views. Navigators are like image maps. You can create hotspotson a graphic that take the users to links within or outside of yourapplication. You can embed navigators on forms or pages. Navigatorscan take the place of the folder pane or work in conjunction with it.
For more information, see the chapter “Designing Navigators.”
Introduction to IBM Lotus Domino Designer 1-13
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
30/826
Structuring your display
For an application interface to be intuitive and efficient, it must makegood use of the user’s screen. One way for a designer to accomplish thisis to use framesets.
A frameset is a collection of frames. A frame is one section, or pane, of the larger frameset and is independently scrollable. By using framesets,designers can create links and relationships between frames. Framesetslet you leave one page displayed as users scroll or link to other pages ordatabases. There is no HTML required to design a frameset.
Designer lets you:
Create an effective multi-paned user interface for your applications.
Control frame attributes such as size, scrolling, border colors andwidth, and frame spacing.
Determine frame source content at runtime.
Create programmable links that are maintained automatically.
Set a frameset to launch automatically when a database, form, orpage opens.
For more information, see the chapter “Designing Framesets.”
1-14 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
31/826
Adding automation
Adding automation to an application can speed up repetitive tasks, routedocuments, update information, perform calculations, run programs, andcheck for errors.
You can add the following automated components to the design elementsin a Domino application such as a database, a view, a form, or adocument:
Actions
Hotspots
Agents
Actions
Actions automate tasks that are found on Notes menus or tasks defined
by formulas or a LotusScript program. Users click a button, hotspot, orpick from the Action menu to execute the action. For Web applications inparticular, use actions to simulate Notes menu items.
Hotspots
A hotspot is text or a picture that a user can click to perform an action,run a formula or script, or follow a link. The hotspot can be a link toanother Web site, database, or element in a database. It can be a button,pop-up, or an action as well.
Agents
Agents are programs that perform a series of automated tasks accordingto a set schedule or at the request of a user. An agent consists of threecomponents: the trigger (when it acts), the search (what documents it actson), and the action (what it does). Use agents to set up user-activatedtasks, or background tasks, in any part of a Domino application. Agentscan be simple, such as moving documents to a folder, or complex, using Java programs to run multiple automated tasks at scheduled times.Agents are stored with databases, but you can use them to runautomated tasks for views, documents, fields, and databases.
For more information, see the chapter “Adding Automation toApplications.”
Introduction to IBM Lotus Domino Designer 1-15
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
32/826
Sharing, locking, and editing design elements
Notes is a powerful tool because it helps developers workcollaboratively. Lotus Domino Designer Release 6 enhances team work by enabling developers to:
Edit multiple design elements Share resources across databases
Lock design elements
Editing multiple design elements
With Lotus Domino Designer 6, you can now update or edit properties of all the instances of a particular design element that occur in a database.For instance, you could update or edit the following element properties:
Hide/when formulas
Template inheritance settings Design refresh settings
For example, you can update all the forms in a database to hide themfrom the Notes client.
For more information, see the chapter “Completing an Application andManaging Design Changes.”
Sharing resources across databases
By sharing resources, the development work of one team member does
not have to be rewritten elsewhere in the application, but can be directlyincorporated as is. Or it can be incorporated, then tweaked by anothermember of the team to suit the purposes of a different area of theapplication.
Lotus Domino Designer 6 increases the number of resources that can beshared in a database to include:
Style sheets
JavaScript libraries
Non-NSF files
Locking documents and design elements
In Lotus Domino Designer 6, not only can you share elements within adatabase, but you can also share them across databases. Because access todesign elements has increased, Notes now lets developers lock theelements they design. This prevents two or more team members frommaking changes to one element at the same time.
1-16 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
33/826
For more information on locking design elements, see the chapter“Completing an Application and Managing Design Changes.”
For more information on document locking, see the chapter “Creating anapplication.”
Extending access to applications
Domino applications are now more easily accessible to outside tools bothduring the design process and after application completion anddeployment.
With Lotus Domino Designer 6, you can:
Use third-party design tools in Designer
Use WebDAV for remote development
Access an external data source from a field Bring an application offline
Instant message colleagues
Using third-party design tools
With Lotus Domino Designer 6, you can launch third-party applicationsfrom within Designer. The Designer menu bar has a new Tools menuoption where you can save a link to a third-party application as a “tool.”For example, you can now add a Web-development application, such asDreamweaver, to the Tools menu as a tool named “Web work,” for
example. If you want to add HTML to your Designer application usingMacromedia Dreamweaver, you can launch it by selecting “Web work”from the Tools menu.
For more information on customizing the Designer Tools menu, see thechapter “Developing applications using third-party tools and WebDAV.”
Using WebDAV for remote development
WebDAV (Web-based Distributed Authoring and Versioning) is atechnology that allows users with Designer access to a database to work
with file-based design elements such as HTML pages, images and stylesheets, using WebDAV-enabled development tools on the Web.
By making Domino WebDAV compliant, the methods you can use toenhance file-based design elements are extended. Lotus DominoDesigner 6 lets you decide which tools to use to develop yourapplications.
Introduction to IBM Lotus Domino Designer 1-17
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
34/826
For more information on editing and managing database resources usingWebDAV, see the chapter “Developing applications using third-partytools and WebDAV.”
Accessing external data sources from a field
With Designer, you can use data connection resources to set up aconnection between a field in an NSF database document to a field in anexternal data source. The external data source can be a relational ortransactional database, which means you can now access enterprise datausing a Notes application.
For more information, see the chapter “Connecting to Enterprise Data.”
Bringing an application off-line
Access to Designer is now available to off-line users thanks to DominoOff-Line Services (DOLS). DOLS enables a user to take a Domino Web
application off-line, make changes or additions, and then synchronize theoff-line replica of the application with the original. The user does noteven have to have Notes since the application can be accessed via a Web browser. This capability greatly increases the ways in which anapplication’s audience can access it.
For more information on DOLS, see the chapter “Enabling an applicationfor Domino Off-Line Services.”
Instant messaging colleagues
The Lotus software Sametime® instant messaging product is a powerful
tool for enabling real-time communication between team members. WithLotus Domino Designer 6, you can integrate Sametime into your Dominoapplications.
For more information on adding instant messaging to an application, seethe chapter “Creating an application.”
Communicating across platforms
With Release 6, Domino data can be shared across platforms becauseDomino supports two of the most widely used, multiple platformtechnologies:
JavaServer pages (JSPs)
Extensible Markup Language (XML)
1-18 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
35/826
JavaServer pagesYou can now retrieve Domino data from an NSF database for use in a JavaServer page(JSP). Domino Designer Release 6 includes custom taglibraries that you can include in your Web site directory files. Theselibraries are made up of several JSP tags. JSP tags are similar to HTMLtags, except that they contain instructions for executing complicated Java
programming logic, instead of instructions for defining how to formatthe contents of the tag. The logic in the Domino tag library is specificallydesigned to retrieve, edit, and otherwise manipulate Domino data, butthe complicated logic itself always takes place behind the scenes. Oncethe libraries are included in a page, all the page developer has to do isinclude a tag in a page and all the programmatic capabilities of the tagare automatically available.
Note The JSP containing the Domino custom tag libraries must behosted by a server that provides a rich J2EE Web developmentenvironment, like the IBM WebSphere® Enterprise Edition server or
Application server 4.02.For more information, see the book Domino Designer Programming Guide,Volume 1.
XMLDomino data can now be exported and imported from a database asXML. XML, the Extensible Markup Language, is a meta-language thatenables you to define data using tags. XML tags are similar to HTMLtags, except that they define the content within a tag, instead of defininghow to format the contents of a tag.
Since you can export data from a Notes database as XML, it can then betransferred to other platforms. Once each platform agrees on a set of XML tag definitions, transferring the data between them or transformingit via a style sheet for optimum display on various devices, is easy.
For more information on viewing XML using DXL utilities, see the bookDomino Designer Programming Guide, Volume 1.
For information on using XML with Domino, see the book DominoDesigner Programming Guide, Volume 1.
For more information on the Domino DTD tags, see the book Domino
Designer Programming Guide, Volume 1.
Introduction to IBM Lotus Domino Designer 1-19
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
36/826
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
37/826
Chapter 2Planning an Application
Begin your design work with an application plan. In addition to planningthe functionality of your application, consider how users will access theapplication. For example, if you are designing your application for amixed audience of Notes and Web users, knowing what tools areavailable for your design needs will make your task easier. The followingtopics describe identify application design issue to consider as you planyour design work.
Planning an application
Before you begin any design work, create a plan for how users will accessand use your application. At the minimum, your application plan shouldaddress these questions:
Will users access the application from a Notes client only , Notes anda Web application , or Web browser only?
Do you need to tailor this application for use by mobile users?
How can you make your application accessible to users with
disabilities?
Will the application be translated into multiple languages?
What demands will be placed on the application — that is, will there be large views containing many documents?
What are the performance expectations for the application?
How will users know how to navigate and use the application?
The more planning you do before design begins, the smoother the designprocess will be. Designer provides you with a range of tools and servicesto suit your design needs and application development styles.
2-1
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
38/826
Planning a Notes application
If your application is only intended for use by Notes clients, use thestandard design elements provided by Domino Designer. Whenprogramming, consider using the Notes formula language andLotusScript®, both of which were designed for use with the Notes client.
Planning a Notes and Web application
If you are planning an application that users will access via a Notes clientor via a Web browser, you will need to do some design work to tailoryour application for each platform. For example, a navigation structurethat is suited for a Notes client application may not be the best choice fora Web application. When you design an application for both Notes andWeb, about 85% of your design will be suitable for both clients, and the
remaining 15% will require some modification. Here are some issues toconsider when planning an application for Notes and Web users:
Understanding the differences
The division of labor in a Notes application — what the Domino® serverdoes and what the Notes client does — is very different from thearchitecture of a browser-based application. This is because thecapabilities of a Notes client are very different from a Web browser, andthe protocols the browser and server use to communicate are verydifferent as well.
Domino uses Sun Microsystems Java(TM) and JavaScript(TM) totranslate Notes client functionality to the browser with fuller fidelity, sothat Web users can interact with action bars, rich text, views, and otherNotes features in familiar ways. But there is no Web functionalityequivalent to the Notes Document Object Model (DOM) and RemoteProcedure Call (RPC) protocol. A Notes client can send instructions tothe server to perform a task and receive back results that are refreshedwithin the current open form or document. This kind of interaction isnonexistent between a browser and server. All a browser can do is send arequest to a server, and all a server can do is send a complete page to a
browser.Limitations of the Web browser and the browser/server architecture arethe basis for most of the problems you must solve as you consider how toserve one application to Notes client and Web browser users.
2-2 Application Development with Domino Designer
8/21/2019 21340772 Ibm Lotus Domino Designer 6 Application Development With Lotus Domino Designer
39/826
Tips for designing Notes and Web applications
The following are some areas to consider when planning an applicationfor both Notes and Web clients.
Security
The security model is different for Notes and Web users. Manager andDesigner access to databases is not available for Web users as it is forNotes client users. Therefore, do not include LotusScript actions oragents that require a user to have Manager or Designer access tocomplete the task.
Authenticating users requires extra planning for applications availablevia Web browsers. Most Web applications provide some level of accessfor Anonymous users. For higher levels of access, you must match Webusers to the names in the Domino Directory. Because Web usersgenerally login to an application using an abbreviated name, consider
using the @UserName command to return their fully distinguished Notesname for proper authentication.
FormsMany times the same form will work in both a Notes client applicationand a Web application. You can compensate for minor differences infunctionality using hide-when formulas for design elements on a form.At times you may want to display one subform for a Notes client andanother for a Web browser. In this example, the formula calls one of twocomputed subforms named NS and IE that include browser-specific code by using the CGI variable for browser type in @BrowserInfo:
@If(@BrowserInfo("BrowserType")="Netscape";"NS";"IE")
Each subform has its own JavaScript Header, so you can selectivelyinclude JavaScript as well as other data types in your forms by usingcomputed subforms.
All subforms open simultaneously with the main form. You can’t displaya computed subform on the basis of calculations after the page opens.
Forms are quite flexible in a mixed-client environment. Usingprogramming designed to support multiple clients, you can program a
form event to execute one set of commands when accessed by a Notesclient and another set of commands when accessed by a Web client. Insome cases, you may find it easier to design two complete