函数是预定义的公式,可用于执行简单或复杂的数据计算和逻辑验证等操作。
函数是通过使用特定值(称为参数)按照特定的顺序或结构来执行计算的预定义公式。一个表达式支持多个预定义函数。一个函数支持在其中使用多个函数,称为嵌套函数。
函数结构
嵌套函数
按类别的函数
字符串函数
逻辑函数
日期函数
数学函数
其他(高级)函数
函数结构
函数的结构以函数名称①开头,后跟一个开放括号,函数的参数③用逗号分隔,并以一个闭合括号结束。
当您选择任何函数名称时,您将看到如何使用此函数的说明②。
① 函数名称
易企办根据您的场景列出了可用的函数。
② 参数
参数可以是数字、字符串、日期时间、逻辑值(如 TRUE 或 FALSE)、数组、查找引用或任何适用的表达式。您指定的参数必须产生该参数的有效值。参数也可以是常量、公式或其他函数。
③ 公式工具提示
选择此函数时会出现工具提示。
嵌套函数
在某些情况下,您可能需要将一个函数用作另一个函数的参数。例如,以下公式将一个嵌套的 isNullOrEmpty 函数用作参数来返回值。 isNullOrEmpty 嵌套在 iif 函数中。
请注意:当嵌套函数用作参数时,嵌套函数必须返回与参数使用的相同类型的值。例如,如果参数返回一个 TRUE 或 FALSE 值,则嵌套函数必须返回一个 TRUE 或 FALSE 值。如果函数没有这样做,它将显示一个错误值。
<返回顶部>
类别分组的函数
函数按其功能进行分类。单击类别标题可以快速浏览其函数。
根据场景,易企办在不同的类别下提供了不同的函数。
字符串函数
字符串函数执行各种字符操作。它们操作字符串。字符串表达式评估为字符序列或文本。
函数 | 描述 | 语法结构 | 应用场景 |
len | 返回文本字符串或数字的字符数。 | len(<check_expression>) | All |
strIndex | 在一个表达式中搜索另一个表达式,并返回其起始位置(如果找到)。 | strIndex(<expressionToFind>, <expressionToSearch>[, <start_location>]) | All |
replace | 用另一个字符串值替换指定字符串值的第一次出现。 | replace(<expression>,<pattern>,<replacement>) | All |
subString | 从原始字符串的固定字符位置创建一个新字符串。 | subString(<expression>,<start>,<length>) | All |
lower | 将文本转换为小写。 | lower(<expression>) | All |
upper | 将文本转换为大写。 | upper(<expression>) | All |
regExp Test | 执行正则表达式与指定字符串之间的匹配搜索。返回 true 或 false。 | regExpTest(<regular expression>, <target>) | All |
JSONParse | 解析 JSON 字符串,构造由字符串描述的 JavaScript 值或对象。 | JSONParse (<string>) | 表单变量 & 规则 & 条件 |
JSONStringfy | 表单变量 & 规则 & 条件 | JSONStringfy (<object>) | 表单变量 & 规则 & 条件 |
UniqueID | 将 JavaScript 对象或值转换为 JSON 字符串。 | UniqueID() | 表单变量 & 规则 & 条件 |
逻辑函数
逻辑函数可以创建将一个值转换为另一个值的表达式。
函数 | 描述 | 语法结构 | 应用场景 |
iif | 评估每个WHEN条件,如果满足,则将相应的THEN表达式中的值赋给它。 如果没有满足任何WHEN条件,则将指定在ELSE表达式中的默认值分配给它。如果未指定ELSE表达式,则系统会自动添加一个ELSE NULL。 | iif(<logical expression condition>, <then>, <else>) | All |
isNullOrEmpty | 如果指定的字符串对象为NULL或空字符串,则返回True;否则,返回False。 | isNullOrEmpty(<check_expression>) | All |
not | 将假改为真,或真改为假。 | not(<parameter>) | 表单变量 & 规则 & 条件 |
isTrue | 确定表达式是否为真。 在以下情况下,表达式的值为假:null、空字符串、字符串'false'、字符串'False'、布尔值false,否则为真。 | isTrue(<parameter>) | 表单变量 & 规则 & 条件 |
isFalse | 确定表达式是否为假。 | isFalse(<parameter>) | 表单变量 & 规则 & 条件 |
日期函数
日期函数根据日历年份处理日期和日期时间的数据。
函数 | 描述 | 语法结构 | 应用场景 |
datePicker | 选择日期和时间。 | datePicker (<selected date>) | All |
dateAdd | 从日期中加或减去指定的时间间隔。 | dateAdd (<date>, <type>, <added value>) | All |
datePart | 指定指定日期部分的日期。 | datePart (<original date>, <type>) | All |
dateDiff | 指定两个日期之间的时间间隔数。如果日期1指向比日期2更晚的时间点,则dateDiff函数返回负数。 | dateDiff (<date 1>, <date 2>, <type>, <precise>) | All |
now | 返回当前日期和时间。 | now () | All |
dateFormat | 格式化当前日期和时间: 年份:YYYY 月份:MM 日期:DD 小时:HH 分钟:mm 秒:ss | dateFormat (<date>, <format>) | All |
数学函数
数学函数在数字数据上执行数学运算。
函数 | 描述 | 语法结构 | 应用场景 |
round | 将一个值四舍五入到最接近的整数或指定数量的小数位数。 | round(<number expression>, [<digits>]) | All |
其他函数 - 高级函数
其他函数包含一些高级功能,例如:
查找函数,例如“listLookup”
系统引用函数,例如“getUserAttr”
统计函数,例如“arrayConcat”
工程师函数,例如“getAttr”
它可以从您的查找源、系统数据或一些复杂变量中返回值。
函数 | 描述 | 语法结构 | 应用场景 |
getUserAttr | 检索用户属性。如果用户表达式是一个数组,则属性将用逗号分隔。 | getUserAttr(<user expression>, <attribute>, [<default value>]) | All |
getOrgAttr | 检索组织属性。如果组织表达式是一个数组,则属性将用逗号分隔。 | getOrgAttr(<organization expression>, <attribute>, [<default value>]) | All |
getLocAttr | 检索位置属性。如果位置表达式是一个数组,则属性将用逗号分隔。 | getLocAttr(<location expression>, <attribute>, [<default value>]) | All |
arrIndex | 在数组中定位值的位置,如果不存在则返回-1。 | arrIndex(<array expression>, <value expression>) | All |
arrayConcat | 返回一个包含两个数组序列中每个给定序列的元素的新数组。 | arrayConcat (<arr1>, <arr2>) | All |
listLookup | 从数据列表中获取字段值。 | listLookup(<contentList>, <filter>, <field>, <defaultValue>) | 表单变量 & 规则 & 条件 |
positionLookup | 按职位查找用户。 | positionLookup (<position>, <type>, <result>, [<expr>]) | 表单变量 & 规则 & 条件 |
getAttr | 按给定的方式从对象中返回属性值。 | getAttr (<object>, <attribute>) | 表单变量 & 规则 & 条件 |