如何基於Restful ABAP Programming模型開發並部署一個支援增刪改查的Fiori應用
Jerry之前的文章 30分鐘用Restful ABAP Programming模型開發一個支援增刪改查的Fiori應用 釋出之後,有朋友問我,“沒錯, 我是在你的文章裡看到了Fiori應用的介面,可是這個Fiori應用的原始碼我在SAP雲平臺上什麼地方能看到呢?這個Fiori應用部署之後的狀態,我在哪裡能夠檢視呢?”
這位朋友的發問非常有力,實際上,Jerry前一篇文章,離Fiori應用的開發和部署這個目標還有一半的距離。我們回憶下當時是如何基於開發完成的Restful ABAP Programming模型彈出Fiori介面的:
從上圖可以看出,我選中了一個Service Binding模型裡的TravelProcessor這個節點,從右鍵選單裡選擇Open Fiori Elements App Preview選項,這會自動開啟一個在預覽模式下工作的Fiori Elements應用(以前的名稱叫Fiori Smart Template):
現在Fiori UI倒是開啟了,但是大家仔細觀察上圖,應用的視窗標題為"Preview for Fiori Elements App", 應用的url裡包含/sap/bc/adt/這種ABAP Development Tool相關的片段——這種工作在預覽模式下的應用顯然無法用於生產用途的。
因此本文繼續完成剩下的一半開發工作——基於手頭已有的Restful ABAP Programming模型,真正地建立一個Fiori應用並部署到SAP Cloud Platform上。幸運的是,這部分工作量也很小,沒有編碼工作,只需要完成一些配置步驟。
Jerry之前的文章 30分鐘用Restful ABAP Programming模型開發一個支援增刪改查的Fiori應用 已經把SAP Cloud Platform ABAP程式設計環境裡的名為I_Currency的CDS view通過Service Definition的方式暴露出來了,然後由Service binding繫結到OData協議上,這樣我們馬上要建立的Fiori應用可以通過這個Service binding,以OData的方式讀取到CDS view裡的資料。
假設我的Restful ABAP Programming模型和待開發的Fiori應用是在兩個不同Region的SAP Cloud Platform上部署的,比如RAP模型放在Europe(Frankfurt)Region上(這是SAP雲平臺ABAP環境目前唯一的選擇):
而Fiori應用放在Europe(Rot)的Neo環境上(支援Neo的Region選擇就很多了):
那麼這種跨Region間的服務呼叫,需要建立老三樣,即Communication Scenario,Communication System和Communication Arrangement.
SAP官網上有詳細教程:
https://developers.sap.com/group.abap-env-first-app.html
這裡Jerry只強調要點。
(1) 在ABAP Development Tool裡右鍵選單建立Communication Scenario Z_JERRY_COMMU_SCE,然後把前一篇文章建立的Service Binding模型新增到這個Scenario的inbound service頁面裡:
(2) 在ABAP Development Tool右擊ABAP Cloud專案,在屬性頁裡找到這個SAP雲平臺ABAP環境的Fiori介面的url:
Communication Systems,Users和Arrangements都在此處建立。
Communication User顧名思義,SAP雲平臺Neo環境上的Fiori應用使用這個user,呼叫OData服務消費ABAP環境裡的RAP模型。ABAP顧問可以把它類比成SAP GUI裡的使用者WF-BATCH, 只不過前者允許應用開發人員自行建立並設定密碼。
建立Communication System,把ABAP Development Tool屬性頁裡拿到的url,去掉最前面的https://,將剩下的值維護到Host Name裡:
把之前建立的Communication User分配給這個Communication System:
最後建立Communication Arrangement:
選中第一步在ABAP Development Tool裡建立的Communication Scenario:
給這個Arrangement分配剛剛建立的Communication System:
如果一切正常工作,建立好的Communication Arrangement如下圖所示。將Service Url抄下來,因為下一步建立Fiori應用需要這個url. 觀察這個url,其包含SAP雲平臺ABAP程式設計環境的hostname和/sap/opu/odata/sap/開頭的片段,後者就是Service Definition藉助Service Binding通過OData協議暴露出來的url.
(3) 回到SAP雲平臺Neo環境,建立一個指向ABAP環境的Destination,我起了個名字to_ABAPCloud, 將上一步Communication Arrangement裡得到的url貼上進來,User選擇前一步建立的Communication User,同時給這個Destination新增兩個額外的屬性:
- WebIDEEnabled:true
- WebIDEUsage:odata_gen, odata_abap
只有這樣,稍後開啟的webIDE裡才能識別到這個Destination,否則的話,它只能在Java或者nodejs應用裡使用。
剩下的就是在WebIDE裡通過嚮導建立Fiori應用了。開啟WebIDE,選擇New->Project from Template:
此處需要選擇一個模板來建立Fiori應用。我們選擇List Report Application,它會以只讀的方式顯示繫結的Odata服務對應的CDS view裡的內容。
在Data Connection這一向導步驟,選擇之前在Neo環境裡建立的Destination:
然後將之前Communication Arrangement建立後獲得的url維護進Service Url裡,點選Test按鈕,解析出這個url對應的OData模型節點:Currency.
點選Finish完成Fiori應用的自動建立工作。現在我們在WebIDE裡得到了一個真正的Fiori應用。通過右鍵選單將其從WebIDE部署到SAP Cloud Platform上:
成功部署:
在SAP雲平臺的控制檯裡獲得了這個Fiori應用的url,我們將其和之前在預覽模式下工作的Fiori應用url做對比,是不是有很大的不同?
點選url訪問,現在這個Fiori頁面的視窗標題再也沒有了Preview的字樣,可以直接用於生產用途了。
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2659675/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 30分鐘用Restful ABAP Programming模型開發一個支援增刪改查的Fiori應用REST模型
- 如何使用 Restful ABAP Programming 程式設計模型開發一個支援增刪改查的 Fiori 應用REST程式設計模型
- 一個典型的使用 SAP Cloud Application Programming 模型開發的 Fiori 應用CloudAPP模型
- 基於gin的golang web開發:mysql增刪改查GolangWebMySql
- Jerry帶您瞭解Restful ABAP Programming模型系列之三:雲端ABAP應用除錯REST模型除錯
- 本地開發好的 SAP Fiori Elements 應用,如何部署到 ABAP 伺服器上?伺服器
- Restful ABAP Programming模型系列二:Action和Validation的實現REST模型
- 使用mybatis開發的增刪改查操作MyBatis
- SQL 基礎增、刪、改、查SQL
- 無需程式設計,基於PostgreSQL零程式碼生成CRUD增刪改查RESTful API介面程式設計SQLRESTAPI
- MySQL表的增刪改查(基礎)MySql
- 關於ToDolist 的增刪改查 用jQuery來實現jQuery
- QBMySQL與PHP的基礎與應用專題之增刪改查uneMySqlPHP
- JavaScript中陣列的增刪改查以及應用方式JavaScript陣列
- MySQL基礎操作(增刪改查)MySql
- 增刪改查
- mogoose 建立資料庫並增刪改查Go資料庫
- iOS CoreData (一) 增刪改查iOS
- 列表的增刪改查
- 字典的增刪改查
- layui的增刪改查UI
- mybatis的增刪改查MyBatis
- redist的增刪改查Redis
- 基於多資料來源零程式碼同時生成多個資料庫CRUD增刪改查RESTful API介面資料庫RESTAPI
- 基於 ABAP Fundamental Library 應用支援的幾種 Connectivity 方式
- SSM整合_年輕人的第一個增刪改查_查詢SSM
- 用thinkphp進行增刪改查的操作PHP
- 寫一個簡單的Linkedlist,實現增刪改查
- SQL增刪改查SQL
- Mongoose查增改刪Go
- indexedDB 增刪改查Index
- mysql增刪改查MySql
- 關於mongodb資料庫的增刪改查MongoDB資料庫
- 如何用SAP WebIDE的Fiori建立嚮導基於ABAP OData service快速建立UI5應用WebIDEUI
- 運用layui實現增刪改查UI
- 第一個mybatis程式,實現增刪改查CRUDMyBatis
- 一個系列搞定MyBatis:MyBatis快速上手增刪改查MyBatis
- SSM整合_年輕人的第一個增刪改查_基礎環境搭建SSM