sap fiori导出列表到excel_介绍一种Fiori标准应用的增强方式
2015年,Jerry還在SAP成都研究院CRM Fiori開發團隊工作時,擔任了德國一個著名的燈具制造商客戶的CRM Fiori項目的dev angel. 當時客戶提出了若干對CRM Fiori標準應用的增強需求,總的來說分為前臺Fiori UI界面的增強(比如增添新的自定義字段)以及后臺邏輯的增強。
當時還處于Fiori 1.0時代,還沒有直接在瀏覽器上使用S/4HANA的Key User tool進行新建字段的辦法,因此對于前臺界面的增強,我給客戶的解決方案是使用UI5 XML視圖中預留的Extension point,而后臺邏輯的增強,則通過UI5 JavaScript controller中的extension hook以及ABAP后臺的BAdI實現。
我和客戶四個月的合作非常愉快,最后項目順利上線,我也收到了德國客戶通過郵件發送的感謝信,客戶還把這個項目他們做的所有增強代碼打成壓縮包發送給我,希望SAP能好好分析這些邏輯,評估某些需求是否具有普遍性,將來能否做到SAP標準Fiori應用里,以便更多的客戶能受益。這個德國客戶在項目實施中的專業程度和一絲不茍的態度,給我留下了深刻的印象。
當時客戶的一個實際需求是,創建一個新的自定義字段,并能夠讓該字段在端到端的業務流程中啟用(支持增刪改查). 雖然這個需求現在看起來比較常見,但在五年前的Fiori 1.0時代,實現起來還頗費一番功夫,因為前后臺都得做一些增強。
我當時把完整的增強實現步驟寫成博客發在了SAP社區上,因為步驟較多,總共寫了四篇文章才介紹清楚:
An example of End to End extension on CRM Fiori application - part1
An example of End to End extension on CRM Fiori application - part2
An example of End to End extension on CRM Fiori application - part3
An example of End to End extension on CRM Fiori application - part4
最近Jerry在WebIDE里偶然看到新建菜單里有個名叫Adaptation Project的菜單項:
網上搜索一番后,發現一篇介紹其用法的博客,這里Jerry把文章概要用中文描述出來分享給大家。該博客介紹了另一種不通過編程即可增強Fiori應用某些行為的方式,對其細節感興趣的,可以點擊文末的“閱讀原文”鏈接直接閱讀SAP社區的英文版博客。
SAP Fiori for SAP S/4HANA - Adding Export to Excel to a standard SAP Fiori elements app using a Adaptation Project
這種新的增強方式是通過Fiori Adaptation Project完成的,通過一個實際的需求來介紹。
我們說SAP應用,最典型的使用方式就是以搜索界面作用入口,在搜索結果的表格控件里點擊某條記錄進入明細頁面開始操作。
由于種種原因,并不是所以的表格控件都提供將數據導出成excel格式的功能。
如果搜索結果的表格是通過SAP Fiori Elements技術繪制而成,可以在WebIDE里使用Fiori Adaption Project將excel導出功能啟用。
在WebIDE里新建一個Fiori Adaptation Project:
下一步需要選擇增強哪一個SAP系統的哪一個Fiori應用。如果待增強的Fiori應用位于On-Premises系統,需要預先配置SAP Cloud Connector和SAP云平臺上的Destination,否則到了這一步,在SAP UI5 ABAP Repository的下拉列表里將無法看到該系統。
On-Premises系統確定之后,在該系統找到要增強的Fiori應用,通過輸入該應用的技術ID來定位。點擊Next完成Fiori Adaptation Project的創建向導,這里我們給該project取名s4demo.
在WebIDE里郵件該project,選擇SAPUI5 Visual Editor,打開這個所見即所得的視圖編輯器,
默認是以Preview模式打開的,點擊右上角的Edit按鈕進入編輯模式:
在編輯模式里,選中視圖上的表格控件,準備開始做屬性的修改。
我們注意到這個安全模式的提示,引入這種模式的用意和Android系統以及Windows操作系統的安全模式類似。SAP UI5 Visual Editor的安全模式下,開發者只能針對控件進行受限制的屬性修改。
有付出就有回報,雖然修改受到限制,但在安全模式下進行的修改是升級安全的,即將來S/4HANA系統升級后,這些修改仍然得以保留。
為了啟用表格的excel導出功能,我們得關掉安全模式:
然后把Use Export to Excel的標志位從默認的false設置成true:
保存修改,在項目文件夾下生成一個名為changes的文件夾,里面記錄了這次屬性修改的明細。這種將屬性修改通過單獨的文件保存下來的思路,和SAP C4C里通過Key User Tool或者Cloud Application Studio修改UI視圖后生成Change Transaction用來記錄修改明細是一致的。
修改完保存之后,再次打開應用,就可以測試這個excel導出功能了。
本地測試通過后,采用和部署SAP標準Fiori應用同樣的辦法,將這個Adaptation Project部署到對應的S/4HANA系統上。
點擊Show Details能得知到底有哪些資源被成功部署了。
成功部署的提示信息:Folder XXXX ( CUSTOMER_BASE) created in LRep.
這個LRep即Layed Repository,S/4HANA里一個分層的存儲系統。所謂Layed,體現在這個存儲系統引入的分層概念,即Customer Layer,Partner Layer,SAP Layer等。不同的操作者——客戶,Partner和SAP標準開發人員,對這些分層存儲的資源具有不同的讀寫權限。
在S/4HANA系統里,執行報表/UIF/GET_FILES_4_NS,可以查看到從WebIDE部署到S/4HANA LRep的這些資源:
在第一次運行使用Fiori Adaptation Project增強后的Fiori應用時,存儲在LRep Customer Layer的Fiori Adaptation Project里描述的UI5應用修改信息,會和Fiori標準應用的資源做一個合并,產生最后客戶在瀏覽器里看到的,具有Export to Excel按鈕的Fiori應用。
希望本文能夠幫助大家對Fiori應用的又一種增強方式有一個最基礎的了解,感謝閱讀。
總結
以上是生活随笔為你收集整理的sap fiori导出列表到excel_介绍一种Fiori标准应用的增强方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python分支结构基础实训_零基础Py
- 下一篇: python多进程和多线程使用场景_Py