笔者的知识星球,有朋友提问:
S4HANA(本地部署或云版)跟SAP家族系统以及非SAP系统的集成,sap的标准/推荐做法是通过BTP还是直接连接,或者是根据目标系统分别选择?有参考链接最好了。
首先 SAP S/4HANA 的技术栈,后台是 ABAP,前台是 SAP UI5 前端框架开发的 Fiori 应用,基于 JavaScript.
无论是 SAP S/4HANA 同 SAP 家族其他基于 ABAP 技术栈的系统,比如 SAP CRM,SAP SRM,还是同 SAP 家族非 ABAP 技术栈的系统比如 SAP SuccessFactor,SAP Field Service Management,SAP Commerce,或者是第三方系统,如果采取直联的方式,技术上可行,但直连方式下缺少对两端系统通信的消息存储,消息监控,消息重试,消息校验等功能。除非是集成场景非常非常简单,比如简单的一问一答,否则通常情况下都会选择一个中间件系统,作为连接集成场景中两端系统的桥梁。而消息存储,监控,重试和校验等机制都实现在中间件系统上。
SAP S/4HANA 同其他系统的集成,是分模块讨论的。
下面介绍如何在 SAP 官网查看 S/4HANA 每个模块的集成推荐方案。
登录 https://help.sap.com, 输入关键字 S/4HANA,根据自己实际需要,选择 S/4HANA (On-Premises)还是 S/4HANA Cloud.
选择 S/4HANA On-Premises 之后,浏览器地址栏和页面已经变成了 SAP S/4HANA:
然后就能搜索到 S/4HANA 很多模块的 process integration 文档了,如下图所示:
假设我打开了上图第一个 financial accounting 的集成链接,会跳转到下面这个页面,里面的 Integration 栏目下,点击 System and Component Landscape 即可查看集成场景里需要的中间件:
这个中间件的名称就是 SAP NetWeaver Process Integration
,也就是从业者口中经常提起的 PI:
关于 PI 的使用方法,同样可以在 SAP 官方网站上查找:
而 SAP S/4HANA Cloud 的集成,同理可以在 SAP 帮助文档 里查找,比如下图是 Business Partner 主数据的 integration 文档,可以从第三方系统,基于 SOAP,OData 和 IDOC 接口来同步 Business Partner 主数据。