Note
本文說明由標準執行架構驅動的 Agent 或 Agent 流程中所使用的功能。
Power Fx 是一種低程式碼語言,使用類似 Excel 的公式。 使用 Power Fx 建立複雜的邏輯,使您的代理程式能夠操作資料。 例如,Power Fx 公式可以設定變數的值、剖析字串,或在條件中使用運算式。 欲了解更多資訊,請參閱 Power Fx 概述 與 公式參考。
Note
Copilot Studio 中的 Power FX 公式採用美式編號。 也就是,小數點分隔符號為句號或圓點,如 12,567.892 中所示。 這表示您必須使用逗號 (,) 作為 Power Fx 公式的參數分隔符。
先決條件
在公式中使用變數
要在 Power Fx 公式中使用變數,必須在其名稱後加上前綴以標示變數的範圍:
例如,若要在公式中使用系統變數 Conversation.Id,請將該系統變數寫為 System.Conversation.Id。
在公式中使用字面值
除了在 Power FX 公式中使用變數外,你還可以輸入字面值。 要在公式中使用字面值,必須以對應 該公式類型的格式輸入。 下表列出資料類型以及其對應常值的格式。
| 類型 | 格式範例 |
|---|---|
| String |
"hi"、"hello world!"、"copilot" |
| 布林值 | 只有 true 或 false |
| 編號 |
1, 532, , 5.258-9201 |
| 記錄和表格 |
[1]、[45, 8, 2]、["cats", "dogs"]、{ id: 1 }、{ message: "hello" }、{ name: "John", info: { age: 25, weight: 175 } } |
| 日期時間 |
Time(5,0,23)、Date(2022,5,24)、DateTimeValue("May 10, 2022 5:00:00 PM") |
| 選擇 | 不支援 |
| 空白 | 只有 Blank() |
常見的Power Fx公式
下表列出您可以搭配每個數據類型使用的數據類型和 Power Fx 公式。
使用 Power Fx 設定變數
在此範例中,Power Fx 運算式以大寫字母儲存並輸出客戶名稱。
建立主題並新增問題節點。
在輸入訊息中,輸入「您叫什麼名字?」。
在識別下方,選取實體人員名稱。
選擇將使用者回應儲存為下的框,然後選擇變數
Var1並將其命名為customerName。在問題節點下方,選取 +,然後選取設定變數值。
選取設定變數底下的方塊,然後選取建立新變數,並將其命名為
capsName。在目標值方塊中,選取 > 箭頭,然後選取公式索引標籤。
在 fx 方塊中,輸入
Upper(Text(Topic.customerName)),然後選取插入。
在問題節點下方選取 +,然後選取傳送訊息。
輸入「你好」,選擇 {x},然後選擇
capsName。
使用 Power Fx 公式做為條件
若要評估更複雜的運算式,請設定條件節點以使用 Power Fx 公式。
在此範例中,代理程式確定預訂日期是否符合折扣資格。 為了進行判斷,它會檢查客戶提供的預約日期是否距目前日期 14 天或更久。
建立主題並新增問題節點。
在輸入訊息中鍵入「預訂日期?」。
在識別下方,選取實體日期和時間。
選擇將使用者回應儲存為下的框,然後選擇變數
Var1並將其命名為bookingDate。
選取問題節點下方的
新增節點圖示 ,然後選取新增條件。選取條件節點上的三個點(...),然後選擇「變更至公式」。
在函數方塊中,選取 > 箭頭,然後選取公式索引標籤。
將 fx 方塊的內容取代為公式
Topic.bookingDate > (DateAdd (Now(), 14)),然後選取插入。在條件節點下,新增訊息節點並輸入訊息「您可享有折扣」。
在所有其他條件節點下,新增訊息節點並輸入訊息「抱歉,您無法享有折扣」。