Automation Anywhere

Automation Anywhere Automation 360

關閉內容

內容

開啟內容

Looppackage

  • 已更新:11/09/2021
    • Automation 360 v.x
    • 組建
    • RPA 工作區

Looppackage

使用Loop套件將一系列的actions重複執行特定次數,或執行直到符合特定條件為止。

Looppackage可讓您在bot內重複執行特定actions。例如,重複一組從 Microsoft Excel 檔案讀取每一列資料、重新命名資料夾中的所有檔案,並儲存信箱中每一封電子郵件的actions。您也可以使用Loop動作內的 [If] action來驗證條件,並根據其結果略過迴圈中目前的迭代,或甚至中斷迴圈。

若為條件式迴圈,系統會根據是否符合條件式參數,採取不同的actions。具有特定迭代次數的迴圈會從最後一個迭代結束,並移至bot中的下一個步驟。

Looppackage中的Actions

可用的Loop actions如下:

動作 說明
迴圈 根據從 [迭代器] 清單選取的選項重複特定次數的action,或根據從 [條件] 清單選取的選項,直到符合條件為止。請參閱使用 Loop action
繼續 使用 [繼續] action與 [If] action略過目前的迭代,並根據您在 [If] action中指定的條件繼續迴圈中的下一個迭代。請參閱Ifpackage
中斷 您可以根據在 [If] action中指定的條件,使用 [中斷] action與 [If] action來終止迴圈。終止迴圈時,緊隨在該 [迴圈] action之後的action將執行。請參閱Ifpackage

Loop動作內的迭代器相關條件

選取 [迭代器] 選項,指定一組actions要作為Loop action的一部分重複多少次:

迭代器 說明
針對 CSV/TXT 中的每一列 針對指定之 CSV 或文字檔案中的每一列重複該組actions,並將目前列中的值指派給記錄變數。請參閱在 CSV/TXT 迭代器中對每行使用
針對Data Table中的每一列 針對指定之表格中的每一列重複該組actions,並將目前列中的值指派給記錄變數。請參閱使用表迭代器中的每行
針對 SQL 查詢資料集中的每一列 針對指定之 SQL 查詢資料集中的每一列重複該組actions,並將目前列中的值指派給記錄變數。請提供您用於建立資料庫連線的工作階段名稱。
針對Dictionary中的每個索引鍵 針對指定之字典變數中的每個索引鍵重複該組actions,並將目前索引鍵名稱指派給變數。
註:bot執行包含 [字典] > [放置] action的 [迴圈] action時,該bot僅會迭代字典中的原始項目數量,並忽略以 [放置] action插入的項目。
針對Dictionary中的每個值 針對指定之字典變數中的每個值重複該組actions,並將目前的值指派給變數。此變數類型可保留各種子類型 (字串、數字、布林值等),因此如果您在設定action時快速建立變數,該變數就會是「任何」類型。
註:bot執行包含 [字典] > [放置] action的 [迴圈] action時,該bot僅會迭代字典中的原始項目數量,並忽略以 [放置] action插入的項目。
針對信箱中的每一封郵件 針對指定之信箱中的每一封電子郵件重複該組actions。請參閱使用 [針對信箱中的每封郵件] 迭代器
針對工作表中的每一列 (Excel basicExcel advanced) 針對工作表中包含資料的每一列重複該組actions,並將目前列中的值指派給記錄變數。請提供您用於開啟 Excel basicExcel advanced工作表的工作階段名稱。指定是要針對所有列、指定列或指定之儲存格範圍重複actions。從 [將目前列指派給這個變數] 清單中選取記錄變數,或建立新的記錄變數。請參閱記錄變數
此迭代器會將儲存格值擷取為字串資料類型。它支援 Excel 儲存格格式,包括數字、百分比、貨幣、科學記號和日期。例如,貨幣格式的儲存格中的值,會在傳遞至表格或記錄變數時保留貨幣符號。
  • 您必須轉換值才能執行非字串作業。
  • Excel advanced 中,若選擇迴圈迭代器做為 [針對工作表中的每一列] 時,會有 [讀取] 選項可供您讀取可見文字或儲存格值。

    例如,如果儲存格內容為 70%,[讀取儲存格值] 選項會忽略 % 格式,僅將值讀取為 70,而 [讀取可見文字] 選項則會將內容讀取為 70%。。

    Recommendation: 使用 [讀取儲存格值] 選項作為儲存格的讀取值,以獲得比讀取可見文字更好的效能。

此選項無法讓您使用 [全域工作階段] 選項來透過 Excel advancedpackage分享 Microsoft Excel 工作階段。

