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