DISTANCE
DISTANCE 函数用于计算两个定位、两个经纬度坐标、或定位与经纬度坐标之间的距离,单位为米。
函数用法:
1)计算两个定位之间的距离
DISTANCE(定位1,定位2)
2)计算两个经纬度坐标间的距离(参数类型为标准格式的字符串)
DISTANCE(字符串1, 字符串2)
参数说明如下:
DISTANCE(定位1, 字符串2)
函数示例:
1)如,在客户拜访场景中计算客户之间的距离,方便合理规划拜访路线,节约时间成本。
2)如,在建筑场景中,许多地理位置未开发或缺乏明显标志,使用定位字段难以准确定位,也难以精确计算定位间的距离。此时,可直接录入经纬度坐标,通过函数精确地计算距离。
![]() |
|---|
ISNULL
- 用法:ISNULL(组件)
- 说明:判断是否为空,为空则返回true,不为空则返回false,不用于判断 数字、汇总
- 示例:ISNULL(日报内容),判断日报内容是否为空。
- 注意:当【日报内容】为空时,【是否为空】显示为true。
![]() |
|---|
UUID
- 用法:UUID(operation,map_value,map_field,result_field)
- 说明:UUID函数可以用于生成随机码,默认的输出格式为 32 位字符串 + 4 个“-”,一共 36 位
- 示例:UUID函数可用于制作随机流水号等。如果需要从 36 位随机码中截取其中一部分,可以结合LEFT函数一起使用。
![]() |
|---|
MAPX
MAPX 函数是一个“跨表单”函数。有且仅有“跨表单”函数可调用当前表单中已经提交的或其他表单中数据。
函数用法:
MAPX(operation, current_value, other_field, result_field)
其中各参数的含义如下:
- operation: 聚合操作,必填;
- current_value: 条件字段值,即检索值,必填;
- other_field: 条件字段名,即检索范围,必填;
- result_field:字段返回值,必填;
当指定表单的 other_field 列的值为 current_value 时,返回 result_field 的所有值,然后根据指定的聚合操作 operation 得到对应的返回值。
可以理解为:在检索范围中,找到检索值对应的返回值,并对返回值进行聚合操作。
MAPX("聚合操作",检索值,检索范围,返回值)
注意检索值来自当前表单中(蓝底),检索范围和返回值来自所有表单字段中的同一表单(灰底)。
![]() |
|---|
参数限制:
1)聚合操作(operation)
operation 参数(聚合操作)为字符串,可选值如下:
| 参数值 | 含义 |
|---|---|
| first | 获取返回值的第一个 |
| last | 获取返回值的最后一个 |
| max | 最大值 |
| min | 最小值 |
| avg | 平均值 |
| sum | 求和 |
| count | 获取返回值的个数 |
2)检索值(current_value)、检索范围(other_field)
支持设置检索值的字段,及其对应支持的检索范围字段如下表所示:
| 检索值 | 检索范围 |
|---|---|
| 单行文本 | 单行文本、多行文本、单选按钮组、复选框组、下拉框、下拉复选框、流水号 |
| 数字 | 数字 |
| 多行文本 | 单行文本、多行文本、单选按钮组、复选框组、下拉框、下拉复选框、流水号 |
| 日期时间 | 日期时间、提交时间、更新时间 |
| 单选按钮组 | 单行文本、多行文本、单选按钮组、复选框组、下拉框、下拉复选框、流水号 |
| 复选框组 | 复选框组、下拉复选框(全等) |
| 下拉框 | 单行文本、多行文本、单选按钮组、复选框组、下拉框、下拉复选框 |
| 下拉复选框 | 复选框组、下拉复选框(全等) |
| 关联表单 | 与关联字段类型为准 |
3)返回值(result_field)
以 A 表设置 MAPX 公式,跨表取 B 表数据:MAPX(“聚合操作”,字段1,字段2,“返回值”)为例,根据不同的聚合操作,支持设置返回值的字段如下:
| 聚合操作 | 支持的返回值字段 | 返回值计算方法 |
|---|---|---|
| first | 单行文本、多行文本、数字、日期时间、单选按钮组、复选框组、下拉框、下拉复选框、流水号、创建时间、修改时间 | 取字段 1=字段 2时,B 表中第一条入库的数据对应的返回字段值 |
| last | 单行文本、多行文本、数字、日期时间、单选按钮组、复选框组、下拉框、下拉复选框、流水号、创建时间、修改时间 | 取字段 1=字段 2时,B 表中最后入库的数据对应的返回字段值 |
| max | 数字 | 取字段 1=字段 2时,B 表所有数据数字字段的最大值 |
| 单行文本、多行文本、日期时间、单选按钮组、复选框组、下拉框、下拉复选框、流水号、创建时间、修改时间 | 取字段 1=字段 2时,B 表所有数据按字符串比较,返回对应字符串最大值 | |
| min | 数字 | 取字段 1=字段 2时,B 表所有数据数字字段的最小值 |
| 单行文本、多行文本、日期时间、单选按钮组、复选框组、下拉框、下拉复选框、流水号、创建时间、修改时间、扩展字段 | 取字段 1=字段 2时,B 表所有数据按字符串比较,返回对应字符串最小值 | |
| avg | 数字 | 取字段 1=字段 2时,B 表所有数据数字字段的平均值 |
| sum | 数字 | 取字段 1=字段 2时,B 表所有数据数字字段的求和 |
| count | 单行文本、多行文本、数字、日期时间、单选按钮组、复选框组、下拉框、下拉复选框、流水号、创建人、创建时间、修改时间 | 取字段 1=字段 2时,B 表录入了多少条匹配的数据 |
注:
1)检索范围和返回值中的字段不能选择子表单字段;
函数示例:
跨表有两种情况:
1)同 1 张表单,录入数据时调用之前已经提交的数据;
2)2 张表单,A 表录入数据时,调用 B 表已经录入的数据。应用举例:
有一张选课表,在选择选修课程时,需要计算出自己是第几个报名的,即计算出某一课程的已报名人数,再+1。
可以看出,此处的检索值为课程,选了哪门课程,就统计这门课程的已报名人数。则公式为:
MAPX("COUNT",课程,课程,姓名)
对“我是第几个报名的”字段进行编辑函数:
MAPX("COUNT",课程,课程,姓名)
![]() |
|---|
对于这个例子,可理解为:在之前录入的数据里,寻找「课程」字段选择了“游泳”的对应的姓名,并用COUNT 函数统计对应姓名的个数,得到已经报名的人数;最后加 1,得到“我是第几个报名的”。点击体验效果
看一下效果:
- 选择了游泳,就是在之前录入的课程数据里,查找值为“游泳”的,并对选择游泳的姓名进行计数,发现前面已经有 3 人报名,自己是第 4 个报名的。
- 同理,选择了太极,就是在之前录入的课程数据里,查找值为“太极”的,并对选择太极的姓名进行计数,发现前面已经有 1 人报名,自己是第 2 个报名的。
- 选择了足球,就是在之前录入的课程数据里,查找值为“足球”的,并对选择足球的姓名进行计数,发现前面已经有 2 人报名,自己是第 3 个报名的。
![]() |
|---|
![]() |
|---|
注:当设置字段公式为 MAPX("COUNT",课程,课程,姓名) 时,如返回值为 0,则字段会显示为空值。





