Loop package

特定の回数、あるいは条件が満たされるまで、actions のシーケンスを繰り返し実行するには、Loop パッケージを使用します。

Loop packageを使用すると、bot 内で特定のactionsを繰り返し実行できます。たとえば、Microsoft Excel ファイルの各行からのデータを読み取る、フォルダー内のすべてのファイルの名前を変更する、各 E メールをメールボックスに保存するなどのactions セットを繰り返すことができます。また、Loop アクション内で [If] action を使用すると、条件を検証し、その結果に基づいて、ループ内の現在の反復をスキップしたり、ループを抜けたりすることも可能です。

条件付きループでは、条件パラメーターが満たされているかどうかに応じて、異なるactionsが実行されます。反復回数が指定されたループの場合、ループは最後の反復で終了し、bot の次のステップに進みます。

[Loop] package内のActions

以下のLoop actionsを使用できます。

アクション 説明
ループ [反復子] リストで選択したオプションに基づく特定の回数、または [条件] リストで選択したオプションに基づく条件が満たされるまで、action を繰り返します。「[Loop] actionの使用」を参照してください。
続行 [If] action で指定した条件に基づいて現在の反復をスキップし、ループ内の次の反復に進むには、[続行] action を [If] action と組み合わせて使用します。「If package」を参照してください。
Break [Break] action を [If] action と組み合わせて使用すると、[If] action で指定した条件に基づいてループを終了できます。ループを終了すると、[ループ] actionの直後の action が実行されます。「If package」を参照してください。

Loop アクション内の反復子関連の条件

[反復子] オプションを選択して、Loop action の一部として actions セットを繰り返す回数を指定します。

反復子 説明
CSV/TXT 内の各行に以下の処理が実行されます。 指定した CSV またはテキスト ファイルの各行にactions セットを繰り返し、レコード変数に現在の行の値を割り当てます。「[CSV/TXT の各行を対象にする] 反復子の使用」を参照してください。
Data Table 内の各行に以下の処理が実行されます。 指定したテーブルの各行にactions セットを繰り返し、レコード変数に現在の行の値を割り当てます。「[テーブルの各行用] 反復子の使用」を参照してください。
SQL クエリ データセットの各行 指定した SQL クエリ データセットの各行にactions セットを繰り返し、レコード変数に現在の行の値を割り当てます。データベース接続を確立するときに使用したセッション名を指定します。
Dictionary 内の各キーに以下の処理が実行されます。 指定したディクショナリ変数の各キーにactions セットを繰り返し、変数に現在のキーの名前を割り当てます。
注: bot[ディクショナリ] > [書き込み] action を含む [ループ] action を実行すると、bot はディクショナリの元のアイテム数だけを反復します。これには、[書き込み] action を使用して挿入されたアイテムは無視されます。
Dictionary 内の各値に以下の処理が実行されます。 指定したディクショナリ変数の各値にactions セットを繰り返し、変数に現在の値を割り当てます。この変数型はさまざまなサブタイプ (文字列、数値、Boolean など)を格納できるので、action を構成するときに変数のクイック作成を行った場合、変数は [任意] のタイプになります。
注: bot[ディクショナリ] > [書き込み] action を含む [ループ] action を実行すると、bot はディクショナリの元のアイテム数だけを反復します。これには、[書き込み] action を使用して挿入されたアイテムは無視されます。
メールボックス内の各メールに以下の処理が実行されます。 指定したメールボックス内の各 E メールにactions セットを繰り返します。「メール ボックスの反復子内の各 E メールに対しての反復子」を参照してください。
ワークシート内の各行 (Excel basic または Excel advanced) ワークシート内でデータを含む各行にactions セットを繰り返し、レコード変数に現在の行の値を割り当てます。Excel basic または Excel advanced ワークシートを開くときに使用したセッション名を入力します。actionsを繰り返す対象 (すべての行、指定した行、または指定したセル範囲) を指定します。[この変数に現在の行を代入] リストからレコード変数を選択するか、新しい変数を作成します。「レコード変数」を参照してください。
この反復子は、セル値を文字列データ型として取得します。数値、パーセント、通貨、指数、日付などの Excel セル形式をサポートしています。たとえば、[通貨] 表示形式のセルから値がテーブル変数またはレコード変数に渡された場合、通貨記号は保持されます。
  • 非文字列演算を実行するには、値を変換する必要があります。
  • Excel advanced では、[ワークシート内の各行] に対してループ反復子を選択すると、セルの表示テキストまたは値のいずれかを読み取る [読み取り] オプションが表示されます。

    たとえば、セルのコンテンツが 70% の場合、[セル値の読み取り] オプションは値を 70 として読み取り、% 形式を無視します。一方、[閲覧可能なテキストの読み取り] オプションは 70% として読み取ります。

    Recommendation: [セル値の読み取り] オプションをセルからの読み取り値として使用して、閲覧可能なテキストの読み取りよりもパフォーマンスを向上させます。

