迴圈
「迴圈」動作會在特定時間內重複執行一個動作或一組動作,或直到符合條件為止。此動作提供兩種類型的迴圈方法:
• 「次數」- 重複一或多個任務,直到符合特定計數為止。因此,舉例來說,如果您要在 Onedrive 帳戶中建立多個相同的連絡人,請在您的工作流程中使用「次數」迴圈時間。它會執行任務 x 次。
• 「每個項目」- 為陣列或集合中的每個項目重複一或多個任務。如果您只想要從傳回之陣列的所有物件中擷取 'name' 內容的值,您可以使用此類型的迴圈。它會針對集合或陣列中的每個項目執行任務。
例如,如果您想要擷取所有 Trello 卡片的清單並在 Google Tasks 中為每張卡片建立任務,請使用「每個項目」迴圈選項。每張卡片的名稱都是在 Google 任務中建立之對應任務的標題。相較於建立多個單獨的工作流程來擷取單一 Trello 卡片的名稱,然後在 Google 任務中建立新任務,這會快得多。
使用迴圈動作
欲在工作流程中使用此動作,請將其連線至 ThingWorx Flow。欲連線至流程,請執行下列操作:
1. 按一下
![](../../../../ThingWorx/images/UtlityIcon.png)
並將
「迴圈」公用程式下的
「迴圈」動作拖曳至畫布。迴圈動作可以依據您的需求展開或收縮。您可以在迴圈區塊內新增多個動作來建立迷你工作流程。當將動作拖曳到工作流程畫布的迴圈外時,無法將其拖曳到迴圈內。欲在迴圈中新增動作,請直接將其從動作導覽面板拖曳至迴圈。
當執行工作流程時,會先以所有先前的動作開始,然後重複執行迴圈區塊內的所有動作,直到符合定義的計數或條件為止,然後接著繼續執行下列動作。
2. 將指標置於動作上,然後按一下
![](../../../../ThingWorx/images/SettingsIcon_2.png)
,或連按兩下該動作。「迴圈」動作視窗即會開啟。
3. 視需要編輯標籤名稱。依預設,標籤名稱與動作名稱相同。
4. 在「選取迴圈類型」欄位中,選取下列其中一個選項:
◦ 「次數」- 在「次數」欄位中指定應執行迴圈的次數。建議您在「迴圈」動作中的工作流程不需要來自上一個動作的輸入時,執行此迴圈。
◦ 「每個項目」- 執行多次,每次都會取用陣列的一個項目或物件,如「來源陣列或物件」欄位所指定。
5. 按一下「完成」。
以下視訊用於示範如何使用「迴圈」動作。
輸出結構描述
「迴圈」動作會傳回如下圖所示的輸出結構描述:
• currentIndex - 此內容會擷取目前版序的索引或位置。
• currentItem - 如果在「迴圈」設定中選取的來源是物件陣列,此內容會傳回每個版序的目前物件。
• currentKey - 如果在「迴圈」設定中選取的來源是物件,此內容只會傳回物件的金鑰。如果來源是陣列,它會傳回每個項目的索引。
• currentValue - 如果在「迴圈」設定中選取的來源是物件,此內容只會傳回物件的值。如果來源是陣列,它會傳回陣列的所有項目,包括完整物件 (如果陣列內有任何物件)。您可以使用點標記法 (例如 {{$a0.currentValue.name}}) 擷取特定金鑰或內容的值。
• totalLength - 傳回物件陣列內所有物件的總數,或陣列內所有項目的總數。