第一次使用BAPI,遇到几个问题。现总结如下。

  

  2017.1.11:在文末更新了两条比较关键的注意事项。  

CALL FUNCTION 'BAPI_PATIENT_CREATE'
EXPORTING
client =
* INSTITUTION = '*'
* PATIENTID = ' '
* SAP_BPARTNERID = ' '
* SAP_BPGROUP =
patient_data =
* TESTRUN = ' '
* TRANSACT_MODE = 'N'
* IMPORTING
* NEW_PATIENT_DATA =
* WORST_RETURNED_MSGTY =
* TABLES
* I_ADDRESSES =
* I_ADD_PHONES =
* E_ADDRESSES =
* E_ADD_PHONES =
* RETURN =
* I_LEGAL_REP =
* E_LEGAL_REP =
.

  调用之后,没能成功创建任何数据(NEW_PATIENT_DATA为空)。该问题有几种可能性:

  1. 传入的数据有误,此时可在参数return中看到错误提示。可以在前台(事务代码NP01),或者相关的表(NPNT)中查看输入帮助,以获知正确的输入方式。
  2. 运行时使用了测试模式(TESTRUN = 'X')。
  3. 调用后,没有使用BAPI_TRANSACTION_COMMIT.

 

  调用之后,返回的NEW_PATIENT_DATA中数据正常,但是地址数据没有更新(E_ADDRESSES为空),原因可能是:

  传入的patient_data中的addr_no和I_ADDRESSES中的addr_no没有对应关系。

  调用之后,返回的NEW_PATIENT_DATA中数据正常,但是附加电话号码数据没有更新(E_ADD_PHONES 为空):  

  1. 传入的patient_data中的addr_no和I_ADD_PHONES中的addr_no没有对应关系。
  2. I_ADDRESSES-OTHER_PHONES不为'X'。只有在传入的I_ADDRESSES-OTHER_PHONES为'X'时,相应的I_ADD_PHONES才会生效。

更新:

  1. 关于电话号码,也可以在创建病患后,使用BAPI_BUPA_ADDRESS_CHANGE对其进行修改,并在其中分别指定移动电话(Cell)或者非移动电话(Telephone)。
  2. 可以使用BAPI_PATIENT_CHANGE将已存在的病患扩展(EXTEND)到其它机构。
  3. BAPI_PATIENT_CREATE内部会调用用于检查相似病患的函数ISH_NPAT_DOUBLE_TEST,并在检查到相似病患后增加类型W、提示相似病患数量的返回消息(在RETRURN中可以看到)。随着创建的重复病患数量的增加,该函数对性能的影响会越来越大,严重拖慢创建病患的速度。在某些场景下(比如反复批量创建用于测试的病患数据时),可以考虑通过增强的方式跳过这一检查,以提高效率。
  4. 创建的病患的机构(institution)不会存储在病患主数据表NPNT中,而是存储到表NPAE中,尽管NPNT中也存在机构字段。

BAPI_BUPA_ADDRESS_CHANGE
-->

本文链接:http://www.cnblogs.com/hhelibeb/p/6132826.html

  

 
 

