1.1.1 问题概述
客户名称 | 环境版本 | 功能位置 | 问题简述 |
今麦郎 | V4.0.020 | 购物商城-我的订单-审核操作 | 商城订单无法同步到协同 |
1.1.2 业务流程简介
商城采购订单审核的时候,对接eas将在内存通过商城订单-协同采购订单的botp生成协同采购订单后,再构建同步给eas的接口数据,传递给eas,eas接收到数据后,再通过集成方案同步回采购协同。
1.1.3 查询分析步骤
1.异步服务日志(bos_log_asyncop):筛选业务对象为:商城订单
在日志类出现包含有错误提示:单据PO0220530000007同步失败,失败原因:您没有组织:XXX有限公司 的 采购订单修改 业务权限!
2.检查系统集成日志(pur_apilog):筛选单据名称或接口名称为:doIerp2PurOrder
在日志里出现包含:您没有组织: XXX有限公司 的 采购订单修改 业务权限!
背景说明:这里如果传入接口里包含了usernumber字段值,并且该值在eas能查询到,eas将根据usernumber的值查询用户权限并作鉴权判断,否则使用集成管理里的eas连接配置的账号权限。
3.在eas侧,给用户授权,见下图:注意,新增修改权限都要加上
1.1.4 问题思考
1.商城订单审核,为什么要先在内存做botp生成协同采购订单后,再同步给eas,这样多绕一道,会增加代码工作量,增加botp错误风险,降低了执行效率。
2.采购订单同步给eas,根据接口传递的usernumber值在eas侧做鉴权判断,这里把星瀚与异构系统双方的权限深度绑定,增加了系统同步报错的概率,也增加了系统间权限的一致性配置与维护复杂度,提议星瀚侧增加一个配置,用于判断是否要在接口里传递usernumber值,如果不用接口里的usernumber鉴权,就使用集成管理里的eas连接配置的账号作为统一的鉴权
推荐阅读