替代解決方案:使用 [取得多個儲存格] action,並將資料儲存至資料表變數中,然後在已選取 [資料表] 選項的狀態下使用Looppackage

針對資料夾中的每個檔案 針對指定之資料夾中的每個檔案重複該組actions,並將目前檔案的屬性指派給包含兩個索引鍵的字典變數:name 索引鍵保留檔案名稱,extension 索引鍵保留副檔名。

若要開啟具不同副檔名的檔案,請使用變數選項指派資料夾路徑、檔案名稱和副檔名。首先,為資料夾路徑 $sFolder$ 建立變數。接著,針對資料夾路徑中的檔案建立兩個變數,一個用於檔案名稱 $name$,另一個用於副檔名 $extension$。若要開啟檔案,請將變數合併為字串,例如 $sFolder$\$name$.$extension$。您可以新增條件式邏輯,讓副檔名能搭配不同的檔案類型和不同的開啟選項使用。

針對資料夾中的每個資料夾 針對指定之資料夾中的每個資料夾重複該組actions,並將目前的資料夾名稱指派給字串變數。
針對清單中的每個項目 針對指定之清單中的每個項目重複該組actions,並將目前的項目指派給變數。指定是要針對清單中的所有項目或僅清單中的項目範圍重複action此變數類型可保留各種子類型 (字串、數字、布林值等),因此如果您在設定action時快速建立變數,該變數就會是「任何」類型。
註: 清單中的索引從零開始。例如,若要針對清單第三個到第六個位置的項目重複action,請在適當的欄位中指定 25
共 n 次 在容器中將actions重複指定的次數。您可以將此迭代計數指派給 Number 變數。
針對記錄中的每個值 針對指定之記錄中的每個值重複actions,並將目前的值指派給變數。此變數類型可保留各種子類型 (字串、數字、布林值等),因此如果您在設定action時快速建立變數,該變數就會是「任何」類型。
針對行事曆中的每個會議 使用此選項,針對指定之行事曆中的每個會議重複該組actions。請參閱循環使用 Office 365 行事曆動作
針對工作表 (Office 365 Excel) 中每一列 針對工作表中包含資料的每一列重複該組actions
  • 請提供您用於開啟工作表的工作階段名稱。
  • 指定是要針對所有列或特定列重複actions
  • 您可以將目前列中的值指派給記錄變數。
針對 XML 資料集中的每個節點 針對 XML 資料集中的每個節點重複該組actions,並將目前的節點指派給 String 變數。請提供您用於開啟 XML 檔案的工作階段名稱。

Loop動作中的 While 相關條件

您可以在單一Loopaction內設定多個 while 相關條件:
  1. 按一下 [新增條件]。
  2. 選取下列其中一個選項:
    • [And]:必須同時符合這兩個條件,才能執行actions
    • [Or]:必須符合任一條件,才能執行actions
  3. 從下拉式清單中選取條件。
選取 [While] 選項以使用下列條件:
While 說明
應用程式 使用 [應用程式未執行],或 [應用程式執行中] 條件,可根據應用程式是否正在執行來執行actions

輸入應用程式路徑或使用變數指定路徑,連同等待該條件成立的時間 (以秒為單位)。

Boolean 使用此條件以根據Boolean變數的值執行actions。使用此條件以針對兩個布林值變數的值做比較,或將一個布林值變數與所選取之布林值做比較。
資料表 使用 [資料表為空白] 條件,可根據指定的表格是否包含值來執行actions

使用 [列數] 和 [欄數] 條件,可根據欄數或列數 [等於]、[大於] 或 [小於] 指定值來執行actions

日期時間 使用 [日期時間變數] 條件,可根據來源日期時間變數的值 [等於] 或 [不等於]、[大於] 或 [等於],或 [小於] 或 [等於] 目標日期時間變數的值來執行actions
Dictionary 使用此條件,以根據所選之字典變數是否包含指定之索引鍵,重複該組actions
註: 索引鍵比較會區分大小寫。
File 使用以下條件來執行action
  • [檔案日期]

    使用此條件可確認所指定檔案的建立或修改日期與時間。您可以使用 [在過去...天]、[之間] 或 [之前] 選項來指定日期範圍。針對 [在過去...天] 選項,以小時、分鐘和秒數為單位指定天數或時間。請輸入等待此條件成立的時間 (秒數)。

  • [檔案存在] 和 [檔案不存在]

    使用這些條件可根據檔案是否存在來執行action。舉例來說,如果資料檔案存在,系統即會將檔案格式化並上傳到資料庫。

  • [檔案大小]

    此條件可驗證所指定檔案相較於您指定的大小為較大、較小、相同或不同。

    請輸入等待此條件成立的時間 (秒數)。

