Switch
Switch 就像是選擇控制陳述式。它可讓您為工作流程定義可能的執行路徑數。
在 Switch 動作中,您可新增一或多個個案。每個個案都包含一或多個條件以及在符合所定義條件情況下會執行的下一個步驟。此動作也包括一個預設區塊,用來指定在不符合任何條件情況下將會執行的動作。此動作可讓您更輕鬆地新增複雜工作流程,同時減少總工作流程執行時間。
使用 Switch 動作
欲在工作流程中使用此動作,請將其連線至 ThingWorx Flow。欲連線至流程,請執行下列操作:
1. 按一下 ,將「開發者工具」公用程式下的 Switch 動作拖曳至畫布,將指標置於動作上,然後按一下 或連按兩下該動作。Switch 動作視窗即會開啟。
2. 按一下「個案」
3. 使用條件區塊指定「個案 1」的條件。您可使用 ANDOR 運算子來指定多個條件。無法在群組內新增 OR 運算子。複雜條件必須解析為簡單層級的邏輯,才能與 Switch 公用程式搭配使用。
* 
如果將條件設定為下列任一項:「是 True」、「是日期」、「是數值」、「是字母數字」、「為空」、「是陣列」,請勿輸入「預期」值。
4. 「選取動作」欄位中,選取在符合「個案 1」下指定條件時您要執行的動作。按一下「新增個案」可新增多個個案。
5. 在預設部份的「選取動作」欄位中,選取在不符合任何條件時您要執行的動作。
6. 按一下「完成」。它會在 Switch 及其對應動作之間自動建立連線。您無法手動建立這些連線。
範例
讓我們假設有一個需求,即每當某些廠商將新檔案上載至 OneDrive 帳戶時,該檔案會被下載,並作為附件透過郵件傳送給客戶。但是,由於某些下載限制,如果檔案大小大於指定限制,則會透過郵件傳送下載檔案 URL,而不使用附加檔案。
新增及配置 OneDrive 觸發器
讓我們設定每次將新檔案上載至 OneDrive 時都會觸發的觸發器。
1. 將指標置於開始圖示 上,然後按一下 ,或連按兩下 。隨即顯示觸發器清單。
2. 選取 Onedrive 觸發器。OneDrive 觸發器組態視窗即會開啟。
3. 在觸發器視窗中輸入資訊,然後按一下「儲存」
配置 Switch 動作
我們現在將定義 Switch 動作中的下列條件:
如果已上載檔案的大小超出 1 MB,則會透過郵件傳送下載檔案 URL。
如果已上載檔案的大小小於 1 MB,則會下載檔案,並以電子郵件附件傳送。
完成下列配置 switch 動作的步驟:
1. 按一下 ,將「開發者工具」公用程式下的 Switch 動作拖曳至畫布,將指標置於動作上,然後按一下 或連按兩下該動作。Switch 動作視窗即會開啟。
2. 按一下「個案」。新個案區塊即會顯示。
3. 定義條件,並指定在符合指定條件情況下要執行的動作。在第一種情況下,我們會檢查檔案大小是否大於 1024 個位元組。
a. 「輸入」欄位中,從 Switch 組態視窗右側的「觸發器資料」部份中新增資料參數「大小」。這樣會傳回檔案的大小。
b. 「條件」清單中,選取 「(數值) 大於」運算子。
c. 「預期」欄位中,輸入 1024
d. 指定若符合此條件時要執行的動作。在「選取動作」欄位中,選取「透過電子郵件傳送檔案 URL」動作。
此欄位會自動擷取畫布上的所有可用動作,並將其顯示在清單中。
4. 「預設」部份的「選取動作」欄位中,指定如果不符合指定條件時會執行的動作。
「下一個動作」欄位中,選取「下載檔案」
5. 按一下「完成」ThingWorx Flow 會如 switch 組態視窗中所指定的方式自動將 Switch 動作連線至其他動作;藉此為指定了個案編號的每個個案建立不同路徑。
您無法手動建立、編輯或刪除這些連線。若要變更這些連線,您需要從 Switch 組態視窗中變更設定。
在工作流程中配置其他動作
我們現在將配置其餘動作以完成工作流程。下一部份提供僅與欄位對應相關的資訊。您可能必須為其他動作輸入其他資訊。
開發者工具 -「下載檔案」
1. 「觸發器資料」部分下的「下載 URL」參數對應至 URL 欄位。
2. 「觸發器資料」部分下的「名稱」參數對應至「已下載檔案的名稱」欄位。
Office 365 -「傳送電子郵件」
1. 「標籤」欄位中,輸入 Send file URL over Email
2. 「觸發器資料」部分下的「下載 URL」參數對應至「本文」欄位。
Office 365 -「傳送電子郵件」
1. 「標籤」欄位中,輸入 Attach File to Mail
2. 「下載檔案」部份下的「檔案/資料夾路徑」參數對應至「來源檔案路徑」欄位。
輸出結構描述
Switch 動作會傳回如下圖所示的輸出結構描述: