- •Введение
- •Синтаксис формул
- •Лексические элементы формул
- •Переменные
- •Предопределенные поля
- •Временные переменные
- •Константы
- •Операторы выполнения операций
- •Порядок выполнения вычислений
- •Ключевые слова
- •Функции
- •Побочные эффекты
- •Ограничения применимости @-функций и команд, налагаемые списком управления выполнением (ecl)
- •Ограничения применимости @-функций и команд для Web-приложений
- •Как выполняются формулы
- •Порядок выполнения
- •Формулы, возвращающие значения
- •Формулы, выполняющие последовательность действий
- •Выполнение формул, содержащих вызовы @-команд
- •Обработка ошибок в формулах
- •Описание @-функций Domino
- •Функции - базовые конструкции языка формул
- •Функции выполнения циклов
- •Функции определения и преобразования типов данных
- •Функции для работы со строками
- •Определение вхождения подстроки в строку
- •Выделение и замена части строки
- •Функции для работы со значениями типа "дата-время"
- •Функции, работающие с компонентами значения типа "дата-время"
- •Функции для работы с численными значениями
- •Функции для работы со списками
- •Работа с переменными окружения
- •Установка значения временной переменной
- •Функции для работы с текущим документом
- •Определения свойств, характеристик и состояния текущего документа
- •Операции с полями
- •Операции с документом
- •Функции для работы с паролями
- •Функции для работы с почтой
- •Функции, определяющие почтовые настройки
- •Работа с идентификаторами документов
- •Получение информации из баз данных Domino
- •@DbColumn - выбор значений из колонки
- •@DbLookup - выбор из колонки или поля значений по ключу
- •Получение информации из баз данных, поддерживающих odbc-драйверы
- •Функции для работы с видами
- •Функции, используемые в формулах отбора документов
- •Функции, используемые в формулах колонок
- •Функции, работающие с именами пользователей
- •Функции, работающие с правами доступа
- •Функции, работающие с профильными документами
- •Функция выбора требуемого фрейма
- •Диалог с пользователем
- •Функции, определяющие тип и характеристики используемого программного обеспечения
- •Функции, используемые в Web-приложениях
- •Информационные функции
- •Функции для обработки ошибок
- •Описание @-команд Domino
- •Команды для работы с текущим и выделенными документами
- •Команды открытия объектов
- •Команды для работы с профильными документами
- •Команды обновления отображаемой информации
- •Команды для работы с видами и папками
- •Команды запуска приложений
- •Команды для работы с почтой
- •Алфавитный список @-функций
- •Алфавитный список @-команд
- •Разработка тестовых приложений
- •Простые операции с документами
- •Создание нового документа по форме
- •Редактирование текущего документа
- •Удаление документа
- •Печать документа и вида
- •Упражнение
- •Формулы полей
- •Упражнение
- •Получения доступа к данным, находящимся вне текущего документа
- •Доступ к данным вида
- •Наследование
- •Функция @DialogBox
- •Функция @PickList
- •Формулы скрытия информации
- •Формулы скрытия абзаца формы
- •Формулы скрытия акций формы и вида
- •Формулы скрытия столбцов вида и строк аутлайна
- •Упражнение
- •Формулы работы с видами
- •Формула отбора документов
- •Формулы столбцов вида
- •Наложения фильтра на вид
- •Работа с почтой
- •Работа с именами пользователей
- •Работа с уровнями доступа
- •Блокировка документов на редактирование
- •Операции с папками
- •Функции, используемые в Web-приложениях
- •Формулы по месту применения
- •Формулы панели инструментов - Toolbar button
- •Формулы агентов
- •Формула секции с управляемым доступом
- •Остальные функции
- •Литература
- •1 Введение 3
- •2 Синтаксис формул 5
- •3 Лексические элементы формул 6
- •4 Как выполняются формулы 30
- •5 Обработка ошибок в формулах 36
- •6 Описание @-функций Domino 39
- •11 Литература 412
-
Функции для работы со строками
@Length( строка ) @Length( список_строк )
Область применения: без ограничений.
Если параметром является строка, @Length возвращает количество символов в строке. Если параметром является список_строк, @Length возвращает количество символов в каждой строке как числовой список.
Пример 1. Возвращает 45.
@Length( "The boy crossed the wide, but gentle, stream." )
Пример 2. Возвращает 0 : 5 : 3.
@Length( "" : "abcde" : "xyz" )
Пример 3. Возвращает 16 : 10 : 17, если содержимое полей From, Topic, и Date, соответственно, “Stephen Brewster", "News Flash", и [04.11.89 16:45:10].
@Length( From : Topic : @Text( Date ))
@LowerCase( строка )
@LowerCase( список_строк )
@UpperCase( строка )
@UpperCase( список_строк )
@ProperCase( строка )
@ProperCase( список_строк )
Область применения: без ограничений.
@LowerCase преобразует все символы строки к нижнему регистру, @UpperCase - к верхнему, а @ProperCase - первый символ каждого слова - к верхнему, а остальные символы - к нижнему. При использовании в качестве аргумента списка строк, возвращают список, получившийся поэлементным применением функций.
Пример 1. Возвращает "juan mendoza".
@LowerCase( "Juan Mendoza" )
Пример 2. Возвращает "ROBERT T. SMITH".
@UpperCase( "Robert T. Smith" )
Пример 3. Возвращает список "Every Child" : "Loves Toys".
@ProperCase( "every CHILD" : "LOves toys" )
@NewLine
Область применения: нельзя использовать в формулах отбора, колонок, видимости объекта, формы, заголовка окна, области размещения и в контексте функции @Prompt (внутри функции @Prompt используйте для перевода строки функцию @Char с параметрами, соответствующими символу возврата каретки для данной платформы). В Web-приложениях не работает в формулах отбора, формы и заголовка окна.
Вставляет символ перехода на новую строку (возврат каретки) в текстовую строку.
Пример 1. Присвоит полю Subject значение, первой строкой которого будет "Привет", а второй "всем".
@SetField( "Subject"; "Привет" + @NewLine + "всем" )
Пример 2. При использовании в формуле, выполняющейся на компьютере под Windows, выдаст окно, в первой строке которого будет "Hello", а во второй "world".
@Prompt( [Ok]; "Информация"; "Hello" + @Char( 13 ) +
@Char( 10 ) + "world" )
@Repeat( строка; число_повторов;
максимальное_число_символов )
@Repeat( список_строк; число_повторов;
максимальное_число_символов )
Область применения: без ограничений. Длина возвращаемой строки не должна превышать 1024 символа, в противном случае возникает ошибка.
Возвращает строку, полученную из исходной путем многократной операции конкатенации самой с собой. Число конкатенаций равно числу_повторов. Третий параметр необязателен, если он присутствует, то полученная строка обрезается до числа символов, равных максимальному_числу_символов. Если в качестве первого аргумента выступает список_строк, возвращаемое значение есть список, полученный поэлементным применением функции.
Пример 1. Возвращает "приветприв".
@Repeat( "привет"; 4; 10 )
Пример 2. Возвращает "приветприв" : "покапокапо".
@Repeat( "привет" : "пока"; 4; 10 )
@Trim( строка ) @Trim( список_строк )
Область применения: без ограничений.
Удаляет пробелы в начале и в конце строки и лишние пробелы внутри строки. Если параметром является список_строк, функция удаляет элементы типа пустой строки из результирующего списка.
Пример 1. Возвращает "БОРИС ИВАНОВ".
@Trim( @UpperCase( "Борис Иванов " ))
Пример 2. Возвращает "БОРИС ИВАНОВ".
@UpperCase( @Trim( "Борис Иванов " ))
Пример 3. Возвращает "Пример использования функции", даже если исходное содержимое поля Topic выглядит как " Пример использования функции ".
@Trim( Topic )
Пример 4. Возвращает "Бостон" : "Торонто" : "Сантьяго" : "США" : "Канада" : "Чили", если список в поле Сity содержит "Бостон" : "Торонто" : "Сантьяго"; поле StateOrProvince не содержит ничего; а поле Сountry содержит список "США" : "Канада" : "Чили".
@Trim( City : StateOrProvince : Country )
Пример 5. Возвращает "45" как текстовую строку, если содержимым поля Date является [8.29.89 16:30:45], или любая другая величина "дата-время", в которой количество секунд равно 45.
@Trim( @Text( @Second( Date )))