如何開發和使用雲端流程
Microsoft Power Platform 透過一系列預先設定的雲端流程與 SAP 整合,這些雲端流程可協調一系列轉換並使用 SAP ERP (企業資源規劃) 連接器。
從畫布應用程式管理的每個 SAP 物件都會對應到一系列搜尋、建立、讀取和更新流程。 例如,廠商物件有下列四個雲端流程:
- ReadVendor:根據供應商編號和金鑰相關信息讀取單個供應商。
- ReadVendorList:根據傳遞的搜索條件搜索供應商清單。
- CreateVendor:使用鍵相關信息創建新的供應商物件。
- UpdateVendor:更新現有供應商物件和密鑰相關信息。
擴充雲端流程
您可以依據本地業務需求來擴充雲端流程。 在 SAP 商務分析師的協助下,您可以新增欄位,並將其對應至 SAP ERP 連接器,然後透過 JSON 承載傳回至應用程式。
建立新的採購申請時,會在畫布應用程式、雲端流程和 SAP 之間提供典型的交易案例:
SAP 申請管理應用程式使用來自輸入控制項和儲存項目集合中的資料來準備 JSON,並用空字串取代為所有 Null 值。
Set( varRequisitionJSON,//Build the requisition JSON "{Header: " & JSON(//Build the requisition header JSON { PurchaseRequisitionNumber: varRequisition, Vendor: Trim(txtRequisitionDetailsVendor.Text), PurchasingOrganization: cmbRequisitionDetailsPurchasingOrg.Selected.'Value Code', PurchasingGroup: cmbRequisitionDetailsPurchasingGroup.Selected.'Value Code', Currency: cmbRequisitionDetailsCurrency.Selected.'Value Code' }, JSONFormat.IndentFour ) & ", items: " & JSON(//Build the requisition items JSON from cached collection colRequisitionItems, JSONFormat.IndentFour ) & "}" ); Set( varRequisitionJSON, Substitute( varRequisitionJSON, "null", """""" ) );
應用程式使用 Run 函數來較用內嵌 CreateRequisition 流程,並傳入先前建構的 JSON 字串。
Set( varRequisitionReturn, CreateRequisition.Run(varRequisitionJSON) );
CreateRequisition 流程會透過 PowerApps (V2) 觸發程序從應用程式接收 JSON 字串,並使用剖析 JSON 動作來分解該字串。
使用 JSON 資訊設置變數 ,以便更輕鬆地對應 SAP ERP 連接器調用。
SAP 工作階段是使用 SAP ERP 連接器建立的,並且使用變數中儲存的已剖析申請 JSON 資訊進行業務應用程式介面 (BAPI) 呼叫。
會評估 SAP 產生的錯誤,並使用 JSON 承載將成功或錯誤的 HTTP 回覆傳回至畫布應用程式。
畫布應用程式會使用回覆資訊,尤其是狀態欄位來通知終端使用者成功或失敗,並判斷下一個處理步驟。
Switch(
varRequisitionReturn.Status,
"Error",//Raise error messages leaving variables in existing state for user to try again
Notify(
Concat(
varRequisitionReturn.Messages,
Message,
" "
),
NotificationType.Error
),
"Success",//Raise success message
Notify(
Concat(
varRequisitionReturn.Messages,
Message,
" "
),
NotificationType.Success
);
其他資訊:
支援多語言部署
根據預設,SAP ERP 連接器會叫用使用者的瀏覽器語言,以與 SAP 互動,因此必須安裝對應的 SAP 語言套件。
不過,如果您需要支援多語言和全域部署,則可以覆寫使用者的瀏覽器語言,並將預設指定為特定語言。 例如,在將其瀏覽器語言設定為西班牙文的西班牙 Power Apps 使用者,可能需要與只安裝英文 (EN) 語言套件的 SAP 系統互動。 在此案例中,將兩個字母的 EN ISO 639-1 代碼作為 SAP 連接字串中語言屬性的一部分傳遞以避免錯誤。
提示
將環境變數 配置為解決方案管理和雲端流程擴展策略的一部分,以集中存儲要傳遞到各種 SAP ERP 連接器操作的語言值。
其他資訊:SAP 系統屬性指南
錯誤處理
每個流程都設計有 Try/Catch 配對範圍作業。 Try 作業內部是主要的 SAP 連接器呼叫。 每次呼叫後,流程會檢查 SAP ERP 連接器步驟是否出現災難性失敗,或是稱為進階商務應用程式編程 (ABAP) 核心傾印。 如果是,則流程會擷取產生的錯誤訊息。
此錯誤訊息會顯示在 Catch 作業的 ErrorTable 步驟中,連同執行該流程期間產生的所有錯誤。
所有的錯誤流程都會記錄在 SAP 解決方案範本錯誤表中。 每個流錯誤都會顯示該流程產生的第一個錯誤訊息以及其他資訊。
請依照監視錯誤一文中的說明前往 SAP 管理員應用程式,以查看顯示的錯誤。