Course Code: R5LSL3
Course Title: R5 Advanced LotusScript for Notes and Domino
Units: 8
Duration: 2 classroom equivalent days
Discussion Access: 4 months1
1. Up to 12 months access when purchased as part of a Curriculum Package.
Summary Description
Take your LotusScript skills to the next level with TLCC's R5 Advanced LotusScript course. Learn how to use subroutines, functions, and script libraries to reuse your code and build a library of commonly used routines. Build error-handling into your LotusScript code to effectively trap and handle run-time errors. Discover how to more effectively work with agents by using Notes logs to record agent activity and error messages. Control your agents more effectively by understanding agent security and agent triggers. Learn how to integrate relational database information into your application by using the LotusScript Data Object classes (LS:DO) to read and write data that resides in relational database.
This course is the third and final course in TLCC's series of R5 LotusScript courses. TLCC's R5 LotusScript courses will prepare you for the LotusScript certification exam (273). This exam will enable you to become a Principal CLP.
Audience and Prerequisites
The recommended prerequisites are:
- TLCC's R5 Beginner LotusScript for Notes and Domino course
- TLCC's R5 Intermediate LotusScript for Notes and Domino course
System Requirements
A single R5 Domino Designer client. Access to the Internet is required to get instructor support.
Course Modules
Module 1 - Streamlining Code with Procedures
A procedure (or sub-program) is a collection of instructions grouped together to perform a specific task. This module explains the need for procedures in LotusScript and describes how to define and use procedures in your Notes applications.
- Understand the need for procedures in Notes applications and the advantages of using them
- Be able to identify the types of procedures in LotusScript
- Learn how to divide a program into procedures
- Recognize a subroutine and its components
- Learn how to create and use a subroutine
- Recognize a function and its components
- Learn how to create and use a function
- Understand the concept of scope and be able to identify the scope of a variable or procedure
- Understand the difference between passing arguments "by value" and "by reference"
- List and demonstrate the variable values that a procedure can manipulate
- Understand the issues that can arise when a procedure manipulates nonlocal variables
- Learn how to locate, create, and use Script Libraries in your Notes and Domino applications
Module 2 - Handling Run-Time Errors
If Notes encounters an error while running LotusScript code, it immediately stops execution and displays an error message to the user. It is good programming practice to anticipate where errors may occur and to provide a graceful way of handling them. This module describes how to intercept LotusScript run-time errors and handle them gracefully.
- Understand the situations in which errors are most likely to occur
- Learn how to use an If statement to test for an error condition
- Learn where to find the list of LotusScript error codes
- Learn how to intercept a run-time error
- Learn how to develop a routine to handle errors and make it available to your scripts
- Learn how to determine the line of LotusScript code that was executing when an error occurred
- Learn how to retrieve a descriptive string that describes the error
- Be able to provide multiple error-handler routines
- Define and use your own error codes
- Learn to direct Notes to use an error-handler routine in another procedure
Module 3 - Creating and Maintaining a Log
One of the best ways to monitor agent activities and errors is to record them in a log. With LotusScript, you can create several different types of logs and you have complete control of what gets posted in them. This capability is extremely useful in documenting the changes an agent makes to Notes data and can be an excellent debugging tool.
- Understand the need for agent logging in Notes and Domino applications
- Understand the types of logs that LotusScript supports
- Learn how to create and use a Notes log database
- Learn how to create a log
- Understand the kind of information that you can post in a log
- Learn the steps required to post information to a log
- Know how to track the number of additions that your code makes to a log
- Be able to turn logging on and off
- Learn how to determine the name of the current agent
- Know how to determine who is the agent owner
- Understand the importance of the agent owner
- Learn how to trigger an agent to run immediately
- Learn how to control when and where an agent runs
Module 4 - Working with Alternate Data Sources
Many organizations maintain at least some of their data in legacy systems that involve traditional relational databases. Most relational databases conform to an industry standard called the Open Database Connectivity (ODBC) standard. ODBC enables two diverse database systems to communicate with each other. Domino supports the ODBC standard and provides both formula language calls and LotusScript classes that you can use to access and update data in non-Notes databases.
- Understand the basic structure of a standard relational database
- Understand the requirements for using ODBC
- Learn how to install ODBC drivers on your Windows system
- Learn how to register the ODBC databases that you want to access via Notes
- Understand what the LotusScript Data Object LSX module is and know how to load it
- Be able to name the three object classes that comprise the LotusScript data object module
- Know how to establish a connection to an ODBC data source
- Know how to determine what the ODBC data source looks like
- Be able to formulate an SQL query that specifies the data you want to access from the data source
- Know how to provide interactive queries that let the user specify the data to access
- Be able to retrieve the data from the ODBC data source into a result set
- Be able to navigate the result set
- Be able to copy data from the result set into Notes documents
- Know how to write changes to existing data that are made in Notes back to the data source
- Know how to add new information to a data source via Notes
- Learn how to incorporate error handling capabilities into scripts that access non-Notes data