关于BAPI_PATIENT_CREATE(病患主数据创建)的更多相关文章

  1. SAP MM01 创建物料主数据 [关注公众号后回复MM01获取更多资料]

    操作内容 物料主数据,适用于所有有物料编码物料相关信息的系统维护 业务流程 新项目设计冻结后—M公司 PD用-物料编码申请表D-BOM Material Number  Application部门内部 ...

  2. SAP Cloud for Customer客户主数据的重复检查-Levenshtein算法

    SAP C4C的客户主数据创建时的重复检查,基于底层HANA数据库的模糊查找功能,根据扫描数据库中已有的数据检测出当前正在创建的客户主数据是否和数据库中记录有重复. 在系统里开启重复检查的配置: 在此 ...

  3. 阿里云POLARDB如何助力轻松筹打造5亿用户信赖的大病筹款平台?

    轻松筹首创了“大病救助”模式,帮助了众多病患在第一时间解決了医疗资金等问题,为了从源头解决了医疗资金问题.而在轻松筹这样全球5.5亿用户信赖的大病筹款平台的背后,是日益增长的各种数据.面对这样数据量所 ...

  4. Code First :使用Entity. Framework编程(1) ----转发 收藏

    这个是在学习EF CodeFirst时发现的,对于初学者还是不错的.果断转发,方便自己以后查阅和学习. 对于学习Code First 这个教程讲解的还是很详细. 第一章:欢迎来到Code First ...

  5. 【黑金原创教程】【Modelsim】【第五章】仿真就是人生

    声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/al ...

  6. App Store 审核指南(最新)

    简介 App 正在改变世界,丰富人们的生活,并为像您一样的开发者提供前所未有的创新机会.因此,App Store 已成长为一个激动人心且充满活力的生态系统,正为数百万的开发者和超过十亿的用户提供服务. ...

  7. APP Store上架QA&注意事项

    一. App Store上架费用,要多少钱. 这个因产品而异,一般是6000-10000元人民币. 二. App Store上架周期,要多久过. 这个因产品而异,正常的话一周内,如果产品老是出问题,被 ...

  8. Shiro那些事儿(一): Shiro初探

    引言 权限,可以简单的理解成你能干什么,不能干什么.在管理系统中,对权限的设计可以很简单,也可以很复杂.简单点的,基本都是基于角色扮演的方式,比如系统管理员角色可以操作哪些菜单,普通用户角色可以操作哪 ...

  9. 苹果应用商店AppStore审核规则指南

    http://www.zesmob.com/blog/40161.html 新应用上架苹果AppStore或重大版本更新时,往往会被拒多次,造成审核不通过的原因,主要是因为对苹果应用商店AppStor ...

随机推荐

  1. [linux]阿里云主机的免登陆安全SSH配置与思考

    公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...

  2. 阿里巴巴直播内容风险防控中的AI力量

    直播作为近来新兴的互动形态和今年阿里巴巴双十一的一大亮点,其内容风险监控是一个全新的课题,技术的挑战非常大,管控难点主要包括业界缺乏成熟方案和标准.主播行为.直播内容不可控.峰值期间数千路高并发处理. ...

  3. 关于自己写C++的一点风格

    现在,我学了很长时间的C++,但是自己就是无法精通.许多知识是入门书上没有的.现在写C++最重要的就是风格问题. 我现在的C++风格: 把自己所有的东西都放在一个名称空间下. 没有全局的函数,有的函数 ...

  4. 札记:Fragment基础

    Fragment概述 在Fragment出现之前,Activity是app中界面的基本组成单位,值得一提的是,作为四大组件之一,它是需要"注册"的.组件的特性使得一个Activit ...

  5. 【SQLServer】【恢复挂起的解决方案】附加文件时候的提示“无法重新生成日志,原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。 ”【数据库恢复】

    汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 先贴错误: 吐槽一下: 进入正题: 新建一个同名数据库 停止MSSQL服务 替换数据库文 ...

  6. WPF做12306验证码点击效果

    一.效果 和12306是一样的,运行一张图上点击多个位置,横线以上和左边框还有有边框位置不允许点击,点击按钮输出坐标集合,也就是12306登陆的时候,需要向后台传递的参数. 二.实现思路 1.获取验证 ...

  7. ASP.NET Core应用中如何记录和查看日志

    日志记录不仅对于我们开发的应用,还是对于ASP.NET Core框架功能都是一项非常重要的功能特性.我们知道ASP.NET Core使用的是一个极具扩展性的日志系统,该系统由Logger.Logger ...

  8. C++的内存泄漏检测

    C++大量的手动分配.回收内存是存在风险的,也许一个函数中一小块内存泄漏被重复放大之后,最后掏空内存. 这里介绍一种在debug模式下测试内存泄漏的方法. 首先在文件的开头以确定的顺序写下这段代码: ...

  9. C#向PPT文档插入图片以及导出图片

    PowerPoint演示文稿是我们日常工作中常用的办公软件之一,而图片则是PowerPoint文档的重要组成部分,那么如何向幻灯片插入图片以及导出图片呢?本文我将给大家分享如何使用一个免费版Power ...

  10. Ajax部分

    Ajax的概念 AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是一种用于创建快速动态网页的技术. 动态网页:是指 ...