如何做到快速添加子表字段值且永不会重复?(简道云开发高阶技能)

楼主
简道云官方指定金牌服务商

前言:

  • 本文是2018-06-23发布在原简道云老社区的第19篇文章,发布在帆软社区的第14篇文章,以后还有更多(技术类、管理类、理论类),为了不迷失不迷路,【请收藏这个链接集合】,以后所有博客都会汇集于此,敬请期待!

 


 
如何做到快速添加子表字段值且永不会重复


前面有博客详细分析过子表单重复值的问题,如下链接,

第5篇:确保子表添加字段值不出现重复的两种方法

https://bbs.fanruan.com/forum.php?mod=viewthread&tid=133375&page=1&extra=#pid717035


第6篇:快速查看子表重复情况的方法一
https://bbs.fanruan.com/forum.php?mod=viewthread&tid=133378&page=1&extra=#pid717038

第8篇:快速查看子表重复情况的方法二


其中第5篇中的两个方法主要是通过条件校验的方式阻止当子表有重复值时不能提交,第6、8篇是当校验条件提示出现重复值时快速提示哪些子表行数重复了,以便于操作人员快速的把重复值找出来并做调整相应调整,其实这些思路都是滞后的,都是当出现问题后再给出解决问题的方法,而且给出的方法都相对比较麻烦。那有没有一种方法,可以确保操作人员在填写子表单时绝不可能出现重复,既从源头上杜绝子表重复值的问题,那样的话,就可以不用再事后诸葛亮再通过别的方法去校验、去查看、去调整了。



为了找到这样的方法,首先来分析下我们通常是如何操作子表单添加字段值的。如下图:



一般这个操作会分成两步:

1、首先,点击子表“+添加”按钮添加一行子表。

2、再从下拉框选项中选择一个选项值。

可以发现这样的操作容易出现两个问题:

第一,每一行都是人为手动去操作,不能确保每行子表中所选的选项值不重复,这也是本文主要讨论的问题。

第二,每增加一行,都要重新点击一下“+添加”按钮,再从下拉框选项中选择需要的值,这一个过程重复的操作太多,如果子表行数不是很多,也可以接受,但当子表行数较多,比如几十行时,就严重影响效率了。

根据以上的两个问题,再结合子表特点,可以有以下两个发现:

1、影响需要添加较多行子表效率问题的是每次都要手动重新点击“+添加”按钮,那如果采取提前设置默认多行子表的方式,那实际使用中就不用再每一行都要点击一下“+添加”按钮了,效率就提高了。

2、下拉框属于单选,每次只能有一个值,而且行数多了就容易出现重复,那如果换成下拉复选框,并把这个复选框放到主表中,点击一下下拉单就能看到所有选项并做多项选择,再让这些多项选择的结果通过函数的方式自动填充到子表单的相应字段里。这样的话,只要下拉复选框里的选项值没有重复的,那填充到子表里的值就永会有重复。

所以结合以上两个发现,就可以把子表单改造成如下形式:



上图中子表“货品”字段函数为:

