单据批量审核反写提示错误原创
金蝶云社区-我心中的一团火是不会熄灭的
我心中的一团火是不会熄灭的
6人赞赏了该文章 1,376次浏览 未经作者许可,禁止转载编辑于2021年02月08日 17:46:18

关键字:单据批量审核反写提示错误,反写,BOTP反写

问题:单据批量审核通过时,触发的反写规则会提示冲突

问题原因:

工作流批量提交,是启动多个线程并发执行任务,不是串行执行,不允许并发反写同一张单,源单拆分了多张目标单,在工作流中批量审核目标单,如果不增加网控互斥,会导致前一张单的反写结果,被另外一张单反写覆盖。导致数据错误

解决办法:暂时遇到这种情况,到异常流程列表中重新激活流程,后续会继续优化这块,在申请反写源单网控失败后,适当重试几次,尽可能避免中断挂起流程

kd.bos.exception.KDBizException: 并发冲突,反写【询价单】申请互斥锁失败,请稍后再试。
 at kd.bos.service.botp.track.bizentity.SourceBillInfo.doStartNetworkCtrl(SourceBillInfo.java:530)
 at kd.bos.service.botp.track.bizentity.SourceBillInfo.startNetworkCtrl(SourceBillInfo.java:459)
 at kd.bos.service.botp.track.WriteBackEngine.startNetworkCtrl(WriteBackEngine.java:442)
 at kd.bos.service.botp.track.WriteBackEngine.doWriteBack(WriteBackEngine.java:98)
 at kd.bos.service.botp.track.actions.ExecuteWriteLogicAction.execWriteLogicUnit(ExecuteWriteLogicAction.java:111)
 at kd.bos.service.botp.track.actions.ExecuteWriteLogicAction.doAction(ExecuteWriteLogicAction.java:53)
 at kd.bos.service.botp.track.actions.AbstractTrackAction.action(AbstractTrackAction.java:60)
 at kd.bos.service.botp.track.actions.BFTrackBatchExecuter.doActions(BFTrackBatchExecuter.java:116)
 at kd.bos.service.botp.track.BFTracker.batchExecuteSync(BFTracker.java:186)
 at kd.bos.service.botp.track.BFTracker.executeLinkItem(BFTracker.java:137)
 at kd.bos.service.botp.track.BFTracker.execute(BFTracker.java:89)
 at kd.bos.service.botp.track.WriteBacker.execute(WriteBacker.java:31)
 at kd.bos.service.botp.track.BFTrackerEngine.execute(BFTrackerEngine.java:218)
 at kd.bos.service.operation.Audit.afterUpdateBillStatus(Audit.java:66)
 at kd.bos.service.operation.StatusConvertOperateService.beforeCallOperationTransaction(StatusConvertOperateService.java:71)
 at kd.bos.service.operation.EntityOperateService.doExcete(EntityOperateService.java:580)
 at kd.bos.service.operation.EntityOperateService.excute(EntityOperateService.java:328)
 at kd.bos.service.operation.EntityOperateService.excute(EntityOperateService.java:420)
 at kd.bos.service.operation.OperationServiceImpl.localInvokeOperation(OperationServiceImpl.java:68)
 at kd.bos.service.operation.OperationServiceImpl.invokeOperation(OperationServiceImpl.java:42)
 at sun.reflect.GeneratedMethodAccessor1031.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498)
 at kd.bos.service.DispatchServiceImpl.invoke(DispatchServiceImpl.java:53)
 at sun.reflect.GeneratedMethodAccessor285.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498)
 at kd.bos.mservice.rpc.dubbo.debug.LocalDebugProxy$1.lambda$invoke$0(LocalDebugProxy.java:61)
 at kd.bos.mservice.rpc.dubbo.debug.DubboDebugUtil.invoke(DubboDebugUtil.java:49)
 at kd.bos.mservice.rpc.dubbo.debug.LocalDebugProxy$1.invoke(LocalDebugProxy.java:58)
 at com.sun.proxy.$Proxy40.invoke(Unknown Source)
 at kd.bos.servicehelper.DispatchServiceHelper.invokeBOSService(DispatchServiceHelper.java:98)
 at kd.bos.servicehelper.operation.OperationServiceHelper.executeOperate(OperationServiceHelper.java:62)
 at kd.bos.workflow.relservice.BusinessLogicServiceHelper.idepotentExecute(BusinessLogicServiceHelper.java:259)
 at kd.bos.workflow.relservice.BusinessLogicServiceHelper.execute(BusinessLogicServiceHelper.java:199)
 at kd.bos.workflow.relservice.BusinessLogicServiceHelper.invokeOperationServiceAsyc(BusinessLogicServiceHelper.java:137)
 at kd.bos.workflow.relservice.BusinessLogicServiceHelper.invokeOperationService(BusinessLogicServiceHelper.java:57)
 at kd.bos.workflow.relservice.BusinessLogicServiceHelper.invokeOperationService(BusinessLogicServiceHelper.java:66)
 at kd.bos.workflow.engine.extitf.ExtItfOperationExecutor.execute(ExtItfOperationExecutor.java:43)
 at kd.bos.workflow.engine.extitf.ExternalInterfaceUtil.executeExtItf(ExternalInterfaceUtil.java:60)
 at kd.bos.workflow.engine.impl.util.AutoTaskUtil.handleOperation(AutoTaskUtil.java:73)
 at kd.bos.workflow.engine.impl.util.AutoTaskUtil.executeExternalInterface(AutoTaskUtil.java:39)
 at kd.bos.workflow.engine.impl.bpmn.behavior.AutoTaskActivityBehavior.execute(AutoTaskActivityBehavior.java:42)
 at kd.bos.workflow.engine.impl.agenda.ContinueProcessOperation.executeActivityBehavior(ContinueProcessOperation.java:275)
 at kd.bos.workflow.engine.impl.agenda.ContinueProcessOperation.executeSynchronous(ContinueProcessOperation.java:201)
 at kd.bos.workflow.engine.impl.agenda.ContinueProcessOperation.continueThroughFlowNode(ContinueProcessOperation.java:156)
 at kd.bos.workflow.engine.impl.agenda.ContinueProcessOperation.run(ContinueProcessOperation.java:98)
 at kd.bos.workflow.engine.impl.interceptor.CommandInvoker.executeOperation(CommandInvoker.java:86)
 at kd.bos.workflow.engine.impl.interceptor.CommandInvoker.executeOperations(CommandInvoker.java:59)
 at kd.bos.workflow.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:44)
 at kd.bos.workflow.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:63)
 at kd.bos.workflow.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:28)
 at kd.bos.workflow.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:44)
 at kd.bos.workflow.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:39)
 at kd.bos.workflow.engine.impl.asyncexecutor.ExecuteAsyncRunnable.run(ExecuteAsyncRunnable.java:48)
 at kd.bos.workflow.engine.impl.asyncexecutor.schedule.WfJobHandler.execute(WfJobHandler.java:131)
 at kd.bos.schedule.api.AbstractJobHandler.handle(AbstractJobHandler.java:25)
 at kd.bos.schedule.message.JobProcessor.executeTask(JobProcessor.java:260)
 at kd.bos.schedule.message.JobProcessor.process(JobProcessor.java:197)
 at kd.bos.schedule.message.JobProcessor.call(JobProcessor.java:344)
 at kd.bos.schedule.message.JobProcessor.call(JobProcessor.java:45)
 at kd.bos.threads.impl.ThreadPoolImpl.lambda$submit$1(ThreadPoolImpl.java:79)
 at kd.bos.thread.ThreadLifeCycleManager$CallableWrap.call(ThreadLifeCycleManager.java:214)
 at java.util.concurrent.FutureTask.run(FutureTask.java:266)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
 at java.lang.Thread.run(Thread.java:745)


图标赞 6
6人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!