手順 1: インポート イベントを処理するプロセス マップを作成する

ドキュメントのインポートに成功したかどうかを識別し、失敗したドキュメントのインポートを処理するためにメインのプロセス マップに埋め込むことができるプロセス マップを作成するには、次の手順を実行します。

  1. [ワークフロー] > [ビジネス プロセス] に移動し、[新規] をクリックします。
  2. プロセス マップの [名前] を「インポート イベントの処理」などと指定します。
  3. [カテゴリ] リストで、[デフォルト カテゴリ] を選択します。
  4. 文字列型のプロセス変数「ErrorMessage」を作成します。「プロセス変数の作成」を参照してください。
  5. 3 つのプロセス イベントIMPORTRUN、IMPORTDUPLICATE、および CHECKEVENT。「プロセス イベントの作成」を参照してください。
  6. このプロセス マップ用に次の 3 つのプロセス フローを追加します。
    1. 成功したインポート イベントのフローを作成する
    2. 重複するインポート イベントのフローを作成する
    3. タイムアウトのフローを作成する

成功したインポート イベントのフローを作成する

ドキュメントを正常にインポートしたことを示すフローを作成するには、次の手順を実行します。

  1. [開始] ノードを選択し、サテライトの [アクティビティ] アイコン をクリックします。

    アクティビティ ノードが追加されます。

  2. このアクティビティ ノードを選択し、[名前] に「成功したインポート」と入力します。
  3. [タイプ] リストで、[同期] を選択します。
  4. [アクティビティ プロパティ] パネルで、[依存先] タブをクリックします。
  5. ルール エディタを右クリックして、[プロセス イベント] を選択します。
  6. イベントのリストで、[IMPORTRUN] を選択します。
  7. ルール エディタで、条件を IMPORTRUN > 0 と設定します。
  8. [成功したインポート] ノードを選択し、サテライトの [終了] アイコンをクリックします。

プロセス マップは次のようになります。

成功したイベント

重複するドキュメント インポート イベントのフローを作成する

重複したドキュメントがインポートされていないことを確認するためのイベントをトリガーするフローを作成するには、次の手順を実行します。

  1. インポート イベントの処理マップで、[開始] ノードを選択し、サテライトの [アクティビティ] アイコン をクリックします。

    アクティビティ ノードが追加されます。

  2. このアクティビティ ノードを選択し、[名前] に「重複するインポート」と入力します。
  3. [タイプ] リストで、[同期] を選択します。
  4. [アクティビティ プロパティ] パネルで、[依存先] タブをクリックします。
  5. ルール エディタを右クリックして、[プロセス イベント] を選択します。
  6. イベントのリストで、[IMPORTDUPLICATE] を選択します。
  7. 重複するインポート ノードを選択し、サテライトの [アクティビティ] アイコン をクリックします。

    アクティビティ ノードが追加されます。

  8. このアクティビティ ノードを選択し、[名前] に「エラー メッセージの設定」と入力します。
  9. [タイプ] リストで、[.Net] を選択します。
  10. [構成] をクリックします。

    [.Net アクティビティの構成] ダイアログ ボックスが表示されます。

  11. [アセンブリ ファイルのパス] ボックスをクリックし、[デフォルト カテゴリ] をクリックします。
  12. [カテゴリ] リストで、システム カテゴリを選択し、[TotalAgility.Sdk.dll] を選択します。
  13. [クラス] リストで、[TotalAgility.Sdk.JobService] を選択します。
  14. [メソッド] リストで、[UpdateJobVariables] を選択します。
  15. [sessionId] パラメータの [値] ボックスをクリックし、[サーバー変数] をクリックしてから、[デフォルト カテゴリ] をクリックします。
  16. [カテゴリ] リストで、[システム カテゴリ] を選択してから、[SPP_SYSTEM_SESSION_ID] を選択します。
  17. [UpdatedVariable[ ]] をクリックします。
  18. [ID] パラメータ値ボックスをクリックし、[ErrorMessage] を選択します。
  19. [変数タイプ] パラメータの [値] ボックスの横にある [編集] アイコンをクリックし、8 を入力します。
  20. 値パラメータの [値] ボックスの横にある [編集] アイコンをクリックし、カスタム エラー メッセージに [インポートの重複エラーによる強制終了] と入力してから、[OK] をクリックします。
  21. エラー メッセージの設定ノードを選択し、サテライトの [アクティビティ] アイコン をクリックします。

    アクティビティ ノードが追加されます。

  22. このアクティビティ ノードを選択し、[名前] に「ジョブの強制終了」と入力します。
  23. [タイプ] リストで、[.Net] を選択します。
  24. [構成] をクリックします。

    [.Net アクティビティの構成] 画面が表示されます。

  25. 手順 11 ~ 16 を繰り返します。
  26. [OK] をクリックします。
  27. [ジョブの強制終了] ノードを選択し、サテライトの [終了] アイコン サテライト - 終了ノード アイコン をクリックします。

プロセス マップは次のようになります。

重複するインポート イベント

タイムアウトのフローを作成する

設定されたタイムアウトに対してイベント (IMPORTRUN または IMPORTDUPLICATE) がトリガーされない場合にプロセスがマップで次のノードに移動するようにフローを作成するには、次の手順を実行します。

  1. インポート イベントの処理マップで、[開始] ノードを選択し、サテライトの [アクティビティ] アイコン をクリックします。

    アクティビティ ノードが追加されます。

  2. このアクティビティ ノードを選択し、[名前] に「タイムアウト」と入力します。
  3. [タイプ] リストで、[同期] を選択します。
  4. [アクティビティ プロパティ] パネルで、[時間とコスト] タブをクリックします。
  5. [トリガー] で、[プロセス] をクリックします。
  6. [目標期間][後] を選択し、[分] の値を [30] に設定します。
  7. [プロセス] リストで、重複インポートのイベント発生を選択します。「イベントを発生させるためのマップを作成する」を参照してください。
  8. [OK] をクリックします。
  9. [アクティビティ プロパティ] パネルで、[依存先] タブをクリックします。
  10. ルール エディタを右クリックして、[プロセス イベント] を選択します。
  11. イベントのリストで、[CHECKEVENT] を選択します。
  12. ルール エディタで、条件を CHECKEVENT > 0 と設定します。
  13. タイムアウト ノードを選択し、サテライトの [終了] アイコン サテライト - 終了ノード アイコン をクリックします。

最終的なプロセス マップは次のようになります。

タイムアウト イベント