Email Us   Phone : 503-259-0312   
  Home    |    Instructor-led Training    |    Self-Paced Learning    |    Online Training     

Contact Us   -   Why Choose Wintrac   -   Clients    

Big Data
Business Analysis
Business Intelligence
Business Objects
Business Skills
C/C++/Go programming
Cloud Computing
Crystal Reports
Data Science
Desktop Application Software
Embedded Systems
Google Web Toolkit (GWT)
Leadership Development
Machine learning/AI
Mainframe programming
Microsoft technologies
MultiMedia and design
New Manager Development
Object oriented analysis and design
Oracle VM
Professional Soft Skills Workshops
Project Management
Sales Performance
Software quality and tools
SQL Server
Visual Basic
Visual Foxpro
Web Development
Websphere MQ (MQSeries)
Windows programming
XML Web Services
Lotus Domino Designer 7: Formula Language
Lotus Training Overview

During this course you will extend your knowledge of the formula language used in Domino applications for both Notes and Web browser clients.

This course doesn't simply regurgitate the Help--it shows you how to do some really interesting and important things in Notes/Domino that just happen to use the formula language. It is not, therefore, a detailed compendium of formula language calls and syntax. Instead, this course focuses on the strategy of using @Functions and @Commands to solve the pivotal issues faced by Domino developers.

Lotus Training Learning Objectives

In this course, you will learn how to:

  • extend your knowledge of the formula language
  • build your understanding of data validation and error trapping
  • provide extensive programming and debugging experience to ensure mastery of key @Functions and @Commands
  • use @Functions to operate on multi-value variables and Fields
  • describe how to conditionally execute code based on document state and user identity
  • explain data inheritance and inter-document relationships
  • show how to use well-known locations to store configuration information
  • show how to interact with users with prompts and dialog boxes
  • use mail to send documents between databases.
Lotus Training Audience

This course is designed for Notes programmers well versed in using Domino Designer 7. It assumes that you have:
  • thorough knowledge of the Domino Designer development environment, including Form and View design, as well as how to use properties boxes, and how to set the ACL
  • mastered the topics covered in Domino Designer 7: Basic Notes Applications.
Though not required, experience in any computer programming or application scripting language (including spreadsheet formulas) is helpful in understanding how to maximize the use of the formula language.

This course is part of a series of Domino Designer 7 training courses. Follow these paths to master all aspects of developing applications using Domino Designer:

Domino Designer 7: Basic Notes Applications provides the base knowledge for this additional training:

Client Track

  • Configure Domino to use DB2 as a database engine and build applications that access relational data, DB2 for Domino 7 Administrators and Developers.
  • Specialize in programming Notes applications to respond to built-in user interface features, Domino Designer 7: Special Notes Features.
  • Convert an application written for Notes clients to be used in browsers, Domino Designer 7: Basic Browser Applications.
  • Provide data to cutting-edge Web applications, Domino Designer 7: Web Agents and Web Services.
Language Track. These languages apply to both Notes and browser clients:

  • Learn sophisticated application techniques that fully exploit the formula language in Domino Designer 7: Formula Language.
  • Develop sophisticated applications and Agents with LotusScript in Domino Designer 7: LotusScript.
  • Add powerful client-side scripting to browser applications in Domino Designer 7: JavaScript.
Lotus Training Course duration

This course is sold as a 2-day course

Lotus Training Course outline

Topic 1: Using the Formula Language

  • Programming languages used in Domino
  • Advantages of the formula language
  • Object model programming
  • Where to use the formula language
  • Event code interplay
  • Formula results
  • Ancillary event triggers
  • Exercise: Create non-replica copy of DDFL7 Demo
  • Exercise: Formula return values quiz
  • Exercise: Printer-friendly display I
Topic 2: Variable and Field Assignment
  • Valid variable and Field names
  • Temporary variables
  • Self-referential Field events
  • @ThisName and @GetField
  • Exercise: @ThisName and @GetField
  • Set Field values
  • Appending temporary variable and Field values
  • Formula context
  • Exercise: Formula context
  • Reserved and internal Field names
  • Exercise: Printer-friendly display II
Topic 3: Formula Toolbox
  • Matching and equivalence
  • String matching
  • String parsing
  • String replacement
  • Random number
  • Time/date functions
  • Data type conversion
  • Exercise: Data type conversion
  • Data testing
  • DEFAULT keyword
