跳到主要内容

DELETE - 删除

DELETE公式用于直接删除某条表单数据,或删除某条表单数据中子表单组件下某条子表单下的数据(表单数据还保留)。

格式

DELETE(目标表,主条件,子条件)
  • 目标表:要删除数据的目标表单
  • 主条件:定位目标表下哪些数据需要删除。主条件是由逻辑函数构成。
    • 由于业务关联公式暂不支持在条件中与字符串做判断,因此可使用IF()公式判断后再使用业务关联公式,先做判断再去进行执行IF(EQ(当前表单.商品名,"铅笔"),DELETE(),"")
    • 其中的EQ(当前表单.商品名,"铅笔"),无法使用目标表单的商品名字段判断,要删除的数据是:商品名为「铅笔」的这批数据。
    • 如果有多个条件,可以用AND函数组合。比如AND(EQ(当前表单.商品名,"铅笔"),GT(当前表单.存货量,10))表示要删除的数据是:商品名为「铅笔」,并且「存货量」大于10的那批数据。
  • 子条件:
    • 要操作的表单数据通过主条件已经确定,并且要删除该条数据下某个子表单下的数据。用子条件定位子表单下的哪些数据要更新。子条件是由逻辑函数构造。
    • 如果不需要更新子表单下的值,则填"",不能不填。
    • 如果子条件有配置,则主条件定位的数据不会被整条删除,而只是删除表单数据下符合条件的子表单的数据。如果子条件无配置,为"",则直接将主条件匹配的数据删除。

使用场景

根据录入表的普通组件删除目标表整条数据

使用的表单

  • 存货表: 存货商品(单行文本)
  • 出货表:出货商品(单行文本)

需求

  • 存货表中保存着一批商品的信息。通过出货表将货物出掉。
  • 出货表中的出货商品来自于存货表中存货商品。
  • 每次出货表中出掉一件商品时,存货表中对应的商品就删除掉。

公式配置详情&公式解析

  • 需求描述:
    • 存货表中保存着一批商品的信息。通过出货表将货物出掉。
    • 出货表中的出货商品来自于存货表中存货商品。
    • 每次出货表中出掉一件商品时,存货表中对应的商品就删除掉。
  • 公式配置:在出货表的业务关联规则中,配置公式如下图。

  • 公式解析:
    • 目标表:存货表
    • 主条件EQ(存货表.存货商品,出货商品)。说明出货表提交的数据中,出货商品是A,那么就从存货表中把存货商品为A的数据全部删除了。
    • 子条件:由于删除的是「存货表」的整条数据,不是只删除子表单下的数据,因此子条件不需要,填写""

根据录入表的子表单组件删除目标表的整条数据

使用的表单

  • 出货表:出货子表单(子表单组件)。出货子表单下有:出货商品(下拉单选)。
  • 存货表:存货商品(单行文本)。

需求

出货表下有出货明细的,一次可以出货多个商品。对于出货的多个商品,把存货对应的商品数据删除掉。

公式配置详情&公式解析

  • 需求描述:出货表下有出货明细的,一次可以出货多个商品。对于出货的多个商品,把存货对应的商品数据删除掉。
  • 公式配置:在出货表的业务关联规则中,配置公式如下图。

  • 公式解析:
    • 目标表:存货表。
    • 主条件:EQ(存货表.存货商品,出货子表单.出货商品)。
    • 子条件:由于删除的是表单数据,不是子表单下数据,因此子条件填写为""

注意事项

  • 主条件和子条件是由逻辑函数构造的。除了AND和OR之外,其他逻辑函数第一个参数必须是目标表中的组件,两个参数的位置不能调换。
  • 高级公式组件支持范围如下。
    • 能作为判断条件的组件:「单行文本」、「多行文本」、「单选」、「下拉单选」、「日期」、「成员」
    • 能进行赋值的组件:「单行文本」、「多行文本」、「数值」、「单选」、「下拉单选」、「复选」、「下拉复选」、「级联选择」、「日期」、「日期区间」、「图片上传」、「附件」、「成员」、「地址」、「关联表单」。
  • 删除数据条数限制。
    • 删除目标表主表支持100条。
    • 删除子表单明细支持500条明细(轻享版、专业版)。
Copyright © 2024钉钉(中国)信息技术有限公司和/或其关联公司浙ICP备18037475号-4