Notes Domino 9 Application Development 1
Units: 16
Duration: 4 classroom equivalent days
CourseRoom Access: 12 months

Summary Description
Learn how to develop Notes Domino 9 applications any place and any time. This distance learning course is for developers who are new to Notes application development. Using Domino Designer you will learn how to create a Domino database, create forms, add fields to a form, create views, use the formula language, and create agents. Enhance your application using framesets, outlines, pages, tables, single category views, hotspots, buttons, and actions. Then complete your application by adding help documents and applying Domino security. This course is packed with demonstrations and activities to quickly get you developing Notes and Domino applications. As you progress through the course you build a customer tracking application.
This course will help prepare you for the required exams to be certified as an IBM Certified Application Developer - Lotus Notes and Domino 9.0.

Audience and Prerequisites
Must have experience using the Notes 9 client as an end user. No programming knowledge is required.

System Requirements
A single Notes 9 and Domino Designer 9 client. Access to the Internet is required to get instructor support.

Course Modules

Module 1 - Creating a Domino Database
The Domino database is a container. It holds a variety of design elements such as forms, fields, and views, as well as all data entered into a Domino application. This module describes the different types of Domino applications and the different ways to create a Domino database. The Domino Designer environment is introduced and explored, including a detailed exploration of the key Designer features such as the Applications Navigator, Perspectives, Views and Editors. This module covers:
  • What types of applications are good for Domino
  • The steps to create a Domino application
  • The main design and data components of a Domino application
  • How to create a new Domino database
  • Discover the tools and resources available on the Home page
  • Use the Applications Navigator
  • Create and use Working Sets to manage applications
  • Understand Perspectives in Designer, and how to switch, modify, and save Perspectives
  • Understand Designer Views and how to move, resize, open and close them
  • The design tools available in Domino Designer
  • Use the Help Information Center
Module 2 - Designing Forms
Domino uses forms as templates for creating new documents, displaying existing documents and printing documents. This module introduces the basics for creating, naming and setting the properties for a form.
  • Distinguish between form objects and document objects and describe how they work together
  • Outline procedures and guidelines for creating and naming forms
  • Design a simple form
  • Explore and set form properties
Module 3 - Notes Fields and Data Types
A Notes form consists largely of a Rich Text area that can include graphics, static text labels, field definitions, and other objects, such as links and hotspots. This module describes how to add these elements to a form. It also covers how to add fields to a form and how to control user input using different field data types.
  • Learn field naming rules and guidelines
  • Add fields to a form and change their data type
  • Learn about the 17 different field data types
  • Add various selection type fields to a form design
Module 4 - Designing Views
Notes Views display summaries of documents so users can find the information they need quickly and easily. The documents that appear in a view can be controlled using a view selection formula. Different views in the same database can display different sets of documents. This module introduces the basics for creating, naming and setting the properties for a view.
  • Outline procedures and guidelines for creating and naming a view
  • Use the tools in the view design environment
  • Add view columns and set column properties
  • Create view categories to assist the user in locating documents
  • Explore and set view properties to add function and improve usability
  • Base the design of a new view on an existing view
  • Explore the use of a view selection criteria to select and display a set of documents in a view
  • Add a view selection criteria using a Simple Search selection conditions
Module 5 - Field Value Formulas
Field value formulas are used to set field values for computed fields. For editable fields, they are used to provide default values, validate user input and translate it into standardized formats. This module describes common field value formulas for editable and computed fields.
  • Differentiate between editable and computed fields
  • Establish a default value for an editable field
  • Discover how to translate user input into a consistent format
  • Establish required fields on a form using Input Validation formulas
  • Outline and demonstrate the differences between the three types of computed fields
  • Create fields that are computed for the user
