日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何基于Restful ABAP Programming模型开发并部署一个支持增删改查的Fiori应用

發(fā)布時間:2023/12/19 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何基于Restful ABAP Programming模型开发并部署一个支持增删改查的Fiori应用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Jerry之前的文章30分鐘用Restful ABAP Programming模型開發(fā)一個支持增刪改查的Fiori應用 發(fā)布之后,有朋友問我,“沒錯, 我是在你的文章里看到了Fiori應用的界面,可是這個Fiori應用的源代碼我在SAP云平臺上什么地方能看到呢?這個Fiori應用部署之后的狀態(tài),我在哪里能夠查看呢?”

這位朋友的發(fā)問非常有力,實際上,Jerry前一篇文章,離Fiori應用的開發(fā)和部署這個目標還有一半的距離。我們回憶下當時是如何基于開發(fā)完成的Restful ABAP Programming模型彈出Fiori界面的:

從上圖可以看出,我選中了一個Service Binding模型里的TravelProcessor這個節(jié)點,從右鍵菜單里選擇Open Fiori Elements App Preview選項,這會自動打開一個在預覽模式下工作的Fiori Elements應用(以前的名稱叫Fiori Smart Template):

現(xiàn)在Fiori UI倒是打開了,但是大家仔細觀察上圖,應用的窗口標題為"Preview for Fiori Elements App", 應用的url里包含/sap/bc/adt/這種ABAP Development Tool相關的片段——這種工作在預覽模式下的應用顯然無法用于生產(chǎn)用途的。

因此本文繼續(xù)完成剩下的一半開發(fā)工作——基于手頭已有的Restful ABAP Programming模型,真正地創(chuàng)建一個Fiori應用并部署到SAP Cloud Platform上。幸運的是,這部分工作量也很小,沒有編碼工作,只需要完成一些配置步驟。

Jerry之前的文章30分鐘用Restful ABAP Programming模型開發(fā)一個支持增刪改查的Fiori應用 已經(jīng)把SAP Cloud Platform ABAP編程環(huán)境里的名為I_Currency的CDS view通過Service Definition的方式暴露出來了,然后由Service binding綁定到OData協(xié)議上,這樣我們馬上要創(chuàng)建的Fiori應用可以通過這個Service binding,以OData的方式讀取到CDS view里的數(shù)據(jù)。

假設我的Restful ABAP Programming模型和待開發(fā)的Fiori應用是在兩個不同Region的SAP Cloud Platform上部署的,比如RAP模型放在Europe(Frankfurt)Region上(這是SAP云平臺ABAP環(huán)境目前唯一的選擇):

而Fiori應用放在Europe(Rot)的Neo環(huán)境上(支持Neo的Region選擇就很多了):

那么這種跨Region間的服務調(diào)用,需要創(chuàng)建老三樣,即Communication Scenario,Communication System和Communication Arrangement.

SAP官網(wǎng)上有詳細教程:

https://developers.sap.com/group.abap-env-first-app.html

這里Jerry只強調(diào)要點。

(1) 在ABAP Development Tool里右鍵菜單創(chuàng)建Communication Scenario Z_JERRY_COMMU_SCE,然后把前一篇文章創(chuàng)建的Service Binding模型添加到這個Scenario的inbound service頁面里:

(2) 在ABAP Development Tool右擊ABAP Cloud項目,在屬性頁里找到這個SAP云平臺ABAP環(huán)境的Fiori界面的url:

Communication Systems,Users和Arrangements都在此處創(chuàng)建。

Communication User顧名思義,SAP云平臺Neo環(huán)境上的Fiori應用使用這個user,調(diào)用OData服務消費ABAP環(huán)境里的RAP模型。ABAP顧問可以把它類比成SAP GUI里的用戶WF-BATCH, 只不過前者允許應用開發(fā)人員自行創(chuàng)建并設置密碼。

創(chuàng)建Communication System,把ABAP Development Tool屬性頁里拿到的url,去掉最前面的https://,將剩下的值維護到Host Name里:

把之前創(chuàng)建的Communication User分配給這個Communication System:

最后創(chuàng)建Communication Arrangement:

選中第一步在ABAP Development Tool里創(chuàng)建的Communication Scenario:

給這個Arrangement分配剛剛創(chuàng)建的Communication System:

如果一切正常工作,創(chuàng)建好的Communication Arrangement如下圖所示。將Service Url抄下來,因為下一步創(chuàng)建Fiori應用需要這個url. 觀察這個url,其包含SAP云平臺ABAP編程環(huán)境的hostname和/sap/opu/odata/sap/開頭的片段,后者就是Service Definition借助Service Binding通過OData協(xié)議暴露出來的url.

(3) 回到SAP云平臺Neo環(huán)境,創(chuàng)建一個指向ABAP環(huán)境的Destination,我起了個名字to_ABAPCloud, 將上一步Communication Arrangement里得到的url粘貼進來,User選擇前一步創(chuàng)建的Communication User,同時給這個Destination添加兩個額外的屬性:

  • WebIDEEnabled:true
  • WebIDEUsage:odata_gen, odata_abap

只有這樣,稍后打開的webIDE里才能識別到這個Destination,否則的話,它只能在Java或者nodejs應用里使用。

剩下的就是在WebIDE里通過向?qū)?chuàng)建Fiori應用了。打開WebIDE,選擇New->Project from Template:

此處需要選擇一個模板來創(chuàng)建Fiori應用。我們選擇List Report Application,它會以只讀的方式顯示綁定的Odata服務對應的CDS view里的內(nèi)容。

在Data Connection這一向?qū)Р襟E,選擇之前在Neo環(huán)境里創(chuàng)建的Destination:

然后將之前Communication Arrangement創(chuàng)建后獲得的url維護進Service Url里,點擊Test按鈕,解析出這個url對應的OData模型節(jié)點:Currency.

點擊Finish完成Fiori應用的自動創(chuàng)建工作。現(xiàn)在我們在WebIDE里得到了一個真正的Fiori應用。通過右鍵菜單將其從WebIDE部署到SAP Cloud Platform上:

成功部署:

在SAP云平臺的控制臺里獲得了這個Fiori應用的url,我們將其和之前在預覽模式下工作的Fiori應用url做對比,是不是有很大的不同?

點擊url訪問,現(xiàn)在這個Fiori頁面的窗口標題再也沒有了Preview的字樣,可以直接用于生產(chǎn)用途了。

要獲取更多Jerry的原創(chuàng)文章,請關注公眾號"汪子熙":

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的如何基于Restful ABAP Programming模型开发并部署一个支持增删改查的Fiori应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。