IM-BPM for Accel Platform IM-BPM チュートリアルガイド 第19版 2024-04-01

4.3.5.3. IM-Repositoryの列挙型をオプショナルタスクのパラメータで使用する

このチュートリアルでは、オプショナルタスクの「タスク追加」画面から追加するパラメータに対して「IM-Repository」の列挙型を使用する方法を解説します。
タスク追加時に使用するパラメータをあらかじめ「列挙型」として登録しておくことで、ユーザが追加できるパラメータを限定できます。
オプショナルタスクの詳細については、「IM-BPM 仕様書」 - 「オプショナルタスク」 もあわせて参照してください。
「IM-Repository」の詳細については、「IM-Repository ユーザ操作ガイド」 を参照してください。
../../../../_images/optional_task_0201.png
図 : 概要図
このチュートリアルでは、既に「IM-Repository」に登録されている列挙型の確認は行いますが、新規登録は行いません。
解説に合わせて動作確認を行う場合、使用する列挙型のサンプルを以下のリンクからダウンロードし、インポートしてください。
列挙型のインポートについての詳細は「IM-Repository ユーザ操作ガイド」-「インポートを行う」を参照してください。

コラム

列挙型の新規登録を実際に行いたい場合、「IM-Repository ユーザ操作ガイド」 - 「列挙」を参照してください。
プロセスを進めていく中で、「IM-FormaDesigner for Accel Platform」で作成したFormaアプリケーションを使用します。
チュートリアルを開始する前に以下の資材をインポートしてください。

コラム

IM-FormaDesignerと連携する場合、FormaDesignerのユーザプログラムとして前処理、後処理の設定が必要です。
フォームキーをEL式で定義している場合、デプロイ時に自動的に設定されません。
上記のサンプルには設定されていますが、各自で作成する場合は手動で登録する必要があります。
「IM-FormaDesigner連携」の詳細については、「IM-BPM 仕様書」 - 「IM-FormaDesigner連携」を参照してください。

コラム

このチュートリアルで作成するプロセス定義は、以下のリンクからダウンロードできます。
プロセス定義のアップロード方法については、以下のリンクを参照してください。
アップロード手順は「IM-BPM プロセスデザイナ 操作ガイド」-「プロセス定義のアップロード」を参照してください。

4.3.5.3.1. プロセス定義を作成する

