ABAP RFC接口程序设计(client)
来源:互联网 发布:淘宝jordan旗舰店真假 编辑:程序博客网 时间:2024/06/06 16:59
ABAP RFC接口程序设计(client) james_lx版
经过1年的实践,多次处理RFC接口相关程序后,我发现可以提出一个RFC标准设计模式(CLIENT方式),用于以后的接口程序设计。该模式主要运用于:外部数据传入SAP系统,SAP系统处理后返回结果,这样的场景。外部系统数据进入,是基于RFC函数的。数据通过RFC的参数传入SAP系统。
RFC函数的程序代码做如下事情:
数据变量定义
RFC传入参数检查
传入的数据,系统时间,自动编号等数据组装到日志表前部分数据中
保存日志表前部分数据到日志表
调用SAP系统功能完成数据处理
第5步的结果保存到日志表的后部分字段中并写入RFC返回的参数中。
我们以一个实际的RFC程序例子来说明:
示例RFC程序: ZSD_IF_FM020 销售订单数量修改及关闭
RFC业务背景:在DMS销售系统,某销售订单数量被更改或打上关闭标识,这个数据需要从销售系统传到ERP系统中,使ERP系统中做相应的修改。
RFC函数涉及数据表:
中文名称
程序中名称
类型
RFC传入数据表
GT_ITEM
内表
RFC返回数据表
GT_RETURN
内表
日志表
ZSD025
透明表
*该RFC函数涉及2个变量,都是内表格式。
GT_ITEM放的是DMS向ERP修改销售订单的数据,
而GT_RETURN用于ERP接口做完事情后,返回给DMS的消息数据。
ZSD025日志表用来记录RFC工作的过程,用于用户以后随时监控该接口的工作情况。
RFC函数ZSD025日志表字段:
客户端
日志表前部分
ID
创建记录的用户
创建记录的日期
创建记录的时间
销售和分销凭证号
物料号
数量
销售凭证项目
订单状态(N不变,U修改,D删除)
日志表后部分
处理标志
处理日期
处理时间
消息文本
*在日志表的前部分字段,用于记录DMS数据传入了ERP系统。
日志表的后部分字段,是等待RFC函数中主要的工作(修改了ERP系统中的销售订单数据)完成后,记录到日志表。
处理日志表的前部分代码,业务逻辑简单,代码也相应简单,几乎不会出错。
而RFC在修改ERP内的销售订单(或其它复杂的处理)时,会调用ERP系统功能,不排除有出错或系统DUMP的可能。如果出现任何问题或影响到后面的代码都不能执行,我们也可以清晰的从日志表前部分看到发生了什么。
因为这样设计,日志表的前部分和后部分夹作复杂的代码,复杂代码如果异常,可以从前部分看到RFC是要处理的记录。
ABAP的OPENSQL,Modify命令非常有意思,它会检查数据库表的数据,是否是已经有的(主键),如果有,接下来它会修改这一条数据。
这个Modify命令正好和我们的日志保存功能配合:
第一次我们对日志表写入了前部分数据。
ERP代码处理
第二次我们对日志表写入后半部分数据,使用Modify命令。
- ABAP RFC接口程序设计(client)
- RFC Programming in ABAP
- RFC Programming in ABAP
- ABAP RFC远程调用
- SAP接口编程之 NCo3.0系列(02) : RFC Client Programs
- RFC调用sap接口
- 【RFC】接口小结
- ABAP RANGES 在 RFC 的应用示例
- ABAP BAPI 和 RFC 的区别
- ABAP RANGES 在 RFC 的应用示例
- TFTP client compatible with RFC-1350
- Client Copy 中RFC出错解决
- MULE 连接sap rfc接口开发二:调用rfc接口
- ABAP中实现http client
- java调SAP RFC接口
- C#调用sap rfc 接口
- sap的rfc接口调用
- SAP接口编程-RFC系列01 : RFC Hello World
- Spring Data Jpa 详解
- 资料
- linux下samba初步了解
- Ueditor结合七牛云及百度云存储(JAVA版,ueditor-1.4.3)实现图片文件上传
- 数据库把一项设置成为不能重复的
- ABAP RFC接口程序设计(client)
- Android 项目部署之Nexus私服搭建和应用
- elasticsearch csv plugin
- Couchbase 介绍 - 更好的 Cache 系统
- 《Maven实战》整理
- JDBC使用PreparedStatement而不是Statement的原因(转)
- WebView的用法
- struts配置中,页面跳转
- Java--线程池