调用BAPI创建病患主数据时的问题汇总[BAPI_PATIENT_CREATE]详解编程语言
2023-06-13 09:11:51 时间
1, 简介
在网上第一次看到有人用BAPI BAPI_PATIENT_CREATE创建病人主数据,特此转贴记录一下。
SE37
img >
调用之后,如果没能成功创建任何数据(NEW_PATIENT_DATA为空), 该问题有几种可能性:
传入的数据有误,此时可在参数return中看到错误提示。可以在前台(事务代码NP01),或者相关的表(NPNT)中查看输入帮助,以获知正确的输入方式。 运行时使用了测试模式(TESTRUN = X )。 调用后,没有使用BAPI_TRANSACTION_COMMIT. 3, 地址数据没有更新调用之后,返回的NEW_PATIENT_DATA中数据正常,但是地址数据没有更新(E_ADDRESSES为空),原因可能是:
传入的patient_data中的addr_no和I_ADDRESSES中的addr_no没有对应关系。
4, 附加电话号码数据没有更新调用之后,返回的NEW_PATIENT_DATA中数据正常,但是附加电话号码数据没有更新(E_ADD_PHONES 为空):
传入的patient_data中的addr_no和I_ADD_PHONES中的addr_no没有对应关系。 I_ADDRESSES-OTHER_PHONES不为 X 。只有在传入的I_ADDRESSES-OTHER_PHONES为 X 时,相应的I_ADD_PHONES才会生效。 4, 病患主数据更新BAPI更新:
关于电话号码,也可以在创建病患后,使用BAPI_BUPA_ADDRESS_CHANGE对其进行修改,并在其中分别指定移动电话(Cell)或者非移动电话(Telephone)。 可以使用BAPI_PATIENT_CHANGE将已存在的病患扩展(EXTEND)到其它机构。 BAPI_PATIENT_CREATE内部会调用用于检查相似病患的函数ISH_NPAT_DOUBLE_TEST,并在检查到相似病患后增加类型W、提示相似病患数量的返回消息(在RETRURN中可以看到)。随着创建的重复病患数量的增加,该函数对性能的影响会越来越大,严重拖慢创建病患的速度。在某些场景下(比如反复批量创建用于测试的病患数据时),可以考虑通过增强的方式跳过这一检查,以提高效率。 创建的病患的机构(institution)不会存储在病患主数据表NPNT中,而是存储到表NPAE中,尽管NPNT中也存在机构字段。以上。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/19260.html
c相关文章
- Linux awk命令:文本和数据进行处理的编程语言
- R语言STAN贝叶斯线性回归模型分析气候变化影响北半球海冰范围和可视化检查模型收敛性|附代码数据
- MapRedece(单表关联)详解大数据
- Java取得剪贴板中的内容数据详解编程语言
- Vue数据双向绑定原理及简单实现详解编程语言
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler详解编程语言
- JAVA网络爬虫抓数据jar包Jsoup的简易用法详解编程语言
- $.ajax()使用serialize()提交form数据详解编程语言
- Java数据持久层框架 MyBatis之API学习六(Mapper XML 文件详解)编程语言
- SAP ABAP-获取屏幕数据详解编程语言
- 内表数据下载到EXCEL的几种方法详解编程语言
- F4 数据元素关联表详解编程语言
- Redis树:高效存储和检索数据的最佳选择。(redistree)
- 使用MSSQL附加还原技术实现快速恢复你的数据(mssql附加还原助手)
- 从ODPS到Oracle实现大数据的轻松跨越(odps到oracle)
- Web设计中如何使用XML数据
- asp添加数据实现代码