SAP技术架构演变

     从事SAP工作一年有余,已历经FI/CO,SD模块,一直忙于一些前台操作,讨论业务流程,后台配置,对SAP整体架构和技术认识比较模糊。这段时间忙于写ABAP代码,因此决定深入了解SAP技术架构。从SAP技术架构的演变,可以大概看出SAP的发展趋势。

 

以下是SAP主要技术改革的概览:

        1972-1989:R/2时代,实时数据处理(Real Time Data Processing),平台为IBM大型机,基于字符的用户界面,应用层以模块构成,开发语言为ABAP,运行时环境是Basis/ABAP。

        1990-1998:R/3时代,平台为三层客户机/服务器系统,图形用户界面 (GUI),应用层次以模块构成,开发语言为ABAP,运行时环境是Basis/ABAP,对外接口为 ALE/RFC, IDoc。

        1999-2002:mySAP.com时代,平台为多层客户/服务器系统,图形用户界面 (GUI)及浏览器,应用层以模块及组件构成,开发语言为ABAP/4,运行时环境是Basis/ABAP,对外接口为 RFC/BAPI。

        2003-    :mySAP Business Suite/SAP NetWeaver时代,平台为多层客户/服务器系统,用户界面是企业门户、图形用户界面 (GUI)及Web浏览器,应用层以组件构成,开发语言为对象化的ABAP及Java,运行时环境是WebAS/ABAP/J2EE,对外接口为Web Services。


图1.3.1  从SAP R/2 到mySAP ERP
如果说1999年mySAP.com的技术革新,是为了应对网络商务时代的来临,那2003年开始全面推出的SAP NetWeaver以及它所支持的企业服务架构(ESA),是SAP领导业界完成对面向服务架构(SOA)和Web服务的转变,同时也为了完成从ERP至ERP II 的转型。Gartner 对ERP II的定义是传统ERP的组件化与公开化。在图1.3.2中,将新的 mySAP 商务套件 + SAP NetWeaver 结构与原先的 R/3 + Basis 结构并列,方便分析比较。

图1.3.2  SAP NetWeaver vs. R/3 Basis

SAP NetWeaver不仅仅是 Basis的简单延伸,其最底层的应用平台(WebAS)实现了对传统Basis功能的延展并加强,SAP NetWeaver的其余三层集成结构:人员集成,信息集成,流程集成,远远丰富了Basis的功能。见图1.3.3。下面从技术的角度简单介绍SAP NetWeaver一些组件的演变历程:

图 1.3.3  SAP NetWeaver远远丰富Basis的功能

SAP R/3 Open SQL成为SAP NetWeaver Open SQL
SAP R/3 Open SQL和SAP NetWeaver Open SQL具有类似的功能,Open SQL好象一个数据和数据类型的字典,提供一个数据读写的抽象模块。因为使用Open SQL,开发者可以写一个应用程序,在不同的数据库上运行。SAP NetWeaver SQL同时支持ABAP和Java两种程序语言。

ABAP和SAP Basis成为SAP Web应用服务器和Java
ABAP/4是由SAP发明的第四代程序语言,开发者可使用它编写商业应用程序。最初,SAP公司用汇编语言来编写应用程序和用宏汇编编写抽象化模块。ABAP是基于Cobol的编程思想创建,随着不断的发展更多地利用了类似Java语言面向对象的特征。ABAP语言是面向商务应用的友好开发环境,它包括很多标准的商务功能,如货币转换,日历,国际化特征等。ABAP很容易将用户对话附加到一个应用逻辑模块。Basis是一个操作系统的抽象化模块,它非常类似Java虚拟机的早期版本,但它的设计是运行ABAP而不是Java。所有的应用程序需要在操作系统上完成的工作,象创建流程,收发邮件,打开文件等,SAP Basis都能够提供。SAP Basis作为一个可运行于不同操作系统的抽象模块,被标准化为一个应用服务器。SAP新的应用服务器,SAP Web应用服务器,是一个基于J2EE标准和ABAP的服务器。这个服务器应用自己的虚拟机和一系列开放标准提供操作系统功能,网络浏览,过程控制等功能。SAP  Web应用服务器是NetWeaver最底层架构,专门负责与操作系统和数据库通信。SAP  Web应用服务器与Basis有一个包装及行销上的最大差别:Basis 是与R/3包装在一起,但SAP  Web应用服务器可以单独销售,因为它本身是一个符合J2EE标准的应用服务器,含有基于Eclipse IDE标准的NetWeaver Developer Studio,可与 IBM WebSphere ,BEA WebLogic, Jboss,Apache Tomcat等应用服务器产品分庭抗礼。它是很多基于J2EE标准的应用服务器中的一个,SAP Web应用服务器与其它应用服务器最大的差别是它同时支持Java和ABAP。

