最近Jerry由于项目需要,又得学习一个新工具:SAP Cloud Platform Integration,简称CPI,以前又叫做HCI - HANA Cloud Platform Integration Service.
尽管距离Jerry开始接触CPI还不到48小时,我仍然想把我刚使用这个工具的第一手体会分享给曾经用过SAP CRM中间件,但尚未有机会接触到CPI的朋友们。
之所以文章标题里把SAP CRM中间件和SAP CPI关联在一起,是因为二者同广义上说,扮演的都是系统集成里中间件的角色。
SAP ERP和CRM通过qRFC进行业务数据同步,而中间件能够提供队列机制,错误处理,重试,传输监控等功能。关于Jerry在SAP CRM中间件上的工作经验分享,请参考我的文章 Jerry的CRM Middleware(中间件)文章合集。
而SAP CPI顾名思义,则是云时代下SAP推荐的SAP产品同第三方云产品进行集成的云端中间件解决方案。Jerry的S4CRM同事童丹之前文章 S/4HANA Service Management和SAP Field Service Management的集成 里提到的场景就是SAP CPI的一个典型集成应用。
作为学习笔记,Jerry这里把我学习SAP CPI时做的一个Hello World级别的练习步骤记录下来。
这个练习的场景是,假设有一个部署在第三方云平台上的OData服务,提供了产品主数据查询的功能。我们需要在SAP系统里消费这个OData服务。SAP开发人员不希望直接去消费第三方云平台上的OData服务,而是期望SAP CPI能暴露一个更加容易访问的API endpoint出来,例如通过postman传一个Product ID给CPI,CPI拿到这个ID后,由CPI向第三方云平台发起OData请求,拿到请求响应后,CPI把结果返回给位于SAP产品的消费端。
用于这个场景的OData服务地址:https://espmrefapps.hana.ondemand.com/espm-cloud-web/espm.svc/$metadata
SAP CPI是一个SaaS应用,在SAP云平台控制台的Subscriptions面板里订阅和访问。点击Go to Applications进入主操作页面。
我们为了实现这个集成场景需要在CPI里开发一个集成流 - integration flow(下文简写为iFlow), 用于定义当其收到消费者传入的product ID后,应该进行何种处理。
和ABAP里的程序需要存储在一个开发包里一样,iFlow也需要存储在一个包里,称为Content package.
进入CPI后在此处创建一个Content package:
然后点击上图的Artifacts进入iFlow创建界面:
取名Jerry first integration flow, 再点击就能进入iFlow的图形化编辑界面了。
一个新的iFlow创建之后的默认界面如下:
点击上图最左边的Sender图标,将其拖拽到上图中间integration process矩形框内的Start图标内,这个动作会帮助我们创建一个inbound adapter,类型我们选择HTTPS,意思是这个iFlow期望其被消费的方式是HTTPS.
在Adapter的Address里维护一个url片段/CloudIntegrationTrials, 等到最后该iFlow正式部署后,生成的endpoint就是以该片段结尾,届时我们可以在postman等工具里使用该endpoint消费这个iFlow.
考虑到现在流行的Restful API实现都期望其消费者以JSON格式传输请求内容,我们也沿用这个最佳实践,因此首先拖拽一个JSON to XML Converter到iFlow integration process建模区域的矩形框里,将JSON
格式的用户输入转换成XML格式:
然后再使用Content Modifier,将XML格式里的product ID的值提取出来。
下图展示了Content Modifier通过XPath将XML格式的输入里的productIdentifier这个字段的值提取出来。
有了product ID,可以进行OData调用了。从iFlow建模的工具箱里拖拽一个External Call出来:
类型选择成OData V2:
指定前面提过的OData服务的url:
选择该OData服务的Products节点作为消费的对象:
将OData Product节点的ProductId字段绑定到前一步骤通过Content Modifier解析出来的包含了用户输入的productIdentifier字段。
就像小朋友们搭积木一样,我们把iFlow工具箱里提供的元素,通过拖拽的方式组合成了一个图形化的流程。点击Deploy进行部署:
部署成功之后,抄下这个生成的endpoint:
在Postman里向这个endpoint发送一个GET请求:
部署在SAP Cloud Platform上的CPI iFlow接收到了请求后,就会按照我们维护好的逻辑,解析出Product ID,调用OData服务,将该ID对应的Product明细数据作为结果返回给消费端。
和SAP CRM中间件有各种通过事务码比如SMW01访问的监控应用一样,SAP CPI也有类似的监控程序:
希望这个最简单的例子能让还没有接触过SAP CPI的朋友对其作用有个最直观的了解,感谢阅读。
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关推荐
在SAP CRM(客户关系管理)系统中,同步问题往往是由于不同组件间的通信故障或配置错误导致的。本文将深入探讨两个具体的问题及其解决方案,帮助用户理解和处理SAP CRM中的同步异常。 首先,我们遇到的第一个问题是...
标题与描述中的"SAP CRM 7.0 PA-CR100"指向的是SAP公司的一款企业级软件——客户关系管理(Customer Relationship Management)系统的一个特定版本与课程代码。SAP CRM是SAP Business Suite的一部分,它帮助企业优化...
综上所述,SAP CRM中间件PA教材是一份为SAP CRM用户以及对SAP中间件感兴趣的开发者提供的专业学习材料,它详细介绍了SAP中间件的功能、使用方法以及相关的法律声明和商标信息,以确保用户在法律许可的范围内有效使用...
- **集成技术**:SAP 提供了一系列标准的中间件技术来实现 CRM 与 ECC、BW 之间的数据交换。这些技术基于 QRFC (Quick RFC) 实现,并内置了许多标准对象,简化了集成过程。 #### 三、总结 SAP CRM 作为一款强大的...
SAP CRM系统介绍SAP CRM系统介绍SAP CRM系统介绍SAP CRM系统介绍SAP CRM系统介绍
SAP CRM的基础知识通常包括对于其核心组件的理解,包括主数据(如账户、组织模型、产品等),交易处理、定价、开票、CRM中间件以及CRM WebClient UI。CRM中间件主要负责不同系统组件之间的信息交换,而CRM WebClient...
3. 演示和展示:销售人员和顾问可以用它来向潜在客户展示SAP CRM的功能和价值。 下载和安装SAP CRM 2007 IDES可能需要一定的硬件资源和专业知识。在安装前,确保你具备合适的服务器配置和SAP NetWeaver平台。此外,...
### SAP CRM 系统用户界面操作指导手册知识点详解 #### 一、引言 SAP CRM(Customer Relationship Management)作为一款先进的客户关系管理系统,在帮助企业更好地管理客户信息、提高销售效率及客户服务方面扮演着...
SAP CRM行业解决方案 SAP CRM行业解决方案是一个基于客户关系管理(Customer Relationship Management,CRM)的解决方案,旨在帮助企业更好地管理客户关系、提高销售业绩和客户满意度。该解决方案提供了一整套的...
标题"SAP CRM Tables 1"指的是关于SAP客户关系管理(CRM)系统中的数据库表的讨论,这通常涉及系统的数据结构、业务逻辑以及如何在CRM环境中存储和处理数据。SAP CRM是一个集成的解决方案,帮助企业管理和优化其销售...
SAP中间件PO技术是SAP企业应用集成(Enterprise Application Integration, EAI)的重要组成部分,主要涉及SAP Process Orchestration(简称PO)的配置和实施。PO作为一个全面的集成平台,结合了XI(Exchange ...
SAP CRM 2007 IDES
### SAP CRM IPC增强知识点详解 #### 一、SAP CRM IPC增强概述 SAP CRM (Customer Relationship Management) 是一个全面的解决方案,旨在帮助企业管理和优化与客户之间的互动过程。IPC(Interactive Pricing ...
SAP公司全套CRM解决方案覆盖了销售...新的SAP CRM解决方案能够为销售、市场营销及售后服务等业务提供综合性的、具有行业特性的流程,帮助各类企业制定出明确的决策,给客户提供出持续、高质的服务,成为最佳运营企业。
CRM原厂解决方案 SAP标准CRM业务模式介绍,CRM产品
### SAP CRM管理方案介绍 #### 一、总体方案概述 SAP CRM(Customer Relationship Management)是一种全面的企业级解决方案,旨在帮助企业管理与客户的交互过程。它不仅涵盖了传统的市场营销、销售和服务等核心...
SAP CR100 用于SAP CRM培训。
SAP CRM解决方案能够帮助企业实现与客户的完全集成,灵活地定制以满足特定需求,并且易于使用。 综上所述,SAP CRM课程中文自学笔记是一份适合初学者的、全面的自学材料,能够让初学者快速掌握SAP CRM的基础知识和...
### SAP CRM CR100 内部资料知识点详解 #### 一、课程基本信息 - **课程编号**:CR100 - **课程名称**:CRM-Customizing Fundamentals(客户关系管理-定制基础) - **SAP产品线**:SAP CRM(客户关系管理系统) - *...