4.3.5.3. IM-Repositoryの列挙型をオプショナルタスクのパラメータで使用する¶
このチュートリアルでは、オプショナルタスクの「タスク追加」画面から追加するパラメータに対して「IM-Repository」の列挙型を使用する方法を解説します。
タスク追加時に使用するパラメータをあらかじめ「列挙型」として登録しておくことで、ユーザが追加できるパラメータを限定できます。
オプショナルタスクの詳細については、「IM-BPM 仕様書」 - 「オプショナルタスク」 もあわせて参照してください。
「IM-Repository」の詳細については、「IM-Repository ユーザ操作ガイド」 を参照してください。
このチュートリアルでは、既に「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画面を変更できます。
- 「開始イベント」を設置します。
- フローを開始したユーザを各タスクの担当者に設定するために、「イニシエータ」を設定しておきます。「開始イベント」の「メインコンフィグ」タブから、「イニシエータ」に starter と設定します。
- プロセス全体の設定を行います。キャンパスの空白部分をクリックし、「プロパティ」をプロセス全体切り替えます。「プロセス」タブから、以下のように項目を設定します。
- 名前 : テスト依頼フロー
- 処理対象ユーザ : aoyagi
- 動作確認の際に「タスク一覧」画面でわかりやすくするため、ユーザタスクに名前を付けます。「ユーザタスク」を選択した状態で、「基本情報」タブから「名前」に テスト実施依頼中 と設定します。
- このプロセス定義を開始したユーザに対して「テスト実施依頼中」タスクが実行されるように、EL式を設定します。「ユーザタスク」を選択した状態で、「メインコンフィグ」タブから「担当者」に ${starter} と設定します。
- 「終了イベント」を設置します。
- テストを依頼したいユーザに対して作成する「テスト依頼」タスクを設置します。「ユーザタスク」を設置します。
- 設置したユーザタスクを「オプショナルタスク」にします。「ユーザタスク」を選択した状態で、「基本情報」タブから以下のように項目を設定します。
- 名前 : テスト依頼
- オプショナル : 有効
- 実行中のタスクを複数追加可能にする : 有効
図 : 「ユーザタスク」 - 「プロパティ」 - 「基本情報」 - 「オプショナルタスク」にパラメータを設定します。「ユーザタスク」を選択した状態で、「基本情報」タブから「タスク追加時のパラメータ」にある「追加」リンクをクリックします。
- 「タスク追加時のパラメータ」ダイアログが表示されます。以下のように、4つのパラメータを設定します。
- テスト担当者表示名 : テスト担当者変数名 : staff入力タイプ : 列挙値列挙ID : test_staff
- テストカテゴリ表示名 : テストカテゴリ変数名 : category入力タイプ : 列挙値列挙ID : test_category
- テスト依頼フォーム表示名 : テスト依頼フォーム変数名 : formKey入力タイプ : 列挙値列挙ID : test_formKey
- テスト優先度表示名 : テスト優先度変数名 : priority入力タイプ : 列挙値列挙ID : test_priority
- 「タスク追加」画面で指定されたユーザを担当者に設定し、フォーム画面を紐づけるためEL式を設定します。「ユーザタスク」をクリックし、「メインコンフィグ」タブから以下の項目を設定します。
担当者 : ${staff}
フォームキー : ${formKey}
優先度 : ${priority}
カテゴリ : ${category}
図 : 「ユーザタスク」 - 「プロパティ」 - 「メインコンフィグ」
4.3.5.3.2. 「IM-Repository」の列挙型を確認する¶
チュートリアル開始前にインポートした「IM-Repository」の列挙型を確認します。
- 「サイトマップ」→「Repository」→「列挙型一覧」をクリックして、「列挙型」をクリックします。
- 「オプショナルタスクのパラメータをIM-Repositoryの列挙型と連携する」カテゴリがあることを確認します。
- 列挙「テスト担当者」について確認します。「タスク追加時のパラメータ」の「テスト担当者」に設定した列挙ID「test_staff」の内容です。列挙項目の「表示文字列」に登録したユーザ名が、「タスクの追加」ダイアログから設定可能な候補としてプルダウンに表示されます。列挙項目の「値」に登録したユーザIDはEL式「${staff}」で取得され、タスクを処理する担当者が設定されます。
- 列挙「テストカテゴリ」について確認します。「タスク追加時のパラメータ」の「テストカテゴリ」に設定した列挙ID「test_category」の内容です。列挙項目の「表示文字列」に登録した名称が、「タスクの追加」ダイアログから設定可能なテスト範囲としてプルダウンに表示されます。列挙項目の「値」はEL式「${category}」で取得され、「個人タスク一覧」に表示されるタスクの「カテゴリ」に表示されます。
- 列挙「テスト依頼フォーム」について確認します。「タスク追加時のパラメータ」の「テスト依頼フォーム」に設定した列挙ID「test_formKey」の内容です。列挙項目の「表示文字列」に登録したフォーム名称が、「タスクの追加」ダイアログから設定可能な候補としてプルダウンに表示されます。列挙項目の「値」はEL式「${formKey}」で取得され、タスクを処理する際に表示するForma画面を設定します。
- 列挙「テスト優先度」について確認します。「タスク追加時のパラメータ」の「テスト優先度」に設定した列挙ID「test_priority」の内容です。列挙項目の「表示文字列」に登録した指標が、「タスクの追加」ダイアログから設定可能な優先度としてプルダウンに表示されます。列挙項目の「値」はEL式「${priority}」で取得され、「個人タスク一覧」に表示されるタスクの「カテゴリ」に表示されます。
4.3.5.3.3. 結果を確認する¶
このチュートリアルで作成した「プロセス定義」を実行環境にデプロイし、実行結果の確認を行います。
- 「テスト依頼フロー」を開始します。「サイトマップ」→「BPM」→「プロセス開始一覧」画面を表示し、「テスト依頼フロー」の「」アイコンをクリックします。図 : 「プロセス開始一覧」
- 開始されたプロセスを確認します。「プロセス開始一覧」画面のツールバーにある「タスク一覧」をクリックし、「タスク一覧」画面を表示します。図 : 「プロセス開始一覧」
-
図 : 「タスク一覧」 - 「個人タスク」
- 開始したプロセスに対して「オプショナルタスク」を追加します。「プロセス参照」画面のツールバーから、「タスク追加」ボタンをクリックします。図 : 「プロセス参照」
- 開始したプロセスに対して「オプショナルタスク」を追加します。「テスト依頼フロー」の直下にあるオプショナルタスク「テスト依頼」をクリックし、「タスクの追加」ダイアログを表示します。図 : 「タスク追加」
- 「タスクの追加」ダイアログが表示されます。今回のチュートリアルでは結果確認動作を簡易化するため、全ての担当者に「 青柳辰巳 」を指定します。下記のように項目を設定することで「青柳さんに対して優先度の高い画面のテストを『依頼1』のFormaアプリケーション画面を使用して依頼」します。
- 「テスト依頼」タスクが「タスク一覧」に追加され、かつ、「オプショナルタスク」はクリックできる状態であることを確認します。図 : 「タスク追加」
- 結果を比較するためにもう一つオプショナルタスクを追加します。オプショナルタスク一覧の「テスト依頼」をクリックします。図 : 「タスク追加」
- 「タスクの追加」ダイアログが表示されます。結果確認動作を簡易化するため、このタスクの担当者にも「 青柳辰巳 」を指定します。下記のように項目を設定することで「青柳さんに対して優先度の低いサーバのテストを『依頼2』のFormaアプリケーション画面を使用して依頼」します。図 : 「タスクの追加」
「テスト依頼」タスクの実行マークに「2」と表示されことを確認します。
図 : 「タスク追加」各「テスト依頼」タスクを確認するため、「タスク一覧」画面に戻ります。
「タスク一覧」画面の「個人タスク一覧」に、下記のような設定のタスクがあることを確認します。
- 優先度の高いタスクから確認します。優先度が「100」と表示されているタスクの「」ボタンをクリックします。図 : 「タスク一覧」 - 「個人タスク」
- タスク追加時に表示文字列の「依頼1」を選択したため、Formaアプリケーション「optional_link_repository_req1」が表示されます。「確認」ボタンをクリックします。図 : 依頼1(IM-FormaDesigner)
- 次に、優先度の低いタスクを確認します。優先度が「10」と表示されているタスクの「」ボタンをクリックします。図 : 「タスク一覧」 - 「個人タスク」
- タスク追加時に表示文字列の「依頼2」を選択したため、Formaアプリケーション「optional_link_repository_req2」が表示されます。「確認」ボタンをクリックします。図 : 依頼2(IM-FormaDesigner)
- 「タスク追加」画面で追加したパラメータの内容を確認します。「タスク一覧」画面に戻り、個人タスクにある「テスト実施中」タスクの「参照」ボタンをクリックします。図 : 「タスク一覧」 - 「個人タスク」
-
図 : 「プロセス図とタイムラインを拡大表示」
- 「オプショナルタスク詳細」ダイアログが表示されます。「タスク追加」画面の「タスクの追加」ダイアログで選択した表示文字列が確認できます。図 : 「オプショナルタスク詳細」