`

R/3接品项目经验

阅读更多

某 ERP 主要应用 SAP R/3 系统,某接口项目是原系统与 SAP R/3 的部分集成。
在 ERP 的实施中,面临众多原有异构系统与正在实施的 SAP R/3 的集成问题。基于以后在一个平台上维护及监视接口比较方便的考虑,ERP 项目组决定采用 SAP XI。
SAP XI(Exchange Infrastructure)是SAP Netweaver 中的一个产品。SAP Netweaver 是一种可随时用于业务运作、面向服务的平台,适用于SAP的所有解决方案。基于Netweaver,企业能够实现各个层面充分的集成,降低信息系统建设的总体成本(TCO)。归纳起来,
第一个层面,是人的集成,产品以Portal比较有代表性;
第二个层面,是信息的集成,产品有Knowledge Management 和MDM(Master Data Management)等;
第三个层面,是流程的集成,即 XI;
第四个层面,是平台的集成,在这个层面上,SAP 提供的是支持开放标准(如XML)的底层架构,可以实现灵活的互接。

XI 的集成又可以分为两个层次,
第一个层次称为Integration Broker,以消息的方式进行的数据的交换;
另外一个层次是 BPM,即业务流程管理。

在 XI 中,数据(可以使一条记录,比如单个的物料主数据;也可以是多条记录,比如含主单明细的供应商主数据)从某一个业务系统通过 XI 发送到另外一个业务系统,站在业务系统的角度,前者称为 Sender,后者称为 Receiver 。

适配器(Adapter)进行 XI-XML 格式与业务系统的特定类型的数据格式之间的转换。依据业务系统的数据格式的不同,适配器可以分为多种类型,比如 SOAP Adapter, JDBC Adapter, File Adapter, RFC Adapter 和 IDoc Adapter 等。通常说的实现方式,譬如 SOAP+RFC,是指Sender 与 XI 之间使用 SOAP Adapter,XI 与 Receiver 之间使用 RFC Adapter。

Integration Broker 的工作原理大致如下。XI 主动或者被动通过一个适配器从 Sender 取得数据,数据进入 XI 后的存在形式是基于 SOAP 的 XI-XML 格式的消息。消息在 XI 内部,依照事先做好的配置,决定消息将发送到哪一个业务系统,进行何种转换以及选用哪一个适配器将消息发送出去。消息最终通过适配器将 XI-XML 格式的消息转换为特定类型的数据并发送给 Receiver。

BPM 是建立在前者的基础上的,BPM 使用了 work flow 的概念,涉及到业务逻辑的处理。一个典型的订票例程的应用如下。某旅行社 A 发出北京到孟买的订票请求,两个航空公司 B 和 C 分别有北京到新加坡和新加坡到孟买的航线。A的订票请求在 XI 内部被分割为两个订票请求,请求消息分别发往两个航空公司并等待反馈。如果得到两个都订票成功的反馈,则将反馈进行合并处理,并返回给旅行社;如果得到一个成功一个失败的反馈,则需要将反馈合并处理,将订票失败消息返回给旅行社,同时向其中一家航空公司发送取消订票的请求;如果得到均失败的反馈,则值需要将反馈合并处理,将订票失败消息返回给旅行社。

在此接口项目中,经多次确认、修改和论证,最终确定采用 Integration Broker,具体的实现方式是 SOAP+RFC 与 JDBC+IDoc 。

采用 Integration Broker 主要是考虑到现有的集成业务逻辑简单、清晰,并不存在特别复杂的业务逻辑的现象,而 BPM 存在配置复杂以及技术上的风险。

在某些功能点,考虑到客户对的实时性要求,采用了 SOAP+RFC 方式。SOAP和RFC均为同步数据交换协议,包括输入和输出参数。SOAP是建立在 HTTP 协议基础之上的一种协议,通过特定格式的 XML文件来进行数据交换。RFC 是 Remote Function Call的简称,广泛应用在 SAP 的产品之间,类似于常见的 RPC。
SOAP+RFC 方式实现的难点在于某系统发送 SOAP 消息的客户端如何建立,以及如何得到 SAP R/3 的反馈。前者通过相关文档的帮助下得到解决,后者是通过实现错误信息同步由 R/3反馈给 XI,XI 再反馈给某系统来解决的。

其他对实时性没有要求的接口,采用了 JDBC+IDoc 方式。其特点在于 JDBC 方式实现起来比较简单,系统只需要将要传给 R/3 的数据存放到临时表,XI会通过 JDBC 方式从临时表取走数据;XI 向系统写数据,会通过调用存储过程,直接将数据写入后台数据库,生成相关单据。采用 IDoc 方式,其特点是 IDoc 实现了对数据的封装,能够记录数据的传输状态。IDoc 方式是 SAP 推荐的 SAP 产品间的标准数据交换方式。这种方式是之前JDBC+File 方案的替代,在方案改变后,我方的程序完全没有改变,这是采用中间件的优点的一个体现。

JDBC+IDoc 方式实现的难点是对出错如何处理。在三个可选方案中,采用的是最简单的人工干预方法,即对于出错,统一由 XI 发送包含错误信息的电子邮件给相关人员。

分享到:
评论

相关推荐

    (R)-Delphi+Access-Code-力信Pos消费系统(需带硬件接口程序)-源代码全-白金精品

    【标题】:“(R)-Delphi+Access-Code-力信Pos消费系统(需带硬件接口程序)-源代码全-白金精品”所指的是一款基于Delphi编程语言和Access数据库开发的Pos消费系统。该系统是源代码完整且质量较高的软件产品,适合对...

    2022年高露洁牙膏SCM项目实施经验谈.doc

    高露洁在全球范围内实施了基于SAP R/3的供应链管理系统,以期最大化其在财务管理、后勤规划等多个业务环节的投资回报。SAP系统的应用,推动了高露洁在全球范围内的标准化运营,提升了生产效率。 面对激烈的国际市场...

    传智播客_黑马_品优购_2018

    【标题】"传智播客_黑马_品优购_2018"指的是一个...总的来说,"传智播客_黑马_品优购_2018"这个课程是一个全面且深入的IT培训项目,适合对电商领域感兴趣的初、中级开发者,通过实战项目提高他们的专业技能和实践经验。

    data mining with R

    ### 数据挖掘与R语言 #### 一、引言与背景 《数据挖掘与R》这本书由Luis Torgo撰写,旨在向读者介绍如何利用R语言进行数据挖掘工作。R是一种免费下载的语言和环境,主要用于统计计算和图形处理。由于其强大的功能...

    精品(2021-2022年)资料软件开发报价的计算方法完整版.doc

    接下来,开发费用/人·月的计算涉及四个主要部分:人头费(P)、办公费(Q)、国家税收和企业利润(R),以及管理系数(S)。人头费主要包括员工工资、奖金以及国家规定的各项福利,如四金(公积金、医疗保险、养老...

    精品资料(2021-2022收藏)JAVA+android-.doc

    本资料是一份全面的教育精品资料,涵盖了从数据库应用技术到JAVA SE、JAVA EE的基础与进阶知识,以及项目实战经验,旨在帮助学习者掌握JAVA和Android开发的核心技能。 首先,资料涉及了数据库应用技术,包括Oracle...

    2021-2022年收藏的精品资料主体验收监理小结.doc

    【描述】表明这是一份精品教育资源,可能被用作教学或培训材料,旨在分享和学习建筑工程项目管理的经验和知识。 【标签】再次强调了这份资料属于“精品教育教学资料”,强调其教育价值和质量。 【部分内容】提到了...

    软件项目报价方法.doc

    - **估算工作量经验值** (\(A\)):指的是基于过往项目的经验来评估当前项目的预期工作量。通常以“人·月”为单位,其中包括了软件开发及测试等活动。 - **风险系数** (\(\sigma\)):考虑到项目过程中可能出现的风险...

    程序员们:到背起你行囊的时候 改变你人生.docx

    在出发前积累一些项目经验和建立网络,将有助于我们在旅行中迅速找到新工作。 【保持技术更新与参与开源项目】 担心技术退步?参与开源项目是保持技能更新的有效途径。Stackoverflow不仅是解决技术问题的好地方,...

    精品--毕业设计:基于改进神经网络的风电功率预测系统.zip

    10. 技术栈:该项目可能涉及Python编程语言,利用其丰富的科学计算库如NumPy、Pandas、Scikit-Learn、TensorFlow或PyTorch进行数据处理和模型构建。此外,可能还会用到Docker进行环境隔离,Git进行版本控制。 这个...

    Python大佬手把手教你用开源【源码分享】实现抢茅台.pdf

    2. **创建Python虚拟环境**:在项目目录下,使用Python 3的venv模块创建虚拟环境,激活环境。在终端中输入以下命令: ``` python3 -m venv . source bin/activate (对于macOS/Linux) ``` 3. **安装依赖**:在...

    浙江高考英语--600高频词汇.doc

    #### 3. liberal /ˈlɪbərəl/ a. 慷慨的;丰富的;自由的 - **含义**:指大方给予或支持自由主义的态度。 - **例句**:She has always been very liberal with her money. - **应用场景**:适用于讨论政治立场、...

    数据库课程设计-实验报告-简易餐厅管理系统.doc

    3. 实现方法:利用计算机编程语言(如Java、Python)开发前端界面,通过数据库操作实现数据存储和检索,结合API接口实现在线支付等功能。 三、数据库设计 1. E-R图:用于描绘实体(如菜品、订单、顾客)及其关系,...

    精品资料(2021-2022收藏)单片机控制的单闭环直流调速系统.doc

    在此项目中,直流电机的内阻R为0.18Ω,反电动势常数CE为0.2Vmp。V-M系统简单直接,但动态响应相对较慢。 3. **PWM调速系统方案**: PWM调速利用脉宽调制技术,通过改变功率开关元件的开通时间来改变平均电压,...

    OA开发项目介绍.pdf

    OA(Office Automation)开发...总的来说,OA开发项目结合了先进的技术和合理的架构设计,旨在优化企业内部工作流程,提高沟通效率,实现知识和经验的共享,同时通过技术手段降低了运营成本,提升了企业的综合竞争力。

    组建大型网吧局域网(精品)分享.pdf

    在本项目中,目标是构建一个容纳500个用户节点的大型网吧网络,采用树形拓扑结构,通过交换机和路由器实现内部互联。 **课程设计目的**: 课程设计的主要目的是让学生深入理解网络组网过程,包括网络方案设计,子网...

    中视广信中标央视国际视频通讯有限公司GNC客户端及GDS APP软件开发项目.pdf

    【中视广信的技术实力与项目经验】 中视广信(ChinaTV Information Technology (Beijing) Co., Ltd.)是一家在IT行业中拥有深厚技术积累和丰富项目经验的企业,尤其在媒体行业展现出强大的专业能力。该公司近期中标了...

    网络安全相关的密码学、网络攻防、安全分析等项目举例与概要.docx

    - **Reddit 的 r/netsec 和 r/cybersecurity 子版块**:这些社区是网络安全爱好者和专业人士交流经验和分享资源的地方。 - **GitHub**:很多安全相关的项目和工具都在 GitHub 上开源,对于寻找开源项目或贡献自己的...

    PANTONE 潘通色标薄全系列AI色板库

    4. **PANTONE(R) FHI Color Guide**:包含了多种PMS色号,适合各种设计项目,提供色彩选择的直观参考。 5. **PANTONE(R) F+H paper**:适用于纸制品,如卡片、包装等,提供准确的纸张色彩表现。 6. **PANTONE(R) ...

Global site tag (gtag.js) - Google Analytics