如何在JVS低代码表单配置中实现数据的高效管理?

2023-11-10 01:29

本文主要是介绍如何在JVS低代码表单配置中实现数据的高效管理?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在数字化时代,表单已经成为企业、机构和个人收集、整理、分析数据的重要工具。然而,随着数据复杂性的增长,传统的单一表单往往难以满足需求。JVS低代码表单引擎中子表格允许在主表单中嵌套另一个子表数据,使得数据的收集和组织更加有序、高效。尤其在处理多对一或多对多的关系数据时,如订单与订单项、任务与子任务,子表格的作用更加凸显。接下来我通过两个具体场景,详细解析如何在表单配置中运用子表格,实现数据的高效管理和操作。

表格组件(子表)

在表单配置中,子表格是一种特殊的表单元素,它允许用户在一个主表单中嵌套另一个子表数据,以便收集和组织更复杂的数据。子表格通常用于处理具有多对一或多对多关系的数据,例如订单和订单项,或者任务和子任务等。我们先看两个具体的场景。

场景一:

我们先看一个配置效果:

上图展示了两个数据模型(耗材采购和耗材采购明细记录),在耗材采购订单列表页中录入采购数据和采购明细数据,保存后,系统自动在子表中新增对应数据。

这里核心实现的场景是:新增表单中表格数据自动保存到关联模型中。

那么我们来看下具体的配置过程

示例场景:采购单中存在采购商品详情、资产入库单中存在多个入库资产等一对多的场景,采购单新增数据并填写多行采购商品。

1、设计“主表单”采购列表页,如下图所示,添加所需要的字段。

2、创建“子表单”商品明细,添加所需字段。此模型中需要添加“主表单”中的流水号字段,才会直接默认存入此字段数据,否则字段数据不会保存。同时主表单流水号字段使用【流水号】组件。主表单中仅有一个流水号组件时才会生效。

3、配置采购单新增表单,配置表格组件相关设置,关联模型选择明细列表模型,在表格中拖入模型字段对应的组件。主表单模型流水号(采购订单编码),不需要添加到表格中,由于模型中包含主表单的流水号字段所以会自动保存。

①:创建耗材采购列表的新增表单时,设置表单的名称

②:系统会自动关联本表单的主模型(耗材采购 数据模型)

③:将子表格引入表单画布中

④:点击选中表单画布中的子表格

⑤:设置子表格关联的数据模型(耗材采购详情 子表单模型)

⑥:引入子表格的具体展示选项,并且设置好字段的数据关联与可用性等具体设置

⑦:设置数据筛选条件,这里表示只展示通过采购订单编号的子表数据

4、配置新增表单新增后事件,启用逻辑引擎,用于将主表单的数据提交后往子表中插入数据

5、在后置事件业务逻辑中,我们可以配置启动流程节点,或者更新订单模型字段数据。表格中的数据,会自动保存到明细列表模型中。

场景二:

我们再来看下另外一个长场景:用户修改子表数据时,同时存在有新增表格数据,我们先来看下具体效果:

通常用于批量处理数据设计表格组件实现时,可以满足新增行数据并修改表格中数据。

示例下图“商品列表”顶部按钮【批量入库】。

设计“批量入库”表单提交时触发逻辑实现数据的更新或新增操作。

注意需要新增自定义表单按钮配置逻辑。

1、进入逻辑设计页面,表格中的数据格式为数组,所以选择【循环容器】节点来处理表格数据。

2、再进入循环容器画布,选择更新模型和新增数据节点。如果是修改走更新模型节点,新增则走新增数据节点。

根据是否含有行id来控制逻辑走新增还是更新路线,在连线上加函数公式来判断。

单击连线设置如下,修改的数据已存在有行id则更新表格数据。下图也可以直接使用逻辑函数“ISNOTEMPTY”。

当新增数据时还没有行id则走新增节点。

最后提交并保存逻辑设计,回到列表页可查看效果。

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

基础框架开源地址:https://gitee.com/software-minister/jvs

这篇关于如何在JVS低代码表单配置中实现数据的高效管理?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/379610

相关文章

C#借助Spire.XLS for .NET实现在Excel中添加文档属性

《C#借助Spire.XLSfor.NET实现在Excel中添加文档属性》在日常的数据处理和项目管理中,Excel文档扮演着举足轻重的角色,本文将深入探讨如何在C#中借助强大的第三方库Spire.... 目录为什么需要程序化添加Excel文档属性使用Spire.XLS for .NET库实现文档属性管理Sp

Python+FFmpeg实现视频自动化处理的完整指南

《Python+FFmpeg实现视频自动化处理的完整指南》本文总结了一套在Python中使用subprocess.run调用FFmpeg进行视频自动化处理的解决方案,涵盖了跨平台硬件加速、中间素材处理... 目录一、 跨平台硬件加速:统一接口设计1. 核心映射逻辑2. python 实现代码二、 中间素材处

Spring配置扩展之JavaConfig的使用小结

《Spring配置扩展之JavaConfig的使用小结》JavaConfig是Spring框架中基于纯Java代码的配置方式,用于替代传统的XML配置,通过注解(如@Bean)定义Spring容器的组... 目录JavaConfig 的概念什么是JavaConfig?为什么使用 JavaConfig?Jav

Java数组动态扩容的实现示例

《Java数组动态扩容的实现示例》本文主要介绍了Java数组动态扩容的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1 问题2 方法3 结语1 问题实现动态的给数组添加元素效果,实现对数组扩容,原始数组使用静态分配

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Spring Boot Interceptor的原理、配置、顺序控制及与Filter的关键区别对比分析

《SpringBootInterceptor的原理、配置、顺序控制及与Filter的关键区别对比分析》本文主要介绍了SpringBoot中的拦截器(Interceptor)及其与过滤器(Filt... 目录前言一、核心功能二、拦截器的实现2.1 定义自定义拦截器2.2 注册拦截器三、多拦截器的执行顺序四、过

Python实现快速扫描目标主机的开放端口和服务

《Python实现快速扫描目标主机的开放端口和服务》这篇文章主要为大家详细介绍了如何使用Python编写一个功能强大的端口扫描器脚本,实现快速扫描目标主机的开放端口和服务,感兴趣的小伙伴可以了解下... 目录功能介绍场景应用1. 网络安全审计2. 系统管理维护3. 网络故障排查4. 合规性检查报错处理1.

MySQL快速复制一张表的四种核心方法(包括表结构和数据)

《MySQL快速复制一张表的四种核心方法(包括表结构和数据)》本文详细介绍了四种复制MySQL表(结构+数据)的方法,并对每种方法进行了对比分析,适用于不同场景和数据量的复制需求,特别是针对超大表(1... 目录一、mysql 复制表(结构+数据)的 4 种核心方法(面试结构化回答)方法 1:CREATE

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

Python轻松实现Word到Markdown的转换

《Python轻松实现Word到Markdown的转换》在文档管理、内容发布等场景中,将Word转换为Markdown格式是常见需求,本文将介绍如何使用FreeSpire.DocforPython实现... 目录一、工具简介二、核心转换实现1. 基础单文件转换2. 批量转换Word文件三、工具特性分析优点局