下記のプロセス図は、「テスト依頼フロー」です。
「テスト依頼フロー」を開始することで、開始者の個人タスク一覧に「テスト実施依頼中」タスクが滞在します。
「タスク追加」画面から、依頼したいテストの内容に沿ったパラメータを選択して「テスト依頼」タスクを実行します。
タスクのプロパティがパラメータを元に設定されるため、同じオプショナルタスクから依頼しても各タスクの情報や表示されるForma画面を変更できます。
  • 「テスト実施依頼中」タスク
    オプショナルタスク「テスト依頼」を実行している間、フローを開始したユーザに滞在するタスクです。
    このタスクを保持している間に、オプショナルタスクを追加することでテストを依頼します。
  • 「テスト依頼」タスク
    複数追加可能な設定がされているオプショナルタスクです。
    タスク追加時に選択できるパラメータとして、列挙型に登録された「表示文字列」をプルダウンに表示します。
    追加されるタスクのプロパティにはEL式が設定されており、選択した列挙型の「値」を取得して設定されます。
    ../../../../_images/optional_task_0202.png
    図 : プロセス定義図
  1. 「開始イベント」を設置します。
  2. フローを開始したユーザを各タスクの担当者に設定するために、「イニシエータ」を設定しておきます。
    「開始イベント」の「メインコンフィグ」タブから、「イニシエータ」に starter と設定します。
    ../../../../_images/optional_task_0203.png
    図 : プロセス全体 - 「プロパティ」 - 「メインコンフィグ」
  3. プロセス全体の設定を行います。
    キャンパスの空白部分をクリックし、「プロパティ」をプロセス全体切り替えます。
    「プロセス」タブから、以下のように項目を設定します。
    • 名前 : テスト依頼フロー
    • 処理対象ユーザ : aoyagi
    ../../../../_images/optional_task_0204.png
    図 : プロセス全体- 「プロパティ」 - 「プロセス」
  4. 動作確認の際に「タスク一覧」画面でわかりやすくするため、ユーザタスクに名前を付けます。
    「ユーザタスク」を選択した状態で、「基本情報」タブから「名前」に テスト実施依頼中 と設定します。
    ../../../../_images/optional_task_0205.png
    図 : 「ユーザタスク」 - 「プロパティ」 - 「基本情報」
  5. このプロセス定義を開始したユーザに対して「テスト実施依頼中」タスクが実行されるように、EL式を設定します。
    「ユーザタスク」を選択した状態で、「メインコンフィグ」タブから「担当者」に ${starter} と設定します。
    ../../../../_images/optional_task_0206.png
    図 : 「ユーザタスク」 - 「プロパティ」 - 「メインコンフィグ」
  6. 「終了イベント」を設置します。
  7. テストを依頼したいユーザに対して作成する「テスト依頼」タスクを設置します。
    「ユーザタスク」を設置します。
  8. 設置したユーザタスクを「オプショナルタスク」にします。
    「ユーザタスク」を選択した状態で、「基本情報」タブから以下のように項目を設定します。
    • 名前 : テスト依頼
    • オプショナル : 有効
    • 実行中のタスクを複数追加可能にする : 有効
    ../../../../_images/optional_task_0207.png
    図 : 「ユーザタスク」 - 「プロパティ」 - 「基本情報」
  9. 「オプショナルタスク」にパラメータを設定します。
    「ユーザタスク」を選択した状態で、「基本情報」タブから「タスク追加時のパラメータ」にある「追加」リンクをクリックします。
    ../../../../_images/optional_task_0208.png
    図 : 「ユーザタスク」 - 「プロパティ」 - 「基本情報」
  10. 「タスク追加時のパラメータ」ダイアログが表示されます。
    以下のように、4つのパラメータを設定します。
    • テスト担当者
      表示名 : テスト担当者
      変数名 : staff
      入力タイプ : 列挙値
      列挙ID : test_staff
    • テストカテゴリ
      表示名 : テストカテゴリ
      変数名 : category
      入力タイプ : 列挙値
      列挙ID : test_category
    • テスト依頼フォーム
      表示名 : テスト依頼フォーム
      変数名 : formKey
      入力タイプ : 列挙値
      列挙ID : test_formKey
    • テスト優先度
      表示名 : テスト優先度
      変数名 : priority
      入力タイプ : 列挙値
      列挙ID : test_priority
    ../../../../_images/optional_task_0209.png
    図 : 「タスク追加時のパラメータ」
  11. 「タスク追加」画面で指定されたユーザを担当者に設定し、フォーム画面を紐づけるためEL式を設定します。
    「ユーザタスク」をクリックし、「メインコンフィグ」タブから以下の項目を設定します。
    • 担当者 : ${staff}

    • フォームキー : ${formKey}

    • 優先度 : ${priority}

    • カテゴリ : ${category}

      ../../../../_images/optional_task_0210.png
    図 : 「ユーザタスク」 - 「プロパティ」 - 「メインコンフィグ」

4.3.5.3.2. 「IM-Repository」の列挙型を確認する

