Error handler package

実行時の異常な条件や例外に起因するエラーが bot で発生すると、bot の正常な実行は妨げられ、bot はタスクを完了できなくなります。Error handler package には、bot で発生した例外を円滑に処理できる actions が含まれており、その bot 内にある他の actions に制御を移行します。

packageactions を使用すると、タスクを実行するために使用する actions と、例外を処理するために使用する actions を分離できます。例外を処理すると、bot でエラーが発生したときにタスクが確実に完了されるようになり、エラーの発生時に actions が定義されます。

次の図は、タスクでエラー処理を使用する場合と使用しない場合の bot の実行の様子を示しています。

エラー ハンドラーのフロー チャート

[Error handler] package内のActions

[Error handler] package には以下のactionsが含まれます。

アクション 説明
試行 [試行] action 内に actions を追加できます。botactions を通常どおりに実行します。bot でエラーが発生しなければ、[最終] action が存在する場合はそこまで実行が継続します。ただし、エラーが発生した場合、bot の実行は [キャッチ] action に直接移動し、[試行] action の残りの actions は完了しません。
キャッチ [試行] action でエラーが発生した場合、制御は bot 実行によって [キャッチ] action に直接移ります。エラーの説明や行番号の値は、[キャッチ] action 内の変数に割り当てることができます。別の actions を [キャッチ] action に追加し、エラー条件を処理できます。これらの actions には、Email [送信] action (エラーに関する E メールを送信) または [ファイルに記録] action (エラー条件をファイルに記録) を含めるか、Screen [ウィンドウをキャプチャ] を含めて、エラー発生時にウィンドウまたはアプリケーションのスクリーンショットを取り込むことができます。

[キャッチ] action存在しない場合、[試行] action は、エラー発生時に、[試行] action の後にリストされている actions の処理を続けます。

[試行] および [キャッチ] actionsbot で複数回使用すると、さまざまな例外を処理できます。これにより、発生した例外に基づいて、さまざまなactionsを実行できるようになります。

最終 [最終] action では、例外が発生したかどうかにかかわらず、[試行] と [キャッチ] の後に actions を実行できます。[最終] action は、監査情報の記録、または [試行] と [キャッチ] actions の後に続く action で最も役立ちます。
スロー [試行] action の中で論理エラーが発生した場合は、[スロー] action を使用してエラー条件を作成すると、直ちに bot 実行は [キャッチ] action にシフトします。[スロー] action のプロパティを編集し、エラー メッセージを [キャッチ] action に送信するように設定できます。[試行] action の外では、[スロー] action によって標準エラー ダイアログ ボックスが表示され、ユーザーは手動で [閉じる] ボタンをクリックして、そのダイアログ ボックスを閉じることになります。

Error handler による例外処理

次の図は、bot 実行中に外部エラーが発生したときの Error handler packageactions の流れを示しています。

外部エラーの例

次の図は、bot 実行中に内部エラーが発生したときの Error handler packageactions の流れを示しています。

内部エラーの例

例: Error handler packageでのactionsの使用

たとえば、Microsoft Excel ファイルからデータを読み取り、それをデータベースに格納する bot があるとします。この bot では、必要なファイルがない場合や、データベースのテーブルを更新中にエラーが発生する可能性があります。エラーを処理するには、次の方法を使用します。

  • 例外 1:
    • データの抽出元に指定したい Microsoft Excel スプレッドシートが使用可能でない。
    • 処理方法: 同じデータを含んでいる別のファイルを使用します。
  • 例外 2:
    • データの格納に使用したいテーブルがデータベースで使用可能でない。
    • 処理方法: 必要なテーブルが使用可能でないというメッセージを表示します。

この例に基づいて、これらの例外を処理するには、以下の操作を行ってください。

  1. Microsoft Excel スプレッドシートからデータを読み取って、抽出したデータをデータベース内のテーブルに格納するために必要なすべての actions を [試行] action 内に配置します。
  2. 次の例外に対して実行する actions を [キャッチ] action 内に配置します。
    1. 例外 1: 同じデータが含まれた別のファイルを使用する actions を配置します。
    2. 例外 2: 関連メッセージを表示する [メッセージ ボックス] action を配置します。
  3. [データベース] > [接続解除] action を配置し、[最終] action 内でデータベースとの接続を終了します。これは [試行] の結果に関係なく発生します。