使用 Dataverse 中的低程式碼外掛程式 (預覽版)
[本主題是發行前版本文件,並可能在未來變更。]
Microsoft Dataverse 提供功能強大的解決方案,可讓您獲得更有效率的資料架構,並透過低程式碼外掛程式減少用戶端工作負載。這些外掛程式是可重複使用的即時工作流程,它會在 Dataverse 中執行一組特定的命令,在伺服器端執行,並會由個人化事件處理程式觸發。
重要
- 這是預覽功能。
- 預覽功能不供生產時使用,而且可能功能受限。 這些功能是在正式發行前先行推出,讓客戶能夠搶先體驗並提供意見反應。
外掛程式通常是建立為編譯成 .NET Framework 組譯碼的自訂類別,然後在 Dataverse 中上載並註冊。 不過,隨著低程式碼外掛程式的引進,使用者可以使用最少或無需編寫程式碼就能建立這些事件處理程式,且不需要手動註冊。
低程式碼外掛程式會儲存在 Dataverse 資料庫中,而且可以無縫整合入 Power Apps 和 Power Automate。 工作流程的行為是使用 Power Fx 運算式語言定義,而且可以透過 Power Platform 連接器直接連接至 Dataverse 商務資料和外部資料來源。 透過低程式碼外掛程式,製作者只需使用最少的編碼專業技能,就能快速構建複雜的工作流程,得到更加簡化和有效率的資料架構。
伺服器端邏輯的優點
定義伺服器端商務規則可提供幾項好處,包括:
- 更多的安全性。 因為伺服器端邏輯是在伺服器上執行,所以可協助防止未經授權的敏感性資料或程式存取。
- 提升的效能。 透過在伺服器上執行,商務規則可以減少需要在客戶與伺服器之間傳輸的資料量,造就較快的處理時間。
- 一致性和可靠性。 伺服器端邏輯可確保商務規則一致套用在所有用戶端,減少錯誤或不一致的風險。
- 更容易維護和更新。 讓商務規則集中在伺服器上,會更容易維護和更新,因為可以在單一位置進行變更,不需更新多個用戶。
- 可擴縮性。 伺服器端邏輯比用戶端邏輯更容易調整大小,能提供更好的效能和處理較大量的工作負載。
低程式碼外掛程式
Dataverse 中支援兩種低程式碼外掛程式:
類型 | 觸發程序 | 支援參數 | 支援的範圍 |
---|---|---|---|
即時 | 手動執行 | .是 | 全域與表格 |
已自動化 | Dataverse 表格事件 | 否 | 資料表 |
所有低程式碼外掛程式都有下列共同屬性:
屬性 | 描述 |
---|---|
Display name | 外掛程式的人類可讀名稱。 一旦建立後,就無法變更。 |
姓名 | 外掛程式的內部名稱。 它是平台用來識別程式碼和資料庫作業中的元件。 一旦建立後,就無法變更。 |
描述 | 用來提供關於外掛程式的其他上下文 (目的、行為或其他重要詳細資料)。 |
方案 | 用來歸類元件並匯出至其他環境。 深入了解解決方案。 |
運算式 | 這是可用來執行動作或計算的自訂函數,使用 Power Fx 運算式語言定義。 Power Fx 是在 Power Apps 畫布應用程式中使用的公式語言,並已擴充至用於低程式碼外掛程式。 請參閱支援的函數以了解更多詳細資料。 |
即時低程式碼外掛程式是由使用者手動觸發的自訂程式碼邏輯。 可以使用自訂輸入和輸出參數。
唯一的屬性:
屬性 | 描述 |
---|---|
Scope | 用來建立外掛程式與特定表格之間的關聯性。 它可以設定成表格 (顯示為實體) 或全域,其中表格 (實體) 範圍表示外掛程式是由特定表格記錄的上下文所觸發,而全域範圍則表示該作業與表格無關 (了解更多資訊)。 |
參數 | 參數讓您可以在外掛程式和執行它的上下文之間傳遞資訊,更容易設計可以在不同情況下重複使用的的商務規則。 輸入參數是用來提供資料給外掛程式,並可讓您透過傳遞您在 Power Fx 公式中指定的不同值來控制函數的行為。 輸出參數讓您可以檢索函數或方法的結果,以進一步用於您的程式。 支援的資料類型:
|
有關如何從畫布應用程式或在 Power Automate 雲端流程中整合的詳細資訊:整合低程式碼外掛程式
外掛程式權限
設計時間
在 Power Platform 環境中擁有系統自訂者或系統管理員資訊安全角色成員資格的製作者,可以存取該環境中的所有外掛程式。 自訂資訊安全角色可用來限制低程式碼外掛程式的存取。
執行時間
叫用外掛程式時,它會存取與外掛程式定義相關的表格資料 (屬於公式一部分的表格,或如果該表格與自動化外掛程式的設定有關),該定義位於叫用該外掛程式之使用者的上下文中。
關係
使用資訊安全角色,可以將外掛程式中的連接器存取限制為組織中的特定一組使用者。 指定具有建立、讀取、更新或刪除權限的角色。
建立低程式碼外掛程式的先決條件
- Power Platform 環境中的系統管理員或系統自訂員資訊安全角色成員資格。
- 存取 Dataverse加速器應用程式。
提示
所有新環境自 2023 年 10 月 1 日起都會自動安裝 Dataverse 加速器應用程式。 如果您已經安裝 Dataverse 加速器,您可以手動更新 Dataverse 加速器。
更新 Dataverse 加速器
- 依照說明,查看您環境中的已許可應用程式。
- 如果已安裝 Dataverse 加速器,且有可用的更新,則會在項目旁邊的表格中指示。
- 選取 Dataverse 加速器,然後在命令列上選取更新。
提示
啟用 Microsoft - Power CAT 發行者的自動應用程式更新,以自動接收可用的更新 (2023 年 10 月 1 日之後才建立的新環境則不需要)。
注意
如果您之前安裝了選用的連接器的低程式碼外掛程式解決方案,則在您於 2023 年 6 月 29 日之後更新時,會自動刪除該外掛程式。 這些功能將會在主要解決方案中提供。
建立即時低程式碼外掛程式
- 播放 Dataverse 加速器應用程式。
- 選取建立即時外掛程式卡片。
- 提供顯示名稱。
- (選用) 定義參數:
- 選取新輸入參數或新輸出參數,然後輸入標籤和資料類型。
- 視需要新增其他輸入和輸出參數。
- 在運算式編輯器中,輸入 Power Fx 運算式。
- 在公式中依照標籤名稱來提及輸入參數。
- 提及輸出參數時必須包含在大括弧內,例如
{ Out: "Return value" }
。 - 使用資料集合函數來提及 Dataverse 表格,例如 Filter() 和 LookUp()。
- 如果範圍設為實體,請使用
ThisRecord
來存取與外掛程式執行相關之表格內的行值,例如ThisRecord.'Account Name'
。
提示
在運算式方塊中註記 intellisense。 劃紅色底線的表示無效。 波浪形黃色表示您的邏輯可能會受委派限制的影響。 使用可委派的功能,避免委派問題。
- 選擇性地展開進階選項 以修改解決方案、範圍或描述。
- 選取儲存。
- 測試您的即時低程式碼外掛程式。
範例:計算二個整數的總和。
- 建立兩個輸入參數,
X
和Y
(均為整數類型) 和一個輸出參數Z
(類型字串)。 - 使用下列公式:
{Z: X + Y }
建立自動化低程式碼外掛程式
- 播放 Dataverse 加速器應用程式。
- 選取建立自動化外掛程式卡片。
- 提供以下值:
- 名稱:輸入外掛程式的名稱,例如輸入驗證。
- 表格:選擇要和外掛程式建立關聯的表格,例如帳戶。
- 資料列為以下情形時執行此外掛程式規則。 指定叫用外掛程式的資料事件。
- 在運算式編輯器中,輸入 Power Fx 運算式。
- 使用資料集合函數來提及 Dataverse 表格,例如 Filter() 和 LookUp()。
- 請使用
ThisRecord
來存取與外掛程式執行相關之表格內的行值,例如ThisRecord.'Account Name'
。
- 或者,展開進階選項以修改階段 (何時執行) 和儲存外掛程式的解決方案。
- 選取儲存。
- 測試您的自動化低程式碼外掛程式。
使用低程式碼外掛程式中的 Power Platform 連接器
Power Platform 連接器可用於低程式碼外掛程式中,以輕鬆來自整合 Dataverse 外部系統 (例如 SQL Server、Salesforce 和 SharePoint) 的資料和功能,而不需要複雜的編碼或自訂開發。
在低程式碼外掛程式中使用連接器的先決條件
- 建立低程式碼外掛程式的先決條件
- 具有使用中連線的連接參照。
在低程式碼外掛程式中使用連接器動作
您可以在低程式碼外掛程式的 Power Fx 公式中輕鬆使用連接器和自訂連接器。
- 建立連至您要使用之連接器的連線。
- 新增連接參照到 Dataverse 環境中的連線。
- 在低程式碼外掛程式 Power Fx 運算式編輯器中,輸入連接參照的名稱 (內部名稱加上前綴和底線,例如
new_connectorName
,而不是顯示名稱)。 - Intellisense 會顯示可用的動作。 選取您要的動作,然後輸入必要參數。
使用低程式碼外掛程式中的連接器前,請先檢閱連接器的文件,以確定您正確傳遞了輸入和輸出參數。
其他資訊:範例
注意
- 目前並不支援所有的連接器。
- 請勿使用 Dataverse 連接器從外掛程式運算式連接至 Dataverse 表格。 而是改為使用本機 Power Fx 函數與集合進行互動: 篩選條件、搜尋、查詢、修補程式、收集和設定,其中資料行會被視為全域變數。
測試低程式碼外掛程式
測試即時外掛程式
在首頁畫面,從清單中選取即時外掛程式,然後在命令列上選取測試。 您也可以在儲存後,從命令列中的即時外掛程式編輯器進入此畫面。
提供要在低程式碼外掛程式中定義之任何輸入參數的值,然後選取執行。
觀察回覆:
提示
使用輸出參數以協助驗證預期的行為與結果。 否則,測試時,您只會看到成功或失敗。
測試自動化外掛程式
叫用資料事件,以測試自動化外掛程式。 透過驗證在公式中定義的預期變更,觀察外掛程式是否順利運作。
提示
在預覽期間,您可以使用 Power Apps 中的表格編輯器來叫用相關的資料事件:
- 登入 Power Apps,移至表格,然後選取外掛程式表格。
- 在命令列上選取編輯。
- 從此視圖直接建立、更新或刪除列。 或者,您可以選取列,然後在命令列上選取使用表單編輯列,以在預設表單中打開列。
整合低程式碼外掛程式
從畫布應用程式或自訂頁面叫用即時外掛程式
- 在 Dataverse 加速器應用程式中:
- 選取清單中的即時外掛程式。
- 選取命令列上的複製程式碼片段。
- 將複製的公式貼至文字編輯器或記事本 (任何您可以輕易回頭參考的地方) 並儲存。
- 在 Power Apps 中:
- 在 Power Apps studio 中建立或編輯畫布應用程式 (或自訂頁面)。
- 在左側瀏覽中,資料來源索引標籤底下,選取 + 新資料來源,然後從 Dataverse 連接器中搜尋環境選項。
- 將下列元件插入至畫布:
- 將您複製的外掛程式公式貼到按鈕的
OnSelect
屬性中。 - 對應每個輸入參數
Value
以參照相應的輸入控制項:- 若公式為
Environment.new_CalculateSum({ X: Value, Y: Value });
,則可以重新寫為:Environment.new_CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text });
- 若公式是綁定的,請將表格顯示名稱更換為
Environment
以存取外掛程式。
- 若公式為
- 如果為低程式碼外掛程式定義了輸出參數:
- 在
Set()
或UpdateContext()
公式中擷取回覆:Set( ActionResult, Environments.CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text }) );
。 在標籤中顯示變數。 或者,在通知中使用Notify()
公式來顯示資料。
- 在
- 播放應用程式,並選取命令列上的命令以執行低程式碼外掛程式。
深入了解如何直接從畫布應用程式中的 Power Fx 調用 Dataverse 動作。
從 Power Automate 雲端流程叫用即時外掛程式
- 在雲端流程中,從 Microsoft Dataverse 連接器新增動作。
- 選取名為執行解除綁定動作,或 執行綁定動作的動作。
- 選取您的外掛程式 (它具有包含前綴的唯一名稱)。
- 提供所有輸入參數的值 (如果有的話)。
從 Dataverse Web API 叫用即時外掛程式
請遵循從 Web API 文件叫用自訂 API 中解除綁定動作或將函數綁定至表格區段的步驟 (取決於外掛程式的適當範圍)。
取得有關低程式碼外掛程式的協助
如果您在建立或執行低程式碼外掛程式時遇到問題,請移至以下提示以了解可能發生的常見問題:Microsoft Dataverse 低程式碼外掛程式提示和已知問題
聯繫説明 + 支援
對於 Microsoft Dataverse 低程式碼外掛程式提示和已知問題中未涵蓋的 Dataverse 加速器解決方案安裝或低程式碼外掛程式的問題 (例如收到未記錄的錯誤), 請使用「説明 + 支援」體驗並包含以下資訊:
- 問題類型 - Dataverse Web API 和 SDK
- 問題子類型 - 適用於 Dataverse 的加速器套件
您可以建立的範例低程式碼外掛程式
如需如何建立低程式碼外掛程式的範例,請移至範例 Dataverse 低程式碼外掛程式 (預覽版)
限制
需要重新新增環境語言物件,才能存取現有畫布應用中的新外掛程式。 對於任何在您將環境表格資料來源新增到現有畫布應用程式後建立的外掛程式,您都必須刪除並重新新增 Power Fx 環境語言物件。 然後,您會看到低程式碼外掛程式成為動作的更新清單。
如果您要參考公式中的任何表格,Intellisense 需要在自動化外掛程式中填入明顯標記。 請使用下列消除歧義語法,例如
[@Accounts]
,使用方括弧和@
符號 (非Accounts
)。嵌入的支援。 外掛程式只能調用由 Microsoft 從 Power Fx 運算式發佈的第一方動作。
某些
Collect
案例需要Patch
。 在某些案例中,無法使用Collect()
。 變通辦法是使用Patch()
,如下方的填入關於行範例所示。 如果您正在建立自動化外掛程式,請在 Power Fx 公式中所參照的每個表格開頭添加 @。Patch(Faxes, Collect(Faxes, { Subject : "Sub1" } ), { Regarding : First(Accounts) } )
當低程式碼外掛程式與連接器進行互動並使用 DLP 時,系統管理員會封鎖使用 DLP 建立的連線。 但是,Dataverse 環境中現有的連接參照會繼續運作。 在系統管理員需要封鎖所有低程式碼外掛程式與任何連接器的互動時,他們可以停用組織設定
Allowconnectorsonpowerfxactions
。 此設定會預設啟用,並可透過一般的 SDK 方法 (WebAPI、SDK、PowerShell 等) 加以停用。 您可以使用低程式碼即時外掛程式來停用,如下所示:Patch(Organizations, First(Organizations), { 'Enable connectors on power fx actions.': 'Enable connectors on power fx actions. (Organizations)'.No })
使用連接器的外掛程式只可以從特定欄位輸出結果。 因此,您必須將特定的基元值從連接器回覆對應至輸出值。
具備自訂連接器限制的低程式碼外掛程式
如果您有具備自訂連接器的低程式碼外掛程式,則必須在連接參考或流程之前先匯入自訂連接器。
如果您的環境在解決方案中不包含自訂連接器,請匯入只包含自訂連接器的單獨解決方案。 在匯入實際解決方案之前執行此匯入。 您需要先進行此匯入,因為 Azure 必須先註冊自訂連接器,其他解決方案元件才能被匯入 。
如果您匯入的是包含自訂連接器和流程的解決方案,則 Azure 無法在註冊您的連接參考或流程的同時,註冊自訂連接器。 這也適用於先前在個別解決方案中匯入的自訂連接器的連線參考。 如果 Azure 未註冊您的自訂連接器,則匯入作業將失敗,或您將無法開始匯入。
更多資訊: 在解決方案中建立自訂連接器:已知限制
另請參閱
在 Power Apps 中使用 Dataverse 低程式碼外掛程式中的預建提示