Вычисляемые поля – это элементы расширенных форм, доступные только клиентам уровня Business и Enterprise.

Обзор

Adobe Sign позволяет динамически обновлять поля в документе (соглашении) на основе данных, введенных подписывающей стороной. Это можно сделать с помощью вычисляемых полей. С помощью вычисляемых полей можно настроить правила документа (или шаблона документа) перед тем, как отправить его на подпись. Эти правила обрабатываются, когда пользователь выполняет операции с документом, и документ динамически обновляется в соответствии с полями или значениями.

Вычисляемые поля в документе можно создать одним из следующих способов.

Примеры использования вычисляемых полей

Вычисляемые поля можно использовать в любых сценариях, где необходимо динамически обновлять документ во время подписания. Ниже приведены примеры сценариев использования вычисляемых полей. Эти сценарии приведены исключительно в справочных целях.

1. Настройка формы заказа — вычисляемые поля можно использовать для настройки формы заказа, где подписывающая сторона может выбрать один из элементов в списке и указать количество. Когда пользователь выбирает элемент в списке, форма автоматически обновляется с учетом цены выбранного товара. Когда пользователь выбирает количество, автоматически рассчитывается итоговая стоимость товаров. В форму можно включить дополнительные расчеты, определяющие общую сумму налога по заказу или величину скидки, вычисленную в соответствии с правилами расчета скидок.

2. Автоматическое указание срока действия контракта — если в момент подписания документа пользователь выбирает срок контракта (6 месяцев, 12 месяцев, 24 месяца и т. д.), вычисляемое поле позволяет автоматически подставить дату окончания контракта в соответствии со значением, выбранным во время подписания документа.

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

Основные сведения о вычисляемых полях

Любое поле формы в Adobe Sign, включая флажки и переключатели, можно пометить как вычисляемое. Во время подписания формы пользователь не может напрямую ввести значение в поле, помеченное как вычисляемое. Значение этого поля рассчитывается автоматически на основе правил, настроенных для формы.

Определение вычисляемого поля состоит из двух частей: выражение и формат

Выражение

Обязательно

Определяет формулу или правило, в соответствии с которыми вычисляется значение в данном поле. Adobe Sign вычисляет выражение во время подписания документа, и полученное значение отображается в поле.

Формат

Необязательно

Итоговое значение вычисляемого поля можно представить в формате даты, числа или валюты.

Вычисляемые поля можно создать с помощью текстовых тегов Adobe Sign, с помощью веб-приложения Adobe Sign или с помощью полей формы PDF. При использовании текстовых тегов Adobe Sign или полей формы PDF вычисляемое выражение определяется с помощью директивы calc. Форматирование вычисляемого поля можно применить с помощью директивы format.

Пример

{{someCalculatedField_es_:signer1:calc(someExpn):format(formatType, someFormat)}}

В этом примере показаны текстовые теги, используемые для определения поля someCalculatedField. Это поле назначено получателю signer1. Значение этого поля вычисляется по формуле, заданной параметром «someExpn». Тип итогового значения определяется параметром «formatType», и к нему применяется формат, заданный параметром «someFormat».

Среда авторинга в веб-приложении Adobe Sign предоставляет полноценный редактор выражений, в котором можно создавать формулы для вычисляемых полей. Дополнительные сведения о создании выражений см. в разделе Определение вычисляемых полей с помощью редактора выражений.


Выражения вычисляемого поля

Выражение определяет формулу или правило для расчета значения в вычисляемом поле. Выражение может состоять из одного или нескольких элементов:

Литерал

Определяет фактическое значение, используемое в выражении. Выражения могут быть строковыми значениями, числами или датами. Например:

• {{helloField_es_:signer1:calc(“Hello”)}} — этот литерал задает для поля «helloField» значение «Hello».

• {{numField_es_:signer1:calc(10)}} — этот литерал задает для поля «numField» значение «10».

