Course Search:

Request more details:


Lotus Domino Designer 8: Formula Language

Description:
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.
  • Cost: Price on application
  • Duration: 2 days
  • This course is not available as part of our public schedule but can be provided on a customised client specific basis.
Prerequisites:
- 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 8: Basic Notes Applications.
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 DDFL8 Demo
Exercise: Formula return values quiz
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
Append temporary variable and Field values
Formula context
Exercise: Formula context
Reserved and internal Field names
Exercise: Printer-friendly display I
Exercise: Printer-friendly display II
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
Multi-Value Variables and Fields :
What is a multi-value list?
Multi-value operations and functions
Convert single-value list to multi-value list
Convert a multi-value list to a single-value list
Element count
Select a value from the list
Exercise: @Subset and @Implode
Pair-wise and Permutation operators
Determine if a value is in the list
Replace 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
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
Data Inheritance :
Configure inheritance
Inheritance caveats
Conditional inheritance
Exercise: Inheritance
Require inheritance
Disallow pasted documents
Inherit Rich Text
"Inheritance" across databases
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
Create unique keys
Return values from multiple source documents
Return multiple values from single source document
Document refresh issue
Limit when lookup is performed
Overcome return data size limits
General lookup performance tips
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
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
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?
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 email address
Mailing to a group
Mailing to a Mail-In Database
Sequence of Group and Mail-in Database resolution
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


Dublin: 01 6627700 - Cork: 021 4319010 - Limerick: 061 311982

© Professional Training Solutions Limited 1996-2012
CRO No. 252390 - Unit 22, Westland Square, Pearse Street, Dublin 2, Ireland.