チュートリアル開始前にインポートした「IM-Repository」の列挙型を確認します。
  1. 「サイトマップ」→「Repository」→「列挙型一覧」をクリックして、「列挙型」をクリックします。
  2. 「オプショナルタスクのパラメータをIM-Repositoryの列挙型と連携する」カテゴリがあることを確認します。
    ../../../../_images/optional_task_0211.png
    図 : 「列挙型」
  3. 列挙「テスト担当者」について確認します。
    「タスク追加時のパラメータ」の「テスト担当者」に設定した列挙ID「test_staff」の内容です。
    列挙項目の「表示文字列」に登録したユーザ名が、「タスクの追加」ダイアログから設定可能な候補としてプルダウンに表示されます。
    列挙項目の「値」に登録したユーザIDはEL式「${staff}」で取得され、タスクを処理する担当者が設定されます。
    ../../../../_images/optional_task_0212.png
    図 : 「列挙型」 - 「テスト担当者」
  4. 列挙「テストカテゴリ」について確認します。
    「タスク追加時のパラメータ」の「テストカテゴリ」に設定した列挙ID「test_category」の内容です。
    列挙項目の「表示文字列」に登録した名称が、「タスクの追加」ダイアログから設定可能なテスト範囲としてプルダウンに表示されます。
    列挙項目の「値」はEL式「${category}」で取得され、「個人タスク一覧」に表示されるタスクの「カテゴリ」に表示されます。
    ../../../../_images/optional_task_0213.png
    図 : 「列挙型」 - 「テストカテゴリ」
  5. 列挙「テスト依頼フォーム」について確認します。
    「タスク追加時のパラメータ」の「テスト依頼フォーム」に設定した列挙ID「test_formKey」の内容です。
    列挙項目の「表示文字列」に登録したフォーム名称が、「タスクの追加」ダイアログから設定可能な候補としてプルダウンに表示されます。
    列挙項目の「値」はEL式「${formKey}」で取得され、タスクを処理する際に表示するForma画面を設定します。
    ../../../../_images/optional_task_0214.png
    図 : 「列挙型」 - 「テスト依頼フォーム」
  6. 列挙「テスト優先度」について確認します。
    「タスク追加時のパラメータ」の「テスト優先度」に設定した列挙ID「test_priority」の内容です。
    列挙項目の「表示文字列」に登録した指標が、「タスクの追加」ダイアログから設定可能な優先度としてプルダウンに表示されます。
    列挙項目の「値」はEL式「${priority}」で取得され、「個人タスク一覧」に表示されるタスクの「カテゴリ」に表示されます。
    ../../../../_images/optional_task_0215.png
    図 : 「列挙型」 - 「テスト優先度」

4.3.5.3.3. 結果を確認する

