1. 简介
1.1 案例简介
很多情况下,我们在表单中要统计的值对应着多个条件,在检索条件不止一个的情况下,就需要先添加一个辅助字段,将多个检索条件合并成一个字段;再把辅助字段作为检索值和检索范围,写到MAPX 函数中。
1.2 应用场景
在课程管理中,统计同一班级、同一课程的报名人数,此时的检索条件就是班级 + 课程;
在订单管理中,检索同一店铺、同一销售员的最新一个订单编号,此时的检索条件就是店铺名称 + 销售;
在销售管理中,计算同一销售员、同一月份的销售额之和,此时的检索条件就是销售员姓名 + 月份。
综上,当我们的场景中涉及到多个检索条件的情况,都可以通过这个案例的方法来进行实现。
下面通过一个案例来介绍一下操作步骤。
2. 操作步骤
「销售上报」表单记录了销售员的每日销售数据:
注:表单中计算销售额可以使用子表单合并计算,操作详情参见:子表单的应用示例
「提成表」由财务月底填写,计算出某一销售员、某一月份的销售额之和,以便计算出每个人的提成数据:
在这种情况下,检索条件就是销售员姓名+月份。
(1)在「销售上报」表单中添加一个单行文本作为辅助字段,编辑函数为:
CONCATENATE(姓名,TEXT(DATE(销售日期),'yyyyMM'))
表示该字段的值为销售员姓名+销售日期对应的年月。
DATE 函数:将时间戳转换为日期对象。
TEXT 函数:将数字转换成特定格式的文本。
CONCATENATE(A,B,C):将多个文本字符串合并成一个文本字符串 ABC。
在录入数据时,辅助字段也会通过公式得到值,以供「提成表」中的MAPX函数调用。
(2)在「提成表」中同样也需要添加一个单行文本作为另一个辅助字段,编辑函数为:
CONCATENATE(姓名,TEXT(DATE(统计月份),'yyyyMM'))
同样表示该字段的值为销售员姓名+销售日期对应的年月。
(3)应用MAPX 函数设置「提成表」中的销售总额,编辑公式为:
MAPX('SUM',辅助字段,辅助字段,销售额)
MAPX 函数的使用方法为:MAPX(“聚合操作”,检索值,检索范围,返回值)
其中第一个辅助字段为当前表单即「提成表」表单中的字段:
第二个辅助字段和销售额为所有表单中「销售上报」表单中的字段:
(4)应用IF 函数设置「提成表」中的提成计算,编辑公式为:
IF(销售总额<1000,销售总额*0.1,销售总额*0.2)
表示当销售总额低于 1000 时,提成比例为 0.1;当销售总额超过 1000 时提成比例为 0.2:
3. 效果演示
下图为「销售上报」表单中录入的已有销售数据:
在「提成表」表单中输入销售员姓名和日期,任意选择统计月份中的任意一天即可,公式会自动提取出年月,然后计算出该销售员当月的销售总额和提成:
根据演示可得:
员工甲在 2021 年 5 月的销售总额为 2400( 2000 + 400 )
员工乙在 2021 年 5 月的销售总额为 2800( 2400 + 400 )
其他月份计算同理。
4. 注意事项
- 注:操作步骤中的公式复制后不可直接使用,字段调用处需进行手动替换。
- 如果辅助字段需要设置为不可见,则一定要在表单属性中修改「不可见字段赋值」属性为「始终重新计算」