SAP雲平台上的Low Code Development(低代碼開發)解決方案


Jerry之前曾經陸續寫過一些文章,介紹SAP各種開發工具和開發平台:

羅列了這么多開發工具和平台之后,Jerry突然有點懷念自己十多年前剛加入SAP的日子。那個時候,筆記本電腦上安裝一個SAPGUI,幾乎就能完成日常工作的所有開發任務了。

今天我們來簡單了解SAP雲平台上的快速應用開發(Rapid Application Development,簡稱RAD)解決方案,以及Mendix,西門子旗下重要一員,在Low Code Development(低代碼開發)領域處於領導者地位,其代表作Mendix Studio Pro.

所謂低代碼開發平台/工具,是指無需編碼或僅需很少代碼(No Code or Low Code)就可以快速生成應用程序的平台/工具,通常提供可視化的交互界面來快速搭建應用界面,設計數據模型,創建應用業務邏輯和工作流等。

低代碼開發平台對使用者的技術要求大大低於傳統軟件開發項目中的程序員。隨着企業數字化轉型浪潮的深入進行,特別是中小型企業信息數字化的呼聲越來越高,使用低代碼開發平台能夠在短時間內快速構建出應用程序的框架,交付給客戶使用,並根據客戶反饋進行快速迭代,因此在企業數字化轉型特別是中小企業信息化建設項目的開發方式中占有重要的一席之地。

正由於低代碼開發平台在企業應用開發中能發揮其獨特的優勢,使得許多軟件供應商紛紛涉足於這一領域,比如SAP智能機器人流程自動化解決方案之一的SAP Intelligent Robotic Process Automation Desktop Studio這個開發工具, 也能被看作是低代碼開發工具之一。

Jerry在之前的文章 如何使用SAP Intelligent Robotic Process Automation自動操作Excel 里曾經介紹過其用法。

而SAP雲平台上的RAD解決方案,也集成了低代碼開發領域的領導者,來自Mendix提供的開發工具Mendix Studio Pro. 從Gartner發布的2019年企業級低代碼開發平台的評測報告,我們可以看到Mendix處於魔力象限中的Leaders(領導者)區域。

下面我們就來嘗試一下,使用SAP Cloud Platform上的Rapid Application Development,結合Mendix Studio Pro來開發一個Fiori應用,以只讀的方式顯示OData服務提供的數據,從中了解所謂的低代碼開發同使用SAP WebIDE的開發體驗有何不同。

登錄SAP Cloud Platform:
https://account.hana.ondemand.com/#/home/serviceCatalog

找到RAD by Mendix服務:

進入服務頁面,點擊Sign in with SAP, 使用SAP雲平台的credential信息登錄。

登錄之后點擊Create App:

選擇創建應用基於的模板。用過SAP WebIDE創建Fiori的朋友們可能會發現,這個模板選擇和WebIDE里的Create from Template功能非常相似。

選擇上圖高亮的具有SAP Fiori設計風格的應用模板,創建一個新應用:

同WebIDE里創建Fiori應用一樣,選擇好模板之后,工具會自動創建很多應用相關的資源文件。

接下來選擇一個SAP Cloud Platform的Region, 在本文最后我們將使用Mendix Studio Pro直接將一個開發好的應用部署到SAP雲平台。

我創建好了一個空的應用JerryHelloWorldProject,在Edit App里提示,可以使用Mendix Studio Pro進行應用開發。

從Mendix的官網免費下載這個開發工具:
https://appstore.home.mendix.com/index.html
安裝之后,點擊Edit in Mendix Studio Pro:

回憶一下,用SAP WebIDE創建Fiori應用,我們得指定一個OData服務作為數據源,要么是把OData元數據下載成本地文件,導入到WebIDE里;要么直接把OData服務的元數據url設置到WebIDE的創建向導里。

Mendix Studio Pro里的創建步驟也類似。先把OData服務的元數據下載到本地,保存成一個xml文件。使用Mendix為SAP量身打造的SAP OData Model Creator,將這個xml文件導入:

