SAPAPI開(kāi)發(fā)方法有哪些-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“SAP API開(kāi)發(fā)方法有哪些”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“SAP API開(kāi)發(fā)方法有哪些”吧!

我們擁有十載網(wǎng)頁(yè)設(shè)計(jì)和網(wǎng)站建設(shè)經(jīng)驗(yàn),從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁(yè)設(shè)計(jì)師為您提供的解決方案。為企業(yè)提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、微信開(kāi)發(fā)、微信小程序定制開(kāi)發(fā)、手機(jī)網(wǎng)站制作H5開(kāi)發(fā)、等業(yè)務(wù)。無(wú)論您有什么樣的網(wǎng)站設(shè)計(jì)或者設(shè)計(jì)方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計(jì)服務(wù)并滿足您的需求。

(1) ABAP function module + SOAMANAGER

最古老的技術(shù),把ABAP系統(tǒng)里的函數(shù)通過(guò)SOAMANAGER發(fā)布成Web Service. 雖然古老,但至今S/4HANA里的Service模塊的新功能開(kāi)發(fā)還在使用。

SAP API開(kāi)發(fā)方法有哪些

(2) 基于事務(wù)碼SEGW的SAP CRM OData服務(wù)手動(dòng)實(shí)現(xiàn)

這是我最熟悉的SAP OData服務(wù)實(shí)現(xiàn)方式,因?yàn)槲揖褪荢AP CRM OData服務(wù)的開(kāi)發(fā)者之一。SAP成都研究院CRM開(kāi)發(fā)團(tuán)隊(duì)在2014和2015年開(kāi)發(fā)這些OData服務(wù)時(shí),SAP Fiori Elements的前身,當(dāng)時(shí)的名稱是Smart Template,還處于發(fā)展初期,所以那時(shí)候我們沒(méi)有選擇這項(xiàng)基于元數(shù)據(jù)驅(qū)動(dòng)的開(kāi)發(fā)方式。

SAP API開(kāi)發(fā)方法有哪些

(3) 基于CDS view的OData服務(wù)自動(dòng)生成

再后來(lái),隨著CDS view和Fiori Elements的成熟,我們可以基于加上了@OData.publish注解的CDS view,直接生成OData服務(wù)了

在S/4HANA里,除了在ABAP Development Tool里手動(dòng)給CDS view加上@OData.publish注解之外,還可以采取另一種方式,純粹在瀏覽器里完成操作。

使用S/4HANA里的Custom CDS Views這個(gè)應(yīng)用,

SAP API開(kāi)發(fā)方法有哪些

可以選擇S/4HANA里多個(gè)標(biāo)準(zhǔn)的CDS view來(lái)創(chuàng)建新的復(fù)合視圖,

SAP API開(kāi)發(fā)方法有哪些

并能根據(jù)自己的需求,來(lái)挑選哪些標(biāo)準(zhǔn)視圖的字段需要包含到新的復(fù)合視圖里:

SAP API開(kāi)發(fā)方法有哪些

最后也是一鍵實(shí)現(xiàn)復(fù)合視圖的OData服務(wù)發(fā)布。

SAP API開(kāi)發(fā)方法有哪些

到了SAP云平臺(tái)ABAP環(huán)境上,基于CDS view創(chuàng)建的Service Definition和Service Binding,把OData服務(wù)和Fiori UI界面的創(chuàng)建全部包辦了。

SAP API開(kāi)發(fā)方法有哪些

(4) SAP Cloud for Customer里基于Business Object的自定義OData API創(chuàng)建

前面在SAP S/4HANA Fiori Launchpad里看到的Custom CDS View這個(gè)應(yīng)用,即使不太懂技術(shù)的Key User,也能在瀏覽器里完成字段的搭配和OData服務(wù)的發(fā)布。

SAP Cloud for Customer也有類似的設(shè)計(jì),只不過(guò)供Key User選擇的不是CDS view,而是C4C里標(biāo)準(zhǔn)的Business Object.

SAP API開(kāi)發(fā)方法有哪些SAP API開(kāi)發(fā)方法有哪些

