Formula language

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.

It was created by Ray Ozzie during the early development of Lotus Notes. He borrowed the compiler and decompiler from the Lotus 1-2-3 spreadsheet, but unlike the spreadsheet language Formula Language was designed primarily for string and list processing, not numerical processing. It was originally a Functional programming language with unique text list-handling features inspired by Ray Ozzie's prior use of Icon and Lisp.

The Formula language engine was [http://www.damienkatz.net/2005/01/formula-engine-rewrite.html rewritten from scratch by Damien Katz] for Notes and Domino 6. Many [http://www-10.lotus.com/ldd/today.nsf/f01245ebfc115aaf8525661a006b86b9/26a0c3184be98e6585256a7c0000b01d?OpenDocument new features] were added to the language, such as looping and dynamic execution, and performance was improved dramatically.

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 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 primarily used in formulas that are triggered by user action, such as in button formulas. It is possible to combine them with @Functions, for example by making execution of an @command conditional on a field value.


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать реферат

Look at other dictionaries:

  • Formula (disambiguation) — Generally, a formula is A set form of words in which something is defined, stated, or declared, or which is prescribed by authority or custom to be used on some ceremonial occasion (Oxford English Dictionary). It is a diminutive form of the word… …   Wikipedia

  • Formula Three — Formula Three, also called Formula 3 or F3, is a class of open wheel formula racing. The various championships held in Europe, Australia, South America, and Asia form an important step for many prospective Formula One drivers. Formula Three has… …   Wikipedia

  • Formula — For mu*la, n.; pl. E. {Formulas}, L. {Formul[ae]}. [L., dim. of forma form, model. See{Form}, n.] 1. A prescribed or set form; an established rule; a fixed or conventional method in which anything is to be done, arranged, or said. [1913 Webster]… …   The Collaborative International Dictionary of English

  • Formula (mathematical logic) — In mathematical logic, a formula is a type of abstract object a token of which is a symbol or string of symbols which may be interpreted as any meaningful unit (i.e. a name, an adjective, a proposition, a phrase, a string of names, a string of… …   Wikipedia

  • Formula editor — A typeset mathematical expression A formula editor is a name for a computer program that is used to typeset mathematical works or formulae. Formula editors typically serve two purposes: They allow word processing and publication of technical… …   Wikipedia

  • Language of mathematics — The language of mathematics is the system used by mathematicians to communicate mathematical ideas among themselves. This language consists of a substrate of some natural language (for example English) using technical terms and grammatical… …   Wikipedia

  • Formula — For other senses of this word, see formula (disambiguation). In mathematics, a formula (plural: formulae[1] or formulas[1]) is an entity constructed using the symbols and formation rules of a given logical language. In science, a formula is a… …   Wikipedia

  • Formula One engines — Since its inception in 1947, Formula One has used a variety of engine regulations. The origin of the name Formula comes from the use of a maximum engine capacity and single weight regulation. Formulas limiting engine capacity had been used in… …   Wikipedia

  • Formula calculator — A formula calculator is a software calculator that can perform a calculation in two steps:1. Type in a formula from the keyboard. 2. Press a single button or key to see the formula’s value. [Formula Calculators Pty Ltd [home page on the Internet] …   Wikipedia

  • Formula One regulations — The numerous Formula One regulations, made and enforced by the FIA and later the FISA, have changed dramatically since the first Formula One World Championship in 1950. This article covers the current state of F1 technical and sporting… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”