Строки, включенные в выражение, необходимо помещать в кавычки (двойные (") или одинарные (')). Если итоговое значение включает одинарные или двойные кавычки, кавычки необходимо закрыть с помощью обратной косой черты (\).

Важное замечание. Во всех последующих примерах будет показано только само выражение без полного синтаксиса текстового тега.

Операторы

Операторы используются для выполнения одной или нескольких операций в выражении. Например:

• 6 + 4 — при использовании этого оператора в вычисляемое поле подставляется значение 10.

• 5/22/2016 - 3 — при использовании этого оператора в вычисляемое поле подставляется значение 5/19/2016.

Список операторов, используемых в выражениях, см. в разделе Поддерживаемые операторы.

Поля

Существующие поля в документе можно использовать для определения выражения. При этом выражение ссылается на поле по его имени. Это могут быть поля Adobe Sign (например, «Подпись», «Дата», «Имя подписывающей стороны», «Организация подписывающей стороны» и т. д.), поля, определенные в документе, или другие вычисляемые поля. Например:

• price * quantity — данное выражение ссылается на два поля в документе: «Цена» и «Количество». Результат, полученный путем умножения значений этих двух полей, подставляется в вычисляемое поле.

• signerName & “employee of “ & signerCompany — данное выражение ссылается на два поля в документе: «Имя подписывающего» и «Организация подписывающего». Эти поля предварительно заполняются в Adobe Sign и сцепляются выражением. Если имя подписывающей стороны «Петр Иванов», а организация подписывающей стороны — «Acme», то результат выражения будет иметь вид «Петр Иванов сотрудник Acme», и это значение будет подставлено в вычисляемое поле.

Если имя поля, на которое ссылается выражение, содержит пробел, это имя необходимо заключить в квадратные скобки ([]). Например, элемент выражения [имя поля с пробелами] ссылается на поле в документе «Имя поля с пробелами».

Функции

Выражений также могут содержать одну или несколько функций из списка поддерживаемых функций Adobe Sign. Указанные функции вычисляются в процессе подписания соглашения, и полученное значение отображается в вычисляемом поле. Например:

• dateAdd(d, signedDate, 3) — в этом выражении используется функция dateAdd, которая прибавляет 3 дня к дате подписания соглашения. Таким образом, если дата подписания документа 5/22/2016, итоговым значением выражения будет 5/25/2016.

Список функций, используемых в выражениях, см. в разделе Поддерживаемые функции.


Поддерживаемые операторы

В вычисляемых полях поддерживаются следующие операторы.

+

Сумма двух чисел.

-

Разность двух чисел.

/

Деление двух чисел.

*

Умножение двух чисел.

&

Сцепление двух строк.

=

Равно. Сравнивает два значения и возвращает результат «true», если эти два значения равны. В противном случае возвращается результат «false».

!=

Не равно. Сравнивает два значения и возвращает результат «true», если эти два значения не равны. В противном случае возвращается результат «false».

Меньше чем. Сравнивает два значения и возвращает логический результат («true» или «false»), если первое значение меньше второго.

>=

Больше или равно. Сравнивает два значения и возвращает логический результат («true» или «false»), если первое значение больше второго или равно ему.

<=

Меньше или равно. Сравнивает два значения и возвращает логический результат («true» или «false»), если первое значение меньше второго или равно ему.

Больше чем. Сравнивает два значения и возвращает логический результат («true» или «false»), если первое значение больше второго.

%

Оператор деления с остатком. Возвращает остаток при делении двух чисел.

^

Оператор степени. Возвращает экспоненциальное значение указанных чисел.


Поддерживаемые функции

Для определения выражений в вычисляемом поле используются следующие функции.

Функция

Категория

Описание

abs(number1)

Математическая

Возвращает абсолютное значение числа number1.

roundUp(number1)

Математическая

Округление числа number1 в сторону увеличения.

roundDown(number1)

Математическая

Округление числа number1 в сторону уменьшения.

round(number1)

Математическая

Округление числа number1 до ближайшего целого числа.

min(number1,number2)

Математическая

Возвращает меньшее из двух чисел: number1 и number2.

max(number1,number2)

Математическая

Возвращает большее из двух чисел: number1 и number2.

datePart(part, date)

Дата

Возвращает часть даты, заданную первым аргументом (целое число). Пример: функция datePart (m, 5/22/2016) возвращает значение 5 — месяц даты.

Допустимые значения атрибута «part» см. в разделе «Допустимые значения фрагментов дат» ниже.

dateAdd(part, date, addition)

Дата

Добавляет к дате число, заключенное в аргументе «part» (например, «d» для дней, «m» для месяцев и «y» для лет), для вычисления даты в будущем. Можно использовать числа и имена полей.

Пример: функция dateAdd("m", "Jan 1, 2016", 3) возвращает дату «1 апреля 2016 г.». В этом примере формула добавляет к указанной дате 3 месяца.

dateDiff(part, date1, date2)

Дата

Возвращает число, заключенное в аргументе «part» (например, «d» для дней, «h» для часов и «n» для минут), для вычисления интервала между двумя датами Можно использовать числа и имена полей.

Пример: функция dateDiff("d", "Jan 1, 2016", "Jan 2, 2016") возвращает значение 1, представляющее 1 день между 1-м и 2-м января.

daysIn(part, date)

Дата

Возвращает число дней, содержащихся в значении аргумента part (например, «d» для дней, «m» для месяцев и «y» для лет), для указанной даты. Можно использовать числа и имена полей.

Пример: функция daysIn("m", "Feb 1, 2016") возвращает значение 29 для числа дней в феврале 2016 г., а функция daysIn("y", "02/01/2015") возвращает значение 365 для числа дней в 2015 г.

date(string)

Дата

Преобразует строковое значение, например «1/1/2016», в объект «date», который может использоваться в других функциях.

now()

Дата

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

if(logical_test, value_if_true, value_if_false)

Логическая

Вычисляет выражение logical_test. Элемент logical_test может быть другим выражением. Если получен логический результат TRUE, возвращается значение, заданное атрибутом value_if_true. Если получен логический результат FALSE, возвращается значение, заданное атрибутом value_if_false. Атрибуты value_if_true и value_if_false также могут быть выражениями.

Пример: функция «if» (1>0, "Правильно", "Неправильно") возвращает значение «Правильно».

and(logical1, logical2, ...)

Логическая

Возвращает значение «true», только если для всех логических аргументов получен результат TRUE. В противном случае возвращается значение «false».

Пример: функция «and(1>0, 2>1)» возвращает значение «true», а функция «and(1>0, 2=1)» возвращает значение «false».

or(logical1, logical2, ...)

Логическая

Возвращает значение «true», если для любого из логических аргументов (logical1, logical2,...) получен результат TRUE. Если для всех логических аргументов получен результат FALSE, возвращается значение false.

Пример: функция «or(1>0, 2>1)» возвращает значение «true», а функция «or(1>0, 2=1)» возвращает значение «false».

not(logical)

Логическая

Возвращает значение, противоположное аргументу logical. То есть, если для аргумента logical получен результат FALSE, возвращается значение «true». Если для аргумента получен результат TRUE, возвращается значение «false». Пример: функция «not(1>0)» возвращает значение «false».
lookup(sourceField,("value1=return1,value2=return2", "default_value") Логика

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

Пример: lookup(stateField, "CA=Калифорния,UT=Юта,MA=Массачусетс,WA=Вашингтон","Нет")

Возвращается значение Калифорния, если stateField равно CA, или Юта, если stateField равно UT, и т. д.  Если совпадений не найдено, возвращается значение Нет.


Допустимые значения фрагментов дат

Ниже перечислены значения, которые можно использовать в функциях даты для указания фрагмента даты, с которым будет работать функция.

Part

Фрагмент даты, к которой применяется функция

y

Год

q

Квартал

m

Месяц

d

День

h

Час

n

Минута

s

Секунда


Форматирование вычисляемых полей

Для вычисляемого поля можно не только задать выражение, но и настроить форматирование результирующего значения. Результат можно представить в текстовом формате (по умолчанию), а также в формате числа или даты.

Если используются текстовые теги, директива «format» имеет два аргумента: «FormatType» и «Format».

FormatType

Указывает тип значения, которое представляет вычисляемое поле. Допустимые значения этого параметра — число и дата.

Format

Определяет структуру результирующего значения, которое подставляется в вычисляемое поле.


Применение числового формата к вычисляемым полям

Чтобы представить результат в виде числа, можно использовать следующие символы.

Символ форматирования

Описание

_

(Нижнее подчеркивание) Служит в качестве заполнителя для любой цифры.

9

Служит в качестве заполнителя для любой цифры.

.

Расположение обязательного десятичного разделителя-точки (или другого символа в соответствии с региональными настройками).

0

Располагается слева или справа от обязательного десятичного разделителя-точки. Дополнение нулями.

( )

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

+

Помещает знак «плюс» перед положительными числами и знак «минус» перед отрицательными.

-

Помещает пробел перед положительными числами и знак «минус» перед отрицательными.

,

Отделяет каждый третий десятичный разряд запятой (или другим символом в соответствии с региональными настройками).

$

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

%

Преобразует числовое значение поля в процент. Значение умножается на 100,

и в конце помещается знак %. Этот символ должен быть последним в строке форматирования.


Применение формата даты к вычисляемым полям

Чтобы представить результат в виде даты, можно использовать следующие символы.

Формат

Описание

Пример

s

Секунды в минуте, 0–59.

От 0 до 59

ss

Секунды в минуте с начальным нулем (при необходимости).

От 00 до 59

n

Минута часа, 0–59.

0 или 59

nn

Минута часа с начальным нулем (при необходимости).

00 или 59

h

Час дня, 1–12.

От 1 до 12

hh

Час дня с начальным нулем (при необходимости).

От 01 до 12

H

Час дня, 0–23.

От 0 до 23

HH

Час дня с начальным нулем (при необходимости).

От 00 до 23

d

День месяца, 1–31.

От 1 до 31

dd

День месяца с начальным нулем (при необходимости).

От 01 до 31

ddd

Сокращенное название дня недели.

Пн–вс

dddd

Полное название дня недели.

Понедельник – воскресенье

m

Месяц года, 1–12.

От 1 до 12

mm

Месяц года с начальным нулем (при необходимости).

От 01 до 12

mmm

Сокращенное название месяца.

Янв–дек

mmmm

Полное название месяца.

Январь – декабрь

yy

Две последние цифры года.

99 или 15

yyyy

Четыре цифры года.

1999 или 2015

t

Отображает первый символ обозначения A.M./P.M.

A или P

tt

Отображает обозначение A.M./P.M.

AM или PM


Примеры форматирования

Далее приведены примеры форматирования дат и чисел в вычисляемых полях.

  • Вычисляемое поле с примененным форматом даты:

{{myField_es_:calc(otherDateField + 3):format(date, "mmm dd, yyyy")}}

Результирующее значение имеет вид «22 мая 2016».

  • Вычисляемое поле с примененным числовым форматом:

{{myTax_es_:calc(total * taxrate):format(number, "$,.00") }}

Результирующее значение имеет вид «$1,987.65».


Определение вычисляемых полей с помощью редактора выражений

Вычисляемые поля можно определить в среде авторинга Adobe Sign. Чтобы определить вычисляемое поле в среде авторинга, выполните указанные ниже действия.

1. Перетащите поле в документ. Дважды щелкните добавленное поле, чтобы открыть диалоговое окно свойств. Присвойте полю соответствующее имя. Измените атрибут Тип значения на Вычисляемое значение. Теперь значение поля будет определяться в результате вычисления во время подписания документа.

Поле «Тип значения»

 

2. Введите вычисляемое выражение в текстовом поле Формула или нажмите на кнопку функции (fx), чтобы открыть редактор выражений.

Редактор формул

 

3. В редакторе выражений задайте выражение для вычисляемого поля (см. рис. ниже). В области выражения в верхней части окна видна формула, которая будет использоваться для вычисления значения поля. Формулу можно ввести в области выражения или создать в среде авторинга. Редактор выражений предоставляет список доступных функций, список существующих полей форм в документе, а также список поддерживаемых операторов, используемых при построении выражений. Чтобы добавить в формулу поле или функцию, дважды щелкните нужный элемент в области списка в редакторе выражений. В выражение также можно добавить операторы, выбрав нужный элемент в списке операторов.

4. После создания выражения можно проверить его структуру с помощью кнопки Проверить синтаксис и сохранить изменения.

5. Выберите тип вычисляемых полей в раскрывающемся списке Отображать как.

Поле «Отображать как»

 

6. Если в списке Отображать как выбрана дата или число, выберите формат числа или даты. Также можно выбрать пользовательское форматирование для поля.

Поле «Числовой формат»

Примеры вычисляемых полей

 

  • {{shipState_es_:signer1:calc([billingState]):showif(sameAs=unchecked)}}
    • Поле в документе, назначенное первой подписывающей стороне, которое отображается только после снятия флажка «sameAs». В это поле автоматически подставляется значение из поля «billingState», введенное подписывающей стороной.
  • {{total_es_:signer1:calc(q1*pr1):format(Number,”$,0.00”):align(right)}}
    • Поле в документе, назначенное первой подписывающей стороне. Значение в этом поле автоматически вычисляется путем умножения значений в полях «q1» и «pr1». Итоговое значение выводится в формате валюты, содержит два десятичных разделителя, и перед ним отображается знак доллара ($). Кроме того, итоговое значение выравнивается по правому краю поля.
  • price_es_:signer1:calc(if(pn1=”W1”,9.99,if(pn1=”W2”,5.99,if(pn1=”W3”,24.99,0))))}
    • Поле в документе, называемое «price», рассчитывается на основании значения, выбранного подписывающей стороной в других полях «pn1» в документе. Если значение в поле «pn1» равно W1, то в поле «price» отображается значение 9,99; если значение в поле «pn1» равно W2, то в поле «price» отображается значение 5,99 и т. д. Если ни одно из значений не соответствует значению поля «pn1», то в поле «price» отображается 0. Таким образом, в вычисляемые поля автоматически подставляется цена товара в зависимости от выбора, сделанного подписывающей стороной.

 


Загружаемая версия

Загрузить

Эта работа лицензируется в соответствии с лицензией Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported  На посты, размещаемые в Twitter™ и Facebook, условия Creative Commons не распространяются.

Правовые уведомления   |   Политика конфиденциальности в сети Интернет