Key User在瀏覽器的Custom OData Service應(yīng)用里能選擇將Business Object節(jié)點(diǎn)里的哪些字段發(fā)布到OData服務(wù)里,此操作同SAP S/4HANA里選擇標(biāo)準(zhǔn)CDS view字段的思路是一樣的。

SAP API開(kāi)發(fā)方法有哪些

在C4C的Cloud Application Studio里,還能基于標(biāo)準(zhǔn)Business Object創(chuàng)建Web Service.

SAP API開(kāi)發(fā)方法有哪些

總結(jié):基于ABAP技術(shù)棧的SAP產(chǎn)品,運(yùn)行于其上的OData或者Web Service這些API,本質(zhì)都是通過(guò)ABAP Netweaver的ICF(Internet Communication Framework)被外界消費(fèi)的。我們觀察其調(diào)用Url路徑,就能找到SICF事務(wù)碼里的對(duì)應(yīng)的處理節(jié)點(diǎn)。

以SAP CRM OData服務(wù)Url末尾的CRM_OPPORTUNITY為例:

SAP API開(kāi)發(fā)方法有哪些

在SICF事務(wù)碼里能找到對(duì)應(yīng)的同名節(jié)點(diǎn)。我們只需要在SICF里給這個(gè)節(jié)點(diǎn)綁定一個(gè)ABAP類,該節(jié)點(diǎn)對(duì)應(yīng)的Url通過(guò)瀏覽器或者Postman,或者其他編程語(yǔ)言訪問(wèn)時(shí),ABAP ICF框架就會(huì)自動(dòng)調(diào)用綁定的ABAP類。

SAP API開(kāi)發(fā)方法有哪些

也就是說(shuō),應(yīng)用開(kāi)發(fā)人員只需要在ABAP類里實(shí)現(xiàn)業(yè)務(wù)邏輯,至于這個(gè)類運(yùn)行時(shí)的實(shí)例如何被ICF調(diào)用,如何初始化和銷毀等生命周期管理,ABAP開(kāi)發(fā)人員完全不用操心。

(5) 基于Java SpringBoot,Node Express等Web應(yīng)用框架的API開(kāi)發(fā)

采用此類開(kāi)發(fā)方式的生態(tài)圈是全球最龐大最活躍的群體,技術(shù)成熟穩(wěn)定,相關(guān)文檔和教材非常豐富。更新更先進(jìn)的開(kāi)發(fā)框架也在不斷演化。開(kāi)發(fā)人員通常在本地完成開(kāi)發(fā),再將應(yīng)用部署到服務(wù)器上運(yùn)行。也可以將應(yīng)用打包成容器鏡像,再以容器的方法運(yùn)行在物理服務(wù)器或者SAP云平臺(tái),AWS,Google Cloud Platform,Azure等各種云上。容器數(shù)量到達(dá)一定規(guī)模之后,可以采用Kubernetes進(jìn)行編排管理。

SAP API開(kāi)發(fā)方法有哪些

Jerry之前的項(xiàng)目里也消費(fèi)過(guò)SAP Commerce的Web Service:如何使用API的方式消費(fèi)SAP Commerce Cloud的訂單服務(wù)。

(6) Serverless 架構(gòu)

云計(jì)算行業(yè)里的一個(gè)熱門詞匯,Serverless架構(gòu),并不意味著采用這個(gè)架構(gòu)后就再也不需要服務(wù)器了,而是指應(yīng)用開(kāi)發(fā)人員不用關(guān)心開(kāi)發(fā)好的應(yīng)用如何部署到服務(wù)器,不需要考慮服務(wù)器的運(yùn)行狀態(tài)等運(yùn)營(yíng)和維護(hù)問(wèn)題。傳統(tǒng)Web應(yīng)用的開(kāi)發(fā)思路,如之前介紹的那樣,通常在本地完成開(kāi)發(fā)和單元測(cè)試,然后需要考慮采用何種方式,部署到何種服務(wù)器或者云上。

SAP API開(kāi)發(fā)方法有哪些

