Login to TLCC site
Contact TLCC



IBM Ready for Social Business graphic

R5 Beginner LotusScript for Notes and DominoPrint Course Information
TLCC’s R5 Beginner LotusScript course will teach you the basics of the LotusScript language and how to use it to access and operate on Notes and Domino objects. This course is designed for both the programmer who has never worked with object oriented programming languages before and the experienced coder who wants to learn the Notes Object Interface. The first module will introduce you to the LotusScript programming language and some basic functions to get you started quickly. Next, the basic building blocks of the language are introduced. In Module 3, you will learn the different data types and how and when to use them. Module 4 covers how to work with strings and text. In the next module you use LotusScript statements to control the flow of your program and you learn how to use the LotusScript looping structures. In Module 6, you use arrays and lists to store your data. The next module introduces you to object oriented programming and how to use LotusScript and the Notes Object Interface to access and operate on Notes and Domino objects. Module 8 describes how to work with one or several back-end document objects and Module 9 focuses on how to work with the current front-end document object. Course material is supported by numerous real-world demonstrations and effective student activities.
TLCC's R5 Application Development 1 course or equivalent experience.
The R5 Domino Designer Client software is required to use this course.


Course Code: R5LSL1
Course Title: R5 Beginner LotusScript
Units: 12
Duration: 3 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 Beginner LotusScript course will teach you the basics of the LotusScript language and how to use it to access and operate on Notes and Domino objects. This course is designed for both the programmer who has never worked with object oriented programming languages before and the experienced coder who wants to learn the Notes Object Interface. The first module will introduce you to the LotusScript programming language and some basic functions to get you started quickly. Next, the basic building blocks of the language are introduced. In Module 3, you will learn the different data types and how and when to use them. Module 4 covers how to work with strings and text. In the next module you use LotusScript statements to control the flow of your program and you learn how to use the LotusScript looping structures. In Module 6, you use arrays and lists to store your data. The next module introduces you to object oriented programming and how to use LotusScript and the Notes Object Interface to access and operate on Notes and Domino objects. Module 8 describes how to work with one or several back-end document objects and Module 9 focuses on how to work with the current front-end document object. Course material is supported by numerous real-world demonstrations and effective student activities.


Audience and Prerequisites

The recommended prerequisites are:

  • TLCC's R5 Application Development 1 course or equivalent experience


System Requirements

A single R5 Domino Designer client. Access to the Internet is required to get instructor support.



Course Modules and Objectives

Module 1 - Introduction to the LotusScript Language


This module introduces the LotusScript programming language.
  • Describe the LotusScript programming language.
  • Compare LotusScript with the Notes Formula Language under several categories: ease of programming, program flow control, access to Notes objects, inter-database reach, special features, and availability.
  • Understand and use the object-event programming model in Notes.
  • Learn about the Inputbox and Messagebox functions.
  • Learn to use the features of the LotusScript Editor.
  • Learn to use the LotusScript Debugger.


Module 2 - Script Building Blocks
When you build a script, you can include several LotusScript building blocks, which are described in this module.
  • Learn how to use each of the script building blocks:
  • Identifiers
  • Keywords
  • Literals
  • Constants
  • Operators
  • Expressions
  • Statements
  • Comments
  • Learn about labels and their use.
  • List the special characters in the LotusScript Language.
  • Learn about LotusScript functions and statements.
  • Learn to use the user dialog functions.
  • Learn to use the status bar functions and techniques.
  • Learn about user-defined functions, subroutines, Script Libraries, and the advantage of using these larger script building blocks.
  • List the LotusScript statement construction rules.


Module 3 - Using Variables
This module outlines the basic steps for declaring, assigning, and processing variables. The scalar and variant data types are described and demonstrated. LotusScript offers many built-in functions and statements for working with variables. This module also describes and demonstrates many of the most useful functions and statements.
  • Learn the three basic steps that are at the core of most scripts: declaring, assigning, and processing variables.
  • Learn about explicit and implicit declaration.
  • Learn about each of the scalar variables: String, Fixed String, Integer, Long, Single, Double, and Currency.
  • List the data type suffixes.
  • Learn to use numeric functions and techniques.
  • Learn about memory allocation for the various data types.
  • Learn about variant variable, the chameleon data type.
  • Learn how date/time values are stored as numbers.
  • Learn to use variant variables for date/time processing.
  • Learn to use date functions and techniques.
  • Learn about implicit and explicit data type conversion.
  • Learn how to use the Option Declare statement as a compile-time Spell Checker.
  • Learn techniques for formatting numbers, strings, and dates.


