SAP开发技术相关的产品介绍

【博主SAP/ABAP交流群53144545

本文写于2017.12.30

这篇文章会以SAP开发者的视角,简单介绍一下SAP开发技术相关的一些产品,主要侧重新产品,其实这些产品也不能都算新的,也推出有一段时间了,但是传统SAP产品和产业还是占据了相当的市场,因此很多人对SAP后来推出的产品没有什么机会接触或者只是听说过,这里会做个入门的介绍。


SAP以往的拳头产品自然是ECC(现在叫ERP),曾经有相当长的一段时间SAP就是企业ERP的代名词,不过随着IT界技术的发展,SAP也在不断地变化,SAP的业务市场已经不局限ECC了。ECC其实是运行在NetWeaver(前身是R/3)平台上(NetWeaver有ABAP版和Java版的,以下默认是ABAP版的),NetWeaver是一个大集成的平台,包含了各种业务套件(ERP,CRM等)和开发环境(ABAP)。继NetWeaver之后,SAP又推出了两个重量级平台,SAP Cloud Platform和SAP HANA,还有一套移动端解决方案Fiori,并且SAP公司已经把自己定位为“由HANA驱动的云计算公司”。

 

SAP Cloud Platform(以下简称SCP)

SCP其实刚出来的时候叫HANA Cloud Platform(HCP),后来改了名字。SCP就类似于IBM的Bluemix,微软的Azure那样,是一个PaaS的云平台。试用版地址:https://cloudplatform.sap.com/index.html。

 SAP开发技术相关的产品介绍

界面如图:

 SAP开发技术相关的产品介绍

在SCP上可以部署三种程序,HTML5(比如UI5),Java,HANA XS(UI5和HANA XS会在之后介绍)。值得一提的是,ABAP Runtime已经从NetWeaver移植到SCP,据说这个功能将在2018年开放,到时候可以在Cloud上运行ABAP(目前是Cloud连NetWeaver远程调用ABAP程序)。但为Cloud开发ABAP程序,只能通过Eclipse或者HANA Studio,而不能通过传统的SAP GUI。

 

另外,SAP跟亚马逊和微软合作,可以直接在AWS和Azure上创建SAP商务软件的实例,这个平台叫Cloud Appliance Library(CAL)。

 SAP开发技术相关的产品介绍

 

HANA

HANA是比较大的概念,从开发者的角度讲,HANA开发主要包括两个部分,HANA应用开发和HANA数据库开发。HANA应用开发,也就是之前在Cloud部分提到的HANA XS程序,这一部分我也不是熟悉,只知道是基于Node JS的JavaScript程序,主要是做后端应用的,就像ABAP,Java那样。HANA数据库是SAP又一具有核心竞争力的产品,它跟普通的数据库的区别在于HANA数据库是内存数据库,所有的数据都在内存里,自然读写速度更快,同时还有多种HANA视图和脚本语言。

 

HANA平台试用地址:https://www.sap.com/developer/topics/sap-hana-express.html。

SAP开发技术相关的产品介绍

 

HANA的开发IDE是HANA Studio,HANA Studio是SAP基于Eclipse打造的为SAP产品进行开发的IDE,除了开发HANA之外,也可以开发ABAP。HANA Studio已经集成了ABAP开发插件,如果要在Eclipse上开发ABAP,可以去https://tools.hana.ondemand.com/#abap这里下载ABAP相关的插件。

 

HANA Studio或者Eclipse上开发ABAP只能作为SAP GUI的补充方法,功能上比GUI要差不少,不过像ABAP CDS View等新内容,只能在HANA Studio或者Eclipse上面开发。

如图是Eclipse连接ABAP项目,可以看到和GUI的登陆界面差不多。

SAP开发技术相关的产品介绍

 

还有一个HANA S/4的概念,我个人认为这个是商业产品的概念,里面包含了HANA数据库,NetWeaver平台,ERP,CRM等商务套件等各种东西。对于开发者来讲主要还是要了解上面提到的HANA开发相关的东西。

 

Fiori/UI5

Fiori与其说是一个产品,不如说是一套前端解决方案,一种UX(用户体验)风格,代码是UI5,UI5是基于HTML5和JavaScript的,也可以认为UI5是一个JS库。SAP在桌面的Web端的技术解决方案已经有Web Dynpro和Web UI/BSP,UI5是为了顺应移动端的潮流而出现的一套支持移动端的解决方案。当然,UI5可以用来开发桌面端的网页,但是它主要作用还是用来开发移动端应用的。

 SAP开发技术相关的产品介绍

SAP为了UI5开发了一个IDE,叫SAP Web IDE,Web IDE是SAP云平台的一个面向开发者的服务(Service),但也可以单独下载使用,SAP提供了个人试用版,可以在这里下载:https://tools.hana.ondemand.com/#sapui5。

SAP开发技术相关的产品介绍

 

Web IDE集成了UI5运行库,Git,Jetty等,还有UI5的代码检查器和内建的Proxy(解决OData跨域问题),唯一需要额外安装的只有Java,可以说是最方便的UI5开发工具。

 

总结

在介绍完了这些产品之后,SAP开发技术的整个格局也比较明显了,NetWeaver依然是有核心地位的,前端解决方案,尤其是移动端,有了Fiori/UI5,后端数据库HANA也是SAP自家的产品,并且这些都支持云端化。

 

对于ABAP开发者来讲,首先不用担心的一件事是ABAP是否会被Java等语言取代,原因也很简单,SAP NetWeaver并不仅仅是一个开发平台,它已经和ERP,CRM等业务解决方案紧密结合在一起了,曾经有人戏称SAP不是一个IT技术公司,而是一个行业解决方案公司,而这些解决方案都是ABAP写的,这些代码数量庞大,不太可能用其他语言或者其他平台再重新实现一遍,所以我的观点是,除非SAP倒闭,不然NetWeaver和ABAP基本上不可能被淘汰。而且对ABAP开发者来讲有两件好事,一个就是上面提到的ABAP Runtime将移植到Cloud上面去,还有就是有了ABAP开发版本的NetWeaver,下载地址:

https://store.sap.com/sap/cp/ui/resources/store/html/SolutionDetails.html?pid=0000014493&catID=&pcntry=DE&sap-language=EN&_cp_id=id-1477346420741-0。

 

但ABAP开发者也应该与时俱进地学一些新的东西,比如开发工具HANA Studio和Eclipse,UI技术比如UI5或者其他JavaScript框架,HANA等,因为这些东西将会取代一部分或者补充原来传统的开发模式。

 

最后,这篇文章里提到的产品和工具,都由一个统一的入口,sap.com。

SAP开发技术相关的产品介绍

选择Developer(开发者)那项,所有SAP开发相关的技术文档和下载工具都在里面。