SAP OData Model Creator是一個在線應用:
https://sapodatamodelcreator.mendixcloud.com/

它會解析xml里包含的OData元數據,提取出OData服務的名稱GWSAMPLE_BASIC和明細信息,並轉換成Mendix Studio Pro能夠識別和導入的mpk格式的文件:

SAP OData Model Creator生成mpk文件之后,下載到本地,就可以導入到Mendix Studio Pro里了。

導入mpk之后,生成的Mendix Studio Pro能夠識別的OData模型如下圖。這個例子我選擇顯示OData服務返回的Sales Order數據。

Jerry這個例子的業務邏輯很簡單,發送OData服務請求,獲取到數據后顯示在Fiori頁面。

像這種單線的順序業務邏輯,可以封裝在Mendix Microflow里。創建一個Microflow,命名為GetSalesOrder:

Microflow創建好之后,呈現在編輯界面里是一根直線,綠色和紅色端點分別代表業務流程起點和終點。

這個編輯界面和SAP Cloud Platform上的iFlow編輯頁面很像。大家可以把這個Microflow類比成SAP Cloud Integration里的iFlow.

從右鍵菜單里選擇Insert->Activity:

選擇SAP OData Connector下面的Create request params,代表這個Microflow的第一個步驟是發送OData服務請求。

將該請求命名為JerryRequestParams:

訪問SAP OData服務需要使用Basic Authorization進行認證,因此添加第二個Activity,類型為Add basic Authorization:

在工程里新建兩個常量ES5UserName和ES5Password,把訪問SAP OData服務需要使用的用戶名和密碼維護在常量里:

然后在basic Authorization activity里使用這兩個常量:

添加第三個Activity,類型為Get list. 這一步的含義當然就是發起實際的OData請求了:

指定Microflow結束事件所返回的類型為List,Entity為OData服務里的SalesOrder模型。

Microflow開發完畢后,意味着這個應用的業務邏輯的設計已經告一段落了,剩下的是處理前台界面。新建一個頁面,布局類型從下拉菜單里選擇Fiori_MasterDetail:


點擊OK之后,我們得到一個Master-Detail布局的模板頁面,剩下的事情就是對這個模板進行微調,比如調整字體,修改標題,決定哪些字段應該顯示或者隱藏等等。

從開發面板右邊的SalesOrder列表里挑選自己想展示的字段,拖拽到左邊的頁面編輯區域即可。數據綁定都是自動完成的,無需手動干預。

下圖代表我選擇在應用左邊的Master List里顯示三個字段:Customer ID,Customer Name和Created At.

右邊的明細頁面,我選擇顯示Sales Order ID,Currency Code和Gross Amount三個字段。

點擊Run Locally, 本地運行應用:

效果如下圖所示:

如果選擇Run,因為之前最開始在Mendix Studio Pro里設置過SAP Cloud Platform的Region信息,因此會自動將該應用部署到SAP雲平台運行:



從這個簡單的例子能發現,Low Code Development這種理念,在SAP開發領域里其實並不是一個新鮮事物,比如SAP WebIDE里創建Fiori應用提供的大量模板,以及Fiori Elements理念本身,背后都體現了對開發細節和復雜度的封裝,從而降低工具的技術使用門檻。

另一方面,我個人認為,Low Code Development的Low絕不應理解成“低等”,“低級”——這些精心設計過的低代碼開發平台,能夠把普通人覺得很深奧很難於理解的概念封裝起來,轉換成非專業編程人員通過簡單的學習后也能接受的實體,從而擴大了工具的使用群體,這本身就是一件很了不起的事情。

從應用創建向導里可供選擇的眾多應用類型就可以看出,Mendix Studio Pro的強大功能,遠不止本文介紹的這一點點內容。特別是Mendix為SAP“私人訂制”了一系列富有SAP特色的應用模板,感興趣的朋友們可以從Mendix官網下載,一探究竟。

希望本文能夠讓大家對SAP Cloud Platform上的Low Code Development解決方案有一個基本了解,感謝閱讀。

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM