子表单的重复性校验

楼主
我是社区第94498位番薯,欢迎点我头像关注我哦~







同一张表单的同一个子表单内
场景
解决方案
链接




(1)单条子表单某字段的数据,不允许重复;
1.通过表单设计界面字段校验实现:
可以在子表单内加一个单行文本,编辑公式通过CONCATENATE函数将主表内唯一不重复的字段与当前子表单字段组合后,勾选这个文本字段不允许重复值;
2.通过建立3个辅助字段,表单提交校验实现:
(1)在子表单中添加数字字段1,作为辅助,设置默认值为1;
(2)在主表中添加单行文本2,表示文本组合项,编辑公式:子表单.不允许重复文本1;
(3)在子表单里添加数字字段2,表示文本选择个数,编辑公式:
COUNTIF(SPLIT(文本组合,','),子表单.不允许重复文本1);
(4)添加表单校验:SUM(子表单.数字字段1)==SUM(子表单.数字字段2)。









(2)在数据管理,所有子表单数据不允许重复。
1.通过聚合表实现:
(1)在子表单中添加一个数字字段,设置默认值为1;
(2)新建聚合表,行表头为子表单不允许重复字段,指标为该数字字段;
(3)添加聚合表数据提交校验:数字<=1;
2.通过表单设计界面字段校验实现:
子表单字段勾选不允许重复值。






不同子表单
场景
解决方案
链接





两张表单,每张表单都分别有一个子表单。

通过两个聚合表和表单提交校验实现:
(1)2个表单的子表单里都分别添加1个数字字段,分别命名为数字字段A1,数字字段B1,设置默认值是:1
(2)聚合表A的数据来源选择A表,设置表头:子表单不允许重复字段1,指标:数字字段A1;聚合表B的数据来源选择B表,设置表头:子表单不允许重复字段2,指标:数字字段B1;
(3)A表子表单里添加另一个数字字段A2,设置数据联动,关联聚合表B,联动条件是:子表单1的不允许重复字段字段等于聚合表表头;B表子表单里添加另一个数字字段B2设置数据联动,关联聚合表A,联动条件是:子表单2的不允许重复字段字段等于聚合表表头;
(4)A表在子表单1建立数字字段A3,编辑公式:IF(子表单1.数字A2==1,1,0);B表在子表单2建立数字字段B3,编辑公式:IF(子表单2.数字B2==1,1,0);
(5)在表单检验条件编辑公式:AND(SUM(子表单1.数字A3)==0,SUM(子表单2.数字B3)==0)。








分享扩散:

沙发
发表于 2020-10-12 12:45:40
这个是常用功能,还是希望官方能更新集成
板凳
发表于 2020-10-13 10:04:24
不用这么复杂吧:举例来说:场景1:采购订单,每个主表有个采购单号,子表单中每行有个商品编号,要求该商品在同一主表的子表单内不重复,但是不同的采购单中可以重复,那么就在子表中设置一个辅助字段“采购单号+商品编号”把这个设置为不可重复,就没问题啦。如果说这个商品只能采购一次,且不同批次的采购订单中也不能重复,那就直接把子表单中的这个商品编号设成不可得复,不就得啦??
参与人数 +1 F豆 +10 理由
云团 + 10 太棒了,给你32个赞,么么哒

查看全部评分

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

4回帖数 5关注人数 7701浏览人数
最后回复于:2020-10-13 10:35

返回顶部 返回列表