最近收到一位朋友的咨询:
作为第三方外部 Saas提供商,想要跟使用 SAP 系统的客户进行对接接口集成,需要了解哪些 SAP 的版本?和常见对接技术语言,方式,协议,注意事项?
首先这个问题范畴确实比较大。随着近些年来 SAP 向云端转型,收购了很多公司的云产品,SAP 的产品线不再像本世纪初那样主要由 基于 ABAP 技术栈的产品组成。
我们可以首先把 SAP 产品按部署方式,分为基于 On-Premises (本地部署) 和基于 Cloud 两种类型。
- On-Premises:SAP ERP,SAP Business Suite(比如 SAP CRM),SAP S/4HANA On-Premises 版本,SAP Commerce On-Premises 等等
- Cloud:SAP Business ByDesign,SAP Cloud for Customer,SAP Field service Management, SAP Commerce Cloud 等等。
无论哪种类型,第三方应用同 SAP 集成,归根到底,就是调用 SAP 系统提供的 API,进行 SAP 数据模型的增删改查,以及在 SAP 系统上执行一些事务处理。比如调用 SAP 系统订单创建 API,生成一个新的订单,返回给第三方应用,然后在第三方应用里触发审批工作流的行为,工作流执行于 SAP 后台,执行结果返回给第三方应用。
如果是第三方应用同基于 ABAP 技术栈的 SAP 产品,比如 SAP ERP,SAP CRM 集成,可以通过消费 SAP 系统 RFC ( remote function call ) 的方式来完成集成。这种集成方式相对比较古老也比较成熟,直接在百度上根据关键字 “SAP RFC”进行搜索,就能找到很多技术文章。
当然,无论是 On-Premises,还是 Cloud 产品,另一种方式就是通过 API 进行集成。具体思路就是在第三方,通过 HTTP 协议调用 SAP 系统暴露的标准 API. 如果 SAP 标准 API 无法满足自己的实际需要,在 SAP On-Premises 产品里,可以通过二次开发的方式,创建新的 API; 如果是 SAP 云产品,二次开发的灵活度不如 On-Premises,但仍然可以通过 SAP 云产品提供的二次开发工具,来开发满足自己实际需要的 API,然后由第三方调用。
下面是我之前写过的一些和 SAP API 调用相关的文章。
-
SAP API开发方法大全: 介绍了各种 SAP 系统里 API 的开发方式,以及通过 WebService,OData 等载体暴露出来,然后可以通过各种编程语言消费。
-
SAP FSM 学习笔记(一) : 使用API消费FSM的数据:一个实际的例子,如何消费 SAP Field Service Management 的 API
-
SAP系统和微信集成的系列教程之三:微信用户关注公众号之后,自动在SAP C4C系统创建客户主数据:如何调用 SAP C4C 系统客户主数据创建 API
-
SAP系统和微信集成的系列教程之九:如何将微信用户发送给微信公众号的内容自动转存到SAP C4C系统: 如何调用 SAP C4C 系统 API 把第三方发送的消息文本存储到 SAP C4C 系统上
-
如何使用API的方式消费SAP Commerce Cloud的订单服务:使用 API 在 SAP Commerce Cloud 系统里下单
-
SAP OData编程指南:如何在各种 SAP 系统里开发 OData 服务
如何查看 SAP 系统标准的 API 呢?
假设我们想查找 SAP Customer Experience 产品线下,SAP Cloud for Customer 产品的标准 API. 在左侧 Product 列表里,找到 SAP Customer Experience:
选中 SAP Cloud for Customer:
这里就能看到所有可用的 API 列表了:
选择任意一个进入明细页面,就能看到 API 接口参数说明,调用方法等等。
更多Jerry的原创文章,尽在:"汪子熙":