SAP集成技术(一)历史
最近想读一本书《SAP Interface Management Guide》,打算边读边记录一些笔记。翻译主要由ChatGPT完成。
本文链接:https://www.cnblogs.com/hhelibeb/p/17838647.html
早期-IDoc/RFC等
SAP的成功归功于R系列产品。当时,SAP R/3是支持公司业务流程的最成功的应用系统。它使用了CS架构,而它的前身(SAP R/2)仍然基于大型机方法。
SAP R/3的主要特点是其组件(称为模块)之间的实时集成。业务交易通过功能组件(如销售和分销(SD)、物料管理(MM)或财务会计(FI))在系统中进行映射。在SD中创建的出口发票生成了一个文档,该文档立即由FI中的其他文档进行映射。由于所有组件都位于一个系统中,操作一个公共数据库,因此确保了整个数据管理的一致性,并且不需要通过跨系统接口进行集成。
由于业务功能的高度复杂性和由于企业全球运营,额外的系统变得越来越必要。例如,一些公司除了中央SAP R/3系统外,每个工厂还操作一个本地SAP R/3系统。在工厂系统中,只有物流组件如MM是相关的,而FI则是在公司总部中心执行的。为了确保可以在财务会计中中心记录业务交易,系统间通过消息接口的方式交换数据,比如IDoc。
另一个集成场景是将人力资源(HR)的管理和流程与会计和物流的流程分离。主要原因是HR相关立法不断变化,这导致频繁的更新和测试。为了独立于会计和物流进程执行这些更新(称为支持包SP)和测试,HR组件被分离。因此需要接口为HR组件和其他组件交换数据,如通过同步接口进行薪资复制,这使用了远程函数调用(RFC)实现。
此外,随着SAP开发了越来越多的额外产品,如SAP BW,SAP CRM, SAP SRM, SAP EWM等, 一些新技术被用来在这些系统和SAP R/3之间交换数据,如队列RFC (qRFC),基于qRFC的BDocs和基于RFC的BAPIs等。
非SAP系统与SAP系统通信的最直接方式是通过SAP的专有RFC协议。为此,SAP提供了被称为动态链接库(DLLs)的运行时库,这些库可以在Windows的非SAP系统中集成,通过所谓的COM层建立通信。这些DLLs到今天仍在使用。稍后,这些库的扩展形式是一个供RFC使用的软件开发工具包(SDK),今天仍被提供为SAP NetWeaver RFC SDK。
几个基本的Connector:
- SAP Connector for Microsoft .NET
- SAP Java Connector
- SAP Business Connector
SAP Business Connector功能最丰富,这个来自WebMethods公司(现在的Software AG)的技术建立了SAP系统和基于互联网的协议(如HTTP)之间的通信。你可以将SAP Business Connector看作是简单的中间件,即一个能够使异构系统通信并支持路由和转换等概念的组件。
除了SAP Business Connector,我们刚刚提到的基于Connector的接口是点对点连接,这些接口现在使用较少,因为与通过中间件实现的接口相比,它们在管理和监控方面有显著的劣势。
2000年代-XI/PI等
在21世纪初,将SAP与非SAP系统集成的需求呈指数级增长,相应的技术平台是SAP NetWeaver。
该平台有4种集成类别:
- 人员集成
- 信息集成
- 过程集成
- 应用平台
每个类别背后都有一个或多个产品支持相应的集成需求,包括:
- 人员集成:公司门户 SAP Enterprise Portal
- 信息集成:商业智能 SAP Business Warehouse (SAP BW)
- 过程集成:集成代理 SAP Exchange Infrastructure(后来的SAP Process Integration)
- 应用平台:J2EE服务器 SAP NetWeaver Application Server for Java (SAP NetWeaver AS JAVA )
今天,SAP NetWeaver的角色不再那么大,技术层变为SAP NetWeaver产品和其他组件的组合。部分原因是由于收购,例如BusinessObjects用于扩展业务智能组合,或者Sybase用于移动性和数据库。另一方面,这是由于SAP的云产品策略,它以SAP Business Technology Platform (SAP BTP)的形式提供了一个全新的技术平台。
2010年代-BTP等
2010年代,SAP转向云,收购了多个云产品(SuccessFactors,Ariba,Concur等),并且发展了SAP BTP这一服务平台(PaaS)。
SAP云解决方案可以分为三类:
- SaaS:如SAP S/4HANA Cloud或SAP
- PaaS:在SAP BTP上的SAP应用程序开发和集成服务
- 私有托管云:SAP HANA Enterprise Cloud
SAP S/4HANA是SAP ERP的进一步发展,以两种变体(版本)提供全面的功能:
- SAP S/4HANA的本地版
- SAP S/4HANA云
SAP S/4HANA云的可扩展性现在由SAP BTP实现,并由名为SAP Cloud SDK的SDK支持。
SAP BTP提供了混合集成平台解决方案,它可以将云架构与现有的本地IT环境连接起来。BTP包含以下等集成相关概念:
- SAP One Domain Model:基于领域驱动设计(DDD)得到的企业级数据模型,用于简化不同SAP应用程序之间的数据交换和转换。
- SAP Master Data Integration:基于SAP One Domain Model,通过与应用程序和中心服务交换消息来实现数据同步。借助SAP Cloud Integration,还可以连接到非SAP应用程序。
- 开放集成:通过SAP Cloud Integration和Open Connectors解决方案,以及通过提供的一系列应用程序编程接口(API)来实现集成项目。
- AI驱动的集成:这种集成指的是通过机器学习方法简化接口开发,例如,在SAP集成套件的Integration Advisor中的映射建议,以及在SAP Cloud Integration中的iFlows建模建议。
在集成方面,SAP BTP包含以下等组件:
- SAP API Management: 提供了中心化规划、开发和管理应用程序接口的能力,用于本地部署API。
- Integration Advisor:提供了一个加速开发集成内容的功能。目前,Integration Advisor包含创建电子数据交换(EDI)映射的功能。在创建新的映射时,会使用所有以前用SAP集成顾问创建的映射的知识,这样许多映射就可以自动生成。然后,你可以将映射导出用于SAP Cloud Integration或SAP Process Orchestration。
- SAP Cloud Integration: 用于本地运行SAP Cloud Integration内容。
- SAP Event Mesh: 用于本地处理事件,例如从一个SAP S/4HANA OP系统发送的事件。
- Open Connectors: 用于本地连接位于同一数据中心的非SAP应用程序。
- SAP API Business Hub:一个API的中心仓库,提供了SAP世界内可用的标准接口的一般介绍。
- SAP Graph:Graph扩展了传统的API管理,能够以语义连接的数据图的形式公开所有业务数据,通过单个统一且强大的API进行访问。
SAP认为,SAP集成技术的未来是SAP BTP。因此,基于SAP NetWeaver的专有技术最迟将在2030年过时,届时相关技术的延长的维护期会结束。这个计划的退役也包括SAP Process Integration或SAP Process Orchestration接口平台。
参考:
SAP API Management – a full overview
SAP RFC介绍:关于sRFC,aRFC,tRFC,qRFC和bgRFC
SAP’s One Domain Model and Domain Driven Design
SAP Business Technology Platform (BTP)的架构理解
SAP集成技术(一)历史的更多相关文章
- Web开发技术发展历史
Web开发技术发展历史 来自:天码营 原文:http://www.tianmaying.com/tutorial/web-history Web的诞生 提到Web,不得不提一个词就是"互 ...
- SAP 前端技术的演化史简介
Jerry之前曾经写过一篇微信公众号文章,题目叫<> 关注我的公号"汪子熙"后,在历史菜单"前端开发相关"里即可找到这篇文章: 该文章简单回顾了SA ...
- 【转载】Web开发技术发展历史-版本1
原文在这里. Web开发技术发展历史 Web的诞生 提到Web,不得不提一个词就是“互联网”.Web是World Wide Web的简称,中文译为万维网.“万维网”和我们经常说的“互联网”是两个联系极 ...
- 区块链学习笔记:D02 区块链的技术发展历史和趋势
对于区块链的技术发展历史,其实在我的印象中也就对比特币有所了解,也听过什么火币之类的玩意,但是具体是什么.怎么运作的就不清楚了... 这次的内容首先是讲解了区块链的技术演进,一张图一目了然,虽然里面涉 ...
- 【ABAP系列】SAP DOI技术中I_OI_SPREADSHEET接口的使用
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP DOI技术中I_OI_S ...
- 3DGIS与BIM集成集成技术及铁路桥梁可视化系统
3DGIS与BIM的集成技术 3DGIS与BIM的集成技术包括2部分:一是将Revit软件生成的BIM针对3DGIS的快速无损格式转换,这种转换包括几何信息(如形状.位置等信息)和属性信息(如建筑信息 ...
- Python神经网络集成技术Guide指南
Python神经网络集成技术Guide指南 本指南将介绍如何加载一个神经网络集成系统并从Python运行推断. 提示 所有框架的神经网络集成系统运行时接口都是相同的,因此本指南适用于所有受支持框架(包 ...
- TorchScript神经网络集成技术
TorchScript神经网络集成技术 create_torchscript_neuropod 将TorchScript模型打包为neuropod包. create_torchscript_neuro ...
- PyTorch神经网络集成技术
PyTorch神经网络集成技术 create_python_neuropod 将任意python代码打包为一个neurood包. create_python_neuropod( neuropod_pa ...
- Keras神经网络集成技术
Keras神经网络集成技术 create_keras_neuropod 将Keras模型打包为神经网络集成包.目前,上文已经支持TensorFlow后端. create_keras_neuropod( ...
随机推荐
- SpringBoot 常用注解总结
核心注解 1. @SpringBootApplication 主要用于开启自动配置,它也是一个组合注解,主要组合了 @SpringBootConfiguration.@EnableAutoConfig ...
- KingbaseES date 数据类型的两种格式
关于date 数据类型,Oracle 与 PostgreSQL 格式是不同的,Oracle 是 日期 + 时间的类型,而PG 则只有日期.KingbaseES Oracle 模式则同时实现了二者类型, ...
- 2024 OI/VEX/啊啊啊? 赛季游记
不定期更新,随便写. 中马建交80周年 CreateJR赛项 什么远古比赛,2024/01 的时间用 2023 赛季的规则(挺好). Day -4 1/24 在 破败不堪 的上海市安生学校集训. 点的 ...
- 运维排查 | Systemd 之服务停止后状态为 failed
哈喽大家好,我是咸鱼. 我们知道 CentOS 7 之后,Systemd 代替了原来的 SystemV 来管理服务,相比 SystemV ,Systemd 能够很好地解决各个服务间的依赖关系,还能让所 ...
- 【放假第1天】采购季倒计时 2G 50/年,4G 618/3年 云服务器选购攻略 阿里云 腾讯云 京东云对比 搭建网站、数据分析
更新日期:4月4日(阿里云价格回调,京东云采购季持续进行) <最新对比表>已更新在文章头部-腾讯云文档,文章具有时效性,请以腾讯文档为准! https://docs.qq.com/do ...
- #树的直径#洛谷 3174 [HAOI2009]毛毛虫
题目 分析 类似于树的直径,只是点权变成了出度-1, 注意减1之后会漏掉两个端点要加回去,当\(n=1\)时特判 代码 #include <cstdio> #include <cct ...
- #floyd,斜率#洛谷 1354 房间最短路问题
题目 在一个长宽均为10,入口出口分别为(0,5),(10,5)的房间里有几堵墙, 每堵墙上有两个缺口,求入口到出口的最短路径. 分析 暴力建图,判断两个点是否有墙堵住, 可以求斜率然后判断所交点不能 ...
- OpenHarmony应用开发—ArkUI组件集合
介绍 本示例为 ArkUI 中组件.通用.动画.全局方法的集合. 效果预览 使用说明: 1.点击组件.通用.动画.全局方法四个按钮或左右滑动切换不同视图. 2.点击二级导航(如通用属性.通用事件等), ...
- 痞子衡嵌入式:使能i.MXRT1050,1060 Hab签名或加密启动时App链接在片内SRAM的限制
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是使能i.MXRT1050, 1060 Hab签名或加密启动时App链接在片内SRAM的限制. 最近有客户反馈,在 RT1060 上测试 ...
- 重新点亮shell————sed其他命令[十一]
前言 简单介绍一下其他增删查. 正文 删除命令: 例子: 插入和更改: 例子i: 例子c: 读文件和写文件: 例子r: 下一行命令: 打印: 例子: 只想输出匹配的行: 退出命令: 前面的运行效率更高 ...