[グローバル セッション] オプションを使用し、Excel advanced package による Microsoft Excel のセッションを共有することは、このオプションではできません。

代替ソリューション: [複数のセルを取得] action を使用し、データをデータテーブル変数に保存した後で、[データ テーブル] オプションを選択して Loop package を使用します。

フォルダー内の各ファイル 指定したフォルダー内の各ファイルに actions セットを繰り返し、次の 2 つのキーが含まれたディクショナリ変数に現在のファイルのプロパティを割り当てます。name キーはファイル名、extension キーはファイル拡張子を格納しています。

異なる拡張子のファイルを開くには、変数オプションを使用して、フォルダー パス、ファイル名、ファイル拡張子を割り当てます。まず、フォルダー パスの変数 $sFolder$ を作ります。次に、フォルダー パス内のファイルに、ファイル名の $name$ と、ファイル拡張子の $extension$ という 2 つの変数を作成します。ファイルを開くには、$sFolder$\$name$.$extension$ のように変数を文字列として組み合わせます。拡張子をさまざまなファイル タイプや開くオプションに対応させるためには、条件付きロジックを追加できます。

フォルダー内の各フォルダー 指定したフォルダー内の各フォルダーにactions セットを繰り返し、文字列変数に現在のフォルダー名を割り当てます。
リスト内の各項目 指定したリスト内の各項目にactions セットを繰り返し、変数に現在の項目を割り当てます。actionをリスト内のすべての項目で繰り返すか、リスト内の一定範囲の項目でのみ繰り返すかを指定します。この変数型はさまざまなサブタイプ (文字列、数値、Boolean など)を格納できるので、action を構成するときに変数のクイック作成を行った場合、変数は [任意] のタイプになります。
注: リスト内のインデックスは 0 から始まります。たとえば、リストの 3 番目の位置から 6 番目の位置までの項目に action を繰り返すには、該当するフィールドに「2」と「5」を指定します。
n 回 指定した回数だけコンテナ内でactionsを繰り返します。数値変数に反復回数を割り当てることができます。
レコード内の各値 指定したレコードの各値に actions セットを繰り返し、変数に現在の値を割り当てます。この変数型はさまざまなサブタイプ (文字列、数値、Boolean など)を格納できるので、action を構成するときに変数のクイック作成を行った場合、変数は [任意] のタイプになります。
カレンダーの各会議 指定したカレンダー内の各ミーティングにactions セットを繰り返すには、このオプションを使用します。「Office 365 のカレンダー アクションをループで使用する」を参照してください。
ワークシート (Office 365 Excel) 内の各行に以下の処理が実行されます。 ワークシート内でデータを含む各行にactions セットを繰り返します。
  • ワークシートを開くときに使用したセッション名を入力します。
  • actionsを繰り返す対象 (すべての行または指定した行) を指定します。
  • レコード変数に現在の行の値を割り当てることができます。
XML データセット内の各ノード XML データセット内の各ノードにactions セットを繰り返し、文字列変数に現在のノードを割り当てます。XML ファイルを開くときに使用したセッション名を入力します。

Loop アクション内の While 関連の条件

1 つのLoopaction内に複数の条件を構成できます。
  1. [条件を追加] をクリックします。
  2. 以下のいずれかのオプションを選択します。
    • And: actionsを実行するには、両方の条件を満たす必要があります。
    • Or: actionsを実行するには、どちらか一方の条件を満たす必要があります。
  3. ドロップダウン リストから接続を選択します。