Folder存在或不存在 使用這些條件,以根據資料夾存在與否來重複該組actions
影像辨識 使用這些條件來驗證:
  • 是否在 [影像檔案] 中找到 [影像檔案]。
  • 是否在 [視窗] 中找到 [影像檔案]。
  • 是否在 [影像檔案] 中找到 [視窗]。
  • 是否在 [視窗] 中找到 [視窗]。
對於 [視窗] 條件,您可以使用 [調整視窗大小] 選項來指定視窗的尺寸。此選項可提供更可靠的bot。它會將視窗大小調整為錄製任務的尺寸,藉此提高機器人識別目標物件的能力。
註: 此選項僅適用於可調整大小的視窗。而不適用於桌面或任務列選項。

對於 [視窗] 條件,您可以使用 [預覽] 選項選取特定的擷取項目,並將您的點選位置放置在影像相對之處。

JavaScript 使用 [指令碼成功] 或 [指令碼不成功] 條件,可根據所指定 JavaScript 的狀態來執行actions。選取包含指令碼的檔案,並選取清單變數以選擇性地指定參數。
舊版自動化 [舊版自動化] 條件僅用於已移轉bots,以確保其能在 Automation 360 中順暢執行。我們建議將這些條件用於新的bot開發。下列條件可驗證下列事項:
  • [網頁控制項] 是否存在。
  • [視窗控制項] 是否存在。
  • [視窗控制項] 是否為作用中。
  • [指令碼] 是否執行成功。
  • [下層視窗] 是否存在。

對於 [視窗控制項] 條件,您可以使用 [調整視窗大小] 選項來指定視窗的尺寸。此選項可提供更可靠的bot。它會將視窗大小調整為錄製任務的尺寸,藉此提高機器人識別目標物件的能力。

清單 使用 [清單變數] 條件,可根據指定的清單變數是否包含特定值來執行actions。該值可以是 [數字]、[字串] 或 [布林值] 資料類型。
數字 使用 [數字變數] 條件,可根據指定的數字變數 [等於] 或 [不等於],或 [大於] 或 [等於],或 [小於] 或 [等於] 特定值來執行actions
Ping 使用 [Ping 成功] 或 [Ping 不成功] 條件驗證電腦或伺服器是否正在執行,並根據結果執行action。請輸入等待條件成立的秒數。
錄製器
  • 使用 [物件存在] 條件來偵測視窗中的物件。選取視窗或變數以擷取物件。請輸入等待此條件成立 (也就是偵測到物體) 的秒數。
  • 使用 [物件不存在] 條件確認視窗中的特定物件是否存在,然後根據結果執行actions。請輸入等待此條件成立的時間 (秒數)。例如,您可以在 [Loop] > [While] 條件內使用 [物件不存在] 條件,以確保在載入商務應用程式上的物件之前,bot不會執行下一個action
服務 使用 [服務執行中] 或 [服務未執行] 條件,可根據服務是否正在執行來執行actions。選取 [服務清單],從可用服務清單中選擇服務。
String 使用 [字串變數] 條件,可根據指定的來源字串值 [等於] 或 [不等於],或 [包含] 或 [不包含] 目標值來執行actions

您可以選取 [大小須寫相符] 選項,則只有當兩個字串的大小寫字母相符時才會執行actions

當您從 Microsoft 應用程式擷取文字時,所擷取的文字包含表示換行的 /r/n 特殊字元。如果您要在比較文字時忽略 /r 特殊字元,請選取 [忽略回車] 選項。

若要根據字串是否為空白來建立條件,請使用 [等於] 運算子將來源值與空白目標欄位比較。

請參閱使用條件語句的示例

Task Bot 使用 [任務成功] 或 [任務不成功] 條件,可根據所指定Task Bot的狀態來執行actions
VBScript 使用 [指令碼成功] 或 [指令碼不成功] 條件,可根據所指定 Visual Basic 指令碼的狀態來執行actions。選取包含指令碼的檔案,並選取變數以選擇性地指定參數。
視窗 使用 [視窗存在] 或 [視窗不存在] 條件,透過輸入 [視窗標題] 或使用變數來驗證特定應用程式視窗是否開啟。請輸入等待條件成立的秒數。

使用 [不存在具有相同標題的視窗] 或 [存在具有相同標題的視窗] 條件,以驗證具有相同標題的視窗是否存在,或視窗標題是否變更。輸入時間 (秒數) 以持續驗證該條件是否為 True。

傳送意見反饋