函数是预定义的公式,可用于执行简单或复杂的数据计算和逻辑验证等。
函数是预定义的公式,通过使用特定值(称为参数)以特定顺序或结构执行计算。一个表达式支持多个预定义函数。一个函数之间支持多个函数,称为嵌套函数。

功能结构
函数的结构以函数名①开头,后跟一个左括号,函数的参数③用逗号分隔,然后是右括号。
当您选择任何功能名称时,您将看到如何使用该功能的说明②。

① 功能名称
易企办根据您的场景提供列出的可用功能。
② 参数
参数或称为参数,可以是数字型、字符串、日期时间、逻辑值(例如 真TRUE 或 假FALSE)、数组、查找引用或任何适用的表达式。您指定的参数必须为该参数生成有效值。参数也可以是常量、公式或其他函数。
③ 公式工具提示
当您选择此功能时,将出现一个工具提示。
嵌套函数
在某些情况下,您可能需要使用一个函数作为另一个函数的参数之一。例如,以下公式使用嵌套的isNullOrEmpty( )函数作为参数来返回值。isNullOrEmpty( ) 嵌套在iif ( )函数中。

请注意:当嵌套函数用作参数时,嵌套函数必须返回与参数使用的值类型相同的值。例如,如果参数返回 TRUE 或 FALSE 值,则嵌套函数必须返回 TRUE 或 FALSE 值。如果不这样做,将会显示一个错误值。
函数类别
函数按其功能分类。单击类别标题可快速浏览其功能。
易企办根据场景提供不同的分类功能。
- 字符串函数
字符串函数执行各种字符操作。他们对工作性质 的字符串。字符串表达式的计算结果为字符或文本序列。
函数 | 描述 | 句法 | 应用 范围 |
len | 返回文本字符串或数字中的字符数。 | len(<检查表达式>) 参数(检查表达式)可以为数组或者其他任何类型的值。 如果是数组,返回数组的元素数量; 如果是其他类型的值,返回值的字符个数。 | 全部 |
strlndex | 根据给定的文字查找在另一个字符串中的开始位置。 | strIndex(<字符串表达式>, d<搜索文字>, [<开始位置>]) 参数1(字符串表达式),需要搜索定位的字符串; 参数2(搜索文字),用来搜索的文字; 参数3(开始位置),数字表达式作为搜索开始的位置,如果没有指定或者是负数,则从字符串的开始位置搜索。 | 全部 |
replace | 用另一个字符串值替换第一次出现的指定字符串值。 | replace(<字符串表达式>,<模式>,<替换值>) 参数1:要搜索的字符串表达式 参数2:要被替换的字符串 参数3:替换字符串 | 全部 |
subString | 截取字符串或文本的一部分。 | subString(<expression>,<start>,<length>) 参数1:一个字符串或文本表达式 参数2:一个整数表达式,用于指定返回字符开始位置。如果start小于1,则返回的表达式将从第一个字符开始。如果start大于字符数,则返回零长度字符串。 | 全部 |
lower | 将文本转换为小写。 | lower(<表达式>) | 全部 |
upper | 将文本转换为大写。 | upper(<表达式>) | 全部 |
reExpTest | 使用正则表达式验证指定的字符串,验证通过返回true,否则为false。 | regExpTest(<正则表达式>, <测试对象>) 参数1(正则表达式):用该正则表达式验证测试对象是否满足条件 参数2(测试对象):用来验证字符串。 | 全部 |
JSONParse | 解析 JSON 字符串,构造一个 JavaScript 对象。 | JSONParse (<字符串表达式>) 参数:需要解析的字符串表达式。 | 表格变量&规则&条件 |
JSONStringfy | 将 JavaScript 对象或值转换为 JSON 字符串。 | JSONStringfy (<对象表达式>) 参数:需要转换的对象表达式。 | 表格变量&规则&条件 |
UniqueID | 生成唯一ID | UniqueID() | 表格变量&规则&条件 |
- 逻辑函数
逻辑函数可以创建将值从一个转换为另一个的表达式。
函数 | 描述 | 句法 | 应用范围 |
iif | 条件取值函数,带有字段值的判断表达式,返回结果为True|False。 | iif(<条件>, <为真时>, <为假时>) 参数1(逻辑表达式):True或者1为真,其他为假。 参数2:当参数1为True(真)时返回的结果值。 参数3:当参数1为False(假)时返回的结果值。 | 全部 |
isNullOrEmpty | 如果指定的 String 对象为 NULL 或空字符串,则返回 True(真),否则返回 False(假)。 | isNullOrEmpty(<检查表达式>) | 全部 |
not | 将 false 修改为 true,将 true 修改为 false。 | not(<表达式>) 参数:表达式的值在如下情况会认定为false:null,空字符串,字符串 ‘false’ or ‘False’, 布尔值false,否则是True | 表格变量&规则&条件 |
isTure | 确定表达式是否为真。 | isTrue(<表达式>) 参数:表达式的值在如下情况下会认定为false:null,空字符串,字符串 ‘false’ or ‘False’, 布尔值false,否则是True | 表格变量&规则&条件 |
isFalse | 判断参数是否为假。 | isFalse(<表达式>) 参数:表达式的值在如下情况会认定为false:null,空字符串,字符串 ‘false’ or ‘False’, 布尔值false,否则是True。 | 表格变量&规则&条件 |
- 日期函数
日期函数根据日历年处理DATE 和DATETIME 的 数据。
函数 | 描述 | 句法 | 应用范围 |
datePicker | 选择日期时间。 | datePicker(<选定日期>) 参数1:选择指定日期 参数2:是否显示时间 | 全部 |
dateAdd | 给日期中加上或减去指定的时间间隔。 | dateAdd (<日期>, <类型>, <增加值>) 参数1:原时间或原时间表达式 参数2:要添加时间间隔的类型 参数3:添加到原时间的值(表达式) | 全部 |
datePart | 指定日期的指定日期部分。 | datePart(<原日期>,<类型>) 参数1:原时间或原时间表达式 参数2:原值的日期部分类型 | 全部 |
dateDiff | 指定两个日期之间的时间间隔数。如果日期 1 引用的时间点晚于日期 2,则 dateDiff 函数将返回负数。 | dateDiff (<日期1>, <日期2>, <类型>, <精确>) 参数1:原时间或者原时间表达式 参数2:要比较的时间或者表达式 参数3:原值的日期部分类型 参数4:如果需要返回带小数的结果,填true。否则,函数会将结果的小数截断,返回整数。 | 全部 |
now | 返回当前日期和时间,该函数无参数。 | now() | 全部 |
dateFormat | 格式化当前日期时间。 | dateFormat (<日期>, <格式>) 参数1:原时间或表达式 参数2:格式化字符串 年:YYYY 月:MM 日:DD 小时:HH 分:mm 秒:ss | 全部 |
- 数学函数
数学函数对数值型的数据执行数学运算。
函数 | 描述 | 句法 | 应用范围 |
round | 将值四舍五入到最接近的整数或指定的小数位数。 | round(<数字>, [<小数位数>]) 参数1(数字):待处理数字表达式 参数2(小数位数):需要保留的小数位数,默认为0。 | 全部 |
- 其他功能 – 高级功能
其他功能包含一些高级功能,如:
- 查找函数,例如“listLookup”
- 系统参考函数,例如“getUserAttr”
- 统计函数,例如“arrayConcat”
- 工程函数,例如“getAttr”
它从您的查找源、系统数据或一些复杂变量中返回值。
功能 | 描述 | 句法 | 应用范围 |
getUserAttr | 检索用户 属性。如果用户表达式是数组,属性将用逗号分隔。 | getUserAttr(<用户表达式>, <属性>, [<默认值>]) 参数1(用户表达式):需要查询的用户 参数2(属性):需要返回的用户属性 参数3(默认值):可选项,如果没有找到用户或者对应属性没有值,则返回该值。 | 全部 |
getOrgAttr | 检索组织 属性。如果组织表达式是数组,则属性将用逗号分隔。 | getOrgAttr(<组织表达式>, <属性>, [<默认值>]) 参数1(地点表达式):需要查询的地点。 参数2(属性):需要返回的地点属性。 参数3(默认值):可选项,如果没有找到地点或者对应属性没有值则返回该值。 | 全部 |
getLocAttr | 检索位置 属性。如果位置表达式是数组,属性将用逗号分隔。 | getLocAttr(<位置表达式>, <属性>, [<默认值>]) 参数1(地点表达式):需要查询的地点。 参数2(属性):需要返回的地点属性。 参数3(默认值):可选项,如果没有找到地点或者对应属性没有值则返回该值。 | 全部 |
getMetadataAttr | 查询元数据属性,如果表达式是多个ID,则对该属性以逗号分隔。 | getMetadataAttr(<表达式>, <属性>,[<默认值>]) 参数1(表达式):需要查询的元数据。 参数2(属性):需要返回的属性。 参数3(默认值):可选项,如果没有找到元数据或者对应属性没有值则返回该值。 | |
arrayIndex | 判断一个值在数组中的位置,如果不存在则返回-1。 | arrIndex(<数组表达式>, <值表达式>) 参数1(数组):用来查询数组表达式。 参数2(值):查找的值表达式。 | 全部 |
arrayConcat | 根据输入的两个数组合并返回一个新的数组。 | arrayConcat (<数组1>, <数组2>) 参数1:第一个数组 参数2:第二个数组 | 全部 |
listlookup | 从数据列表中获取字段值。 | listLookup(<内容列表>, <过滤条件>, <字段>, <默认值>) 参数1(内容列表):需要查询的内容列表。 参数2(过滤条件):查找记录的条件。 参数3(字段):返回字段时对应的值。 参数4(默认值):如果没有查询到对应的记录,返回该值。 | 表格变量&规则&条件 |
positionLookup | 按岗位查找用户。 | positionLookup (<岗位>, <查找类型>, <查找结果>, [<表达式>]) 参数1:需要查找的岗位 参数2:查询方式:直接, 根据组织, 根据地点 参数3:执行结果(全部/ 第一个/最后一个/随机)。 参数4:用来根据组织和地点查找时的表达式。例如:申请人的组织 | 表格变量&规则&条件 |
getAttr | 根据属性名称获取对象的属性。 | getAttr (<object>, <attribute>) 参数1:对象表达式 参数2:属性名称 | 表格变量&规则&条件 |
isInGroup | 判断用户是否在组中 | isInGroup(<用户>,<组>) 参数1:用户 参数2:组(从用户组列表中选取) |