Course Code: R5LSL2
Course Title: R5 Intermediate LotusScript for Lotus Notes and Domino
Units: 16
Duration: 4 classroom equivalent days
Discussion Access: 4 months1
1. Up to 12 months access when purchased as part of a Curriculum Package.
Summary Description
TLCC’s R5 Intermediate LotusScript course builds upon the techniques learned in the R5 Beginner LotusScript course. This course expands the student's understanding and mastery of the LotusScript programming language and the Notes Object Interface. The first two course modules feature front-end objects and displaying user dialogs and prompts to build friendly user interfaces. Module 3 teaches techniques for working with Notes fields and Rich Text fields. The next two modules describe the many different ways to gather and process groups of documents using various search techniques. Module 6 will teach you how to gather and process information using the NotesViewNavigator, NotesViewEntryCollection, and NotesViewEntry classes. The next module show how you can enhance your applications by adding powerful reporting functions. Module 8 features techniques for generating and sending Notes memos and other documents using the Notes mail system and the NotesNewsletter class. Course material is supported by numerous and effective real-world demonstrations and student activities.
Audience and Prerequisites
The recommended prerequisites are:
- TLCC's R5 Beginner LotusScript for Lotus Notes and Domino course or equivalent experience.
- TLCC's R5 Application Development 1 course or equivalent experience
- TLCC's R5 Application Development 2 course or equivalent experience
System Requirements
An R5 Domino Designer client. Access to the Internet is required to get instructor support.
Course Modules and Objectives
Module 1 - Accessing Front-End Objects
This module describes and demonstrates ways to access and manipulate front-end objects, such as the current database and the current view.
- Review the Pseudo-code Diagram Methodology and how to use it to solve problems using LotusScript and the Notes Object Interface.
- Learn about the NotesUIWorkspace class and how to use it to open a database.
- Learn to use the front-end database events.
- Learn how to access the current view from the workspace.
- Learn to use the front-end view events.
- Learn how to access the back-end database and view objects from their front-end objects.
- Learn techniques for creating and accessing a front-end document object.
Module 2 - Displaying Notes Dialogs and Prompts
This module focuses on the different ways to present a dialog to the application user.
- Learn to use the Prompt method of the NotesUIWorkspace class.
- Use the PickList methods to return string values and document collections from a view in a PickList dialog.
- Learn to use the DialogBox method to display information from the current document in a dialog window.
- Learn how to display the Open File dialog window.
Module 3 - Working with Notes Items and Rich Text Fields
This module focuses on techniques for creating and operating on NotesItem and NotesRichTextItem objects.
- Learn the NotesDocument methods to operate on items in a Notes document.
- Learn the properties and methods of the NotesItem class.
- Learn the properties and methods of the NotesRichTextItem class.
- Use NotesRichTextItem to add rich text data to a document.
- Learn how to work with embedded objects and file attachments in a rich text field.
- Learn to use the NotesRichTextStyle class to create and apply a rich text style.
- Learn to use the NotesRichTextParagraphStyle class to create and apply a rich text paragraph style.
Module 4 - Gathering Document Collections
The ability to gather document collections in LotusScript is one of the most useful capabilities of the language. Many of the Notes classes provide properties and methods that you can use for this purpose. Notes provides several searching techniques that return a collection of documents. Both of the Search and UnprocessedSearch methods of the NotesDatabase class return collections based on a focused search criteria. These methods rank among the most useful collection gathering techniques.
- Learn about the NotesDocumentCollection class and its properties and methods.
- Learn the different ways to navigate a document collection.
- Learn how to gather a collection of response documents.
- Learn how to gather a collection of unprocessed documents for operation by an agent or view action.
- Learn to use the GetAllDocumentsByKey method of the NotesView class.
- Learn to use the Search, UnprocessedSearch, FTSearch, and UnprocessedFTSearch methods of the NotesDatabase class.
- Learn how to reduce a collection with the FTSearch method of the NotesDocumentCollection class.
- Learn how to gather a collection of Profile documents.
Module 5 - Processing Document Collections
This module describes and demonstrates the techniques for navigating and processing a NotesDocumentCollection.
- Learn to use the StampAll method for mass updates.
- Learn how to unconditionally process an unprocessed document collection using the UpdateAll method.
- Learn how to conditionally process an unprocessed document collection using the UpdateProcessedDoc method of the NotesSession class.
- Learn to use the PutAllInFolder and RemoveAllFromFolder methods.
- Learn how to add a document to a collection and how to remove a document from a collection.
- Learn to use the RemoveAll method for mass deletions.
Module 6 - Working with View Entries
The NotesViewEntryCollection object can be used to access the entries and information contained in a Notes view. This module features techniques for gathering and processing information using the NotesViewNavigator, NotesViewEntryCollection, and NotesViewEntry classes.
- Learn to use the properties and methods in the NotesViewEntry class.
- Learn how to gather a collection of view entries from a Notes view.
- Learn how to navigate and process a collection on view entries.
- Learn the different methods to create a NotesViewNavigator object.
- Learn to use the navigational methods in the NotesViewNavigator class.
Module 7 - Adding Reports to Your Applications
Reports come in many types and styles. They are a basic function that can enhance almost any application. This module describes the need for reports, the different reporting styles, and how to add reports to your application.
- Understand the need for reporting in Notes applications.
- Understand the requirements for structured data when creating reports.
- Distinguish the several reporting characteristics and styles, including periodic, on-demand, and ad-hoc reports.
- Learn how to use views as a report design tool.
- Understand the limitations for using views for reports.
- Learn the three basic steps required to produce a report.
- Distinguish criteria from summary reports.
- Learn how to use dynamic tables as a versatile reporting structure.
- Define and use field value arrays.
- Define and use summary arrays.
- Learn how to use the List aggregate data structure in a reporting function.
- Learn how to generate a criteria report.
- Learn how to generate a summary report.
- Learn how to generate a sorted report.
Module 8 - Generating Newsletters and Mail
This module features techniques for generating memos and using the NotesNewsletter class.
- Understand how Notes mail works.
- Understand the Send and Share workflow models.
- Learn how to use LotusScript methods to send a document via Notes mail.
- Learn how to use LotusScript methods to send notification messages.
- Learn how to work with email addresses.
- Learn how to generate a Notes Newsletter memo.
- Learn how to generate a Notes Newsletter with a particular document's contents imported into it.