以下の条件を使用するには、[While] オプションを選択します。
While 説明
アプリケーション アプリケーションが実行中かどうかに基づいて actions を実行するには、[アプリケーションが実行されていません] または [アプリケーションは実行中です] の条件を使用します。

アプリケーション パスを入力するか、変数を使用してパスを指定し、条件が真になるまで待機する時間 (秒) を指定します。

Boolean Boolean 変数の値に基づいてactionsを実行するには、この条件を使用します。この条件を使用して、2 つの Boolean 変数の値を比較するか、1 つの Boolean 変数と選択したBoolean 値を比較します。
データ テーブル 指定したテーブルに値が含まれているかどうかに基づいて actions を実行するには、[データ テーブルは空です] 条件を使用します。

列または行の数の値が [等しい] かどうか、[より大きい] かどうか、または [より小さい] かどうかに基づいて actions を実行するには、[行数] および [列数] の条件を使用します。

日時 ターゲットの日時変数の値に比べてソース日時変数の値が [等しい] か [等しくない] か、[より大きい] か [等しい] か、または [より小さい] か [等しい] かに基づいて actions を実行するには、[日時変数] 条件を使用します。
Dictionary 選択したディクショナリ変数に指定したキーが含まれているかどうかに基づいてactions セットを繰り返すには、この条件を使用します。
注: キーの比較では大文字と小文字が区別されます。
File 以下の条件を使用してactionを実行します。
  • [ファイルの日付]

    この条件は、指定のファイルを作成または編集した日時を確認するために使用します。[過去の日付範囲]、[期間]、または [以前の日付] オプションを使用して日付範囲を指定します。[過去の日付範囲] オプションでは、日数または時間 (時間、分、秒) を指定します。この条件が真になるまで待機する時間 (秒) を入力します。

  • [ファイルが存在する] と [ファイルが存在しない]

    ファイルが存在するかどうかに基づいてactionを実行するには、これらの条件を使用します。たとえば、データファイルが存在する場合は、ファイル形式を指定してデータベースにアップロードするなどの操作が可能です。

  • [ファイル サイズ]

    この条件は、指定したサイズと比べて、ファイルサイズが大きいか、小さいか、同じかを確認します。

    この条件が真になるまで待機する時間 (秒) を入力します。

Folderが存在するかどうか フォルダーが存在するかどうかに基づいてactionsを繰り返すには、この条件を使用します。
画像認識 これらの条件を使用して以下を確認します。
  • [画像ファイル] が [画像ファイル] で見つかるかどうか。
  • [画像ファイル] が [ウィンドウ] で見つかるかどうか。
  • [ウィンドウ] が [画像ファイル] で見つかるかどうか。
  • [ウィンドウ] が [ウィンドウ] で見つかるかどうか。
[ウィンドウ] 条件では、[ウィンドウのサイズ変更] オプションを使用してウィンドウの寸法を指定できます。このオプションによって、より信頼性の高い bot を実現できます。これによってウィンドウのサイズは、タスクが記録されたディメンションに変更されるため、Bot におけるターゲット オブジェクトの識別能力が高まります。
注: このオプションは、サイズ変更可能なウィンドウに対してのみ使用できます。これは [デスクトップ] または [タスクバー] オプションでは使用できません。

[ウィンドウ] の条件では、[プレビュー] オプションを使用して、キャプチャされた特定のオカレンスを選択し、画像を基準にしてクリック位置を設定できます。

JavaScript 指定した JavaScript のステータスに基づいて actions を実行するには、[スクリプトが正常に実行されました] または [スクリプトが正常に実行されませんでした] の条件を使用します。スクリプトが含まれているファイルを選択し、オプションでリスト変数を選択してパラメーターを指定します。
レガシー オートメーション [レガシー オートメーション] 条件は、移行した botsAutomation 360 でシームレスに実行することを確認するためだけに使用します。これらの条件を使用して新しい bot を開発することは推奨されません。以下を検証するには、以下の条件を使用します。
  • [Web コントロール] が存在するかどうか。
  • [ウィンドウ コントロール] が存在するかどうか。
  • [ウィンドウ コントロール] がアクティブかどうか。
  • [スクリプト] が成功したかどうか。
  • [子ウィンドウ] が存在するかどうか。