このチュートリアルで作成した「プロセス定義」を実行環境にデプロイし、実行結果の確認を行います。
  1. 「テスト依頼フロー」を開始します。
    「サイトマップ」→「BPM」→「プロセス開始一覧」画面を表示し、「テスト依頼フロー」の「startable_list-start_processes」アイコンをクリックします。
    ../../../../_images/optional_task_0216.png
    図 : 「プロセス開始一覧」
  2. 開始されたプロセスを確認します。
    「プロセス開始一覧」画面のツールバーにある「タスク一覧」をクリックし、「タスク一覧」画面を表示します。
    ../../../../_images/optional_task_0217.png
    図 : 「プロセス開始一覧」
  3. 開始したプロセスに対して「オプショナルタスク」を追加します。
    「タスク一覧」画面の「個人タスク」にある「テスト依頼フロー」の「icon_reference」をクリックし、「プロセス参照」画面を表示します。
    ../../../../_images/optional_task_0218.png
    図 : 「タスク一覧」 - 「個人タスク」
  4. 開始したプロセスに対して「オプショナルタスク」を追加します。
    「プロセス参照」画面のツールバーから、「タスク追加」ボタンをクリックします。
    ../../../../_images/optional_task_0219.png
    図 : 「プロセス参照」
  5. 開始したプロセスに対して「オプショナルタスク」を追加します。
    「テスト依頼フロー」の直下にあるオプショナルタスク「テスト依頼」をクリックし、「タスクの追加」ダイアログを表示します。
    ../../../../_images/optional_task_0220.png
    図 : 「タスク追加」
  6. 「タスクの追加」ダイアログが表示されます。
    今回のチュートリアルでは結果確認動作を簡易化するため、全ての担当者に「 青柳辰巳 」を指定します。
    下記のように項目を設定することで「青柳さんに対して優先度の高い画面のテストを『依頼1』のFormaアプリケーション画面を使用して依頼」します。
    • テスト担当者 : 青柳辰巳

    • テストカテゴリ : 画面

    • テスト依頼フォーム: 依頼1

    • テスト優先度 :

      ../../../../_images/optional_task_0221.png
      図 : 「タスクの追加」
  7. 「テスト依頼」タスクが「タスク一覧」に追加され、かつ、「オプショナルタスク」はクリックできる状態であることを確認します。
    ../../../../_images/optional_task_0222.png
    図 : 「タスク追加」
  8. 結果を比較するためにもう一つオプショナルタスクを追加します。
    オプショナルタスク一覧の「テスト依頼」をクリックします。
    ../../../../_images/optional_task_0223.png
    図 : 「タスク追加」
  9. 「タスクの追加」ダイアログが表示されます。
    結果確認動作を簡易化するため、このタスクの担当者にも「 青柳辰巳 」を指定します。
    下記のように項目を設定することで「青柳さんに対して優先度の低いサーバのテストを『依頼2』のFormaアプリケーション画面を使用して依頼」します。
    • テスト担当者 : 青柳辰巳
    • テストカテゴリ : サーバ
    • テスト依頼フォーム: 依頼2
    • テスト優先度 :
    ../../../../_images/optional_task_0224.png
    図 : 「タスクの追加」
  10. 「テスト依頼」タスクの実行マークに「2」と表示されことを確認します。

    ../../../../_images/optional_task_0225.png
    図 : 「タスク追加」
  11. 各「テスト依頼」タスクを確認するため、「タスク一覧」画面に戻ります。

  12. 「タスク一覧」画面の「個人タスク一覧」に、下記のような設定のタスクがあることを確認します。

    • カテゴリが「画面テスト」で優先度の高い(100)「テスト依頼」タスク

    • カテゴリが「サーバテスト」で優先度の低い(10)「テスト依頼」タスク

      ../../../../_images/optional_task_0226.png
      図 : 「タスク一覧」 - 「個人タスク」
  13. 優先度の高いタスクから確認します。
    優先度が「100」と表示されているタスクの「startable_list-start_processes」ボタンをクリックします。
    ../../../../_images/optional_task_0227.png
    図 : 「タスク一覧」 - 「個人タスク」
  14. タスク追加時に表示文字列の「依頼1」を選択したため、Formaアプリケーション「optional_link_repository_req1」が表示されます。
    「確認」ボタンをクリックします。
    ../../../../_images/optional_task_0228.png
    図 : 依頼1(IM-FormaDesigner)
  15. 次に、優先度の低いタスクを確認します。
    優先度が「10」と表示されているタスクの「startable_list-start_processes」ボタンをクリックします。
    ../../../../_images/optional_task_0229.png
    図 : 「タスク一覧」 - 「個人タスク」
  16. タスク追加時に表示文字列の「依頼2」を選択したため、Formaアプリケーション「optional_link_repository_req2」が表示されます。
    「確認」ボタンをクリックします。
    ../../../../_images/optional_task_0230.png
    図 : 依頼2(IM-FormaDesigner)
  17. 「タスク追加」画面で追加したパラメータの内容を確認します。
    「タスク一覧」画面に戻り、個人タスクにある「テスト実施中」タスクの「参照」ボタンをクリックします。
    ../../../../_images/optional_task_0231.png
    図 : 「タスク一覧」 - 「個人タスク」
  18. 「プロセス詳細」画面、または、「プロセス図とタイムラインを拡大表示」画面から、プロセス履歴を確認します。
    最初に作成した「テスト依頼」タスクの「icon_reference」リンクをクリックします。
    ../../../../_images/optional_task_0232.png
    図 : 「プロセス図とタイムラインを拡大表示」
  19. 「オプショナルタスク詳細」ダイアログが表示されます。
    「タスク追加」画面の「タスクの追加」ダイアログで選択した表示文字列が確認できます。
    ../../../../_images/optional_task_0233.png
    図 : 「オプショナルタスク詳細」