RFC演化为Web服务
远端功能调用(RFC),是指一个企业应用允许另外的应用调用其功能,开发者可以利用远端功能调用创建一个抽象化模块并提供给另外的用户。商业应用程序界面(BAPI),是SAP开发和提供的保持尽可能稳定的远端功能调用功能集。

SAP NetWeaver所倡导和支持的Web服务是基于一个独立组织控制的开放标准,现已成为应用系统间互相发布或调用应用功能的标准方式。从前,当远端功能调用被来自任何平台的调用时,用户必须参照my SAP商务套件解决方案中的商务对象仓库来确定每个远端功能调用提供什么。而Web服务是自身描述的,因此非常容易理解。通过读取Web服务描述语言(WSDL)定义的文件,这个文件定义了读取、调用、使用Web服务的XML格式, 用户将方便地得到丰富的有关所调用的Web服务的详细信息。

Dynpro和SAP GUI演化为SAP Web Dynpro和SAP企业门户
Dynpro是一个字符型终端,开发人员可以使用它创建对话屏幕的所有元件,包括用户页面布局、标签、文本框等。这个对话屏不需要任何修改就可以工作在不同类型终端上。SAP GUI是为支持Unix x-Windows和Microsoft Windows 操作系统上的客户端处理所创建。通过SAP GUI,用户可以登录到SAP应用系统,如SAP R/3,然后下载相应的用户界面定义,在客户端运行。当一个用户调用一个应用的某些功能时,这一请求将被SAP GUI传送到Basis来分派执行相应的任务,响应结果将传回到SAP GUI。非常有效的是,SAP GUI只负责传送信息的更改部分,而非整个屏幕。
这个用户界面提取层也应标准化而改变,Dynpro及其传输协议DIAG的功能将越来越多地由HTML和HTTP来行使。 在SAP NetWeaver中SAP GUI的工作将被网络浏览器取代。SAP企业门户提供服务器端运行环境并提供应用的用户界面架构。SAP企业门户的iViews是一些小Java程序,它们汇集来自应用系统或其它数据源的信息,并展示给用户,同时控制用户响应。另外,门户的客户端有事件响应功能,允许企业门户的用户页面中不同部分之间的传递信息以保持信息更新。


ALE和IDocs演变为SAP交换架构和SAP主数据管理
应用连接和嵌入(ALE)是一个实现不同R/3系统间通信的系统。在较早的时候,大多数客户只有一个R/3系统,但随着R/3功能的不断增加以及它在规模越来越大的企业中的应用,安装若干个R/3系统越来越普遍。ALE实现R/3系统间特定主数据的传递,ALE是基于远端功能调用(RFC)上解决应用对应用数据传递问题的解决方案。IDocs是一个信息交换的格式。ALE就是以IDocs的格式从一个R/3系统传递信息到另一个R/3系统。IDocs也被用来在不同的远端功能调用间传递信息。

在SAP NetWeaver中,这些传递和接收信息的功能发展为一个功能强大的应用架构。企业应用集成(EAI)是这类产品的通称。SAP的EAI产品称为SAP交换架构(SAP XI),它是一个具有高可靠性传送信息的交换系统,能够实现不同信息源间信息的格式映射、信息路由、星形信息发布等一系列工作。XML逐步取代了IDocs。SAP主数据管理则是特别设计为保持不同系统中相应信息的一致性,它的设计理念与ALE相吻合。

报表编写器(Report Writer)和ABAP查询器(ABAP Query)成为SAP商务智能
报表编写器和ABAP查询器是帮助实现报表和查询功能的工具。报表编写器R/3自带的一种可自由设计报表格式和输出方式的报表工具。ABAP查询器是一个通过使用Open SQL层从各种SAP系统的表或者视图内取出数据,产生带有分析指标和其他参数的数据列表,来进行分析查询的查询界面工具。

信息整合和分析的需要,已经扩展到应用数据仓库和进行复杂分析的在线分析处理工具的领域。SAP商业智能包含一个功能完备的数据仓库,实现从不同类型的数据源采集、清理、整合数据,并应用在线分析工具快速分析数据。SAP商务智能具有先进的报表创建功能和开放式的信息中心(Open Hub)架构。

ABAP工作台演化为SAP NetWeaver开发者工作室:
ABAP工作台在SAP NetWeaver中被转变为SAP开发者工作室,提供一套完整的集成开发环境,同时支持Java和ABAP程序语言。SAP开发者工作室还从ABAP工作台中引入很多用于构建和开发大型和复杂应用程序的先进功能和理念。
<script type=text/javascript> function forumhottag_callback(data) { tags = data; } </script> <script src="cache/hottags_forum_cache_jsonp.txt" type=text/javascript></script>
<script type=text/javascript>parsetag();</script>

TOP

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值