[ウィンドウ コントロール] 条件では、[ウィンドウのサイズ変更] オプションを使用してウィンドウの寸法を指定できます。このオプションによって、より信頼性の高い bot を実現できます。これによってウィンドウのサイズは、タスクが記録されたディメンションに変更されるため、Bot におけるターゲット オブジェクトの識別能力が高まります。

リスト 指定したリスト変数に特定の値が含まれているかどうかに基づいて actions を実行するには、[List 変数] 条件を使用します。値には [数値]、[文字列]、または [Boolean] データ タイプを指定できます。
数値 指定した数値変数が特定の値と [等しい] か [等しくない] か、特定の値 [より大きい] か、[等しい] か、または特定の値 [より小さい] か、[等しい] かに基づいて actions を実行するには、[数値変数] 条件を使用します。
Ping マシンやサーバーが実行中かどうかを確認し、その結果に基づいて action を実行するには、[Ping が成功] または [Ping が失敗] の条件を使用します。条件が真になるまで待機する時間 (秒) を入力します。
レコーダー
  • ウィンドウ内のオブジェクトを検出するには、[オブジェクトが存在します] 条件を使用します。オブジェクトを取り込むウィンドウまたは変数を選択します。この条件が真になるまで、つまりオブジェクトが検出されるまで待機する時間 (秒) を入力します。
  • [オブジェクトが存在しない] 条件を使用して、ウィンドウ内の特定のオブジェクトが存在するかどうかを確認し、その結果に基づいて actions を実行します。この条件が真になるまで待機する時間 (秒) を入力します。たとえば、[オブジェクトが存在しない] 条件を [ループ] > [While] 条件内で使用し、ビジネス アプリケーション上のオブジェクトが読み込まれるまで、bot が次の action を実行しないようにします。
サービス サービスが実行されているかどうかに基づいて actions を実行するには、[サービス実行中] または [サービス非実行中] 条件を使用します。[サービス リスト] を選択して、使用可能なサービスのリストからサービスを選択します。
String 指定したソース文字列の値がターゲット値と [等しい] か [等しくない] か、ターゲット値を [含む] か [含まない] かに基づいて actions を実行するには、[文字列変数] 条件を使用します。

[大文字と小文字を区別] オプションを指定すると、2 つの文字列の大文字と小文字が一致する場合にのみ actions を実行できます。

Microsoft アプリケーションからテキストを抽出する場合、抽出されたテキストには、改行を示す /r/n 特殊文字が含まれます。テキストを比較するときに /r 特殊文字を無視する場合は、[キャリッジ リターンを無視] オプションを選択します。

文字列が空かどうかに基づく条件を作成するには、[等しい] 演算子を使用してソース値と空のターゲット フィールドを比較します。

条件付きステートメントの使用例」を参照してください。

Task Bot 指定した Task Bot のステータスに基づいて actions を実行するには、[タスクが正常に完了しました] または [タスクが正常に完了しませんでした] の条件を使用します。
VBScript 指定した Visual Basic スクリプトのステータスに基づいて actions を実行するには、[スクリプトが正常に実行されました] または [スクリプトが正常に実行されませんでした] の条件を使用します。スクリプトが含まれているファイルを選択し、オプションで変数を選択してパラメーターを指定します。
ウィンドウ [ウィンドウ タイトル] を入力するか変数を使用して、特定のアプリケーション ウィンドウが開いているかどうかを確認するには、[ウィンドウが存在する] または [ウィンドウが存在しない] の条件を使用します。条件が真になるまで待機する時間 (秒) を入力します。

同じタイトルのウィンドウが存在するか、またはウィンドウのタイトルが変更されたかどうかを確認するには、[同じタイトルのウィンドウは存在しません] または [同じタイトルのウィンドウが存在します] 条件を使用します。条件が真であるかどうかを検証し続ける時間 (秒) を入力します。