
翻譯 |?@SAP大話君
9月26日,SAP首席技術(shù)官Bj?rn Goerke宣布了SAP PaaS平臺(tái)的一項(xiàng)重要里程碑,ABAP計(jì)劃將被作為開(kāi)發(fā)和運(yùn)行時(shí)環(huán)境提供在SAP Cloud Platform上。
SAP Cloud Platform是SAP的戰(zhàn)略性PaaS平臺(tái),它被提供給SAP的客戶和合作伙伴,用于建立,集成和擴(kuò)展SAP業(yè)務(wù)解決方案和服務(wù)。當(dāng)前,SAP Cloud Platform應(yīng)用和擴(kuò)展可以基于不同的開(kāi)發(fā)環(huán)境,例如Java或者Node.js,但是SAP自己的開(kāi)發(fā)環(huán)境ABAP,暫時(shí)還未被提供。
SAP Cloud Platform將提供ABAP開(kāi)發(fā)環(huán)境。多年以來(lái),ABAP一直是SAP on-premise解決方案的基礎(chǔ)。通過(guò)ABAP in SAP Cloud Platform,ABAP開(kāi)發(fā)者將能使用他們現(xiàn)有的ABAP知識(shí),在云端來(lái)開(kāi)發(fā)和運(yùn)行ABAP應(yīng)用。
ABAP in SAP Cloud Platform讓ABAP開(kāi)發(fā)者們步入云端??蛻襞c合作伙伴將能為基于ABAP的產(chǎn)品(例如SAP S/4HANA)開(kāi)發(fā)擴(kuò)展應(yīng)用,或者開(kāi)發(fā)全新的云端應(yīng)用。ABAP in SAP Cloud Platform也可以用于將基于ABAP的自開(kāi)發(fā)代碼或擴(kuò)展應(yīng)用轉(zhuǎn)移到云端。ABAP in SAP Cloud Platform也能訪問(wèn)SAP Cloud Platform上所提供的各種服務(wù),包括集成,文檔管理,機(jī)器學(xué)習(xí)和物聯(lián)網(wǎng)。
ABAP in SAP Cloud Platform是基于最新的ABAP Platform云端版本,它同時(shí)也被用于SAP S/4HANA Cloud。它使用SAP HANA的多租戶數(shù)據(jù)庫(kù)容器技術(shù)。軟件棧包括與獨(dú)立ABAP應(yīng)用程序服務(wù)器類似的標(biāo)準(zhǔn)技術(shù)組件。它支持新的RESTful編程模式,包括SAP Fiori和Core Data Services (CDS)。SAP服務(wù)和API將通過(guò)全新的白名單方式被提供出來(lái)。
開(kāi)發(fā)環(huán)境
ABAP in SAP Cloud Platform支持標(biāo)準(zhǔn)的,帶ABAP Development Tools (ADT)的基于Eclipse的環(huán)境。不支持傳統(tǒng)的ABAP Workbench(SE80)。支持到Git的集成,可以導(dǎo)入和管理開(kāi)發(fā)構(gòu)件,提供對(duì)開(kāi)源項(xiàng)目的直接訪問(wèn),和非常完善的版本管理控制。
ABAP in SAP Cloud Platform可以被認(rèn)為是ABAP語(yǔ)言的子集,它為Cloud做了專門(mén)優(yōu)化。它排除了一些與云端安全操作不兼容的statement,例如對(duì)文件系統(tǒng)的直接訪問(wèn)。此外,已被棄用的ABAP statement variant也被移除掉了。
為了確保對(duì)于底層軟件棧安全和穩(wěn)定的升級(jí),只有白名單中的SAP API可以被使用。底層軟件棧中其他SAP對(duì)象的使用將導(dǎo)致語(yǔ)法錯(cuò)誤。
擴(kuò)展場(chǎng)景
SAP有大量的客戶和合作伙伴把他們的核心業(yè)務(wù)運(yùn)行在基于ABAP的解決方案上,例如SAP S/4HANA和SAP Business Suite。因此,過(guò)去的幾十年間,大量的ABAP代碼被產(chǎn)生出來(lái)。
絕大多數(shù)的現(xiàn)有解決方案都是以on-premise的形式運(yùn)行的。與此同時(shí),SAP看到了越來(lái)越多的云端解決方案將會(huì)被采用,例如SAP S/4HANA Cloud,這需要定制的擴(kuò)展選項(xiàng)。
這就是為何幫助客戶將他們的數(shù)字核心轉(zhuǎn)到云端成為SAP云端聚焦戰(zhàn)略的核心部分。成功轉(zhuǎn)換的重要因素就是SAP代碼的可擴(kuò)展性,客戶或合作伙伴開(kāi)發(fā)的代碼要能被繼續(xù)支持。為了更清晰地了解當(dāng)前有哪些擴(kuò)展方式,我們來(lái)快速回顧一下這些基本概念。
可用的擴(kuò)展方式
云端方案意味著標(biāo)準(zhǔn)化,以及流程和操作的自動(dòng)化。因此,云端解決方案的供應(yīng)商會(huì)定時(shí)對(duì)軟件進(jìn)行更新,這是自動(dòng)化的,并對(duì)所有用戶生效。結(jié)果就是所有的云端客戶都運(yùn)行在同樣的軟件版本上,并且軟件對(duì)于定制化擴(kuò)展程序的使用要求是很?chē)?yán)格的。擴(kuò)展程序只能調(diào)用云端供應(yīng)商預(yù)先定義好的,穩(wěn)定的接口。
對(duì)于軟件本身(例如SAP on-premise解決方案)的修改,在云端也是不可行的??紤]到這些前提條件,我們有以下兩種擴(kuò)展方式(請(qǐng)參考圖1):
應(yīng)用內(nèi)擴(kuò)展:?允許少量的,受控的在運(yùn)行時(shí)環(huán)境內(nèi),對(duì)于原始應(yīng)用的擴(kuò)展。例如增加一個(gè)新字段,對(duì)事件或流程增加校驗(yàn)。
平行擴(kuò)展:?允許使用遠(yuǎn)程通訊手段,開(kāi)發(fā)一些新的,基于PaaS的,松耦合的應(yīng)用或服務(wù)。
對(duì)于平行擴(kuò)展,SAP提供了帶Java和Node.js運(yùn)行時(shí)的SAP Cloud Platform。SAP Cloud Platform可以被用于創(chuàng)建新的云端應(yīng)用,或者將現(xiàn)有擴(kuò)展轉(zhuǎn)換到云端。