Module 6 - Notes Formula Language
The Formula Language is the original programming language of Notes. There are more than 200 @functions or built-in formulas. This module details the Notes Formula Language and its lexical building blocks. The most useful @functions are described and demonstrated including dialog functions, conditional functions, string conversion functions, string manipulation functions, arithmetic functions, time functions and name functions.
  • Describe and demonstrate the Formula Language lexical building blocks
  • Differentiate between field variables and temporary variables
  • Outline the syntax for creating and using text, number and time constants
  • Describe the many available operators including arithmetic operators, list operators, comparison operators, text operators and logical operators
  • Outline the rules for precedence and order of evaluation
  • Define and describe the five Keywords in the Notes Formula Language
  • List, demonstrate and test the Formula Language syntax rules
  • Compare how fields in the current document are accessed using the Formula Language and LotusScript
  • Show how formulas return values or perform actions
  • Define the main expression of a formula and its significance
  • Describe how some @functions return values and some produce side effects
  • Describe @function syntax and the steps to building an @function formula
  • Describe, demonstrate and use the @Prompt dialog function
  • Describe, demonstrate and use @If and other conditional processing tools
  • Set up conditional program branching using @If, @Return and @Do
  • Describe, demonstrate and use the string case conversion functions
  • Understand and use string comparison operators and string pattern matching
  • Describe and demonstrate the many @functions that support substring manipulation
  • List the many arithmetic @functions and demonstrate some of the most useful functions
  • Describe, demonstrate and use the many date and time @functions
  • Use the name @functions to access and manipulate the name from a user's Notes ID
  • Create portable Input Validation formulas using @ThisValue and @ThisName
Module 7 - More on Forms and Formulas
This module outlines several advanced techniques to improve the aesthetics and usability of forms. Topics include adding window title formulas, allowing multiple values in fields, creating and using subforms, applying hide-when attributes and formulas, adding form actions, creating a document hierarchy and inheriting field values when a document is created.
  • Use Window Title Formulas to add a window title
  • Explore property settings to allow and display multiple values in a field
  • Explore advanced property settings for text, date/time and number fields
  • Outline procedures for creating, inserting and using subforms
  • Explore hide-when attributes and formulas. Detail procedures and techniques for their use
  • Describe and demonstrate the "scope" of a hide-when paragraph
  • Introduce @Commands and their use in form actions
  • Detail techniques to add form actions using shared actions
  • Describe document hierarchy and the form types used to create a parent-child document relationship
  • Outline procedures and strategies to inherit field values from an existing document to a new document
Module 8 - More on Views
This module outlines several advanced view techniques. Topics include how to show response type documents in a view, how to develop a logically sorted view and adding view actions.
  • Show response type documents in a view
  • Develop a logically sorted view using hidden columns
  • Design a lookup view and retrieve data from the view using the @DbColumn function
  • Create and edit view actions
Module 9 - Automation Using Agents
Agents are design elements which can be added to a Domino database to automate tasks. This module covers the details of creating agents using the Domino Agent Builder. Creating an agent using predefined simple actions and formulas is also covered.
  • Describe how Domino security impacts agents and what actions they perform
  • Use the Agent Builder to create and edit agents
  • Learn each agent setting
  • Use Simple Actions to create an agent
  • Use formulas to create an agent
Module 10 - Presentation and Navigation Enhancements
Domino provides many tools to enhance the user interface and navigation in a Domino application. Presentation of information can be enhanced using sections, tables, pages and embedded views. Navigation can be controlled and enhanced using hotspots, links, outlines and framesets. This module focuses on tools and techniques to enhance the presentation and navigation in a Domino application.
  • Use hotspots and links to provide help, execute actions and support navigation
  • Use expand/collapse sections to organize information and reduce display space
  • Develop complex tables
  • Use tabbed, caption, animated and programmed table types
  • Embed views on a form and display single category views
  • Create and use shared image resources
  • Use pictures and image maps to enhance presentation and navigation in an application
  • Introduce the Page design element and demonstrate how to use it in an application
  • Use Outlines to provide customized menu navigation
  • Use framesets to create a panelled application
Module 11 - Completing the Application
Once you have all forms, views, pages, outlines and framesets designed, the database is almost complete. This module walks you through some of the final steps before a database is released to the users.
  • Create or modify the database icon
  • Identify the essential elements of an effective About Database and Using Database document
  • Create help documents for your database
  • Set the Database Launch Properties
  • Introduce Domino Database security
  • Set up the database Access Control List (ACL) so users have the proper level of access
Module 12 - Deploying the Application
This module covers several design-management tools and techniques. It describes how to create and use a Master Design Template, how to generate a design synopsis, and how to hide the design of a database.
  • Define Designer Templates and Master Design Templates and describe their use
  • Describe the Domino design task and how to manually update the design of a database
  • Exclude individual design elements from design updates
  • Create and use a Master Design Template
  • Hide the design of a database and assess the impact of a hidden design
  • Create and use a design synopsis