1. 程式人生 > 其它 >SAP BTP 上使用 Mobile Back-End Tools(MBT)進行全棧開發的方法概述

SAP BTP 上使用 Mobile Back-End Tools(MBT)進行全棧開發的方法概述

Understand Full-Stack Development with Mobile Back-End Tools

從本質上講,MBT 是一組工具,可讓您無需編寫一行程式碼即可生成功能齊全的 OData Web 服務。 這些工具旨在透明地將 OData 模型轉換為永續性,並提供透明的 OData 功能,包括開箱即用的增量計算。

除了過度簡化之外,MBT 作為 SAP 移動服務的一項功能,是一組工具,旨在解決移動應用程式同步離線功能時可能出現的若干挑戰。

因此,它們提供(可選)功能,例如目標整合(作為快取)、下載跟蹤、客戶端過濾器和進一步的自定義。

MBT 可作為 Visual Studio Code 的市場擴充套件或作為 SAP Business Application Studio 的一部分在“SAP 移動應用程式”的預設中使用。

本教程及其任務將向您介紹移動後端工具快取資料庫的可能用法。 它旨在通過技術引入技術提供簡化方案,同時保持對試用使用者的要求。

您可以在 SAP 業務技術平臺 (BTP) 或本地(在 Apache Tomcat、TomEE 或 Eclipse Virgo 上)執行如此生成的 OData 服務。

如果您計劃在 SAP BTP 中執行生成的服務:

  • SAP Business Application Studio 將是大多數開發人員的更好選擇,因為它允許您在設計時和執行時利用相同的環境。

  • CSDL 圖形建模器僅在 SAP Business Application Studio 中可用。

  • 作為雲解決方案的 SAP Business Application Studio 將使用 SAP Mobile Services 的預設開箱即用,並且不需要手動設定開發環境以及與作業系統無關。

如果您計劃在本地架構中執行生成的服務:

  • 您仍然可以通過 SAP Cloud Connector 將其連線到 SAP Mobile Services,但您可能希望在本地架構中生成和開發服務,利用移動後端工具的 Visual Studio Code 擴充套件

  • 對於 Visual Studio Code,您需要在本地設定自己的環境。

下圖描繪了移動解決方案上下文中基於 MBT 的服務的示例架構:

在本教程的任務中,目標系統作為公開可用的 HTTP 目標連線。 在實際場景中,如果是雲系統,您可能會以類似的方式連線系統,如果是內部部署系統,則可以通過 SAP Cloud Connector 連線系統。

Role of CSDL and database

OData 定義模型和操作的宣告方式的工作方式允許 OData 操作和實際資料庫上的操作之間的對映。

因此,通常 MBT 的中心起點是元資料檔案,分別是 Common Schema Definition Language (CSDL) 檔案。 在 SAP Business Application Studio 中,MBT 可以利用 CSDL 圖形建模器來簡化 OData 模型的使用。

一方面,MBT 提供可執行的任務,生成資料庫永續性或永續性描述符 (SQL),反映整個 OData 模型。 另一方面,MBT 可以基於現有的資料庫表構建透明的 OData 服務。

根據執行時支援不同的資料庫型別。 以下資料庫可能例如 在某些環境中與工具一起使用(Derby 和 H2 僅用於測試,請參閱文件和/或產品可用性矩陣以獲取官方支援宣告):

  • SAP ASE

  • Apache Derby

  • H2 database

  • SAP HANA

  • Azure SQL or Microsoft SQL Server

  • Oracle Database

  • PostgreSQL

  • SAP SQL Anywhere

Benefit of caching mobile app data

在企業環境中構建的大多數應用程式都不是獨立的用例,而是必須整合到現有的生態系統、資料和業務流程中。 因此,MBT 提供將 OData 服務上的操作連結和對映到另一個介面上的操作。

通常,在開發新的移動應用程式時,您必須選擇最適合您的架構的技術。 因此,您可以在源系統上構建新服務、將資料複製到另一個系統或快取資料的相關部分以方便使用移動消費。

如果您想在遺留介面之上構建服務,如果您想減少引用系統上的負載,或者如果您想新增更高效的增量功能以獲得更好的客戶端應用程式使用者體驗,而無需修改後臺,這可能會派上用場 -端介面。

Benefit of client registrations

在 MBT 中,除了使用者身份之外,客戶端註冊還反映了一種特定的離線資料儲存。 這種識別允許在基於時間戳的計算之外進行精確的更改確定,特別是與客戶端過濾器結合使用。

客戶端註冊要求服務包含一個實體,離線商店在該實體上使用 uuid 進行註冊。 此 ID 必須與 HTTP 標頭 Client-Instance-ID 中的任何即將到來的使用者請求一起傳送。

What is a Client Filter?

許多用例應允許使用者選擇可以將哪些資料下載到客戶端資料庫中。

這可以例如是地理、組織或歷史要求。 因此,MBT 允許在特定離線商店的自定義下載查詢中利用 ClientFilter 註釋的實體。

註冊到服務後,客戶端因此可以將一個或多個實體上傳到過濾器實體,以管理從其他實體下載的資料。

例子:

在特定日期在特定區域工作的銷售代表可以上傳過濾器,以僅檢索過去兩年內該特定區域客戶的銷售訂單的客戶資料。

更多Jerry的原創文章,盡在:"汪子熙":