低代码场景案例配置——复杂数据模型下表单与表格关联字段的保存

ops/2024/12/13 1:36:21/

主子表的场景是每个业务系统都绕不过的功能点,低代码能不能在业务上用的起来,这个是必须过的门槛。那么什么主子表有哪些场景的应用,如何配置呢,接下来我们就举个例详细说明

订单管理系统,场景描述:

在电商或企业采购系统中,订单和订单明细是典型的主子表关系。一个订单(主表)可以包含多个商品明细(子表),每个商品明细记录具体商品的信息,如商品ID、数量、单价等。

应用说明

  • 主表(主模型):记录订单的基本信息,如订单号、下单时间、客户ID、订单状态等。
  • 子表(子模型):记录每个订单下的商品明细,与主表通过订单号关联。
  • 操作:用户可以在主表界面查看所有订单概览,通过点击某个订单进入详细页面,查看和编辑该订单下的所有商品明细。新增主表的时候,可以同时向子表中插入 订单的明细数据。

配置的原理:

向一个表里添加数据,那么用新增表单即可实现,提交数据后向表单对应的模型中增加一条数据;如果要向两个模型中增加数据,那么就要用到逻辑引擎,通过逻辑引擎触发 “向模型中新增数据”的 组件,通过执行动作的编排,插入数据 。 所以 如果您想 非常灵活的向数据模型中添加数据,那么逻辑引擎 绝对 “值得拥有”!

场景一:主子表中关联字段名相同

直接使用表单默认提交按钮保存数据,如下图所示:“单位编码”字段名相同,表单模型和表格模型中都有此字段,那么在表单设计中将表格关联模型绑定字段。(注意:表格的模型中的“单位编码”字段设置为文本组件,不需要使用流水号组件

(主子表中有相同名的字段,系统自动关联)

点击表单默认提交按钮,即可将“单位编码”同时保存至表格模型中

场景二:主子表中关联字段不同

配置方式一,在新增表单配置时,添加新增数据后置事件触发逻辑实现,也就是在表单提交数据的同时,触发一个向另外一个模型新增数据的逻辑。配置方式,进入表单的数据设置界面如下图所示:

点击后置动作的设计,这里会创建一个 新增表单提交时的联动触发的逻辑,相当于新增主模型数据后,执行执行逻辑,如下图所示:

在逻辑引擎中设计如下图所示,这个逻辑包含2层编排的功能,第一层是循环操作

循环的次数如下图所示:

循环的次数是表单中的 项目成员的数量

在循环画布中新增遍历的数据,同时取查询单条节点中的关联字段,新增至表格模型中

配置方式二,在新增表单中,添加表单自定义按钮触发逻辑处理,表单数据新增和表格关联模型字段的新增

进入到自定义按钮逻辑设计中,使用【新增数据】节点设计如下图所示:

在循环画布中再次用新增数据节点新增表格数据,同时将【查询单条】节点的关联字段新增进去

这里仅仅以一个表单提交时,触发两个表数据的调整的操作,我们在体验的地址中增加了大量的这种配置示例,以及对应的操作说明, 比如出入库、比如合同管理、比如 MES 等等, 大家在交付项目的时候,能复用的就复用,支持一键安装!

开源框架:https://gitee.com/software-minister/jvs

在线demo:https://frame.bctools.cn


http://www.ppmy.cn/ops/141116.html

相关文章

十一、容器化 vs 虚拟化-Docker 命令

文章目录 常用命令一、容器生命周期管理二、容器操作三、容器的root文件系统(rootfs)命令四、镜像仓库五、本地镜像管理六、info|version七、Docker Compose八、网络命令九、卷命令 常用命令 指令 说明 docker images 查看已下载的镜像 docker rmi 镜像…

深度学习中的损失函数

损失函数是深度学习模型训练过程中不可或缺的一部分,是模型预测值与真实值之间差异的客观衡量标准。它们是模型训练的基础,指导算法调整模型参数,以最小化损失并提高预测准确性。它们衡量了模型预测值与真实值的吻合程度。通过最小化这种损失…

解锁 AI 潜能 - ChatGPT等大模型提示词技巧

在人工智能领域,ChatGPT 等大语言模型正在重新定义我们的工作和生活方式。这些强大的 AI 大模型 能够理解自然语言并生成高质量的内容,无论是撰写文案、解决问题,还是数据分析,都展现了卓越的表现。如何高效使用这些工具&#xff…

【openwrt】openwrt-21.02 基于IP地址使用ipset实现策略路由操作说明

openwrt版本信息 DISTRIB_ID=OpenWrt DISTRIB_RELEASE=21.02-SNAPSHOT DISTRIB_REVISION=r0-6bf6af1d5 DISTRIB_TARGET=mediatek/mt7981 DISTRIB_ARCH=aarch64_cortex-a53 DISTRIB_DESCRIPTION=OpenWrt 21.02-SNAPSHOT r0-6bf6af1d5 DISTRIB_TAINTS=no-all busybox override …

【golang】 WaitGroup使用注意事项

注意1:使用指针 当把WaitGroup作为参数传递给函数时,如果传递的是变量本身(值传递),会发生复制。在 Go 语言中,这种复制可能会导致意外的行为。因为每个WaitGroup副本都有自己独立的计数器。下面的代码如果…

Advanced Functional Materials 光驱动连续跳跃机器人

跳跃是自然界生物的一种非常有效的运动手段,可以在瞬间穿越中长距离,以实现捕猎及逃避被猎捕的目的。自然界生物跳跃的机理主要有两种,长腿动物(比如袋鼠和青蛙)主要依靠杠杆作用,使它们能够用较少的力量跳跃同样的距离&#xff1…

MATLAB 非重叠点云提取算法(92)

MATLAB 非重叠点云提取算法(92) 一、算法介绍二、算法实现1.代码2.结果一、算法介绍 读取两片点云,从一片点云中找到与另一片点云不重叠的点云。输出并可视化提取过程和结果 二、算法实现 1.代码 代码如下(示例): % 假设 cloud1 和 cloud2 是通过 pcread 加载的点云…

分析比对vuex和store模式

在 Vue 中,Vuex 和 store 模式 是两个不同的概念,它们紧密相关,主要用于管理应用的状态。下面我会详细介绍这两个概念,并通过例子帮助你更好地理解。 1. Vuex 是什么? Vuex 是 Vue.js 的一个状态管理库,用…