SAP 2019 TechEd Key Note解读:云时代下SAP从业人员如何做二次开发?
剛剛過去的在巴塞羅那舉行的2019 SAP TechEd,SAP照例向全球廣大的SAP生態(tài)圈從業(yè)者們傳達了一些重要的信息,其中一條為:Building Extensions for the Intelligent Enterprise on SAP Cloud Platform,中文即“在SAP云平臺上為智慧企業(yè)創(chuàng)建擴展應(yīng)用”。
本文是Jerry對SAP社區(qū)這篇博客Making development of extensions easier – SAP Cloud Platform Extension Factory的一些個人解讀,并非逐字逐詞的簡單翻譯。
SAP的一個宏偉目標(biāo):將來SAP所有產(chǎn)品(不管是On-Premises還是云解決方案)的二次開發(fā)平臺,統(tǒng)一為SAP云平臺。而現(xiàn)狀是,SAP S/4HANA Cloud和SAP C/4HANA已經(jīng)可以通過SAP云平臺擴展了,而上圖左邊的一些其他產(chǎn)品,例如同為云解決方案的SAP Concur,以及本地部署的S/4HANA On-Premises和SAP ECC,如何用SAP云平臺對這些產(chǎn)品做擴展,是SAP將來努力的方向。
目前SAP云平臺上已經(jīng)有了下列這些組件,SAP Cloud Platform的作用就是將它們組合起來(Orchestration),像Kubernetes編排pod那樣,讓其發(fā)揮出1+1>2的作用:
SAP Cloud Platform Extension Factory
SAP Cloud Application Programming Model (CAP)
ABAP RESTful Programming Model (RAP)
SAP Cloud Platform Enterprise Messaging
SAP Cloud SDK
SAP Web IDE
SAP Cloud Platform API Management
SAP API Business Hub
SAP Cloud Platform Workflow
Connect securely & quickly
SAP Cloud Platform Extension Factory是SAP推薦的"智慧企業(yè)的專屬云原生擴展框架",在開源項目Kyma的基礎(chǔ)上,借助SAP云平臺提供的Cloud Connector和Connectivity Service,保證了企業(yè)級應(yīng)用所需的標(biāo)準(zhǔn)化和安全性。
Build efficiently & effectively
一旦SAP解決方案同SAP云平臺建立綁定關(guān)系后,其對應(yīng)實例就會被分配給云平臺上的subaccount,而該產(chǎn)品支持的API和事件會發(fā)布到SAP云平臺上。開發(fā)者們能夠直接在云平臺上瀏覽和消費這些API及事件。
以為SAP S/4HANA Cloud創(chuàng)建擴展為例,首先基于Open Service Broker API創(chuàng)建一個S/4HANA Cloud Extensibility Service的實例,然后在該subaccount space下的開發(fā)人員,即可將該實例綁定到自己創(chuàng)建的擴展應(yīng)用去,并消費該實例暴露的服務(wù)。
開始搬磚之前,開發(fā)人員可以在SAP推薦的兩種編程模型里進行選擇,到底是用SAP Cloud Application Programming Model (CAP) ,還是ABAP RESTful Application Programming Model (RAP).
先看看這兩種編程模型各自的特色。
基于CAP模型的擴展應(yīng)用特色
(1) 天生支持多租戶(native multi-tenant enablement)
(2) 同一個SAP Cloud Platform賬號創(chuàng)建的基于CAP模型的應(yīng)用能共享API和事件
(3) 終端用戶能夠很容易的使用key user tool等工具對此類應(yīng)用進行字段級別的擴展 - Field Extensibility
如果SAP解決方案的標(biāo)準(zhǔn)功能支持事件發(fā)布,則可以通過SAP Cloud Platform上一個叫做Enterprise Messaging的組件,將這些事件發(fā)布到SAP Cloud Platform Extension Factory上,這樣SAP二次開發(fā)人員可以訂閱這些事件,編寫對應(yīng)的事件響應(yīng)函數(shù)。
一些具體的例子:
-
Simplified extensions for the Intelligent Enterprise with SAP Cloud Platform Extension Factory and Enterprise Messaging
-
New service plan and UI for SAP Cloud Platform Enterprise Messaging
下圖是對應(yīng)的編碼實現(xiàn)訂閱S/4HANA Cloud系統(tǒng)服務(wù)訂單創(chuàng)建事件并作出響應(yīng)的例子:通過eventBus實例注冊ServiceOrder.Created事件,在其觸發(fā)后,調(diào)用技師分配函數(shù)進行響應(yīng)。
在分配S/4HANA Cloud系統(tǒng)里的技師資源時,我們需要消費對應(yīng)的API,通過SAP Cloud SDK可以輕易實現(xiàn),不用從更底層的HTTP級別的函數(shù)調(diào)用開始編寫。
SAP Cloud SDK對底層API進行了封裝,寫起來如同自然語言一樣,可讀性極佳:
基于Restful ABAP Programming(RAP)模型的擴展應(yīng)用特色
采用這種模型開發(fā)的擴展應(yīng)用能享受到SAP在云端ABAP領(lǐng)域提供的最新技術(shù)和特性,擴展本身同被擴展的解決方案核心代碼徹底解除了耦合,因此又被稱為Side-by-side擴展。這種模式的擴展能很好的實現(xiàn)所謂digital core code clean的目標(biāo)。
由于RAP模型本身的語言還是ABAP,因此RAP在工作于ABAP技術(shù)棧的SAP產(chǎn)品擴展需求時顯得更加如魚得水。
基于Restful ABAP Programming模型的開發(fā)套路,Jerry之前的文章已經(jīng)介紹過了:
(1) 根據(jù)實際業(yè)務(wù)創(chuàng)建基于CDS view的模型。
(2) 給模型添加transactional behavior,在validation,determination和actions里編寫業(yè)務(wù)邏輯。
(3) 創(chuàng)建business service,將前面創(chuàng)建并實現(xiàn)的模型通過OData暴露出來。
(4) 創(chuàng)建Fiori Elements應(yīng)用,消費第三步創(chuàng)建的business service,將業(yè)務(wù)數(shù)據(jù)通過Fiori UI展示出來。
總結(jié)一下,云時代SAP從業(yè)人員進行二次開發(fā)的工具集:
SAP Cloud Platform, Application runtime
SAP Cloud Platform, ABAP environment
SAP Cloud Platform Enterprise Messaging
SAP Web IDE
SAP Cloud Platform Connectivity (includes Cloud Connector for on-premise connectivity)
SAP Cloud SDK
SAP Cloud Platform API Management
SAP API Business Hub
SAP官網(wǎng)上給出的SAP Cloud Platform Extension Factory演進的路線圖:
比如圖中標(biāo)注的,在2019年第四季度,SAP Cloud Platform Extension Factory會添加對SAP S/4HANA On-Premises的支持。當(dāng)然,路線圖中標(biāo)注了一條:
“This is the current state of planning and may be changed by SAP at any time without notice”.
讓我們在以后的日常工作中,好好消化SAP通過TechEd傳達給我們的這一精神吧,感謝閱讀。
要獲取更多Jerry的原創(chuàng)文章,請關(guān)注公眾號"汪子熙":
總結(jié)
以上是生活随笔為你收集整理的SAP 2019 TechEd Key Note解读:云时代下SAP从业人员如何做二次开发?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 宝马“失火”殃及冰激凌品牌 官方紧急澄清
- 下一篇: 恒定F2.8大光圈!佳能发布旗舰远摄变焦