Topic 4: Multi-Value Variables and Fields
  • What is a multi-value list?
  • Multi-value operations and functions
  • Converting single-value list to multi-value list
  • Converting a multi-value list to a single-value list
  • Element count
  • Selecting a value from the list
  • Exercise: @Subset and @Implode
  • Pair-wise and Permutation operators
  • Determining if a value is in the list
  • Replacing an item in the list
  • Minimum and maximum value
  • Compare ASCII values
  • Sort a list
  • Sum a list of numbers
  • Exercise: Sum a list of numbers
  • Date range
  • Dynamic tables
  • Looping functions
  • @For loop
  • Reuse temporary variables
  • @While loop
  • Exercise: @While
  • @DoWhile loop
  • @Transform
  • @Nothing
  • @Select and @Word
Topic 5: Conditional Evaluation
  • Single @If with multiple conditions
  • @Select
  • Multiple actions using @Do
  • Aborting execution with @Return
  • Multiple @If statements
  • Conditional save and close
  • Conditional evaluation based on document state
  • Exercise: Document state
  • Conditional evaluation based on user identity
  • Exercise: User rights
Topic 6: Data Inheritance
  • Configure inheritance
  • Inheritance caveats
  • Conditional inheritance
  • Exercise: Inheritance
  • Require inheritance
  • Disallow pasted documents
  • Inherit Rich Text
  • "Inheritance" across databases
Topic 7: Database Lookup
  • @NameLookup
  • @Db function overview
  • Where to use lookup functions
  • Lookups and security
  • @DbColumn Function
  • Static Field lists
  • External Field lists
  • Exercise: @DbColumn
  • @DbLookup function
  • @DbLookup parameters using Notes
  • Error trapping
  • Exercise: @DbLookup
  • Creating unique keys
  • Multiple return values
  • Document refresh issue
  • Limiting lookups
  • Overcoming the size limits
  • General lookup performance tips
Topic 8: Document Relationships
  • When to use Response documents
  • Design Response document Form
  • Create Response document
  • Response document internals
  • Creating the response hierarchy after the fact
  • ComposeWithReference
  • ComposeWithReference flags
  • Another way to relate documents
  • Primary key relationship
  • Field reference by document UNID
  • Exercise: Document ID relationship
  • Lookup versus direct Field reference
  • One-to-many relationships
  • Updating related documents
  • "Doclink" to parent
Topic 9: Well-Known Locations
  • Well-known location mechanisms
  • Local NOTES.INI access
  • Environment function syntax
  • Environment restrictions
  • Environment read/set sequence
  • Exercise: Environment variable
  • Reading the Windows Registry
  • Lookups
  • Profile documents
  • Profile documents and security
  • Create Profile document
  • Read from Profile document Fields
  • [NoPersist] option
  • Exercise: Profile document
Topic 10: User Prompts
  • @StatusBar
  • Where you can prompt users
  • Using the data from prompts and picklists
  • @Prompt syntax
  • Password prompt
  • Directories
  • File prompts
  • Exercise: @Prompt
  • @PickList syntax
  • Exercise: Picklist
  • Limitations of prompts and picklists
  • Execution by temporary variables
  • Preview pane caveat
  • Where to call @Dialogbox from
  • @DialogBox syntax
  • @Dialogbox caveats
  • Exercise: Dialog box
  • Optional dialog box keywords
  • Button type
  • Which dialog box to use?
Topic 11: Mail Documents
  • Copying versus mailing documents to other databases
  • Mail mechanisms
  • SendTo value
  • Mailing to a person in your Domino Domain
  • Mailing to a person in another Domino Domain
  • Mailing to Internet addresses
  • Mailing to a group
  • Mailing to a Mail-In Database
  • Name spoofing
  • Mail triggers
  • Trigger 1: Form property
  • Trigger 2: MailOptions Field
  • Trigger 3: @Command([MailSend])
  • Trigger 4: @MailSend without parameters
  • Exercise: @MailSend without parameters
  • @MailSend and scheduled Agents
  • Trigger 5: @MailSend with parameters
  • Mail-related reserved/system Fields
  • SaveOptions Field
  • $AssistMail Field
  • Fields added by the system
  • Exercise: @MailSend with parameters
  • User Mail functions
  • User Mail commands
  • Ensure documents are mailed only once
  • Mail-in database programming
  • Store Form in document property
  • Three mail-enabled application models
  • Resolve duplicate documents

About us
Contact us
Careers at Wintrac
Our Clients
Why Wintrac

Register for a free training CD-ROM drawing
Refer a client or instructor and earn $$$

Wintrac Inc.
16523 SW McGwire Ct.
Beaverton OR 97007
© Wintrac, Inc. All rights reserved.                                                                               Site Map   |   Terms of Use   |   Privacy Policy