电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

业务流.案例.保存时遇到反写网控异常的最佳实践和变通方案

来源:金蝶云社区作者:金蝶2024-09-237

业务流.案例.保存时遇到反写网控异常的最佳实践和变通方案

【场景】经常有客户提单反馈二开调用保存的时候出现以下错误 在其他单据保存时出现反写异常,提示非当前单据异常 "XXX" 使用业务单据:"采购订单"业务操作-“[反写-采购订单-XXX]”冲突 这个错误就是我们系统标准的网控互斥 ![Image_20230112144516.webp](/download/0100a4045e22703d451fb58c920b710e7ae2.webp) 【分析】很多客户很好奇为啥会出现一个问题? <0>逻辑分析:业务流反写 <0.0>一对一关系 ![image.webp](/download/010009aff063eb9945da887f75df4a984f31.webp) 入库单保存时反写逻辑 ![image.webp](/download/010040176214d77949b5b8fa708dc2d03825.webp) 由于需要计算反写、超额控制,因此在保存CGRK001的时候,我们会开启CGSQ001和CGDD001的网控,**保存操作调用完成后释放**; 同样的,在保存CGRK002的时候,我们会开启CGSQ002和CGDD002的网控,**保存操作调用完成后释放**; <0.1>一对多,拆单关系;假定采购申请分别推两个订单 ![1673506763169.webp](/download/010041f05acfd2d44e9d8f962c604241b1bf.webp) 入库单保存时反写逻辑 ![1673506888322.webp](/download/0100c86ae52ca74a4399a4d843e6876655e4.webp) 此时CGRK001和CGRK002都需要开启CGSQ001的网控,如果CGRK001占用了网控,那么CGRK002就会冲突; 只能等待CGRK001保存完了,网控释放了的时候重新保存一次。 通常在界面出现这样的问题的时候,我们就会等另外的业务员操作一下,过个几秒钟、或者1分钟重新保存 <1>时间线分析:单据批量操作、非工作流模式 普通操作模型为串行分批模型,指代的意思是处理完上一批后再处理下一批 ![1673507703524.webp](/download/0100726de70d15aa4fec84bc81b5f48b8424.webp) 不同批次的操作:由于时间不会交叉,每次都是等待上一次完成后才开始下一批,不会冲突 (在一批操作内的反写网控判断:判断网控是否为本次操作调用占用) <2>时间线分析:单据批量操作、工作流模型 工作流消息队列操作模型为异步逐单并行模型,指代的意思是操作时不会真正触发(异步),而后在真正调度的时候会可能存在并发调用 ![1673509208270.webp](/download/0100912fad825ba64993b8f007cf5bd39283.webp) 消息队列调度逻辑:等待上一个任务完成时直接调用,或者到达超时时间还没收到上一个任务反馈,也直接调用 导致单据B和单据C在时间上会一起执行 <3>最终结论:两个下游单据,存在同一上游单据,在工作流并发偶发下,会存在冲突操作; 【最佳实践】 <0>业务流:减少拆单下推的逻辑 <1>界面操作:遇到保存、审核抛出的

业务流.案例.保存时遇到反写网控异常的最佳实践和变通方案

【场景】经常有客户提单反馈二开调用保存的时候出现以下错误在其他单据保存时出现反写异常,提示非当前单据异常"XXX" 使用业务单据:"采购...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信