根据子表删除主表数据

1. 简介

1.1 案例简介

本案例将介绍,如何通过「智能助手Pro」实现在一个表单的 子表单 字段中删除数据后,自动删除另一个表单中的主数据。

1.2 应用场景

在客户管理场景中,需要实现客户和联系人信息的自动维护。如,在「客户」表中删除某一/某些客户联系人时,能够同步删除「联系人」表中的对应联系人数据。

1.3 设计思路

1)新建「联系人」表单,用于录入所有联系人的基础信息,需包含所属客户、联系人编号字段。

2)新建「客户表」,并在其中添加子表单「联系人明细」,用于录入客户基础信息及其关联的所有联系人信息。

3)新建「智能助手Pro」,以实现删除客户联系人后,同步删除「联系人」表中的对应联系人。具体如下所示:

1.4 预期效果

1)此前,客户表中已经录入了一条 “客户编号” 为 KH0001 的客户数据,且该数据的 “联系人明细” 子表单中还记录了 3 条 “联系人编号” 分别为 LXR0001、LXR0002、LXR0003 的联系人数据。如下图所示:

2)同时,联系人表中有 3 条所属 “客户编号” 均为 KH0001,“联系人编号” 分别为 LXR0001、LXR0002、LXR0003 的数据。如下图所示:

3)则,在客户表内删除 “联系人明细” 子表单中的 2 条 “联系人编号” 分别为 LXR0002、LXR0003 的联系人数据后,联系人表中的对应数据也将被自动删除,如下图所示:

2. 表单设计

在学习之前建议安装 智能助手Pro功能案例 应用模板,本文将按照模板中的示例数据进行讲解。如下所示:

本案例需要调用 2 张表单数据,分别是:

1)客户

新建一张「客户」表单,并在其中添加子表单联系人明细,字段设置如下:

字段名称

字段类型

客户编号

流水号

客户名称

单行文本

客户来源

下拉框

客户状态

下拉框

客户级别

下拉框

所属行业

下拉框

客户详情

多行文本

联系人明细

子表单

联系人明细.联系人编号

子表单-单行文本

联系人明细.姓名

子表单-单行文本

联系人明细.联系方式

子表单-单行文本

联系人明细.部门

子表单-单行文本

联系人明细.职务

子表单-单行文本

2)联系人

新建一张「联系人」表单 ,字段设置如下:

字段名称

字段类型

选择所属客户

选择数据

客户编号

单行文本,由选择数据填充而来

客户名称

单行文本,由选择数据填充而来

联系人编号

流水号

联系人名称

单行文本

部门

单行文本

职务

单行文本

联系方式

单行文本

负责人

成员单选

联系人详情

多行文本

3. 设置智能助手Pro

3.1 新建智能助手Pro

完成表单设计后,直接切换至「扩展功能」处,新建一个名为「同步删除对应联系人」的「智能助手Pro」,选择触发方式为「表单触发」,触发表单为「客户表」。如下图所示:

3.2 设置触发节点

选中触发节点,设置触发动作为「修改数据时」,使得在「客户」表中删除联系人后便会触发「智能助手Pro」。

3.3 删除对应联系人数据

使用 删除数据节点,根据触发数据中的客户编号及联系人编号,从「联系人」表中找到并删除相应数据。

1)在触发节点下方添加一个「删除数据」节点。如下图所示:

2)修改节点名称为「删除对应联系人数据」,并进行如下设置:

  • 设置删除对象为「选择表单删除数据」,选择目标表单为「联系人」;
  • 添加如下删除条件,找到需要删除的数据:
    • 客户编号「等于」触发数据--客户编号
    • 联系人编号「不等于任意一个」触发数据--联系人明细.联系人编号

如何理解删除条件设置?

1)在删除联系人前,「客户」表中的联系人与「联系人」表中的联系人通过 “联系人编号” 相关联。

即,客户数据的 “联系人明细” 子表单内的每个 “联系人编号” 都能对应「联系人」表中的一条记录,反之同理。

2)在「客户」表中删除某一/某些联系人后,「客户」表中被删除的联系人也就无法通过 “联系人编号” 与「联系人」表中的联系人相关联。则:

「联系人」表中的部分数据也就无法通过 “联系人编号” 找到 “联系人明细” 子表单中的对应 “联系人编号”,需要同步删除这部分数据。因此删除条件为,联系人编号「不等于任意一个」触发数据--联系人明细.联系人编号。

3.4 保存并启用

全部设置完成后,点击「保存并启用」按钮,将「智能助手Pro」投入实际使用。如下图所示:

4. 效果演示

效果参见本文【1.4 预期效果】。

文档内容是否对您有帮助?
有帮助
没帮助没帮助
如需获取即时帮助,请联系技术支持
咨询
扫码领取100+零代码资料简道云官方微信号400-111-0890
图标在线咨询
立即体验