前のトピック: 例外の処理次のトピック: 対話形式によるプロセスの実行


例外ハンドラの作成

例外ハンドラを使用して、プロセス内の以下の事前定義済み例外に対してオペレータのシーケンスを作成できます。

中止

ユーザ指定の中止かオペレータによる中止の際に発生します。

システム エラー

何らかの通信失敗の場合に発生します。 たとえば、プロセスに不正なタッチポイント名が含まれているか、実行されていないエージェントを参照しています。

タイムアウト

以下の状況が両方とも true であるとき発生します。

不明なレスポンス

レスポンスに対応する出力コネクタがない場合に発生します。

以下の手順に従います。

  1. [デザイナ]タブをクリックします。
  2. [開く]をクリックし、開くプロセスがあるフォルダに移動し、プロセスを選択してから[開く]をクリックします。
  3. [例外ハンドラ]タブを選択します。
  4. [オペレータ]パレット内の標準フォルダを展開し、プロセス上に例外オペレータをドラッグします。
  5. 例外オペレータのプロパティのダイアログ ボックスを展開します。
  6. [情報]を展開し、[名前]フィールドに名前を入力します。

    注: デフォルト例外ハンドラをロードするプロセス内のオペレータ名と一致しないように、デフォルト例外ハンドラ内のオペレータの名前にプレフィックスを付加することが最善策です。

  7. 発生した例外を展開します。
  8. ドロップダウン リストから例外タイプを選択します。
  9. パレットから、例外のルールを完了するプロセス上に追加のオペレータをドラッグします。 実行シーケンスのオペレータをリンクします。

    注: 停止オペレータを追加せずにシーケンスを完了すると、メイン プロセスが再開します。 オプションで、例外ハンドラの 1 つ以上のパスのプロセスを停止できます。

  10. ツールバーで[保存]をクリックします。

    新しい例外ルールが追加されます。

例外処理の一部として、オペレータをリセットしてプロセスを続行できます。 また、例外を無視してプロセスで続行するよう選択することもできます。 例外を無視するには、オペレータをシミュレーション モードに設定して、プロセスを続行します。 リセット オペレータは共通パレットにあります。 [プロセス]ペイン、例外ハンドラ、およびレーン変更ハンドラでリセット オペレータを使用できます。

以下の手順に従います。

  1. [追加]を右クリックし、[リセット]をクリックしてリセット オペレータを追加します。

    テキスト ボックスにエントリが表示され、ドロップダウン リストから現在のプロセスのオペレータの 1 人を選択できます。 複数のオペレータ名を追加できます。

  2. オペレータ名を操作するには、必要に応じて[削除]、[上へ移動]および[下へ移動]をクリックします。
  3. 式を入力すると、ランタイム時に文字列(オペレータ名など)または値のリスト(複数のオペレータ名など)に解決されます。 ドロップダウン リストからオペレータ名を選択する代わりにこのアクションを実行します。
  4. [結果を使用して続行]を選択するかクリアします。
    オン

    EndCondition オプションが利用可能になり、[成功]または[失敗]のいずれかを選択できます。

    成功

    ランタイム時にエラー条件に一致すると、選択されたオペレータが成功したものと想定されます。 その後、CA Process Automation はプロセス フローの残りを続行します。

    失敗

    ランタイム時にエラー条件に一致すると、選択されたオペレータが失敗したものと想定されます。 その後、CA Process Automation はプロセス フローの残りを続行します。

    オフ

    ランタイム時にエラー条件に一致すると、選択したオペレータがリセットされて、プロセス フローが続行されます。

  5. (オプション)例外を無視しプロセスを続行するには、リセット オペレータを例外ハンドラ モードで追加し、例外を無視します。
    exceptionStart-<operator-name>.Source
    

注: リセット オペレータの[オペレータ リスト]にフィールドを追加するときに、プロセスのループ オペレータの名前が新しいフィールドのドロップダウン リストに表示されます。 リセット オペレータは、ループ オペレータ内のすべてのオペレータをリセットし、ループ オペレータを最初の繰り返しにリセットします。 リセット後、ループ オペレータは最初の繰り返しから再開します。 ループ オペレータはシミュレーションをサポートしないため、リセット オペレータは常にループ オペレータをリセットします。 ループ オペレータのリセットにより、以下のフィールド値が無視されます。