手順 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. [アセンブリ ファイルのパス] リストで、[TotalAgility.Sdk.Dll] を選択します。
  12. [クラス] リストで、[TotalAgility.Sdk.JobService] を選択します。
  13. [メソッド] リストで、[UpdateJobVariables] を選択します。
  14. [sessionId] で、[サーバー変数] をクリックし、[SPP_SYSTEM_SESSION_ID] を選択します。
  15. [UpdatedVariable] をクリックします。
  16. [Id] リストで、[サーバー変数] をクリックし、[ErrorMessage] を選択します。
  17. [VariableType]8 と入力します。
  18. [値] に、カスタム エラー メッセージ 「重複するインポートのエラーを強制終了しました」を入力して、[OK] をクリックします。
  19. エラー メッセージの設定ノードを選択し、サテライトの [アクティビティ] アイコン をクリックします。

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

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

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

  23. [アセンブリ ファイルのパス] で、[TotalAgility.Sdk.Dll] を選択します。
  24. [クラス] で、[TotalAgility.Sdk.JobService] を選択します。
  25. [メソッド] で、[UpdateJobVariables] を選択します。
  26. [sessionId] で、[サーバー変数] をクリックし、[SPP_SYSTEM_SESSION_ID] を選択します。
  27. [OK] を選択します。
  28. ジョブの強制終了ノードを選択し、サテライトの [終了] アイコン サテライト - 終了ノード アイコン をクリックします。

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


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

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

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

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

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

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

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


タイムアウト イベント