报货清单明细.货品=货品[报货清单明细.序号

  • 函数中报货清单明细.序号是子表中隐藏的数字字段,并默认值从上到下1、2、3、4、5、6、7、8、9.....
  • 报货清单明细.序号也可以根据子表单序号整体联动实现,当初写这篇文章的时候,子表单整体联动功能还没更新,当时先用这个方法处理。
  • 主表字段“货品”是下拉复选框,下拉复选框属于数组字段,所以在下方子表中可直接利用子表序号进行分割。




一般情况下,下拉复选框的货品字段都是关联到另一个货品信息表单的货品字段的,所以当前表单的下拉复选框里的货品不会有重复,那通过分割函数填充到子表单货品的字段值就永远不会重复。

表单测试外链:https://jiandaoyun.com/f/5b2e14866b76cb0259bf925f

通过测试发现,此方法除了能彻底解决子表重复值的问题,而且能大幅提高填写充子表单数据的效率。



方法局限及解决思路:

1、通过下拉复选框分割到子表的行数可能与已设定的子表行数不一致,既会出现下方多行子表值为空的问题。子表值含有空值的情况下,在报表中,数据表里的值依然会显示下方未分割到的子表值为空,而汇总表就会把为空的值自动汇总掉,所以最终不会影响汇总表的值。

2、当表单是流程表单时,如果出现多行子表值为空,那下一个流程节点的负责人手机端打开时,呈现的界面不像pc端那么友好。解决这个问题可以采用第17篇博客里提到的方法,既把子表中不为空的值提取到多行文本中,多行文本控件在手机端呈现时是自适应长度的,查看起来就比较友好了。

(第13篇博客、如何让子表单信息分行显示在多行文本中?https://bbs.fanruan.com/thread-133577-1-1.html



点击查看作者更多博文:


1、盲人妻子的困惑——子表单自动连续编号的问题【发布时间: 2017-07-10】
2、让人又爱又恨的子表单【发布时间: 2020-10-08】
3、4种不同方法解决并发问题——函数触发机制分析【发布时间: 2017-12-05】
4、如何不借助聚合表调用子表单数据——解析一【发布时间: 2018-02-12】
5、如何确保子表添加字段值不出现重复【发布时间: 2018-03-11】
6、快速查看子表重复情况的方法一【发布时间: 2018-03-12】
7、致简道云的一封信!【发布时间: 2018-10-29】
8、快速查看子表重复情况的方法二【发布时间: 2018-03-13】
9、过滤敏感词或符号【发布时间: 2020-10-27】
10、快速准确调取上次采购价的方法【发布时间: 2018-03-18】
11、合并同类项【发布时间: 2018-03-19】
12、子表中合并同类项【发布时间: 2018-04-15】
13、如何让子表单信息分行显示在多行文本中?【发布时间: 2018-04-19】


作者简介:【点击查看作者社区主页】

  • 牛中伟
  • 简道云官方连续6年指定定制服务商
  • 利用简道云帮客户实施项目近300个
  • 在原简道云老社区更新发布博客44篇
  • 新老社区博客总阅读量超50万,留言1000余条
  • 其中关于子表单的一篇博客收到用户打赏金额累计超7000元
  • 关注帆软社区我的这个账号,有新博客更新,第一时间收到提醒
  • 感谢大家一路以来的认可和支持,我会再接再厉,分享更多有价值的内容
  • 如有任何简道云方面的问题,欢迎留言区留言或单独私信给我,期待与你的交流



不自谦能力概述:

  • 精通子表单各类复杂用法
  • 谙熟函数特性、及各种函数组合用法
  • 独创利用简道云处理多级BOM的方法
  • 深刻理解进销存系统及进销存思维模型
  • 有一定的文本书写能力,总结复盘能力
  • 较强的抽象思维能力、逻辑思维能力、统筹能力
  • 对陌生行业陌生业务有快速的信息搜集整合和学习消化能力
  • 拥有一整套成熟有效的整理系统需求文档的思想、方法和工具
  • 很多用户感觉一直解决不了的问题在我们这里可能早已不是问题
  • 了解如何制定完善的报表分析计划,并借此洞察项目业务背景和业务痛点。
  • 理解系统与企业管理的关系,对如何在企业顺利推进管理系统落地有丰富经验和独到见解。
  • 有一整套经上百大小项目锤炼过的适合简道云这类低代码工具帮助客户实施项目的流程和方法,确保系统更好实施,更快部署,更高完整度交付,确保系统更符合客户预期,甚至超预期,给客户真正带来价值!

 

懂简道云的冬泳高手,关注我的帆软社区账号,交个朋友!






编辑于 2020-11-11 20:50  
编辑于 2020-11-27 15:57  

分享扩散:

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

本版积分规则

0回帖数 1关注人数 9017浏览人数
最后回复于:2022-2-23 13:48

返回顶部 返回列表