Основы языка формул. Синтаксис и лексические элементы формул

Страницы работы

Содержание работы

Основы языка формул

Формулы создаются по двум следующим основным причинам: чтобы выполнить некоторое действие и чтобы установить или извлечь некоторое значение (или список значений). В приложениях Notes формулы широко используются в следующих целях:

·  Отбор документов при селективных репликациях.

·  Отбор документов для включения в вид.

·  Вычисление значений для показа в документах, видах и папках.

·  Определение видимости абзаца формы, абзаца в RichText-поле документа, объекта в области размещения, акции в форме или виде.

·  Вычисление, преобразование и проверка значений полей документов.

·  Добавление и удаление полей в документах.

·  Определение формы, используемой для открытия документа в виде.

·  Определение вычисляемых субформ в форме

·  Выполнение последовательности действий при запуске агента, выборе активной пиктограммы, акции в виде, активного участка в навигаторе, акции, кнопки или активного участка в форме.

Синтаксис и лекические элементы формул

Каждая формула состоит из оператора или ряда операторов. Типы операторов перечислены в табл. 19.1. Операторы (statements) отделяются друг от друга с помощью ";".

Каждый оператор  формулы (не путайте с арифметическими, логическими и т.п. операторами) состоит из некоторого количества переменных, констант, операторов (арифметических, логических и т.п.), @-функций и ключевых слов.

Можно размешать произвольное количестве- пробелов и переведов строки (в том числе ни одного) между опepaтopaми.

За ключевым словом должен следовать хотя бы один пробел.

Регистр (прописные или строчные буквы) не имеет значения, кроме как внутри текстовых констант. Ключевые слова автоматически преобразуются в верхний регистр при сохранении формулы.

Список аргументов @-функций заключается в скобки, если аргументы не требуются, скобки опускаются. Аргументы @-функций отделяются друг от друга с помощью ";'.

Переменные

Поля - наиболее часто используемые переменные в формулах. Формула имеет доступ к полям обрабатываемого документа. Для ссылки на значение поля нужно вставить в формулу название поля. При этом важно не забывать о типе данных поля. Большинству функций требуются определенные типы аргументов, а операторам - определенные типы операндов.

RichText-поля, как правило, не могут использоваться как переменные. Тем не менее, в формуле агента можно присвоить значение такому полю с помощью ключевого слова FIELD и функции @DbLookup. которая может ''достать" содержимое RichText-поля из другого документа. Функцию @lsAvailable(FieldName) можно использовать для установления факта наличия в документе поля (в том числе RichText) с таким именем.

Временные переменные доступны только в пределах формулы, в которой они определены (от определения до конца формулы) и в течение одного выполнения этой формулы. Тип данных временной переменной соответствует типу значения в правой части оператора присваивания. Этот тип может быть Text, Time, Number или Boolean. Последний -логический - возвращается некоторыми @-функциями и может принимать значения Истина (эквивалентно числу 1) или Ложь (эквивалентно числу 0).

Функция @Set позволяет изменить значение переменной в процессе выполнения формулы:

@Set(VariableName; Value);

Константы

Текстовые константы в формулах заключаются в кавычки: "Text constant". Чтобы многократно повторить один и тот же символ используйте функцию @Repeat.

Обратный слэш "\" внутри текстовой константы служит Esc-символом. Таким образом, если текст в формуле должен содержать символы " или \ перед ними нужно вставлять добавочный символ "\".

Числовые константы помимо цифр могут содержать символы -,+,Е, е, например, 1.23Е-12. Десятичный разделитель должен соответствовать стандарту, установленному в операционной системе.

Дата-время (Time-date) константы должны быть заключены в квадратные скобки, например [5:30]. [30.3.93] или [30.3.93 5:30]. Формат представления даты и времени (порядок следования, разделители и т.д.) должен соответствовать стандартам, установленным в операционной системе.

Ключевые слова

DEFAULT

На время выполнения формулы присваивает полю значение по умолчанию.

ENVIRONMENT

Присваивает значение переменной среды, сохраняемой в файле NOTES.INI.

ENVIRONMENT Env Variable := "TextString"

Для возврата значений таких переменных используется функция @Environment:

FIELD

Присваивает значение полю, сохраняемому в документе (в отличие от временных переменных). Может быть использовано как для создания новых, так и для изменения существующих полей.

FIELD FieldName-Value

REM

Позволяет включить в формулу комментарии. REM "Это строка комментария'";

SELECT

Определяет критерий для отбора документов, которые будут обрабатываться. Обрабатываются только те документы, для которых выражение, стоящее после слова SELECT, возвращает значение "Истина".

Операторы

Если в одном выражении встречаются операторы одного приоритета, они выполняются слева направо. Изменить порядок выполнения можно с помошью круглых скобок.

Похожие материалы

Информация о работе