3.2. サンプル2 フロー別の滞留案件の一覧を作成する¶
IM-Workflow のフロー別に、滞留案件の一覧を作成します。
3.2.1. このサンプルについて¶
このサンプルでは、1週間以上処理が実行されていない案件の一覧を ViewCreator で作成します。作成した一覧の項目にリンクを設定し、リンクから処理対象者の一覧を表示します。
3.2.2. このサンプルでできること¶
- ViewCreator で作成した画面へのリンクを張ることができます。
3.2.3. このサンプルで参照するテーブルの情報¶
このサンプルで利用するテーブルの情報を説明します。
- 未完了案件未完了タスクテーブル(imw_t_actv_task)
次に処理するワークフローのタスクが格納されるテーブルです。処理待ちとなっているノードのタスクの情報が登録されます。IM-Workflow の処理は、差戻後の承認のように、同一ノードに対して複数回処理できます。タスクテーブルには、ノード上で行われた処理がタスクとして登録されます。
カラム 説明 システム案件ID(system_matter_id) ワークフロー側が案件を一意に特定するためのIDです。ノードID(node_id) ノードを一意に特定するためのIDです。開始日(start_date) タスクが登録された日時です。
- 未完了案件テーブル(imw_t_actv_matter)
未完了案件情報を格納するテーブルです。案件毎に1レコード作成されます。作成されたレコードは、案件が完了すると削除され、完了案件テーブル(imw_t_cpl_matter)に対応するレコードが作成されます。
カラム 説明 システム案件ID(system_matter_id) ワークフロー側が案件を一意に特定するためのIDです。フローID(flow_id) フロー定義を一意に特定するためのIDです。ユーザデータID(user_data_id) ユーザコンテンツ側が案件を一意に特定するためのID です。アプリケーションのテーブルのユーザデータIDと結合するカラムです。案件番号(matter_number) 画面、帳票でユーザが案件を識別するためのIDです。 申請基準日(apply_base_date) ワークフローが処理を行う際の基準日です。
- 未完了案件案件ロケールテーブル(imw_t_actv_matter_locale)
ロケール毎に保持する情報を格納するテーブルです。申請時点でロケール毎に1レコード作成されます。フロー名を取得するために利用します。
カラム 説明 システム案件ID(system_matter_id) ワークフロー側が案件を一意に特定するためのIDです。ロケールID(locale_id) ロケールを一意に特定するためのID です。フロー名(flow_name) フロー名です。
- 未完了案件タスク処理対象者テーブル(imw_t_actv_executable_user)
処理対象者情報を格納するテーブルです。未完了案件未完了タスクテーブルで処理待ちとなっているタスクに対する処理対象者情報が格納されます。
カラム 説明 システム案件ID(system_matter_id) ワークフロー側が案件を一意に特定するためのIDです。ノードID(node_id) ノードを一意に特定するためのIDです。ロケールID(locale_id) ロケールを一意に特定するためのID です。権限者名(auth_user_name) 処理対象者名です。
コラム
テーブル定義情報の詳細は、「 IM-Workflow テーブル定義書 」を参照してください。
3.2.4. クエリを作成する(メイン画面)¶
メイン画面となる IM-Workflow の未完了案件に対してクエリを作成します。
サイトマップ→「ViewCreator」→「クエリ一覧」をクリックします。 「クエリ一覧」で「新規」をクリックします。 「クエリ名」、「説明」を入力します。 「テーブル一覧」から下記のテーブルを検索し、テーブルをドラッグして右側に配置します。 配置したテーブルを下記の通りに結合します。 「カラム一覧」に各テーブルから下記のカラムを追加します。一覧画面に表示するカラム名を変更したい場合には、キャプションに表示したい名称を設定します。 「抽出条件一覧」に以下を追加します。 追加が終わったら「登録」をクリックします。 以上で、リスト集計のベースとなるクエリが作成できました。
コラム
案件数が多くリスト集計の表示に時間がかかる場合は、抽出条件を設定することで改善する可能性があります。
「抽出条件一覧」で申請基準日を条件に追加し、データ数を制限すること等を検討してください。
また、申請基準日を条件に追加して改善しない場合、該当カラムにインデックスの設定を検討してください。
3.2.5. クエリを作成する(リンク先画面)¶
リンク先画面用のクエリを作成します。
サイトマップ→「ViewCreator」→「クエリ一覧」をクリックします。 「クエリ一覧」で「新規」をクリックします。 「クエリ名」、「説明」を入力します。 「テーブル一覧」から下記のテーブルを検索し、テーブルをドラッグして右側に配置します。 「カラム一覧」に各テーブルから下記のカラムを追加します。一覧画面に表示するカラム名を変更したい場合には、キャプションに表示したい名称を設定します。 「抽出条件一覧」に以下を追加します。 追加が終わったら「登録」をクリックします。 以上で、リンク先画面のベースとなるクエリが作成できました。
3.2.6. リスト集計画面を作成する(リンク先画面)¶
作成したクエリから「リスト集計」を作成します。メイン画面にリンク先画面に対するリンクの設定が必要なため、リンク先画面から作成します。メイン画面からリクエストパラメータを受け取り、対象データを表示できるように設定します。
クエリが登録された後に、「登録」(更新)の右の「データ参照新規作成」をクリックします。
データ参照名などの情報を入力します。
一覧に表示する項目を設定するために、表示したい項目の表示のチェックボックスをオンにします。また、数値や日付項目のフォーマットを「フォーマット」で設定します。 抽出条件を設定します。メイン画面からの遷移するときに、リクエストパラメータとして受け取るように設定します。「登録して一覧へ戻る」をクリックして、リスト集計画面(データ参照)を保存します。
以上で、リンク先画面の作成が完了しました。
3.2.7. リスト集計画面を作成する(メイン画面)¶
作成したクエリから「リスト集計」を作成します。リストに表示する項目から 処理対象者をリンク先画面で表示できるように、リンクを設定します。
クエリが登録された後に、「登録」(更新)の右の「データ参照新規作成」をクリックします。
データ参照名などの情報を入力します。
一覧に表示する項目を設定するために、表示したい項目の表示のチェックボックスをオンにします。数値や日付項目のフォーマットを「フォーマット」で設定します。また、表示データのソート順を「ソート順」で設定します。 案件名のカラム「matter_name」から案件の詳細画面を表示できるように、リンクを設定します。リンクを設定するために「matter_name」のタイプを「プログラム」に変更します。 リンク先として、 IM-Workflow の詳細画面を呼び出すためのパスを設定します。「 」をクリックし、連携プログラムパスにリンクする リンク先画面のパスを入力し、「OK」をクリックします。
設定する画面 連携プログラムパス 詳細画面 viewcreator/dataview/list/viewcreator_sample21
リクエストパラメータとして、連携先のプログラムへ渡すパラメータを設定します。パラメータ名を以下の通りに設定します。
カラム 設定値 ノードID(node_id) node_id システム案件ID(system_matter_id) system_matter_id 「登録して一覧へ戻る」をクリックして、リスト集計画面(データ参照)を保存します。
以上で、メイン画面の作成が完了しました。
コラム
作成した画面の参照権限の設定方法は、「 ViewCreator 管理者操作ガイド - 参照権の設定 」を参照してください。