高档计算公式在触发器 字段更新 中运用,是 RB 最强大的功能之一。他能够依据事务需求计算出您需求的值并进行自动更新。介于高档计算公式的强大能力,其运用也需求必定的技能门槛,且具有必定的复杂度。
本文将经过一些示例介绍触发器的运用,期望对您有必定启发。在开始前,您需具备以下能力,不然可能无法了解本文所涉内容。
高档计算公式依据 Aviator 脚本语言,实践上当您在编写公式时就是在编写 Aviator 脚本
基础示例
从最简略的比如开始,如下图所示。
此示例用于将地区 district 和地址 address 拼接为一个完整地址,而且中间用 - 相连。其间:
-
##最初的一行是注释,不是有必要的。注释在实践执行时不起作用,只是在编写复杂公式时经过注释能够协助咱们更好的了解 -
{district}{address}是字段内部标识,能够看出他运用{}包裹起来,这是有必要的
依据上述示例咱们再进一步,如果地区和地址为空,咱们就不拼接,该怎么编写?请参考:
if ({district} == nil && {address} == nil) {
return nil;
} else {
return {district} "-" {address};
}
能够看到,这是一个多行的公式,因而他需求完整的语法表达,包括:
- 尾部运用
;结束(相较于上述单行示例无需;) - 经过
return来回来咱们需求的值(相较于上述单行示例无需return) - 其间
nil代表空(其他编程语言一般运用null请注意区分)
如上,若您能了解并经过上述示例举一反三,祝贺您已具备编写高档计算公式的能力。
示例列表
依据企业注册时间修正客户等级
实体和字段
- 实体1:Account
- 要害字段:
| 字段 | 字段类型 | 阐明 |
|---|---|---|
| registrationDate | 日期 | 企业注册日期 |
| accountLevel | 下拉列表 | 客户等级 |
公式
## 未填写企业注册日期则回来原值(即不做修正)
if (ISNULL({registrationDate})) {
return {accountLevel};
}
## 用当前日期减去企业注册日期得出注册天数
let xday = CURRENTDATE() - {registrationDate};
## 依据注册天数回来客户等级
## 请注意下拉列表需求回来 ID,概况参阅 https://getrebuild.com/docs/admin/trigger/fieldwriteback#字段变量值阐明
## 详细 ID 值可经过 OpenAPI 获取 https://getrebuild.com/docs/dev/how-use-apis
if (xday > 3650) {
return '012-018dcbe2fa5b003d';
} elsif (xday > 1825) {
return '012-018dcbe2fa5b003a';
} elsif (xday > 365) {
return '012-018dcbe2fa5b003c';
} else {
return '012-018dcbe2fa5b0031';
}
更多示例连续编写中……
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

