请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

隔壁老王 活字格认证

金牌服务用户

278

主题

955

帖子

3555

积分

金牌服务用户

积分
3555

活字格认证

隔壁老王 活字格认证
金牌服务用户   /  发表于:2021-7-23 22:19  /   查看:4294  /  回复:20
100金币
本帖最后由 隔壁老王 于 2021-7-23 22:39 编辑

情况是这样的
有三个表 主表  子表   孙表
子表是主表的子表   孙表是子表的子表
就是爷爷儿子和孙子的关系了
我需要在同一个页面同时新增这三张表的数据
因为孙表是对子表的描述

问题
在主表没有数据的情况下,也就是新添数据的时候
我希望用户在点击添加后再向数据库添加这个页面的内容(也就是三张表的数据)
我尝试过打开页面就像数据库添加主表信息   如果点击 取消 按扭就删除主表  以做到同时删除子表的作用,
但是如果用户并不点取消按扭直接关闭页面呢?那样就会出现很垃圾信息
不知大佬们能否看懂,我附上一个文件   

这个功能的用处是做表单的时候,
比如采购单   
采购的 子表  成品A   单价是100元   
他是  孙表   由三个配件    配件A  50元    配件B   20元    配件C 30元    组成的

配件信息需要在添加的时候同时操作了,并不是保存后再操作,
也不希望把配件信息加入到成品信息里,也就是一定要三层表关系




附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

这个问题的难点就是子表与孙表多对多关系,需要录入下一行子表时,先要把上一行子表对应的孙表保存起来。 不得不批评一下活字格的大大们,关于这个需求论坛提出很多类似需求的帖子,包括我也提出过,但是从来没有正面给个demo可以完美解决此问题,如果已经解决早就是一个连接的事,不用这里讨论来讨论去。 大大给的建议2分两步保存理论上是可以解决问题,但是没有实际操作意义,那个系统会录入一行保存一次这么操作,所以楼主 ...

20 个回复

倒序浏览
最佳答案
最佳答案
小侠米
论坛元老   /  发表于:2021-7-23 22:19:15
来自 16#
Chelsey.Wang 发表于 2021-7-27 14:04
这个页面中主子表是一对多的关系,而子表和孙表是多对多的关系,多对多的关系中,如果松绑订,子表数据都没 ...

这个问题的难点就是子表与孙表多对多关系,需要录入下一行子表时,先要把上一行子表对应的孙表保存起来。
不得不批评一下活字格的大大们,关于这个需求论坛提出很多类似需求的帖子,包括我也提出过,但是从来没有正面给个demo可以完美解决此问题,如果已经解决早就是一个连接的事,不用这里讨论来讨论去。
大大给的建议2分两步保存理论上是可以解决问题,但是没有实际操作意义,那个系统会录入一行保存一次这么操作,所以楼主只能选择紧绑定方案,估计也没解决全部问题
回复 使用道具 举报
Li.Zhou活字格认证
银牌会员   /  发表于:2021-7-23 22:29:52
2#
你可以去学习一下这个的这个页面


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
隔壁老王活字格认证
金牌服务用户   /  发表于:2021-7-23 22:36:46
3#
Li.Zhou 发表于 2021-7-23 22:29
你可以去学习一下这个的这个页面

你可能没有明白我的意思
回复 使用道具 举报
Li.Zhou活字格认证
银牌会员   /  发表于:2021-7-23 22:41:29
4#
隔壁老王 发表于 2021-7-23 22:36
你可能没有明白我的意思

是三张主子表一起提交内容吗
回复 使用道具 举报
隔壁老王活字格认证
金牌服务用户   /  发表于:2021-7-23 22:43:09
5#
Li.Zhou 发表于 2021-7-23 22:41
是三张主子表一起提交内容吗

是的是的
回复 使用道具 举报
Li.Zhou活字格认证
银牌会员   /  发表于:2021-7-24 09:21:34
6#
本帖最后由 Li.Zhou 于 2021-7-24 09:22 编辑

服务端命令应该是可以解决的,不过在页面填写的时候你得确定好子表和孙表的对应关系,然后在服务端命令的一个事务中去完成主表添加,子表添加,孙表添加~或者也可以分开设计,每一级主子表分别设计,拆成两张主子表;
回复 使用道具 举报
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2021-7-26 11:50:32
7#
本帖最后由 Chelsey.Wang 于 2021-7-26 11:52 编辑

我用你这个demo,没有复现您说的这个问题呀,
点X就关闭了,也没有生成额外的数据,不知道您说的垃圾信息是指什么呢,

但是我理解您应该是想要实现填报完后再一次性提交页面上的三张表中的数据这样的效果,
这个逻辑建议用服务端命令来做,考虑到页面关闭取消等操作,需要把这三个数据表操作放在一个事务中,大致思路如下

主表直接添加即可,子表和孙表由于是以表格的形式添加数据,所以需要放在循环命令里面:

逻辑和库存管理系统demo中的服务端命令“新建销售表”十分类似,可以参考一下。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
隔壁老王活字格认证
金牌服务用户   /  发表于:2021-7-26 20:00:38
8#
本帖最后由 隔壁老王 于 2021-7-26 20:02 编辑
Chelsey.Wang 发表于 2021-7-26 11:50
我用你这个demo,没有复现您说的这个问题呀,
点X就关闭了,也没有生成额外的数据,不知道您说的垃圾信息 ...

看来你们还是没有理解我说的呀


--如果客户添加到一半又取消了怎么办?



主要是第一次添加的时候数据库中没有子表数据也就是孙表没有表头

因为子表在填报的时候自动编号不能马上生成,所以孙表也是不能马上对应关联的

现在我这种三层关系的填报都是无法实现的

有谁能理解我的





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
隔壁老王活字格认证
金牌服务用户   /  发表于:2021-7-26 20:05:54
9#
Chelsey.Wang 发表于 2021-7-26 11:50
我用你这个demo,没有复现您说的这个问题呀,
点X就关闭了,也没有生成额外的数据,不知道您说的垃圾信息 ...


我就是想在一个页面上一次性填报完再提交

现在的问题 是我无法填报孙表

因为孙表没有表头,孙表是子表的子表,

如果子表没有保存之前是不能填报孙表的


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部