Используйте ссылки на поля, литералы, операторы и функции для создания формул для вычисляемых полей в Adobe Acrobat Sign.
Вводите формулы в свойство Формула поля, настроенного с параметром Тип значения > Вычисляемое. Эта справка описывает синтаксис выражений, доступный для создания таких формул.
Чтобы настроить само поле, см. Создание вычисляемого поля.
Создайте формулу
Формула может содержать один или несколько из этих элементов:
| Элемент | Используйте для | Пример |
|---|---|---|
| Ссылка на поле | Используйте значение из другого поля | цена * количество |
| Литерал | Включите фиксированное число, текстовое значение или дату | итого * 0,10 |
| Оператор | Выполните арифметические, сравнительные или текстовые операции | промежуточный итог + налог |
| Функция | Выполните предопределенное вычисление или логическую операцию | max(value1, value2) |
Формулы также могут ссылаться на другие вычисляемые поля.
Ссылка на поля по имени
Используйте имя поля для ссылки на его значение в формуле.
Например:
цена * количество
использует значения полей с именами price и quantity.
Если имя поля содержит пробелы, заключите полное имя в квадратные скобки:
[Цена за единицу] * количество
Используйте понятные, уникальные имена полей, чтобы формулы оставались понятными при изменении формы.
См. Свойства полей формы для требований к именам полей.
Используйте буквенные значения
Литерал — это фиксированное значение, включенное непосредственно в формулу.
Примеры:
- Числа: 10
- Текст: «Одобрено»
- Даты, используемые поддерживаемыми функциями дат
Заключайте текстовые строки в одинарные или двойные кавычки.
Например:
"Утверждено"
Литеральные значения можно комбинировать с полями, операторами и функциями.
Поддерживаемые операторы
Используйте операторы для выполнения вычислений, объединения текста или сравнения значений.
| Оператор | Операция |
|---|---|
| + | Добавить |
| - | Вычитание |
| / | Разделить |
| * | Умножение |
| & | Объединить текстовые строки |
| = | Равно |
| != | Не равно |
| < | Знак меньше |
| <= | Меньше или равно |
| > | Знак больше |
| >= | Больше или равно |
| % | Вернуть остаток от деления |
| ^ | Возвести значение в степень |
Операторы сравнения возвращают результат «истина» или «ложь» и могут использоваться внутри логических функций.
Например:
итого >= 1000
проверяет, составляет ли значение total не менее 1000.
Математические функции
| Функция | Результат |
|---|---|
| abs(number1) | Возвращает абсолютное значение числа. |
| roundUp(number1) | Округляет число в большую сторону. |
| roundDown(number1) | Округляет число в меньшую сторону. |
| round(number1) | Округляет число до ближайшего целого. |
| min(число1, число2) | Возвращает меньшее из двух чисел. |
| max(number1, number2) | Возвращает большее из двух чисел. |
Пример
max(Amount1, Amount2)
возвращает большее из двух значений полей.
Функции даты
| Функция | Результат |
|---|---|
| datePart(part, date) | Возвращает указанную часть даты как целое число. |
| dateAdd(part, date, addition) | Добавляет к дате указанное количество единиц даты. Используйте отрицательное значение для вычитания. |
| dateDiff(part, date1, date2) | Возвращает разность между двумя датами, используя указанную часть даты. |
| daysIn(part, date) | Возвращает количество дней в указанной части даты. |
| date(string) | Преобразует текстовое значение, представляющее дату, в значение даты, которое может использоваться другими функциями. |
| now() | Возвращает дату и время вычисления формулы. |
Значения частей даты
Используйте эти значения для аргумента part в поддерживаемых функциях даты:
| Значение | Часть даты или времени |
|---|---|
| y | Год |
| q | Квартал |
| m | Месяц |
| d | День |
| h | Час |
| n | Минута |
| s | Секунда |
Пример
dateAdd("d", StartDate, 30)
добавляет 30 дней к значению поля StartDate .
Используйте отрицательное число для расчета более ранней даты:
dateAdd("d", StartDate, -7)
Логические функции
Используйте логические функции, когда вычисляемое значение зависит от одного или нескольких условий.
| Функция | Результат |
|---|---|
| if(logical_test, value_if_true, value_if_false) | Возвращает одно значение, когда проверка истинна, и другое, когда ложна. |
| and(logical1, logical2, ...) | Возвращает истину только тогда, когда все указанные условия истинны. |
| or(logical1, logical2, ...) | Возвращает истину, когда хотя бы одно указанное условие истинно. |
| not(logical) | Обращает результат истинно или ложно. |
| lookup(sourceField, values, default_value) | Возвращает значение, связанное с исходным полем, или значение по умолчанию, если сопоставление не найдено. |
Используйте if для выбора между результатами
Например:
if(Total >= 1000, "Approval required", "Approved")
возвращает одно текстовое значение, когда Total составляет не менее 1000, и другое, когда нет.
Результаты «истина» и «ложь» могут сами содержать выражения.
Объедините логические проверки (and, or, not)
Используйте and , когда каждое условие должно быть истинным:
and(Age >= 18, Consent = "Yes")
Используйте or , когда любое условие может быть истинным:
or(State = "CA", State = "OR")
Используйте not , когда вам нужна противоположность условия:
not(Status = "Closed")
Сопоставление значений с помощью поиска
Используйте lookup , когда исходное значение должно возвращать соответствующее значение.
Например:
lookup(State, "CA=California,UT=Utah,WA=Washington", "Other")
возвращает сопоставленное название штата, если сопоставление существует, и Other — если нет.
Это полезно, когда исходное значение поступает из определенного набора вариантов, таких как поле «Выпадающий список» или «Переключатель».
Примеры формул
Рассчитать сумму
quantity * [Unit price]
Умножает количество на цену за единицу.
Складывает несколько значений
subtotal + tax + shipping
Складывает значения из трех полей.
Вычислить процент
subtotal * taxRate
Умножает одно поле на ставку, сохраненную в другом поле.
Возвращает значение при выполнении условия
if(quantity >= 10, [Unit price] * 0.9, [Unit price])
возвращает значение со скидкой, когда количество достигает определенного порога.
Рассчитать будущую дату
dateAdd("m", StartDate, 12)
возвращает дату на 12 месяцев позже StartDate.
Объединить текст
RecipientName & " - " & Company
объединяет значения полей и текстовые литералы в один результат.
Создавайте формулы, которые проще поддерживать
Используйте описательные имена полей и делайте связанные вычисления максимально простыми для конкретной формы.
При проверке формулы убедитесь, что:
- Каждое указанное поле существует.
- Имена полей соответствуют именам, используемым в формуле.
- Поля, содержащие пробелы, заключены в квадратные скобки.
- Текстовые литералы заключены в кавычки.
- Функции содержат необходимые аргументы.
- Вычисляемое поле создает предполагаемое значение для ожидаемых входных данных получателя.
Сведения о настройке вычисляемого поля и форматировании числовых результатов см. в разделе Создание вычисляемого поля.
Оптимизируйте свою работу с помощью Acrobat Sign
Легко и быстро управляйте документами и подписывайте их в Интернете.