找回密码
 立即注册

QQ登录

只需一步,快速开始

边城

注册会员

9

主题

46

帖子

157

积分

注册会员

积分
157
边城
注册会员   /  发表于:2023-8-17 21:49  /   查看:843  /  回复:7
5金币
本帖最后由 边城 于 2023-8-19 09:51 编辑


现在有3张表,分别为表1、表2、表3其中三张表通过字段进行关联,业务场景如下:

表1中字段“类型”可跟进需要进行选择表1中的数据属于何种类型,不同类型对应表2或者表3中的其他关联数据;

当表1 类型字段选择了与表2关联的类型时,在保存时候需要保存 表1和表2中的数据,如果表2中没有表1中的 对应的代码 就新建1条数据

以此类推。

请老师指教,如何实现。
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

返回码,返回信息和返回值可以用来控制更多的场景,大佬可以先了解。 服务端命令的返回值 - 活字格V9帮助手册 - 葡萄城产品文档中心 (grapecity.com.cn) 比如通过返回不同的返回码,代表不同的命令执行状态。 具体的用法这些暂时不是一两句话可以聊清楚的,建议大佬先自学或者参加活字格的进阶培训。 https://www.grapecity.com.cn/solutions/huozige/learningplan

7 个回复

倒序浏览
最佳答案
最佳答案
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2023-8-17 21:49:06
来自 8#
返回码,返回信息和返回值可以用来控制更多的场景,大佬可以先了解。
服务端命令的返回值 - 活字格V9帮助手册 - 葡萄城产品文档中心 (grapecity.com.cn)
比如通过返回不同的返回码,代表不同的命令执行状态。

具体的用法这些暂时不是一两句话可以聊清楚的,建议大佬先自学或者参加活字格的进阶培训。

https://www.grapecity.com.cn/solutions/huozige/learningplan
回复 使用道具 举报
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2023-8-18 09:28:17
2#
写前端逻辑或者服务端命令,用IF命令判断表1数据的类型,分别执行大佬想要的逻辑。
大佬可以先尝试写一下,如果在写的过程中对某个逻辑不是很清楚的话,可以再单独拎出来讨论。
回复 使用道具 举报
边城
注册会员   /  发表于:2023-8-18 16:38:19
3#
David.Zhong 发表于 2023-8-18 09:28
写前端逻辑或者服务端命令,用IF命令判断表1数据的类型,分别执行大佬想要的逻辑。
大佬可以先尝试写一下 ...

老师 我已经自己实现了 同步更新数据。
但是我依然有两个问题希望老师帮忙解答一下。

1、有没有比我这个方式更好的方法实现。
2、当两个表格同时更新的时候会出现表1里面的内容部分更新失败,但是表2里面的却全部写入了,所以我想实现,主表 表1 必须是全量保存成功才更新其他表的数据,另外如果其他表保存失败 表1的数据也不能写入成功,需要回滚。

上面两个问题请老师指教。

我实现的demo文件见附件。


本帖子中包含更多资源

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

x
回复 使用道具 举报
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2023-8-18 17:52:22
4#
看大佬的做法是把逻辑写在前端了,大佬可以尝试研究下服务端命令,在服务端命令中使用事务命令,可以做到出错回滚的效果。
第二十六章 服务端命令 - 活字格V9帮助手册 - 葡萄城产品文档中心 (grapecity.com.cn)
事务命令 - 活字格V9帮助手册 - 葡萄城产品文档中心 (grapecity.com.cn)
回复 使用道具 举报
边城
注册会员   /  发表于:2023-8-18 19:32:35
5#
本帖最后由 边城 于 2023-8-19 09:50 编辑
David.Zhong 发表于 2023-8-18 17:52
看大佬的做法是把逻辑写在前端了,大佬可以尝试研究下服务端命令,在服务端命令中使用事务命令,可以做到出 ...




老师 我用服务端命令做了一个,不知道如何测试事务是不是有效,请老师指教。
另请老师指教,我的服务端命令是不是可以进一步优化,或者我写的服务端命令的思路可以再提高。

另外就是我增加了数值字段 但是在保存的时候提示如下错误,不知道如何解决。



详见 附件 demo。



本帖子中包含更多资源

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

x
回复 使用道具 举报
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2023-8-20 21:41:00
6#
报错是因为在调用服务端命令传递参数的时候少写了等号,

导致参数识别为了字符串“表1小数”,在尝试转化为小数的时候,失败报错了。


事务命令正常情况下可以生效,不用担心。如果想测试事务命令是否生效,可以在逻辑中间手动加一个返回命令,返回值设置为非0的数,主动触发报错。观察数据库是否按照预期回滚就行。

关于优化,看了一下,有部分命令是相同的,可以考虑把逻辑精简一下。


另外,大佬在调用服务端命令的时候,并没有接收和处理返回值,关于返回值的处理,大佬也可以进一步了解一下。

关于更多服务端命令的用法,大佬如果感兴趣的话,可以了解一下活字格的进阶培训。
https://www.grapecity.com.cn/sol ... n/advanced-training

本帖子中包含更多资源

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

x
回复 使用道具 举报
边城
注册会员   /  发表于:2023-8-22 09:29:42
7#
David.Zhong 发表于 2023-8-20 21:41
报错是因为在调用服务端命令传递参数的时候少写了等号,

导致参数识别为了字符串“表1小数”,在尝试转 ...

老师,根据您的建议 我优化了一下服务端命令的结构,具体见附件demo。


服务端命令的返回值,主要是不会用,也不清除这个返回值的使用场景,所以就没有设置。

还请老师指教一下典型 应用场景。


本帖子中包含更多资源

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

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