activities
latest
false
重要 :
このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。 新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。
UiPath logo, featuring letters U and I in white

ワークフローに関するアクティビティ

最終更新日時 2024年12月20日

リトライ スコープ

UiPath.Core.Activities.RetryScope

説明

条件が満たされないか例外がスローされる限り、含まれているアクティビティをリトライします。

重要:
  • [ リトライ スコープ] アクティビティを オーケストレーション プロセスのメイン ワークフロー 内で使用することは サポートされておらず、正しく機能しません 。そのような場合は、それらのアクティビティを [非永続スコープ ] アクティビティ内に配置する必要があります。

プロジェクトの対応 OS

Windows - レガシ | Windows | クロスプラットフォーム

Windows - レガシ、Windows での設定

デザイナー パネル
  • アクション - 再実行するアクティビティをこのセクションに追加します。
  • 条件 - このセクションに条件アクティビティを追加します。

    たとえば、UI 要素の指定に失敗した場合にスムーズにリトライするには、UI Automation モダンの [アプリのステートを確認] アクティビティ、またはそれに対応するクラシック アクティビティ [要素の存在を確認] を条件として使用し、再度アプリケーションを開いて UI 要素を検索するようにします。

プロパティ パネル
共通
  • エラー発生時に実行を継続 - アクティビティでエラーが発生した場合でも、オートメーションを継続するかどうかを指定します。 このフィールドでは Boolean 値 (True、False) のみがサポートされています。 既定値は False です。 その結果、フィールドが空白になったり、エラーがスローされたり、リトライ回数を超えたりすると、プロジェクトの実行が停止します。 値を True に設定すると、プロジェクトの実行はエラーに関係なく継続されます。

    注: このアクティビティが [トライ キャッチ] に含まれていて、[エラー発生時に実行を継続] プロパティの値が True の場合、プロジェクトが実行されたときにエラーは発生しません。
  • 表示名 - アクティビティの表示名です。

その他
  • プライベート - オンにした場合、変数および引数の値が Verbose レベルでログに出力されなくなります。

オプション

  • リトライの回数 - シーケンスをリトライする回数です。
  • リトライの間隔 - 各リトライの合間の時間 (秒数) を指定します。

クロスプラットフォームでの設定

デザイナー パネル
  • アクティビティ ボディ - このセクションで再実行するアクティビティを追加します。
  • 条件 - このセクションに条件アクティビティを追加します。

    たとえば、UI 要素の指定に失敗した場合にスムーズにリトライするには、UI Automation モダンの [アプリのステートを確認] アクティビティを条件として使用し、再度アプリケーションを開いて UI 要素を検索するようにします。

その他のプロパティ
  • エラー発生時に実行を継続 - アクティビティでエラーが発生した場合でも、オートメーションを継続するかどうかを指定します。 このフィールドでは Boolean 値 (True、False) のみがサポートされています。 既定値は False です。 その結果、フィールドが空白になったり、エラーがスローされたり、リトライ回数を超えたりすると、プロジェクトの実行が停止します。 値を True に設定すると、プロジェクトの実行はエラーに関係なく継続されます。

    注: このアクティビティが [トライ キャッチ] に含まれていて、[エラー発生時に実行を継続] プロパティの値が True の場合、プロジェクトが実行されたときにエラーは発生しません。

オプション

  • リトライの回数 - シーケンスをリトライする回数です。
  • リトライの間隔 - 各リトライの合間の時間 (秒数) を指定します。

Windows プロジェクトでの [リトライ スコープ] アクティビティの使用例

[ リトライ スコープ] アクティビティはエラーをキャッチして処理するため、[ トライ キャッチ ] アクティビティと似ています。

以下のワークフローでは、[メモ帳] ウィンドウを 3 回開き、[ リトライ スコープ] アクティビティで設定した条件を使用し、ループを停止します。

  • Random 変数の値が 3 回連続して 0 ではない場合、「Notepad Window failed to start」というメッセージが毎回表示され、ワークフロー全体が「Notepad failed to start」エラーにより失敗します。2 番目のメッセージは、[ スロー] アクティビティに追加したメッセージです。

  • 確率変数の値が 0 の場合、ロボットはメモ帳を開きますが、このループの条件はメモ帳ウィンドウを見つけることであるため、ワークフローは正常に完了します。

  1. 新しいシーケンスを作成し、[リトライ スコープ] アクティビティを追加します。
  2. [プロパティ] パネルの [リトライ回数] に値を 3 に設定し、[リトライ間隔] に値を 5 に設定します。つまり、[メモ帳] ウィンドウを 3 回開こうとし、試行の間隔は 5 秒です。
  3. [ Action ] セクションに [ 代入 ] アクティビティを追加します。
    1. [ 代入] アクティビティの [ 保存先] フィールドで、 変数を作成し、「Random」という名前を付けます。
    2. [ 保存する値 ] フィールドに、次の式を書き込みます。

      (Now.Millisecond Mod 5).ToString()(Now.Millisecond Mod 5).ToString()
      docs image
  4. [ Action ] セクションに [条件分岐 (if )] アクティビティを追加します。
    1. [ 条件] フィールドに、前に作成した変数「Random」である式を追加します。 この式は、変数が value が 0 と異なる場合:
      Random <> "0"Random <> "0"
    2. [ 条件分岐 (if)] アクティビティの [ Then] セクションで、以下の手順を実行します。
      • 「Notepad Window failed to start」という テキスト を含む [ メッセージ ボックス] アクティビティを追加します。
      • [ メッセージ ボックス] の下に [スロー ] アクティビティを追加し、[ 例外 ] フィールドに式「」を入力します。
        New System.Exception(“Notepad failed to start”)New System.Exception(“Notepad failed to start”)

        これらのアクティビティは、条件が True の場合に実行されます。

      docs image
    3. [ 条件分岐 (if)] アクティビティの[Else] セクションで、以下の手順を実行します。

      • [ アプリケーションを開く ] アクティビティを追加して、画面上でメモ帳のアプリケーションを指定します。 FileName フィールドに、デバイス上のメモ帳の実行可能ファイルへのフル パスが含まれていることを確認します。

        このアクティビティは、条件が False の場合に実行されます。

      docs image
  5. ループを終了するには、[ リトライ スコープ] アクティビティの [ 条件] セクションに [ アプリのステートを確認] アクティビティを追加して、[メモ帳] ウィンドウを指定します。

    docs image

このページは役に立ちましたか?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
Uipath Logo White
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.