Skip to content

使用计算公式

计算公式支持基于表单字段和函数公式进行动态计算,适用于联动计算、条件判断和复杂数据处理场景。

使用说明

计算公式的使用如同 excel 函数,支持直接引用当前表单中已添加的字段进行运算;如果你想查看完整的内置函数列表与更多示例,可以直接继续阅读内置公式函数

示例: 表单中有合同金额与已回款金额字段,需要根据这两个字段计算未回款金额。

第一步:先选择SUM函数公式进行计算,点击函数即可将函数公式插入右侧内容区域;

第二步:选择合同金额与已回款字段,并手动敲上-号,简单的计算公式就添加完成啦~

同理,发挥您聪明的大脑进行创造吧~

在实际项目中,如果公式结果还需要继续驱动字段赋值、显隐或联动逻辑,通常会和表单 API或当前组件事件一起配合使用。

如何查看函数的作用

鼠标悬浮至函数上时,可以查看函数说明,及示例说明。

内置公式列表

系统内置的公式函数已经覆盖了数字计算、文本处理、时间换算、集合处理、逻辑判断和高阶取值等常见场景。日常配置时,通常不需要死记所有函数,先按类别找,再通过悬浮提示查看示例会更高效;如果你需要逐个查看完整示例,也可以继续阅读内置公式函数

数字函数

函数名称说明
TONUMBER将参数转换为数字
ADD获取两个数字相加的值
SUB获取两个数字相减的值
MUL获取两个数字相乘的值
DIV获取两个数字相除的值
SUM获取合集中数值的总和
MAX获取参数列表中的最大值
MIN获取参数列表中的最小值
ABS获取数字的绝对值
AVG获取参数列表的平均值
MOD获取两个数字的余数
SQRT获取一个数字的正平方根
POWER获取指定数字的乘幂
RAND获取一个大于等于 0 且小于 1 的随机数
PI获取圆周率
ROUND将一个小数四舍五入到指定的位数
FLOOR获取指定数字向下取整的值
CEIL获取指定数字向上取整的值
FIXED将一个小数保留指定位数的小数
TOCHINSESAMOUNT获取指定数字的中文大写金额
LN获取指定数字的自然对数
LOG获取指定数字以 10 为底的对数
LOG2获取指定数字以 2 为底的对数
SIN获取指定角度的正弦值
COS获取指定角度的余弦值
TAN获取指定角度的正切值
ASIN获取指定数字的反正弦值
ACOS获取指定数字的反余弦值
ATAN获取指定数字的反正切值
EXP获取 e 的指定次幂

文本函数

函数名称说明
STARTSWITH检查字符串是否以指定字符串开头
SLICELEFT获取一个字符串从开头开始指定长度的字符串
SLICERIGHT获取一个字符串从结尾开始指定长度的字符串
TOLOWER将字符串中所有大写字母转换为小写字母
TOUPPER将字符串中所有小写字母转换为大写字母
INCLUDES检查字符串中是否包含指定字符串
CONCAT将所有参数拼接后返回字符串
REPLACE替换匹配到的第一个文本
REPLACEALL替换所有匹配到的文本
TRIM删除字符串前后的空格

时间函数

函数名称说明
NOW获取当前时间
TODAY获取今天的日期
YEAR获取指定日期的年份
MONTH获取指定日期的月份
DAY获取指定日期的天数
HOUR获取指定日期的小时数
MINUTE获取指定日期的分钟数
SECOND获取指定日期的秒数
DIFFDAYS获取两个日期之间的天数
DIFFHOURS获取两个时间之间的小时数
DIFFMINUTES获取两个时间之间的分钟数
TIMESTAMP获取指定日期的时间戳
ADDYEAR增加指定日期的年份
ADDMONTH增加指定日期的月份
ADDDAY增加指定日期的天数
ADDHOUR增加指定时间的小时数
ADDMINUTE增加指定时间的分钟数
ADDSECOND增加指定时间的秒数
ADDWEEK增加指定日期的周数
SUBYEAR减少指定日期的年份
SUBMONTH减少指定日期的月份
SUBDAY减少指定日期的天数
SUBHOUR减少指定时间的小时数
SUBMINUTE减少指定时间的分钟数
SUBSECOND减少指定时间的秒数
SUBWEEK减少指定日期的周数
WEEKSTART获取指定日期所在周的第一天
WEEKEND获取指定日期所在周的最后一天
MONTHSTART获取指定日期所在月的第一天
MONTHEND获取指定日期所在月的最后一天
YEARSTART获取指定日期所在年的第一天
YEAREND获取指定日期所在年的最后一天
QUARTERSTART获取指定日期所在季度的第一天
QUARTEREND获取指定日期所在季度的最后一天
WEEKOFYEAR获取指定日期是当年的第几周

合集函数

函数名称说明
IN检查第二个参数是否在合集中
LEN获取指定合集的长度
UNION将合集或参数中的值去重后返回合集
COLUMN获取子表单中指定字段并返回合集
VALUE获取分组表单中指定字段
INTERSECTIONSET获取两个集合的交集
LIST获取所有参数组成的集合

逻辑函数

函数名称说明
IF检查条件是否满足,满足返回第二个参数,否则返回第三个参数
AND所有表达式都为 true 时返回 true
OR任意一个表达式为 true 时返回 true
CASE返回第一个满足条件的值
NOT获取某个逻辑值的相反值
EQ检查两个值是否相等
NE检查两个值是否不相等
GE检查第一个值是否大于等于另一个值
GT检查第一个值是否大于另一个值
LE检查第一个值是否小于等于另一个值
LT检查第一个值是否小于另一个值
TRUE返回逻辑值 true
FALSE返回逻辑值 false
DEFAULT检查第一个参数,为空时返回第二个参数
EMPTY检查参数是否为空
NOTEMPTY检查参数是否不为空
ISNUMBER检查参数是否为数字

高阶函数

函数名称说明
CALLBACK执行自定义函数并获取返回值
DEFAULT_VALUE设置当前组件的默认值
GET_DATA获取外部数据
GET_VARIABLE获取全局变量数据
CURRENT_RULE获取当前组件规则中的指定字段
T获取多语言配置中的指定字段

使用提示

  • 在公式里引用当前组件值时,建议先增加条件判断,避免循环引用导致页面卡死。
  • 如果只是做简单的布尔判断,优先使用逻辑条件会更直观;涉及复杂运算、时间换算、集合处理时,再切换到计算公式更合适。
  • 当公式需要长期复用时,建议优先基于内置函数组合;确实不够用时,再通过扩展计算函数扩展自定义函数。

公式适用范围

计算公式不仅可用于计算当前字段值,也可作为隐藏条件、必填条件、禁用条件和其他高级配置中的判断依据。

语法与字段引用规则

  • 公式表达式需要符合 JavaScript 基本语法。
  • 公式中可以直接引用当前表单中已添加的字段数据进行运算或判断。
  • 当公式较长时,建议先拆解为易读的步骤,便于排查问题和后续维护;对于需要长期复用的规则,可以整理为统一函数,再通过内置公式函数中的能力进行组合。

函数扩展说明

系统内置多种常用函数,同时支持根据业务需求扩展自定义函数。对于重复使用的行业规则或特殊算法,建议优先抽为统一函数,方便在多个表单中复用;若涉及开发侧扩展和挂载方式,可继续查看扩展计算函数