Jump to content

Язык формул

Язык формул — это язык сценариев, используемый Lotus Notes . Его часто называют языком @Formula (произносится at-formula ), поскольку многие элементы языка начинаются с символа @. Вот пример формулы выбора:

SELECT @NoteId = "NT0050D26"

Разработка

[ редактировать ]

Он был создан Рэем Оззи во время ранней разработки Lotus Notes. Он позаимствовал компилятор и декомпилятор из электронных таблиц Lotus 1-2-3 , но в отличие от языка электронных таблиц Formula Language был разработан в первую очередь для обработки строк и списков, а не для числовой обработки. Первоначально это был функциональный язык программирования с уникальными функциями обработки текстовых списков, вдохновленный предыдущим использованием Рэем Оззи Icon и Lisp .

Механизм языка формул был переписан Дэмиеном Кацем для Notes и Domino 6. [1] В язык были добавлены новые функции, такие как циклическое и динамическое выполнение, а также была улучшена производительность. [2]

Структура

[ редактировать ]

Язык формул состоит из двух частей:

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

@Functions можно использовать в нескольких местах Lotus Notes. Наиболее важными видами использования являются:

  • для выбора документов для отображения пользователю в представлении (своего рода индексе) или для выбора документов для дальнейшей обработки. В этом случае формула будет давать значение «истина» (выбрано) или «ложь» (не выбрано) для каждого документа.
  • для предоставления значений по умолчанию для полей, для преобразования данных, введенных пользователем (например, удаления лишних пробелов), и для проверки этих данных.
  • чтобы получить список значений из базы данных Notes или даже из реляционной базы данных (с использованием ODBC ). Это можно использовать для предоставления пользователю списка значений на выбор.
  • оформить пакет документов. Формула помещается в агент, программу или макрос, которые могут запускаться пользователем или сервером Notes по расписанию. Когда агент запускается, формула выполняется для каждого выбранного документа (это очень ограниченная форма цикла). Это эффективный способ изменить множество документов, если логика не слишком сложна. В случае сложных изменений LotusScript . используется

@Команды подобны командам меню: они выполняют действия в клиенте Lotus Notes. Примеры действий:

  • открытие базы данных Notes
  • создание электронной почты
  • установка курсора в определенное поле ввода данных
  • закрытие окна
  • запуск агента

@Команды в основном используются в формулах, которые активируются действиями пользователя, например в формулах кнопок. Их можно комбинировать с @Functions, например, сделав выполнение @command зависимым от значения поля.

  1. ^ Дэмиен Кац (4 января 2005 г.). «Переписывание формулы двигателя» . Личный блог . Проверено 30 сентября 2016 г.
  2. ^ «Усовершенствования языка формул в Domino 6» . ИБМ. 4 ноября 2002 года. Архивировано из оригинала 22 октября 2012 года . Проверено 30 сентября 2016 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2f62e18417b4926cc7e02a32188f0502__1709213940
URL1:https://arc.ask3.ru/arc/aa/2f/02/2f62e18417b4926cc7e02a32188f0502.html
Заголовок, (Title) документа по адресу, URL1:
Formula language - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)