Module 4 - Manipulating Strings
This module describes functions and techniques to manipulate string values.
  • Learn several case conversion techniques.
  • Learn how to remove extra spaces from strings.
  • Learn techniques for adding, removing and replacing characters in a string.
  • Learn and use character code page manipulation techniques.
  • Learn and use string conversion and string concatenation techniques.
  • Learn about string comparison techniques that are available in LotusScript.
  • Understand the use of the Option Compare statement.
  • Learn and use string pattern matching techniques.


Module 5 - Controlling Program Flow
The LotusScript Language contains a rich set of program flow control tools, including several looping structures. In this module, you learn about these LotusScript flow control tools:
  • GoTo
  • If...GoTo
  • If...Then...Else
  • If...Then...ElseIf
  • Select Case
  • Do...Loop
  • While...Wend
  • End
  • Exit


Module 6 - Working with Arrays and Lists
Array variables are aggregate data storage structures that can hold multiple values. They are an important data structure because field item values are stored in arrays and many properties and methods in the Notes Object Interface return values in array structures. This module covers the basics of array creation, composition, and manipulation. This module also covers the basics for creating and using list data structures. Like arrays, lists are aggregate data storage structures that can hold multiple values. Unlike arrays, you assign and access data in lists using descriptive list tags.
  • Learn the definition and structure of arrays.
  • Learn the steps for declaring arrays, setting the bounds of an array, assigning values in an array, and accessing values in an array.
  • Learn how to use the Option Base statement for setting the default lower boundary for arrays.
  • Learn how to use the LBound and UBound array boundary functions.
  • Learn array looping techniques using the Do, For, and ForAll block structures.
  • Learn how to use the REDIM statement to re-dimension a dynamic array.
  • Learn how to use the REDIM statement to expand and contract an array.
  • Learn the list data structure.
  • Learn the steps to declaring a list, assigning values in a list, and access values in a list.
  • Learn how to use the ListTag, IsList, and ListElement functions.


Module 7 - Understanding the Notes Object Interface
This module introduces event-driven object-oriented programming and describes how to use LotusScript to gain access to the Notes Object Interface. This module also introduces a 3-step procedure to access Notes objects. The pseudo-code diagram methodology is introduced and used to solve problems using LotusScript and the Notes Object Interface.
  • Understand what an event-driven object-oriented programming language is.
  • Understand the meaning of the terms: Classes, Objects, Properties, Methods and Events.
  • Learn about and use the object model in Notes.
  • Learn the 38 classes in the Notes Object Interface.
  • Understand the difference between the front-end and back-end classes.
  • Learn a 3-step procedure to access Notes objects.
  • Learn about the Notes object containment model.
  • Learn to use the pseudo-code diagram methodology to solve problems using LotusScript and the Notes Object Interface.
  • Learn how to use the NotesSession class to access environment information.
  • Learn how to access the current database and any stored database.
  • Learn how to access and use the NotesView class.


Module 8 - Working with Documents
This module introduces the NotesDocument class and how to access and work with documents in a database. This module also introduces you to two of the more popular and common ways to work with multiple documents.
  • Learn about the NotesDocument class.
  • Learn different ways to access a document.
  • Learn how to access and change the field values in a document.
  • Learn how to create and save documents using LotusScript.
  • Learn how to loop through the documents in a view.
  • Learn how to loop through the documents in a database.


Module 9 - Working with the Current Document
This document currently on the screen is the Front-end or User Interface (UI) document. This module describes how to access and manipulate the front-end document.
  • Learn about the NotesUIWorkspace and NotesUIDocument classes.
  • Learn how to navigate the front-end document.
  • Learn how to access and change field values in the front-end document.
  • Learn how to use the NotesUIDocument class to print, save, and close the current document.
  • Learn how to access the back-end document through the front-end document.