而基于Serverless架構(gòu)的API/服務(wù)開(kāi)發(fā),根本就沒(méi)有API部署的這個(gè)步驟。以Jerry之前介紹過(guò)的SAP Kyma上的Lambda Function為例,API函數(shù)本身的代碼編寫就是在云上完成。一旦保存,只要API維護(hù)的觸發(fā)條件滿足(事件觸發(fā)或者Url觸發(fā)),該API立即被調(diào)用。

下圖是我在SAP Kyma里使用nodejs編寫的一個(gè)Lambda Function:

SAP API開(kāi)發(fā)方法有哪些

我設(shè)置其通過(guò)HTTPS的方式被調(diào)用:

SAP API開(kāi)發(fā)方法有哪些

在瀏覽器里訪問(wèn)這個(gè)HTTPS-endpoint,Lambda Function立即執(zhí)行。

SAP API開(kāi)發(fā)方法有哪些

從這個(gè)角度講,Jerry覺(jué)得ABAP開(kāi)發(fā)人員,在開(kāi)發(fā)API的時(shí)候,一直就在享受著Serverless架構(gòu)帶來(lái)的便利。因?yàn)锳BAP領(lǐng)域的開(kāi)發(fā),無(wú)論是通過(guò)SAPGUI,ABAP Development Tool,還是通過(guò)各種Key User工具,本質(zhì)上都是連接到ABAP Netweaver這個(gè)集應(yīng)用開(kāi)發(fā)和運(yùn)行為一體的服務(wù)器上進(jìn)行的,因而根本沒(méi)有傳統(tǒng)Java/nodejs開(kāi)發(fā)里的應(yīng)用部署這一環(huán)節(jié)。

關(guān)于更多如何使用Lambda Function實(shí)現(xiàn)API的介紹,請(qǐng)參考Jerry的文章:

  • 從ABAP Netweaver的SICF到SAP Kyma的Lambda Function

  • 周伯通的空明拳,米諾斯的星塵傀儡線,SAP Kyma的Serverless

(7) SAP Data Intelligence Graph

這種方式嚴(yán)格來(lái)講也算基于Serverless,使用者通過(guò)瀏覽器登錄SAP Data Intelligence控制臺(tái),進(jìn)行Graph建模。完成后啟動(dòng),Graph就直接運(yùn)行在SAP Cloud Platform的Kubernetes基礎(chǔ)設(shè)施上了。

SAP API開(kāi)發(fā)方法有哪些

之所以把這種方式單獨(dú)拿出來(lái)介紹,是因?yàn)槠溆志哂蠰ow Code Development(低代碼開(kāi)發(fā))的特質(zhì)。

看一個(gè)具體的例子。

假設(shè)我想實(shí)現(xiàn)一個(gè)支持CRUD的API,消費(fèi)者通過(guò)HTTP GET, POST和DELETE請(qǐng)求,能夠在數(shù)據(jù)庫(kù)里分別讀取,插入和刪除一條記錄。

低代碼開(kāi)發(fā)平臺(tái),通常都提供了圖形化的用戶界面,給使用者提供了通過(guò)拖拽組件和模型驅(qū)動(dòng)開(kāi)發(fā)的方式, 結(jié)合少量的編碼來(lái)快速創(chuàng)建應(yīng)用或者API.

訪問(wèn)SAP Data Intelligence Launchpad,進(jìn)入Modeler:

SAP API開(kāi)發(fā)方法有哪些

我們像小朋友搭積木一樣,從左邊的工具箱里,拖拽HTTP Server和若干個(gè)JavaScript Handler到編輯頁(yè)面里。

SAP API開(kāi)發(fā)方法有哪些SAP API開(kāi)發(fā)方法有哪些

到此,相信大家對(duì)“SAP API開(kāi)發(fā)方法有哪些”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

本文名稱:SAPAPI開(kāi)發(fā)方法有哪些-創(chuàng)新互聯(lián)
標(biāo)題來(lái)源:http://bm7419.com/article0/dpdsio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄網(wǎng)站建設(shè)、商城網(wǎng)站關(guān)鍵詞優(yōu)化、微信小程序ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化