FORMULA LANGUAGE
Except for @commands, the formula language operates on back-end Notes objects. For example, a field named in a formula refers to the field as it exists in storage and the FIELD reserved word modifies a stored field. @Commands operate in the user interface; changes made there are not reflected in the back-end until a document is saved. You cannot intersperse back-end and user interface accesses of the same document and get correct results.
Evaluation of @commands
Execution of an @PostedCommand function occurs after all other @functions in the formula. For instance, look at the following formula:
@PostedCommand([CommandName]; Argument); @If(Condition; TrueStatement; FalseStatement); FIELD X := "Text"
The first statement is executed last.
Execution of an @command function occurs in the order it appears with some exceptions. The exceptions, like @PostedCommands, execute at the end of the formula. Each exception has an equivalent @command that executes immediately.
The following table lists the @commands that execute last and their corresponding @commands that execute immediately.
Note The functions that get evaluated immediately are new with Release 6.
@If executes one statement or another depending on whether a logical value is True or False:
@If(LogicalValue; TrueStatement; FalseStatement)
@Do function
@Do executes a number of statements in sequence and can be used as an execution path within an @If function:
@If(LogicalValue; @Do(TrueStatement1; TrueStatement2); FalseStatement)
Any @Command functions within an @Do function are executed in order after all other @functions, both within and without the @Do function, are executed.
@Return function
@Return stops execution of the formula:
@If(LogicalValue; @Return(""); "")