エラー ハンドラー パッケージ
実行時の異常な条件や例外に起因するエラーが Bot で発生すると、Bot の正常な実行は妨げられ、Bot はタスクを完了できなくなります。エラー ハンドラー パッケージ には、Bot で発生した例外を円滑に処理できる アクション が含まれており、その Bot 内にある他の アクション に制御を移行します。
パッケージ の アクション を使用すると、タスクを実行するために使用する アクション と、例外を処理するために使用する アクション を分離できます。例外を処理すると、Bot でエラーが発生したときにタスクが確実に完了されるようになり、エラーの発生時に アクション が定義されます。
次の図は、タスクでエラー処理を使用する場合と使用しない場合の Bot の実行の様子を示しています。
[エラー ハンドラー] パッケージ内のアクション
[エラー ハンドラー] パッケージ には以下のアクションが含まれます。
アクション | 説明 |
---|---|
試行 | [試行] アクション 内に アクション を追加できます。Bot は アクション を通常どおりに実行します。Bot でエラーが発生しなければ、[最終] アクション が存在する場合はそこまで実行が継続します。ただし、エラーが発生した場合、Bot の実行は [キャッチ] アクション に直接移動し、[試行] アクション の残りの アクション は完了しません。 |
キャッチ | [試行] アクション でエラーが発生した場合、制御は Bot 実行によって [キャッチ] アクション に直接移ります。エラーの説明や行番号の値は、[キャッチ] アクション 内の変数に割り当てることができます。別の アクション を [キャッチ] アクション に追加し、エラー条件を処理できます。これらの アクション には、E メール [送信] アクション (エラーに関する E メールを送信) または [ファイルに記録] アクション (エラー条件をファイルに記録) を含めるか、スクリーン [ウィンドウをキャプチャ] を含めて、エラー発生時にウィンドウまたはアプリケーションのスクリーンショットを取り込むことができます。 [キャッチ] アクション が存在しない場合、[試行] アクション は、エラー発生時に、[試行] アクション の後にリストされている アクション の処理を続けます。 [試行] および [キャッチ] アクション を Bot で複数回使用すると、さまざまな例外を処理できます。これにより、発生した例外に基づいて、さまざまなアクションを実行できるようになります。 |
最終 | [最終] アクション では、例外が発生したかどうかにかかわらず、[試行] と [キャッチ] の後に アクション を実行できます。[最終] アクション は、監査情報の記録、または [試行] と [キャッチ] アクション の後に続く アクション で最も役立ちます。 |
スロー | [試行] アクション の中で論理エラーが発生した場合は、[スロー] アクション を使用してエラー条件を作成すると、直ちに Bot 実行は [キャッチ] アクション にシフトします。[スロー] アクション のプロパティを編集し、エラー メッセージを [キャッチ] アクション に送信するように設定できます。[試行] アクション の外では、[スロー] アクション によって標準エラー ダイアログ ボックスが表示され、ユーザーは手動で [閉じる] ボタンをクリックして、そのダイアログ ボックスを閉じることになります。 |
エラー ハンドラー による例外処理
次の図は、Bot 実行中に外部エラーが発生したときの エラー ハンドラー パッケージ の アクション の流れを示しています。
次の図は、Bot 実行中に内部エラーが発生したときの エラー ハンドラー パッケージ の アクション の流れを示しています。
例: エラー ハンドラー パッケージでのアクションの使用
たとえば、Microsoft Excel ファイルからデータを読み取り、それをデータベースに格納する Bot があるとします。この Bot では、必要なファイルがない場合や、データベースのテーブルを更新中にエラーが発生する可能性があります。エラーを処理するには、次の方法を使用します。
- 例外 1:
- データの抽出元に指定したい Microsoft Excel スプレッドシートが使用可能でない。
- 処理方法: 同じデータを含んでいる別のファイルを使用します。
- 例外 2:
- データの格納に使用したいテーブルがデータベースで使用可能でない。
- 処理方法: 必要なテーブルが使用可能でないというメッセージを表示します。
この例に基づいて、これらの例外を処理するには、以下の操作を行ってください。
- Microsoft Excel スプレッドシートからデータを読み取って、抽出したデータをデータベース内のテーブルに格納するために必要なすべての アクション を [試行] アクション 内に配置します。
- 次の例外に対して実行する アクション を [キャッチ] アクション 内に配置します。
- 例外 1: 同じデータが含まれた別のファイルを使用する アクション を配置します。
- 例外 2: 関連メッセージを表示する [メッセージ ボックス] アクション を配置します。
- アクション を配置し、[最終] アクション 内でデータベースとの接続を終了します。これは [試行] の結果に関係なく発生します。