项目场景:

NC65中需要通过接口新增客户档案并自动分配至指定组织(业务单元),新增客户档案成功但是分配组织失败并且产品后台没有提示任何报错。


问题描述

NC65中需要通过接口新增客户档案并自动分配至指定组织(业务单元),新增客户档案成功但是分配组织失败并且产品后台没有提示任何报错。


原因分析:

接口调用成功后,发现组织信息页签中没有显示该客户档案所分配的组织信息,但是从客户档案中的查询已分配组织中可以看到该客户已经分配到该组织下,经过代码跟踪发现,产生这个问题的原因是因为客户的分配功能是独立的事务,所以当通过调用接口增加了客户档案后,这个时候的数据并没有真正意义上存储到数据库中,而是在事务中保存了下来,所以当分配功能在另外的事务中查询这个客户信息时并没有查询到,所以产生了以上的分配失败问题。


解决方案:

目前想到的解决方案有三种:遇到同样这种问题的朋友可以以自身的情况进行解决。
方案一、将接口拆成两个,首先第一个接口用来传入客户档案,当这个接口的所有事务都执行完毕后再次调用组织分配接口,这样一来以为在第一个接口执行完毕之后,客户档案已经真实的存入到数据库,所以在分配的时候产品底层是可以找到客户信息的,所以可以分配成功;
方案二:若是方案一无法采用,如调接口的系统不同意等原因,则可以采用后台任务的方式,如每隔一个小时进行一次分配,这样一来,因为在后台任务执行之前,客户档案已经保存到数据库中,所以可以分配成功,注意,此方法适用于组织分配不要求实时分配的情况下使用,若对方系统要求必须在传入档案时就进行分配的话,此方法将不适用;
方案三:若前两种方案都无法解决这个问题时,只能采用最后一种发放,但必须注意,此方法涉及到修改产品底层代码,且本人修改后分配问题确实能够解决,但是其他地方使用时没有经过检验无法得知,所以如果必须采用这种方法时需要慎重且需经过测试,出现的其他问题,我无法负责;具体修改方法如下:
因为问题出现在实现类里,所以我采用的方法是再写一个接口,并通过这个实现类来实现,这样一来,就可以将我在新增客户档案后查询到的VO通过接口放入到产品实现类里面的类变量中,这样一来就避过了产品查询不到客户信息而出现的这个错误,文字可能描写的有些混乱,我把类放到下面各位可以参考。




最后,这个类的名字为:nc.bs.bd.assignservice.AssignToOrgServiceImpl
当然,这些只是我自己想到的方案,各位如果有更好的方案或者方法也可以给我留言,大家可以相互交流。
我的联系方式:VX : yuhang_1997。

关于NC65通过接口新增客户档案并分配出现的分配组织错误的问题及解决方法相关推荐

  1. MyBatis多个接口参数报错:Available parameters are [0, 1, param1, param2], 及解决方法

    MyBatis多个接口参数报错:Available parameters are [0, 1, param1, param2], 及解决方法 参考文章: (1)MyBatis多个接口参数报错:Avai ...

  2. usb接口供电不足_usb鼠标无法正常移动原因 usb鼠标无法正常移动解决方法【图文】...

    在日常工作中你是否遇到usb鼠标不能正常移动的情况呢?鼠标灯亮着.USB接口可以正常使用.驱动也正常,鼠标却不能移动,这是怎么回事呢?今天IT百科就和大家一起分析usb鼠标不能移动的原因和解决方案. ...

  3. python调用接口返回401_Python接口测试之401错误的分析和解决方法(一)

    接口的测试中,经常会遇到客户端向服务端发送一个请求,服务端返回401的错误,那么今天本文章就来说明在接口测试中如何分析以及解决该问题. 我们知道在HTTP返回的状态码中,401错误表示的是被请求的页面 ...

  4. NC65 添加客户档案 实战案例

    NC65 添加客户档案 实战案例 本篇博客是为了方便使用 用友NC65 在开发时解决一些常见问题而编写的: 操作步骤 1.在业务组件中创建元数据 ①.创建实体, 并且关联使用到的业务接口 ②.元数据设 ...

  5. 客户档案,云进销存财务ERP批发零售超市商贸仓库出入库管理软件

    客户档案,云进销存财务ERP批发零售仓库出入库管理软件_哔哩哔哩_bilibili本期视频讲解[客户档案]的建立.https://www.bilibili.com/video/BV123411G76J ...

  6. Odoo14免费开源ERP:企业客户档案信息自动补全功能演示

    引言 在企业信息化系统的基础数据维护当中,尤其是潜在客户档案的信息收集是极其非常痛苦的事情,好在近些年拥有了企查查.企信宝等工具后,使得这样的信息收集变的相对容易,但录入的工作依然对操作人员极其痛苦, ...

  7. 06 微架构教务系统——学员搜索接口、学员档案添加接口、学员档案更新接口、学员档案删除接口

    1.先看接口测试:基于PostMan 使用PostMan作为API接口调试工具,对学员模块的Restful接口进行测试,如下截图所示: 2.控制层代码:StudentController packag ...

  8. Magento教程 21:新增客户评价的满意度项目! (Add rating)

    欢迎使用Magento购物车系统 ,上次介绍过如何新增产品细项(Add attribute) ,今天要教大家的是新增评价满意度,让客户在评论的时候可以有五颗星的评价选择. 评价制度是网路商店相当热门的 ...

  9. Java8新特性总结 - 1.接口新增默认方法和静态方法

    所有示例代码打包下载 : 点击打开链接 Java8新特性 :  接口新增默认方法和静态方法 Optional类 Lambda表达式 方法引用 Stream API - 函数式操作流元素集合 Date/ ...

最新文章

  1. 【UIKit】解决iOS7状态栏问题
  2. 使用PageHeap.EXE或GFlags.EXE检查内存越界错误 (转)
  3. LINUX修改文件权限 学习
  4. P4764-[CERC2014]Pork barrel【主席树,LCT,最小生成树】
  5. win10 VScode配置GCC(MinGW)
  6. 2.1基本算法之枚举_1749数字方格
  7. 顺丰科技2021届春季招聘正式启动!
  8. 聊聊RPC之Provider
  9. BitNami-Redmine1.1.0安装和VisualSVN-Server配合使用
  10. adb echo shell 覆盖_Shell脚本的应用(一)
  11. 解决GitHub上的博客无法被百度收录的问题
  12. 嵌入式Linux红外遥控,嵌入式系统中的红外遥控附加功能,嵌入式系统,红外遥控,发射...
  13. 3dmax如何删除多余的时间帧
  14. 如何才能把文字的排版做好
  15. 微信小程序 多标签选择和添加标签
  16. 证书服务器,及申请证书。
  17. 2017 东北四省赛热身赛 C
  18. 九鼎无双一面面经【凉】
  19. 国企直招,内推! 科陆电子--嵌入式工程师/C# 工程师
  20. STL — 迭代器设计思维(二)

热门文章

  1. js查询手机号码归属地
  2. 爬虫入门实践之爬取虎扑论坛帖子
  3. 进度猫甘特图:项目管理中如何制定工作安排表
  4. 华为手机硬改拉新_华为手机硬改拉新_快看|华为正式发布车载智慧屏,售价1699元...
  5. 网上赚钱日结工资正规,看懂就去操作吧!
  6. 2020年丘赛放榜:北大斩获5金11银强势霸榜-1
  7. 走进前端,vscode插件的安装及使用
  8. Bias/variance tradeoff
  9. java代码去连接flash media server服务器_flash media server 第一课:Hello world!
  10. ThreeJs_投影