表达式
新增功能
快速入门
管理
- Admin Console 概述
- 用户管理
- 帐户/组设置
- 设置概述
- 全局设置
- 帐户级别和 ID
- 全新的收件人体验
- 自签名工作流
- 批量发送
- Web 表单
- 自定义发送工作流程
- Power Automate 工作流程
- 库文档
- 收集包含协议的表单数据
- 有限文件可见性
- 附加已签名协议的 PDF 副本
- 在电子邮件中包含链接
- 在电子邮件中包含图像
- 附加至电子邮件的文件将命名为
- 将审核报告附加到文档
- 将多个文档合并为一个
- 下载单个文档
- 上传签名文档
- 我的账户中的用户委托
- 允许外部收件人委派
- 授权签名
- 授权发送
- 授权添加电子密封
- 设置默认时区
- 设置默认日期格式
- 位于多个组的用户 (UMG)
- 组管理员权限
- 替换接收者
- 审核报告
- 概述
- 允许在事务验证页面上进行未经身份验证的访问
- 包含提醒
- 包含查看事件
- 包含协议页面/附件计数
- 在产品消息发送和指南中
- 可访问的 PDF
- 新版“编辑”体验
- 医疗保健客户
- 帐户设置
- 添加标志
- 自定义公司主机名/URL
- 添加公司名称
- 发布协议 URL 重定向
- 签名首选项
- 格式精美的签名
- 允许收件人签名的方式
- 签名者可以更改其姓名
- 允许接收者使用其保存的签名
- 自定义使用条款和消费者信息披露条款
- 在表单字段中导航收件人
- 拒绝签名
- 允许图章工作流
- 要求签名者提供其职务或公司
- 允许签名者打印并置入书面签名
- 进行电子签名时显示消息
- 需要签名者使用移动设备创建其签名
- 请求签名者的 IP 地址
- 从参与者图章中排除公司名称和职务
- 数字签名
- 电子签章
- 数字身份
- 报告设置
- 新版报告体验
- 经典报告设置
- 安全设置
- 发送设置
- 登录后显示“发送”页面
- 发送时需要收件人姓名
- 锁定已知用户的名称值
- 允许的收件人角色
- 允许电子见证人
- 收件人组
- 必填字段
- 附加文件
- 字段拼合
- 修改协议
- 协议名称
- 语言
- 私人消息
- 允许的签名类型
- 提醒
- 已签名文档的密码保护
- 通过以下方式发送协议通知
- 签名者身份识别选项
- 内容保护
- 启用 Notarize 事务
- 文件过期
- 预览、定位签名和添加字段
- 签名顺序
- “液体”模式
- 自定义工作流控件
- 电子签名页面的上传选项
- 签名后确认 URL 重定向
- 消息模板
- 生物识别设置
- 工作流程集成
- 公证设置
- 付款集成
- 签名者消息发送
- SAML 设置
- SAML 配置
- 安装 Microsoft Active Directory 联合身份验证服务
- 安装 Okta
- 安装 OneLogin
- 安装 Oracle Identity Federation
- SAML 配置
- 数据管理
- 时间戳设置
- 外部归档
- 账户语言
- 电子邮件设置
- 从 echosign.com 迁移到 adobesign.com
- 为收件人配置选项
- 监管要求指导
- 批量下载协议
- 申请您的域
- “举报滥用”链接
发送、签署和管理协议
- 收件人选项
- 发送协议
- 在文档中创作字段
- 应用程序内创作环境
- 使用文本标记创建表单
- 使用 Acrobat (AcroForms) 创建表单
- 字段
- 创作常见问题
- 签署协议
- 管理协议
- 审核报告
- 报告和数据导出
高级协议功能和工作流程
- Web 表单
- 可重复使用的模板(库模板)
- 转让 Web 表单和库模板的所有权
- Power Automate 工作流程
- Power Automate 集成和包含的权限概述
- 启用 Power Automate 集成
- “管理”页面上的上下文操作
- 跟踪 Power Automate 使用情况
- 创建新的工作流(示例)
- 用于工作流的触发器
- 从 Acrobat Sign 外部导入工作流
- 管理工作流
- 编辑工作流
- 共享工作流
- 禁用或启用工作流
- 删除工作流
- 实用模板
- 仅限管理员
- 协议存档
- Web 表单协议存档
- 将已完成的 Web 表单文档保存到 SharePoint 库
- 将已完成的 Web 表单文档保存到 OneDrive for Business
- 将已完成的文档保存到 Google Drive
- 将已完成的 Web 表单文档保存到 Box
- 协议数据提取
- 协议通知
- 发送包含协议内容和已签名协议的自定义电子邮件通知
- 在 Teams 渠道中获取 Adobe Acrobat Sign 通知
- 在 Slack 中获取 Adobe Acrobat Sign 通知
- 在 Webex 中获取 Adobe Acrobat Sign 通知
- 协议生成
- 通过 Power Apps 表单和 Word 模板生成文档,并发送以供签名
- 从 OneDrive 中的 Word 模板生成协议并获取签名
- 为所选 Excel 行生成协议,发送以供审阅和签名
- 自定义发送工作流程
- 共享用户和协议
与其他产品集成
- Acrobat Sign 集成概述
- Acrobat Sign for Salesforce
- Acrobat Sign for Microsoft
- 其他集成
- 合作伙伴管理的集成
- 如何获取集成密钥
Acrobat Sign 开发人员
- REST API
- Webhook
支持和故障排除
计算型字段在高级表单中使用,因此仅包含在多重授权服务级别中。
概述
Adobe Acrobat Sign 能够根据签名者在签署协议时输入的数据动态更新文档(协议)中的字段。这可使用计算型字段来完成。在发送文档以供签名之前,您可以使用计算型字段在文档(或文档模板)中设置规则。这些规则在签名者与文档进行交互时得到处理,并且会根据字段/值动态更新文档。
可使用以下任一机制在文档中定义计算型字段:
- Acrobat Sign 表单创作环境
- Acrobat Sign 文本标记(有关更多详细信息,请参见文本标记文档。)
- Adobe Acrobat PDF 表单字段(有关更多详细信息,请参见在 Acrobat 中创建表单参考指南。)
计算型字段用例
在签名时需要动态更新文档的任何情况下,均可使用计算型字段。下面是可使用计算型字段的几个用例的示例。这些用例仅供举例说明。
1. 设置订货表单 - 计算型字段可用于设置一个订货表单,在该表单中,签名者可以从可订购商品的列表中选择并指定数量。从列表中选择商品后,将在表单上自动更新选定商品的价格。此外,签名者选择数量后,还会自动计算商品的总成本。表单也可以包含其他计算,用于确定订单上应交的总税额或根据向客户提供折扣的业务规则计算数量折扣。
2. 自动填充合同期限到期日 - 对于允许客户在签名时选择合同期限长度(6 个月、12 个月、24 个月等)的协议,计算型字段可用于根据客户在签署合同时做出的选择自动填充合同的结束日期。
3. 包含多种选择的注册表单 - 计算型字段可用于设置注册表单(如成员注册表单),在这些表单中,为表单签名的人员可以从一组可用选项中选择。签名者做出的选择可以驱动表单的其他动态方面,如签名者同意的条款、合同的持续时间以及总成本。
计算型字段基础
Acrobat Sign 表单中的任何表单字段、复选框字段或单选按钮字段均可标记为计算型字段。在签名时,签名者不能直接在指定为计算型字段的字段中输入值,此类字段的值将根据在表单中定义的规则自动计算。
计算型字段定义由两部分组成:表达式和格式。
|
必填 |
定义有关如何计算所指定字段的值的公式/规则。Acrobat Sign 将在签名时对表达式求值,所得值将显示在字段中。 |
格式 |
可选 |
通过指定格式,也可将计算型字段所得值的格式设置为日期、数字或货币。 |
可使用 Acrobat Sign 文本标记、Acrobat Sign Web 应用程序或 PDF 表单字段定义计算型字段。使用 Acrobat Sign 文本标记或 PDF 表单字段定义计算型字段时,可使用一个名为“calc”的指令定义计算的表达式。可使用一个名为“format”的指令指定计算型字段的格式设置。
示例
{{someCalculatedField_es_:signer1:calc(someExpn):format(formatType, someFormat)}}
此示例显示的是使用文本标记在文档中定义一个名为“someCalculatedField”的字段。此字段分配给标识为 signer1 的接收者。此字段的值将根据在“someExpn”中指定的公式进行计算。所得值的类型由参数“formatType”指定,其格式设置基于定义为“someFormat”的格式。
Acrobat Sign Web 应用程序的编制环境提供了一个功能齐全的表达式构建器,用于定义计算型字段的公式。有关构建表达式的更多详细信息,请参见使用表达式构建器指定计算型字段。
计算型字段表达式
表达式定义用于确定计算型字段的值的公式/规则。表达式可以由下面的一个或多个元素组成:
文字 |
指定用作表达式一部分的实际值。表达式可以是字符串值、数字或日期。例如:
需要包含在表达式中的字符串必须用引号(双引号 (") 或单引号 ('))引起来。如果所得值需要包含引号(单引号或双引号),实现方法是使用反斜杠 (\) 来结束引号。 重要说明:对于后面的所有示例,将仅显示表达式,而不显示文本标记的完整语法。 |
运算符 |
运算符用于执行作为表达式一部分的一项或多项运算。例如: • 6 + 4 – 此运算符的结果是在计算型字段中填充值 10。 • 5/22/2016 - 3 – 此运算符的结果是在计算型字段中填充值 5/19/2016。 有关表达式中所支持运算符的列表,请参见支持的运算符。 |
字段 |
文档中的现有字段可用于定义表达式,方法是通过字段名称来引用字段。字段可以是 Acrobat Sign 字段(如签名、日期字段、签名者姓名、签名者公司等),或者是在文档中定义的字段或其他计算型字段。例如: • price * quantity – 此表达式引用文档中名为“price”和“quantity”的其他两个字段。这两个字段的值相乘的结果将填充在计算型字段中。 • signerName & “employee of “ & signerCompany – 此表达式引用文档中的两个字段“signerName”和“signerCompany”(如果有,将由 Acrobat Sign 预先填充),并将它们连接在一起。如果签名者的姓名为“Casey Jones”且签名者的公司为“Acme Corp”,则此表达式的结果是在计算型字段中填充值“Casey Jones employee of Acme Corp”。 如果字段名称包含空格,则字段名称必须放在方括号 ([]) 中,才能在表达式中引用它。例如,[field name with spaces] 将引用文档中一个名为“field name with spaces”的字段。 |
函数 |
表达式也可以包含 Acrobat 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) |
日期 |
在一个日期上加上指定的部分数(例如,“d”表示日,“m”表示月,“y”表示年)以计算出一个未来的日期。您可以使用数字或字段名称。 例如:dateAdd("m", "Jan 1, 2016", 3) 将返回日期 Apr 1, 2016。在本例中,公式在指定的日期上加上了 3 个月。 使用负数可有效地减掉日期。 |
dateDiff(part, date1, date2) |
日期 |
返回两个日期之间相差的部分数(例如,“d”表示天,“h”表示小时,“n”表示分钟)。您可以使用数字或字段名称。 例如:dateDiff("d", "Jan 1, 2016", "Jan 2, 2016") 将返回值 1,表示 1 月 1 日和 1 月 2 日之间相差 1 天。 |
daysIn(part, date) |
日期 |
返回指定日期的部分(例如,“d”表示日,“m”表示月,“y”表示年)包含的天数。您可以使用数字或字段名称。 例如:daysIn("m", "Feb 1, 2016”) 将返回值 29,表示 2016 年 2 月包含 29 天;daysIn("y", "02/01/2015") 将返回值 365,表示 2015 年包含 365 天。 |
date(string) |
日期 |
将字符串值(如“1/1/2016”)转换为可在其他函数中使用的日期对象。 |
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, "Correct", "Incorrect") 将返回“Correct”。 |
and(logical1, logical2, ...) |
逻辑 |
仅当所有逻辑参数均求值为 TRUE 时,才返回 true。否则,将返回 false。 例如:and (1>0, 2>1) 将返回“true”,and (1>0, 2=1) 将返回“false”。 |
or(logical1, logical2, ...) |
逻辑 |
如果任一逻辑参数(logical1、logical2 等)求值为 TRUE,将返回 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") | 逻辑 | 计算源字段“返回值”(用于下拉框和单选按钮)以根据可能的值列表在计算字段中填充默认值。 例如:lookup(stateField, "CA=California,UT=Utah,MA=Massachusetts,WA=Washington","None") 如果 stateField 是 CA,则将返回 California,或者如果 stateField 是 UT,则将返回 Utah,等等。 如果未找到匹配项,则将返回 None。 |
日期部分接受的值
指定函数应该对日期的哪一部分执行运算时,可以在与日期相关的函数中使用以下值。
部分 |
函数将应用于的日期部分 |
---|---|
y |
年 |
q |
季度 |
m |
月 |
d |
日 |
h |
时 |
n |
分 |
s |
秒 |
计算型字段格式设置
除了指定计算型字段的表达式之外,还可以设置输出值的格式。输出的格式可以设置为文本(默认设置),也可以设置为数字或日期。
与文本标记一起使用时,格式指令有两个参数:FormatType 和 Format。
FormatType |
指定计算型字段表示的值的类型。此参数接受的值为数字和日期。 |
格式 |
指定要放入计算型字段的输出值的结构。 |
将计算型字段的格式设置为数字
以下字符可用于指定输出的格式设置为数字形式。
格式字符 |
说明 |
---|---|
_ |
(下划线。)表示任何数字占位符。 |
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 |
星期几简称。 |
“Mon”到“Sun” |
dddd |
星期几全称。 |
“Monday”到“Sunday” |
m |
某年几月,介于 1 到 12 之间。 |
“1”到“12” |
mm |
某年几月,带前导零(如果需要)。 |
“01”到“12” |
mmm |
月份简称。 |
“Jan”到“Dec” |
mmmm |
月份全称。 |
“January”到“December” |
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")}}
输出将类似于“May 22, 2016”。
- 格式设置为数字的计算型字段:
{{myTax_es_:calc(total * taxrate):format(number, "$,.00") }}
输出将类似于“$1,987.65”。
使用表达式构建器指定计算型字段
计算型字段可通过 Acrobat Sign 编制环境来指定。以下过程将引导您完成在编制环境中定义计算型字段的各个步骤。
1. 在文档中拖放一个字段。双击刚刚添加的字段,以显示字段属性对话框。为字段指定一个适当的名称。在下拉式列表中将值类型属性更改为计算值类型。这表明将根据签名时的计算确定字段值。
2. 在名为公式的文本字段中键入计算表达式,或单击函数按钮 (fx) 以显示表达式构建器。
3. 使用表达式构建器定义计算型字段的表达式(参见下图)。顶部的表达式区域显示了将用于计算字段值的公式。您可以在表达式区域中键入公式或使用编制环境构造公式。表达式构建器提供了所有可用函数的列表、文档中现有表单字段的列表以及受支持运算符的列表来帮助构造表达式。您可以在表达式构建器中双击列表区域中的项目,向公式中添加字段或函数。您也可以单击运算符列表中的特定运算符,向表达式中添加运算符。
4. 完成表达式的定义后,您可以单击检查语法按钮来检查表达式的语法,然后保存更改。
5. 在显示为下拉式列表中,设置计算型字段的类型。
6. 如果显示为的值为“日期”或“数字”,在下拉式列表中设置字段值的日期格式/数字格式。您也可以选择“自定义”格式设置,以便为字段定义自定义格式设置。
具有“货币”格式的计算型字段
计算型字段的“货币”格式会在计算值之前插入一个货币符号。(否则,计算只是按公式进行的简单数学运算。)
插入的符号基于以下规则:
- 如果源字段包含美国的“货币”验证,则显示的符号为美元符号:$
- 如果源字段包含英国的“货币”验证,则显示的符号为英镑符号:£
要正常使用“货币”格式,必须对计算型字段进行以下配置:
- 将“显示为”值设置为数字
- 将“数字格式”值设置为货币
在计算中使用的源字段可以是“数字”或“货币”验证源字段:
在设置为货币格式的字段中计算值时,Acrobat Sign 不考虑任何类型的货币兑换(外汇)。
- 计算型字段仅执行计算的数学运算
- 字段的格式(“货币”)仅插入货币符号
任何需要使用美元 ($) 或英镑 (£) 以外的货币符号的表单都必须将所需的符号添加到文档文件,或添加一个将货币符号设置为默认值的只读字段。
使用字段选项时,建议对货币符号字段进行以下配置:
- 指定给:发送者(预填)
- 启用只读
- 将“默认值”设置为货币符号(以下示例中使用欧元符号)
必须将“文本”源字段的格式设置为数字(而不是“货币”)。
必须对用于计算最终值的字段进行以下配置:
- 将“显示为”值设置为数字
- 将“数字格式”字段设置为要使用的格式
计算型字段示例
- {{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。使用此机制,计算型字段可用于根据签名者在签名过程中做出的选择自动填充商品的价格。