凭证生成分布式处理步骤

栏目:云星瀚知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

凭证生成分布式处理步骤

【问题背景】

很多业务单据生成凭证之后单据需要回写是否生成凭证的标识,但是很多情况下单据和凭证表不在同一个事务,无法通过数据库的事务保证数据的一致性,因此通过引入平台的分布式事务一致性框架保证生成凭证单据反写和凭证数据的一致性。


【常见问题】

1).凭证提交时候报“还在分布式事务中,不能提交”或者凭证生成或者删除后业务单据没有及时反写。

 


可能的原因:

1. 反写逻辑执行确实很慢,还没结束

2. 反写逻辑执行异常,分布式事务后台正在重试,或者多次重试失败转人工处理

3. 程序bug引起的


【解决办法】

1. 获取业务单据ID

2.通过单据的业务ID反查应对的分布式事务记录

2. 在事务查询中查询分布式事务状态

3. 如果状态是“分支事务执行中”,说明反写逻辑还没处理结束,需要排查为什么会执行这么久(数据库负载太高?节点压力太大?)

4. 如果状态是“提交失败”,说明执行反写是有异常,点击“查看日志”,排查具体原因

5. 其他问题需要开发介入一起排查

解决办法:

找到系统中配置工具——>分布式事务——>事务补偿这个菜单,事务场景选择财务生成凭证或者财务删除凭证(根据业务操作来选择),重试/回滚结果选处理失败,看有没有异常数据,有的话,选中异常数据点击重试

若能够提交成功,则凭证能够正常提交,业务单据凭证生成标识能够正常反写。


如果提交失败可能是代码本身有问题,这种情况就需要开发介入。

点重试之前,按F12打开开发者工具。

然后点击重试拿到这次请求的traceId,根据traceId找到相应的monitor日志进行分析。




凭证生成分布式处理步骤

【问题背景】很多业务单据生成凭证之后单据需要回写是否生成凭证的标识,但是很多情况下单据和凭证表不在同一个事务,无法通过数据库的事务...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息