UiPath Activities

UiPath Activities ガイド

トライ キャッチ (Try Catch)

System.Activities.Statements.TryCatch

シーケンスまたはアクティビティ内で指定した例外の種類をキャッチし、エラー通知を表示するか、例外を無視して実行を続けます

The activity has three main sections:

  • Try - holds the activity that could throw an exception;
  • Catches - specifies the exception type and, optionally, holds an activity that informs the user about the found exception;
  • Finally - holds an activity that should be executed only if no error occurred or if the error was already caught.

There is no limit to how many Catches you can use in a Try Catch activity.
Keep in mind that this activity requires at least two of the three fields to be in use. You cannot run it only with the Try field completed.

アクティビティのコンテナーは次にようになります。

アクティビティ本体には、次の 3 つのフィールドがあります。

  • Try - エラーをスローする可能性があるアクティビティを実行します。
  • Catches - エラーが発生したときに実行するアクティビティまたはアクティビティのセットです。
    • Exception - 検索する例外の種類です。複数の例外を追加することができます
  • Finally - [Try] および [Catch] ブロックを実行したあとに実行されるアクティビティまたはアクティビティのセットです。このセクションは、例外がスローされない、またはエラーが発生して [Catches] セクションでキャッチされた場合にのみ実行されます。

📘

注:

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

プロパティ

共通

  • DisplayName - アクティビティの表示名です。

その他

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

📘

注:

Ctrl + T を押すと、選択したアクティビティが [トライ キャッチ] アクティビティの [Try] セクション内に配置されます。

[トライ キャッチ] アクティビティの使用例

[トライ キャッチ] アクティビティの重要性をより深く理解するために、ランダムな名前ジェネレーターの Web サイトから複数の名前を収集し、Excel スプレッドシートに書き込む自動化ワークフローを作成しました。

最初のワークフローはこちらからダウンロードできます。

[データ テーブルを構築] アクティビティを使用して、収集した名前を格納する表を作成します。別のワークフローが呼び出され、ウェブデータが読み取られます。最後に、[Excel アプリケーション スコープ] アクティビティを使用して、収集した情報を Excel ファイルに書き込みます。

まず、ワークフローを実行して、エラーがないか確認します。[Workflow Exception] ウィンドウが表示されます。[Exception Type] フィールドには、問題の原因が示されています。これは、ワークフローの実行中に検索する例外の種類として、[トライ キャッチ][Catches] セクションで使用されます。

上のスクリーンショットに示すように、サンプル ワークフローを実行している場合は、[ブラウザーにアタッチ] コンテナーのセレクターに問題があるようです。この問題は、セレクターが、「Generate a Random Name - Fake Name Generator」という名前のブラウザー ウィンドウを識別できないことです。

この例外をキャッチするには、次の作業を実行する必要があります

  1. [アクティビティ]パネルから [トライ キャッチ] アクティビティを、Invoke workflow アクティビティの上にドラッグします。
  2. [トライ キャッチ] アクティビティの [Try] セクションに、Invoke workflow アクティビティを配置します。これは、エラーをスローした場合の Invoke workflow アクティビティを監視します。
  1. Catches セクションで、ドロップダウンから UiPath.Core.SelectorNotFoundException 例外を選択します。存在しない場合は、Browse and Select a .Net Type ウィンドウで検索することができます
  1. 必要に応じて、Catches セクションに [メッセージ ボックス] アクティビティを追加することができます。「Internet Explorer が閉じられました。ワークフローの実行を続行するには、Internet Explorer を開きます。」というメッセージが表示された場合は、[Content] フィールドに引用符で囲んだ通知メッセージを入力することができます。これは、例外がキャッチされると、このメッセージ ボックスが表示され、ワークフローが正常に実行されるようにブラウザーを開こうとしていることを、ユーザーに通知することを意味します。
  1. [要素の存在を確認] アクティビティを [Finally] セクションにドラッグします。これは、Internet Explorer が対象ページ (https://www.fakenamegenerator.com) で開かれているかどうかを確認するために使用します。
  2. Internet Explorer を開いて、前述のページにアクセスします。
  3. [画面上で指定] 機能を使用して、[Internet Explorer] ウィンドウを選択します。
  4. [要素の存在を確認] アクティビティを選択して、この <wnd app='iexplore.exe' title='Generate a Random Name - Fake Name Generator - Internet Explorer' /> のように、そのセレクターを編集します。このセレクターは、[要素の存在を確認] アクティビティが、前述のページで開かれているアクティブな Internet Explorer ウィンドウのみを検索できるようにします。
  5. Output プロパティで、browser などの適切な名前の変数を作成します。これはブール変数で、表示されたページで Internet Explorer がアクティブかどうかを判断するのに役立ちます。
  6. [要素の存在を確認] アクティビティの下に [条件分岐] アクティビティを追加します。これは、Internet Explorer が閉じている場合に開いて、それ以外の場合はワークフローを続行するために使用します。
  7. [Condition] フィールドで、browser=false と書き込みます。この条件は、ブラウザが開いているかどうかを確認し、その値に基づいて他のアクションを実行する場合に使用します。
  8. [ブラウザーを開く] アクティビティを、[Then] セクションでドラッグします。[Condition] が満たされた場合 (ブラウザーが閉じている場合)、[ブラウザーを開く] アクティビティを使用して、ワークフローに影響を与えることなく、ブラウザーを開くことができます。
  9. [Url] フィールドに https://www.fakenamegenerator.com と入力します。
  10. Internet Explorer が既に指定したウェブサイトで開かれている場合は、ワークフローが期待どおりに続行されるように、Else セクションは空白のままにします。
  1. ワークフローを実行し、次のいずれかを確認します。
  • Internet Explorer が閉じている場合 - ユーザーには Internet Explorer が開きつつあることが通知され、ワークフローが続行できるようになります。ブラウザが開き、予想されるすべてのデータが収集され、Excel ファイルに書き込まれます
  • Internet Explorer が開いている場合 - ワークフローは予定どおりに実行されます。


    サンプルをダウンロード

3 か月前に更新


トライ キャッチ (Try Catch)


改善の提案は、API 参照ページでは制限されています

改善を提案できるのは Markdown の本文コンテンツのみであり、API 仕様に行うことはできません。