圖1:可用的云端擴(kuò)展方式(以SAP S/4HANA Cloud為例)
ABAP作為PaaS
對(duì)于SAP客戶向云端轉(zhuǎn)換,ABAP in SAP Cloud Platform提供了一種額外的方式。ABAP in SAP Cloud Platform聚焦于一類客戶,他們希望使用ABAP知識(shí),并保護(hù)之前在ABAP自定義擴(kuò)展程序上的投資。
但是,并非百分百的on-premise ABAP自定義擴(kuò)展都能被用于SAP Cloud Platform。
ABAP in SAP Cloud Platform通過(guò)遠(yuǎn)程API對(duì)業(yè)務(wù)系統(tǒng)進(jìn)行訪問(wèn),只允許白名單上的ABAP平臺(tái)對(duì)象,并限制可用的技術(shù)組件。例如不支持SAP GUI訪問(wèn),也對(duì)ABAP語(yǔ)言的范圍有所限制。
因此,代碼重用的程度取決于自定義代碼的質(zhì)量和本質(zhì)功能。使用清晰的接口對(duì)SAP對(duì)象進(jìn)行訪問(wèn)的松耦合附加程序可以獲得很大程度的代碼重用。那些與產(chǎn)品代碼本身結(jié)合得很緊密的自定義代碼則可能需要大幅度地改造。

圖2:可用的云端擴(kuò)展方式,包括ABAP in SAP Cloud Platform(以SAP S/4HANA Cloud為例)
ABAP in SAP Cloud Platform路線圖
ABAP in SAP Cloud Platform計(jì)劃在2018提供。2017年末會(huì)有客戶開(kāi)始使用,以便對(duì)早期使用者的反饋意見(jiàn)進(jìn)行收集。當(dāng)前的路線圖從SAP S/4HANA Cloud的擴(kuò)展場(chǎng)景開(kāi)始,更多的使用場(chǎng)景將被陸續(xù)添加。
總結(jié)
ABAP in SAP Cloud Platform將ABAP作為新的開(kāi)發(fā)和運(yùn)行時(shí)環(huán)境,與其他現(xiàn)有的例如Java或者Node.js等環(huán)境一塊提供出來(lái)。這帶來(lái)很多新的應(yīng)用場(chǎng)景,它首先針對(duì)的就是那些現(xiàn)在使用SAP,并要把業(yè)務(wù)轉(zhuǎn)移到云端(SAP S/4HANA Cloud)的客戶。
原文地址
https://blogs.sap.com/2017/09/26/overview-of-abap-in-sap-cloud-platform/