原因
供应链单据会将审核上的一些业务逻辑(例如核销、组织间结算等)作为分布式事务进行执行,此时虽然单据已处于审核状态,但后台业务仍在继续执行。
若后台业务还在执行或业务失败时,操作人员对单据进行反审核等操作时,会提示“存在未完成的业务逻辑,不能反审核,请通过“联查-联查事务日志”功能查看对应的信息或再“配置工具-分布式事务-事务查询”菜单查看相关信息。”等类似信息提示无法进行进行审核。
此时需要查看对应分布式事务的业务执行情况。
方法一:通过“联查事务日志”功能查询
1.通过联查按钮,选择联查事务日志
单据列表上
单据表单上
点击联查事务日志,跳转到事务查询页面。
2.选择数据,点击查看日志,获取备注中的报错信息。
备注:如果页面没有联查事务日志功能,可以考虑扩展新加按钮,操作代码选择“tracetxlog”。
方法二:通过“事务查询”页面查询
查询分析器 6.0以前位于“系统管理”应用下, 6.0以后位于“安全管理”应用下。
事务查询 6.0以前位于“配置工具”应用下, 6.0以后位于“分布式管理”应用下。
1.根据单据编号查询单据id
以财务应收单(单据编号AR-231212-227523)为例:
数据库选“财务库” select fid from t_ar_finarbill where fbillno = 'AR-231212-227523' |
获取到单据id为 1838364686576351232
2.根据单据id查询事务xid
组装分布式事务的business_id,格式为单据实体标识#单据id,例如ar_finarbill#1838364686576351232。
根据business_id,查询事务xid。
数据库选“系统库” select fxid from t_cbs_dtx_business where fbusiness_id='ar_finarbill#1838364686576351232' |
获取xid为1838364763625709568
3.在分布式事务-事务查询中根据xid查询日志
分布式事务-事务查询中,事务id填写xid,点击查询。
4.选择数据,点击查看日志,获取备注中的报错信息。