Home
Archaeology
Astronomy
Biology
Books
Business
Chemistry
Coins
Computers
Conservation
Cooking
Earth Science
Farming
Economics
Finance
Games
Geography
Health Science
History by Date
Hobbies
Law
Mathematics
Medicine
Military Technology
Movies
Music
People
Pharmacology
Philosophy
Physics
Psychology
Religion
Science History
Technology
Sports
Television
Video
Visual Art
Privacy
Contact Us



Formula Language

The Formula language is a scripting language used by Lotus Notes.
It is often referred to as @Formula language (pronounced at-formula) because many language elements start with the @-character.

The Formula language is not a full programming language: it lacks looping constructs and there is only one function for conditional execution. However, Formula language is very good at the manipulation of strings and lists (arrays) of strings.
Note: in version 6 of Lotus Notes the Formula language has been extended to include looping and additional conditional statements.

The Formula language has two parts:

  • @Functions for calculations and simple logic
  • @Commands for performing actions in the user interface

@Functions can be used in several places throughout Lotus Notes. The most important uses are:
  • to select documents to show to the user in a view (a kind of index) or to select documents for further processing. In this case, the formula will evaluate to a 'true' (selected) or 'false' value (not selected) for each document.
  • to provide default values for fields, to transform the data entered by the user (like stripping off redundant spaces) and to validate this data.
  • to get a list of values from a Notes database or even from a relational database (using ODBC). This may be used to provide a user with a list of values to choose from.
  • to process a set of documents. The formula is placed in an agent, a program or macro that can be started by a user or by the Notes server according to a schedule. When the agent is triggered, the formula executes for each selected document (this a a very limited form of a loop). This is an efficient way of changing lots of documents, if the logic is not too complicated. In case of complicated changes, LotusScript is used.

@Commands are like menu commands: they perform actions in the Lotus Notes client. Examples of actions are:
  • opening a Notes database
  • creating an e-mail
  • putting the cursor in a specific data-entry field
  • closing a window
  • starting an agent
@Commands are mainly used in buttons and the like. It is possible to combine them with @Functions, for example the command only executes if a field contains a predefined value.

Copyright 2004. All rights reserved.