1. EntityView
GEMはエンティティに対して、検索一覧と詳細画面を自動生成する仕組みを提供しています。 EntityViewを利用することで、エンティティの検索一覧と詳細画面をカスタマイズし、表示項目の制御や入力方法の変更、ユーザー(ロール)に合わせたレイアウトの設定を可能とします。
2. 操作説明
2.1. 検索画面
登録済みのエンティティのデータを検索し、一覧表示するための画面です。
ボタンエリア
新規登録
をクリックすると、エンティティの登録画面が表示されます。
登録画面では単一データを登録できます。
Upload
をクリックすると、アップロード画面が表示されます。
アップロード画面ではCSVファイルかExcelファイルを利用して、データの一括登録、更新ができます。
検索条件エリア
検索一覧の上部は検索条件を設定するエリアになっています。
通常検索
、 詳細検索
、 定型検索
の3種類の検索方法が用意されています。
バージョン管理されているEntityの場合には、検索条件エリアに すべてのバージョン(無効データ含む)を検索
というチェックボックスが表示されます。チェックを入れた場合、すべてのバージョンのデータを検索対象とします。ただし、チェックボックスにチェックを入れていない場合でも、バージョン管理用項目(有効開始日、有効終了日、ステータス、バージョン)が検索条件に指定されている場合、すべてのバージョンのデータを検索対象とします。
通常検索
通常検索
は検索条件上部の 検索
をクリックすると、その下にエンティティの項目と検索条件を入力するフィールドが表示されます。
検索時に設定する検索条件を指定します。 項目により入力方法が変わります。 詳細は入力フィールドを参照してください。
検索項目に指定された条件を利用して検索を行います。
検索後は検索結果が表示され、検索条件は折り畳まれ、縮小表示になります。
再度検索条件を表示する時は 検索
の部分をクリックします。
検索項目に指定された条件を利用して検索を行い、結果をファイルとしてダウンロードします。 クリック時に以下のダイアログが表示されます。
アップロード用の形式で出力を選択した場合、アップロード画面でファイルのアップロードに利用できます。 アップロード形式でない場合は、検索結果エリアの設定か検索条件エリアで直接設定した項目を出力します。 検索画面の設定によって、CSVファイルかExcelファイル、またはどちらかを利用者が選択することが可能です。
検索条件をリセットします。 画面表示時に検索条件が指定されていた場合は、リセットを行うと画面表示時の状態に戻ります。
ゴミ箱を表示します。
検索結果で 削除
を行ったデータはゴミ箱に格納されます。
詳細検索
詳細検索
は検索条件上部の 詳細検索
をクリックすると、その下に任意のエンティティの項目と条件、キーワードを入力するフィールドが表示されます。
右側の +
は検索条件の追加、 -
は該当行を削除します。
型ごとにキーワードへ指定できる文字が変わります。
型 | 形式 |
---|---|
真偽値 |
|
日付 |
yyyyMMdd形式の文字列(20180601等) |
日時 |
yyyyMMdd形式の文字列(20180601等) |
時間 |
HHmmss形式の文字列(093000) |
参照型 |
参照データの名前項目、または表示ラベルとして扱うプロパティとして指定された項目 |
選択型 |
選択肢の値またはラベル |
数値 |
任意の数値 |
その他 |
任意の文字列 |
検索項目で指定した条件をどのように組み合わせるかを指定します。
- すべての条件に一致
-
AND条件で組み合わせます
- いずれかの条件に一致
-
OR条件で組み合わせます
- すべての条件に一致しない
-
NOT条件で組み合わせます
条件の組合せを任意に行いたい場合に指定します。
以下のような書式で指定してください。
式内の $n
が検索項目の行頭の数字に対応しています。
(($1 and $2) or ($3 and $4)) and (not $5)
定型検索
定型検索
は検索条件上部の 定型検索
をクリックすると、その下に固定条件(あらかじめ登録された検索条件)が表示されます。
固定条件はフィルタ機能を利用して作成できます。
フィルタ機能で登録された検索条件です。 条件の内容は変更できません。
検索結果エリア
検索実行時に検索条件に一致するデータが表示されます。
データの詳細画面、編集画面を表示します。
データが5件(設定により変わる事あり)以上有る場合に使用します。
前を表示
、 次を表示
は現在表示しているデータの前後のデータを表示します。
虫眼鏡のアイコンは、クリックするとテキストボックスに入力したページを表示します。
現在表示中の全データを削除/一括更新対象として選択します。
削除対象として選択中のデータを削除(ゴミ箱に移動)します。
全削除
がチェック中の場合、削除対象を選択するダイアログを表示します。
- 選択された行を削除
-
現在表示中で削除対象になっているデータを削除します。
- 検索条件を元に全て削除
-
検索を行った時の条件を利用して、一致する全データを削除します。
一括更新対象として選択中のデータを利用して一括更新画面を表示します。
2.2. ゴミ箱
検索一覧などで削除されたデータが格納されています。 削除データについてはデータの内容等は参照できません。
元に戻す
もしくは ごみ箱から削除
する対象を選択します。
表頭のチェックボックスを選択すると、全データを対象にできます。
処理対象として選択したデータを元に戻します。 検索一覧で検索すると再度表示されます。
処理対象として選択したデータを完全に削除します。 ゴミ箱から削除したデータは復元できません。
検索一覧に戻ります。
2.3. 一括更新画面
検索一覧で選択中のデータを一括更新する操作画面です。 選択したレコードに対して、単一の項目と複数の項目を更新する二つのパターンがあります。
単一の項目を一括更新
全一括更新
がチェック中の場合、一括更新方法を選択する設定を表示します。
処理対象として選択したデータに対して連続更新する場合、二回目以降は一括更新方法を変更することができません。
- 選択された行を一括更新
-
現在表示中で一括更新対象になっているデータを一括更新します。
- 検索条件を元に全て一括更新
-
検索を行った時の条件を利用して、一致する全データを一括更新します。
処理対象として選択したデータに対して、どの項目を一括更新対象にするかを選択します。 選択した項目のAdminConsoleでの一括更新プロパティエディタの設定によって、一括更新画面で表示する入力エリアが変わります。 一括更新プロパティエディタが未設定の場合、一括更新画面での項目選択リストに表示しません。 検索結果プロパティの設定を参照してください。
処理対象として選択したデータに対して、一括更新する項目に設定した値で更新します。
一括更新画面を閉じます。
一括更新処理を実行した後に、処理対象として選択したデータで更新された項目名と更新値を表示します。
複数の項目を一括更新
SearchLayoutの検索結果の設定で BulkViewレイアウト定義を利用
という項目にチェックを入れた場合、
BulkViewLayoutを利用して一括更新画面を生成し、複数項目を一括更新することができます。
全一括更新
がチェック中の場合、一括更新方法を選択する設定を表示します。
処理対象として選択したデータに対して連続更新する場合、二回目以降は一括更新方法を変更することができません。
- 選択された行を一括更新
-
現在表示中で一括更新対象になっているデータを一括更新します。
- 検索条件を元に全て一括更新
-
検索を行った時の条件を利用して、一致する全データを一括更新します。
処理対象として選択したデータに対して、複数の項目を一括更新することができます。
ブランクで項目を一括更新することができない制限があります。ご注意ください。 入力値がブランクの項目を未入力の項目として扱い、一括更新項目にはなりません。 |
処理対象として選択したデータに対して、一括更新する項目に設定した値で更新します。
一括更新画面を閉じます。
2.4. アップロード画面
ファイルをアップロードして、データの一括登録、更新ができます。
検索画面の設定によって、CSVファイルかExcelファイル、またはどちらかを利用者が選択することが可能です。 利用者が選択可能な場合は、ファイルの種類を選択します。
アップロード対象のファイルを選択します。
更新対象のデータを特定するためのユニークキー項目を選択します。
ユニークキーとなっているプロパティがない場合は OID
のみ選択できます。
選択したファイルをアップロードします。 アップロードが完了すると、登録や更新の件数などの処理結果が表示されます。
エラーが発生した場合、該当行がエラーで表示されます。 該当行を修正した後、再度アップロードしてください。
アップロード可能なフォーマットのサンプルファイルをダウンロードします。
検索一覧に戻ります。
アップロードするファイルに関する注意事項が記載されています。 アップロード機能を利用する際は一度内容の確認をしてください。
2.5. 詳細画面
エンティティの単一データを表示するための画面です。
ボタンエリア
編集
をクリックすると、表示中のデータの編集画面が表示されます。
コピー
をクリックすると、表示中のデータを元にした新規登録用の編集画面が表示されます。
新しいバージョンで更新
をクリックすると、表示中のデータを残したまま、新しいバージョンとして更新するための編集画面が表示されます。
ロック
をクリックすると、データを他者が編集できないようにします。
解除するにはロックしたユーザーかシステム管理者が ロック解除
をする必要があります。
戻る
をクリックすると、検索一覧が表示されます。
ナビゲーションリンク
セクションエリアの各セクションへジャンプするためのリンクが表示されます。 セクションが縮小表示されている場合にナビゲーションリンクをクリックすると、セクションは展開されます。
全て開く
と 全て閉じる
はセクションエリア内の全てのセクションに対して縮小、展開ができます。
セクションエリア
プロパティ等をまとめて表示するセクションが配置されるエリアです。 セクションは複数配置でき、用途にあわせてプロパティを内部に配置できます
セクションのタイトル部分をクリックすることで、セクションの下部を隠したり、再度表示することができます。
2.6. 編集画面
エンティティの単一データを編集するための画面です。
ボタンエリア
登録
をクリックすると、新規作成のデータを登録できます。
登録後はデータの詳細画面が表示されます。
保存
をクリックすると、編集中のデータを保存します。
保存後はデータの詳細画面が表示されます。
削除
をクリックすると、編集中のデータを削除します。
データはゴミ箱へ移動し、検索一覧が表示されます。
キャンセル
をクリックすると、検索一覧が表示されます。
入力フィールド
セクション内には各プロパティの入力フィールドが表示されます。 型や表示の設定により、入力方法が変わります。
文字列や数字など一般的な入力フィールドです。
他の形式のフィールドも含め、フィールドに複数の値を設定可能な場合、 追加
をクリックするとフィールドが追加されます。
フィールドは右端の 削除
をクリックすることで削除できます。
改行を含む文字列、文章を入力するためのフィールドです。
パスワードを入力するためのフィールドです。 入力内容はマスクされます。
日付を入力するフィールドです。 入力時にカレンダーが表示され、日付を選択すると自動的にフィールドに反映されます。
日時を入力するフィールドです。 入力時にカレンダーが表示され、日付を選択すると自動的にフィールドに反映されます。
時間についてはプルダウンから時、分、秒を選択する形式と、カレンダー上で日付と併せて選択する形式があります。
時間を入力するフィールドです。 プルダウンから時、分、秒を選択する形式と、カレンダー上で日付と併せて選択する形式があります。
選択リストの中から一つを選択する形式です。
複数の選択肢から一つを選択する形式です。
複数の選択肢から任意のものを複数選択する形式です。
ワードライクな文章入力エリアです。 上部のアイコンを利用することで、簡単に文章を加工できます。 htmlタグの使用もできます。
参照項目は既存のデータを 選択
するか、 新規
に登録することで設定します。
選択
をクリックすると選択画面が表示されます。
検索一覧のように検索を行い、対象データを選択、 確定
をクリックすると参照項目に反映されます。
新規
をクリックすると詳細画面が表示されます。
必要項目を入力し、 登録
をクリックすると参照項目に反映されます。
フィールドに複数の値を設定可能な場合、選択画面ではデータを複数選択できるようになります。
複数件選択できる場合、ヘッダ部分にチェックボックスが表示されます。
チェックすると全選択の対象を選択できるようになります。
全てのページ
を選択すると現在の検索条件でヒットする全てのデータ、 現在のページ
を選択すると現在表示中のページのデータを選択します。
チェックを解除した場合、上記とは逆に全選択の解除の対象を選択できます。
関連する子データをテーブル形式で表示します。 行の追加や削除、子データの詳細画面の表示などができます。 三角のアイコンをクリックすることで、行の順序の入れ替えができます。
3. EntityViewの管理
EntityViewはEntityの検索一覧、詳細・編集画面をカスタマイズする仕組みを提供しています。 検索一覧はSearchLayoutとFilter、詳細・編集画面はDetailLayoutの設定を利用して画面を生成しています。
検索一覧に選択したレコードに対して、複数の項目を同時に更新したい場合、BulkLayoutの設定を利用して一括更新画面を生成します。 一括更新画面を参照してください。
また、用途に併せて複数のレイアウトをViewとして作成することができます。 Viewは名前を付与して区別しており、SearchLayoutとDetailLayout及びBulkLayoutは同一の名前のViewをセットとして運用します。
3.1. 表示方法
メニューには各エンティティに対応するメニューが表示されており、クリックすることで検索一覧が表示されます。 検索一覧からは、新規作成や検索結果の詳細、編集等をクリックすることで、詳細画面が表示されます。
エンティティを作成するとそのエンティティに対応するメニューが作成され、 DEFAULT
メニュー定義に追加されます。
DEFAULT
以外のメニュー定義で検索一覧を表示したい場合には、個別に追加する必要があります。
TopViewの設定画面を表示し、 SearchResult List
を配置します。
SearchResult List
の設定画面を開き、対象のEntityや表示項目を定義した検索一覧の画面定義を指定してください。
設定項目 | 設定内容 |
---|---|
Entity |
対象となるエンティティを指定します。 |
ResultList View |
検索結果一覧に適用するSearchLayoutのViewを選択します。 |
Link Action View |
検索画面リンクから検索画面を表示する際に適用するSearchLayoutのViewを選択します。 |
Detail Action View |
検索結果の詳細・編集リンクから詳細画面を表示する際に適用するDetailLayoutのViewを選択します。
未指定の場合、 |
Filter |
対象エンティティにFilterが定義されていれば、本項目で選択可能となります。 |
Title |
タイトルをカスタマイズしたい場合に指定します。 |
Icon Tag |
タイトルの前に表示するiタグなどを利用した独自のアイコンを設定できます。 |
Class |
スタイルシートのクラス名を指定します。複数指定する場合は半角スペースで区切って下さい。 |
Hight |
Main Areaに配置した場合の一覧の高さを指定します。 |
Search asynchronously |
チェックを入れた場合、非同期で検索処理を行います。 |
3.2. 検索画面
検索画面の条件、結果部分のレイアウトをカスタマイズできます。 レイアウト設定を行わない場合、検索一覧には基本項目及び、エンティティに登録されたプロパティが エンティティ定義上での定義順で表示されます。
SearchLayoutの表示
レイアウト設定を行いたいエンティティを右クリックし、 Search_Layoutを開く
を選択します。
SearchLayoutの構成
SearchLayoutは以下の構成になっています。
ツールバー
紫枠の部分はSearchLayoutの各Viewに対する操作を行うためのボタン群です。 EntityViewでは1つのエンティティに対して複数のレイアウトを保持できます。
ボタン名 | 説明 |
---|---|
表示 |
View名で選択したViewを表示します。 |
保存 |
カスタマイズしたViewを保存します。 カスタマイズ後、保存ボタンをクリックしてください。 |
追加 |
Viewを新規に追加します。 |
削除 |
View名で選択したViewを削除します。 |
標準ロード |
View定義を設定しない場合に表示される自動生成画面と同等の設定をロードします。 |
コピー |
View名で選択したViewをコピーします。 |
Viewを追加する場合、必ず default
のViewを先に作成してください。
default
のViewを作成せずにViewを追加した場合、検索一覧でエラーになる可能性があります。
追加セクション
青枠の部分は検索一覧の該当部分にカスタマイズを入れるための機構です。
画面右側の Section
内の部品をドラッグ&ドロップで配置できます。
定義済みのテンプレートやHTMLベースのスクリプトを組み込むことができます。
検索条件、検索結果
緑枠の部分はエンティティのプロパティを配置する領域です。
画面右側の Property
、 Element
内の部品をドラッグ&ドロップで配置できます。
SearchLayoutが作成されてない状態だと、検索一覧表示時にはエンティティのプロパティが自動で配置されます。
検索画面の設定
図の①部分をクリックすると検索一覧全体に対する設定を行うダイアログが表示されます。
設定項目 | 設定内容 | ||
---|---|---|---|
画面タイトル |
画面に表示するタイトルを入力します。
未入力の場合、エンティティの |
||
イメージカラー |
ビューのイメージカラー(画面タイトルの左に表示されるアイコンの色)を選択します。 次から選択できます。
フラットデザインでは表示されません。 |
||
アイコンタグ |
タイトルの前に表示するiタグなどを利用した独自のアイコンを設定できます。 |
||
ダイアログ表示時に最大化 |
参照ダイアログ表示時に最大化する場合はチェックします。 |
||
新規作成ボタンを非表示 |
検索一覧(条件部)の上部に表示されている新規登録ボタンを非表示にする場合はチェックします。 |
||
ごみ箱を非表示 |
|
||
ごみ箱操作をユーザー削除データに限定 |
ごみ箱内のデータ操作(取得/復元/削除)を削除したユーザーのみに限定する場合はチェックを入れます。 限定する場合、管理者ユーザーでも他者削除データは操作ができなくなります。 |
||
検索WebApi |
検索一覧(条件部)の検索ボタンクリックで実行されるWebApiを設定します。 |
||
ダウンロードアクション |
検索一覧(条件部)のDownloadボタンクリックで実行されるアクションを設定します。 |
||
アップロード画面表示アクション |
検索一覧のUploadボタンクリックで実行されるアクションを設定します。 |
||
新規登録アクション |
上部に表示されている新規登録ボタンクリックで実行されるアクションを設定します。 |
||
表示アクション |
検索一覧(結果部)の詳細リンククリックで実行されるアクションを設定します。 |
||
編集アクション |
検索一覧(結果部)の編集リンククリックで実行されるアクションを設定します。 |
||
一括削除WebApi |
検索一覧(結果部)の削除ボタンクリックで実行されるWebApiを設定します。 |
||
全削除WebApi |
検索一覧(結果部)の全選択ラジオボタンチェック時に表示されるダイアログで、 |
||
ボタン |
検索一覧(条件部)の上部に追加するボタンを設定します。 詳細はボタン設定を参照してください。 |
||
Javascriptコード |
検索一覧のScriptタグ内に出力するJavascriptコードを入力します。 |
||
データの多言語化 |
データ操作時に多言語化する場合はチェックします。
チェックした場合、エンティティ定義の |
||
物理削除 |
チェックした場合、検索一覧(結果部)の |
||
特定バージョンを削除 |
バージョン管理しているEntityの場合に、検索結果の削除処理やアップロード時の
|
||
バージョン管理Entity以外の場合に参照先の保存時バージョンの検索を許可 |
バージョン管理していないEntityに、バージョン管理している参照先プロパティ(参照タイプとして
|
||
UserPropertyEditor利用時に特権実行でユーザー名を表示する |
UserPropertyEditorが設定されているプロパティに対し、ユーザー情報のEntity、またはユーザー名のプロパティに参照権限が無いユーザーでも、特権実行をしてユーザー名を表示することができます。
また、この設定は |
||
Entity権限における限定条件の除外設定 |
Entity権限における限定条件を適用せずに検索を実行する参照先のプロパティ名を設定します。特権実行する場合、または |
||
EQLカスタム処理クラス名 |
検索時やダウンロード時にクエリ等のカスタマイズを行いたい場合は
|
||
ダウンロード時にEQLカスタム処理クラスを利用する |
EQLカスタム処理クラスをダウンロード時の検索処理でも利用するかを指定します。 |
||
検索画面Handlerクラス名 |
設定により対応できない動作をカスタマイズするためのフック用Handlerを指定します。
指定できるのは |
検索条件の設定
図の②部分をクリックすると検索条件に対する設定を行うダイアログが表示されます。
設定項目 | 設定内容 | ||
---|---|---|---|
列数 |
セクションの列数を設定します。 |
||
詳細条件の表示件数 |
詳細条件に初期表示する条件の数を設定します。 |
||
詳細検索を非表示 |
詳細検索タブを非表示にする場合はチェックします。 |
||
定型検索を非表示 |
定型検索タブを非表示にする場合はチェックします。 |
||
クラス名 |
セクションに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
||
id |
画面上で一意となるidを設定します。 |
||
データのファイル形式 |
ダウンロードやアップロードで利用するファイル形式を指定します。
未指定の場合は、GemConfigService の |
||
ダウンロードボタンを非表示 |
ダウンロードボタンを非表示にする場合はチェックします。 |
||
ダウンロードダイアログを非表示 |
ダウンロードボタン押下時に、出力内容を選択するダイアログを表示しない場合はチェックします。 チェックした場合、アップロード形式ではなく、検索結果に設定されている項目のみが出力されます。 |
||
ダウンロード時oidを出力しない |
ダウンロードファイルにエンティティデータのoidを出力しない場合はチェックします。 |
||
ダウンロード時BinaryReferenceを出力しない |
ダウンロードファイルにエンティティデータのBinaryReference(nameのみ)を出力しない場合はチェックします。 |
||
ダウンロード時referenceを出力しない |
ダウンロードファイルにエンティティデータのReferenceを出力しない場合はチェックします。
未チェックの場合、oidを出力しない設定がされている場合はname項目または |
||
ダウンロード時表示名を出力しない |
Upload形式のダウンロードファイルのヘッダに、表示名を出力しないようにします。 チェックした場合、ダウンロードダイアログで、「ヘッダ行に表示名を利用しない」選択オプションを表示しません。 |
||
多重度プロパティ出力形式 |
ダウンロードファイルの出力で、多重度が複数のプロパティ(Reference以外)の出力形式を指定します。
|
||
ダウンロード時文字コードを指定可能にする |
ダウンロードファイルの形式がCSVの場合に、ダウンロード時に文字コードを選択可能にするかを設定します。
|
||
ダウンロード件数の上限値 |
ダウンロード件数の上限値を設定します。
データを取得する際に制限をかけます。
設定されていない場合、GemConfigService の
|
||
Upload形式のダウンロード時に一括でロードする |
Upload形式のダウンロードで、多重度複数の参照を含む場合に一括でロードをするかを設定します。
一括でロードしない場合は、
|
||
Upload形式のCSVダウンロード時のロード単位 |
Upload形式のCSVダウンロードで、多重度複数の参照を含む場合に一度にロードする件数を設定します。
ロード単位が1以下の場合は、1件ずつロードを行います。 |
||
ダウンロード項目 |
アップロード形式ではないダウンロードファイルに対して、検索結果に設定されている項目ではなく、直接出力項目を指定したい場合に設定します。 カンマ区切りで出力対象のプロパティ名を指定します。参照項目のプロパティなどは.プロパティ名で指定します。 (参照項目自体が指定された場合は参照項目のnameを出力)
|
||
ダウンロード項目(アップロード形式) |
アップロード形式のダウンロードファイルに対して、直接出力項目を指定したい場合に設定します。 カンマ区切りで出力対象のプロパティ名を指定します。参照プロパティに対する参照先エンティティのプロパティは指定できません。
|
||
ファイル名Format |
ダウンロードするファイル名のフォーマットを設定します。 ${csvName}_${yyyy}${MM}${dd} |
||
アップロードボタンを非表示 |
アップロードボタンを非表示にする場合にチェックします。 アップロード可能なファイルは、ダウンロード時に ファイルをアップロードする際に、 |
||
アップロードで登録を許可しない |
アップロードでinsertを許可しない場合にチェックします。 |
||
アップロードで更新を許可しない |
アップロードでupdateを許可しない場合にチェックします。 |
||
アップロードで削除を許可しない |
アップロードでdeleteを許可しない場合にチェックします。 |
||
アップロード登録項目 |
アップロードでinsertする項目を制限したい場合に設定します。カンマ区切りで登録対象のプロパティ名を指定します。 |
||
アップロード更新項目 |
アップロードでupdateする項目を制限したい場合に設定します。カンマ区切りで更新対象のプロパティ名を指定します。 |
||
アップロードトランザクションタイプ |
アップロード時のコミットタイミングを設定します。
|
||
アップロード更新データTargetVersion(非バージョン管理) |
バージョン管理対象ではないEntityのアップロード処理で、更新データに対するTargetVersionを設定します。 未指定、 |
||
バージョン管理Entity以外の場合にアップロード画面でTargetVersionの指定を許可 |
バージョン管理Entity以外の場合にアップロード画面で更新時のTargetVersionの指定を許可します。 許可した場合、アップロード画面に |
||
カスタムアップロード処理クラス名 |
アップロード処理をカスタマイズしたい場合は |
||
重複行をまとめる |
チェックした場合、重複行をまとめます。
検索時に |
||
デフォルト検索条件 |
検索画面上には表示されず、検索時に自動的に付与される検索条件をPreparedQuery形式で指定します。 WHERE句に指定する条件を指定してください。 詳細はデフォルト検索条件を参照してください。 |
||
フィルタ設定 |
定型検索で使用するフィルタを設定します。 未指定の場合は全てのフィルタが対象になります。 |
||
検索時にデフォルト検索条件をフィルタ定義と一緒に利用するか |
フィルタ定義を使う検索(定型検索、検索結果一覧パーツまたはウィジェット)で、フィルタ定義と一緒にデフォルト検索条件を適用する場合にチェックします。
|
||
デフォルトプロパティ条件設定スクリプト |
検索一覧(条件部)のプロパティの初期条件をGroovyScript形式で設定します。 デフォルトプロパティ条件設定スクリプトを参照してください。 |
||
ソート設定 |
検索時にデフォルトで設定されるソート条件を設定します。 ソート設定を参照してください。 |
||
検索時にソートしない |
検索時に結果をソートしない場合はチェックします。
|
||
全文検索時にソートする |
全文検索時にソートする場合はチェックします。 |
デフォルト検索条件
PreparedQuery形式でWHERE句に指定する条件を指定してください。以下がバインドされています。
独自に以下の変数がバインドされています。
- request
-
リクエスト
- session
-
セッション
PreparedQueryとして以下の変数、関数が利用できます。
- user
-
実行するユーザーの情報 *1参照
- date
-
現在日時のjava.util.Dateのインスタンス。
- sysdate
-
現在日付(時間含まず)の文字列。例:2011-01-20
- sysdatetime
-
現在日時の文字列。例:2011-01-18 02:05:03.348
- systime
-
現在時間の文字列。例:23:19:00
- toIn(Collection/Array)
-
引数をinの文字列表現に変換。
利用例:";oid in (${toIn(user.groupOid)})"; - toDateString(Date)
-
引数を日付の文字列表現に変換。
利用例";startDate > '${toDateString(date)}'"; - toLocalDateString(Date)
-
引数をローカル日付の文字列表現に変換。
利用例";startDate > '${toLocalDateString(date)}'"; - toDateTimeString(Date)
-
引数を日時の文字列表現に変換。
利用例";startDateTime > '${toDateTimeString(date)}'"; - toTimeString(Date)
-
引数を時間の文字列表現に変換。
利用例";startTime > '${toTimeString(date)}'"; - toLocalTimeString(Date)
-
引数をローカル時間の文字列表現に変換。
利用例";startTime > '${toLocalTimeString(date)}'"; - addYear(Date, int)
-
引数に指定の年を加えたjava.util.Dateインスタンスを取得する。
利用例";startDate > '${toDateString(addYear(date, -1))}'"; - addMonth(Date, int)
-
引数に指定の月を加えたjava.util.Dateインスタンスを取得する。
利用例";startDate > '${toDateString(addMonth(date, 3))}'"; - addWeek(Date, int)
-
引数に指定の週を加えたjava.util.Dateインスタンスを取得する。
利用例";startDate > '${toDateString(addWeek(date, -2))}'"; - addDay(Date, int)
-
引数に指定の日を加えたjava.util.Dateインスタンスを取得する。
利用例";startDate > '${toDateString(addDay(date, 10))}'"; - addHour(Date, int)
-
引数に指定の時間を加えたjava.util.Dateインスタンスを取得する。
利用例";startDateTime > '${toDateTimeString(addHour(date, -12))}'"; - addMinute(Date, int)
-
引数に指定の分を加えたjava.util.Dateインスタンスを取得する。
利用例";startTime > '${toTimeString(addMinute(date, 30))}'"; - addSecond(Date, int)
-
引数に指定の秒を加えたjava.util.Dateインスタンスを取得する。
利用例";startTime > '${toTimeString(addSecond(date, -10))}'"; - addMillisecond(Date, int)
-
引数に指定のミリ秒を加えたjava.util.Dateインスタンスを取得する。
利用例";startDateTime > '${toDateTimeString(addMillisecond(date, -500))}'";
userが所属するグループに関する以下の変数、関数を呼び出すことが出来ます。
- groupCode
-
所属グループのグループコードのString[]。
- groupCodeWithChildren
-
所属グループ(配下グループ含む)のグループコードのString[]。
- groupCodeWithParents
-
所属グループ(上位グループ(ルートまで)含む)のグループコードのString[]。
- groupOid
-
所属グループのoidのString[]。
- groupOidWithChildren
-
所属グループ(配下グループ含む)のグループのoidのString[]。
- groupOidWithParents
-
所属グループ(上位グループ(ルートまで)含む)のグループのoidのString[]。
- memberOf(String)
-
引数のグループコードのメンバ(サブグループに所属していても)の場合trueを返す。
GroovyTemplateとして以下の変数、関数が利用できます。
- out
-
Writer
- em
-
EntityManager
- edm
-
EntityDefinitionManager
- auth
-
AuthContext
- escHtml(Object)
-
引数をHtmlエスケープ
- escJs(Object)
-
引数をJavascriptエスケープ
- escSql(Object)
-
引数をSQLエスケープ
- escSqlLike(Object)
-
引数をLike用SQLエスケープ
- nte(Object)
-
引数がnullの場合空文字に
<%@import java.sql.Timestamp%>
<%@import java.text.SimpleDateFormat %>
<%
def date = new SimpleDateFormat("yyyy/MM/dd").parse("2012/09/06");
def timestamp = new Timestamp(date.getTime());
%>
createDate<='${timestamp}' and createBy='${user.getAttribute("oid")}'
デフォルトプロパティ条件設定スクリプト
検索一覧(条件部)のプロパティの初期条件をGroovyScript形式で設定します。
変数としてinitCondMap(Map<String, Object>)がバインドされています。
initCondMapに対して、 key(プロパティ名)
、 value(初期条件とする値)
を設定すると初期条件として値が設定されます。
initCondMap.put("autoNumber", "12345678");//AutoNumber
initCondMap.put("boolean", "false");//Boolean
initCondMap.put("string", "abcdefg");//String
initCondMap.put("string2", "aaaa");//String(select形式の場合も同様)
//SelectPropertyEditor
//(Checkbox形式の場合は配列で複数指定可能)
String[] selectArray = ["val1", "val3"];//値を指定
//def selectArray = ["val1","val3"] as String[];//この形式も可能
initCondMap.put("select", selectArray);
//下の形式は不可。[]はGroovyではjava.util.List形式に変換されるのでエラー。配列のみ可。
//initCondMap.put("select", ["val1","val3"]);
//Date、DateTime、Time
//範囲指定は配列で指定、Fromが[0]、Toが[1]で指定
String[] date1Array = ["20150101", "20150103"];
initCondMap.put("date", date1Array);
//Fromが非表示の場合も、Toは[1]で指定
String[] date2Array = [null, "20150103"];
initCondMap.put("date2", date2Array);
//単一日で指定がONの場合は配列でなくても可能
initCondMap.put("date3", "20150101");
String[] timeArray = ["010203123", "203040456"];//9ケタ
initCondMap.put("time", timeArray);//TimePicker形式
initCondMap.put("time2", timeArray);//Select形式
String[] dateTimeArray = ["20150101010203123", "20150103203040456"];//yyyyMMdd+9ケタ
initCondMap.put("dateTime", dateTimeArray);//DateTimePicker形式
initCondMap.put("dateTime2", dateTimeArray);//DatePicker+Select形式
//Integer、Float、Decimal
//範囲指定がOFFの場合は配列でなくても可能
initCondMap.put("integer1", "1000");
//範囲指定は配列で指定、Fromが[0]、Toが[1]で指定
String[] integer2RangeArray = ["1000", "2000"];
initCondMap.put("integer2", integer2RangeArray);
//Fromが非表示でも、Toの指定は[1]に設定
String[] integer3RangeArray = [null, "2000"];
initCondMap.put("integer3", integer3RangeArray);
//Reference
String[] referenceArray = ["6275503", "6275505"];//OIDを指定
initCondMap.put("ref1", "ref002");//Link,名前指定
initCondMap.put("ref2", referenceArray[0]);//Select,OID指定
initCondMap.put("ref3", referenceArray);//Checkbox,OID指定(複数時は配列)
initCondMap.put("ref4", referenceArray);//Link Dialog,OID指定(複数時は配列)
initCondMap.put("ref5", "ref003");//Link+NestProperty,名前指定
initCondMap.put("ref5.string1", "hijklmn");//Link+NestProperty
initCondMap.put("ref5.integer1", "111111");//Link+NestProperty
initCondMap.put("category3", "6278196");//RefCombo,OID指定
//UserPropertyEditor
initCondMap.put("createBy", "者");//名前Like検索
ソート設定
検索時および、検索結果テーブルの列ヘッダのクリックによるソート時に設定されるソート条件を設定します。
- ソート設定が未指定の場合
-
検索時は、当該エンティティのOIDの降順でソートします。
列ヘッダのクリックによるソート時は、クリックされた項目でソートします。参照プロパティ列のヘッダがクリックされた場合、表示中の項目でソートします(ReferencePropertyEditor の「表示ラベルとして扱うプロパティ」が未設定の場合、Name
でソートし、プロパティが設定された場合は、表示ラベルとして扱うプロパティでソートします)。 - ソート設定が指定された場合
-
検索時は、ソート設定に指定された項目でソートします。
列ヘッダのクリックによるソート時は、クリックされた項目を第1キー、ソート設定に指定された項目を第2キー以降としてソートします。
設定項目 | 設定内容 |
---|---|
ソート項目 |
検索時にデフォルトで指定するソート項目を設定します。
|
ソート種別 |
検索時にデフォルトで指定するソート種別を設定します。 |
null項目のソート順 |
null項目のソート順を設定します。
|
検索結果の設定
図の③部分をクリックすると検索結果に対する設定を行うダイアログが表示されます。
設定項目 | 設定内容 |
---|---|
検索結果の表示件数 |
検索結果の表示件数を設定します。
未指定の場合、または0以下の場合は、GemConfigService
で定義される |
検索結果の高さ |
検索結果の高さを設定します。 0を設定した場合、高さを自動とします。 |
検索結果をまとめる |
検索結果をまとめて表示します。 OIDとVersionが同じであるレコードをまとめて表示します。 |
編集リンクを非表示 |
編集リンクを非表示にする場合はチェックします。 |
Entity権限の可能範囲条件で編集リンク表示を制御 |
通常はEntity権限の更新権限がある場合は一律編集リンクを表示しますが、 レコードごとに更新権限の更新可能範囲条件をチェックして編集リンクの表示を制御します。 |
削除ボタンを非表示 |
削除ボタンを非表示にする場合はチェックします。 |
ページングを非表示 |
ページング部品全体を非表示にする場合はチェックします。
非表示にした場合は、検索結果の表示件数を最大件数としてデータを取得します。 |
件数を非表示 |
ページング部品の内、ページ件数、ページジャンプ、ページリンクを非表示にする場合はチェックします。 |
ページジャンプを非表示 |
ページジャンプを非表示にする場合はチェックします。 |
ページリンクを非表示 |
ページリンクを非表示にする場合はチェックします。 |
ページング表示位置 |
ページング部品の表示位置を設定します。
|
一括更新ボタンを表示 |
一括更新ボタンを表示にする場合はチェックします。 |
BulkViewレイアウト定義を利用 |
BulkLayout定義を利用して一括更新画面を生成し、複数項目を一括更新します。 |
一括更新の排他制御起点 |
一括更新の排他制御起点。
|
一括更新ボタン表示ラベル |
画面に表示する一括更新ボタンのラベルを入力します。
未入力の場合、デフォルトのラベルを画面に表示します。(日本語の場合、" |
一括更新デフォルト選択項目 |
一括更新デフォルト選択項目。 BulkViewレイアウト定義を利用しない場合、デフォルト選択項目を指定します。 |
タイトル |
セクションのタイトルを設定します。 |
クラス名 |
セクションに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
id |
画面上で一意となるidを設定します。 |
親子関係の参照を物理削除 |
チェックした場合、削除時に親子関係を参照します。 一括更新画面での保存時に削除したデータも物理削除されます。 |
更新時に強制的に更新処理を行う |
変更項目が一つもなくとも、強制的に更新処理(更新日時、更新者が更新される)を行います。 |
カスタム登録処理クラス名 |
一括更新時にカスタマイズ処理を行いたい場合は |
カスタムロード処理クラス名 |
エンティティのロード時にオプション等のカスタマイズを行いたい場合は |
一括削除コミットトランザクション制御 |
一括削除をするとき、一斉に実行するか(ONCE)、バッチに分けて実行するか(DIVISION)を決めます。 |
カスタム一括削除処理クラス名 |
エンティティの一括削除時に絞込み等のカスタマイズを行いたい場合は |
一括更新コミットトランザクション制御 |
一括更新をするとき、一斉に実行するか(ONCE)、バッチに分けて実行するか(DIVISION)を決めます。 |
カスタム一括更新処理クラス名 |
エンティティの一括更新時に絞込み等のカスタマイズを行いたい場合は |
検索画面のレイアウト設定
プロパティの配置
Propertyから検索一覧へドラッグ&ドロップし、任意のPropertyを配置していきます。 Propertyは、検索条件と検索結果のSectionにのみ配置できます。
スクリプトセクション、テンプレートセクションについては、ボタン上部、ボタン下部、検索一覧中央、検索一覧下部に配置できます。 スクリプトセクション、テンプレートセクションについては、セクションの設定を参照してください。
エレメントについては、エレメントを参照してください。
(例)下図はデフォルトと同じ検索項目を維持し、オブジェクト情報の順序のみ変更しています。 Propertyのemployee(従業員)とparentEmployee(親部署)はフォルダのアイコンになっています。 どちらも参照プロパティで、ダブルクリックで展開することにより、参照プロパティが持つプロパティを検索条件と検索結果に配置することもできます。
配置した各プロパティの設定ボタンをクリックすることでカスタマイズが可能です。
検索条件プロパティの設定
検索条件に配置されたプロパティに対する設定を行います。
設定項目 | 設定内容 |
---|---|
表示 |
プロパティを画面に表示しない場合はチェックします。 |
表示判定スクリプト |
表示可否を判定するスクリプトを設定します。 詳細は表示判定スクリプトを参照してください。 |
表示ラベル |
画面に表示するラベルを設定します。 |
クラス名 |
スタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
ツールチップ |
ツールチップに表示する説明を設定します。 |
通常検索で非表示 |
通常検索条件の項目として表示しない場合はチェックします。 |
詳細検索で非表示 |
詳細検索条件の項目として表示しない場合はチェックします。 |
通常検索での必須項目 |
通常検索条件の必須項目にする場合はチェックします。 |
詳細検索での必須項目 |
詳細検索条件の必須項目にする場合はチェックします。 |
プロパティエディタ |
プロパティエディタを設定します。 プロパティエディタの詳細については、プロパティエディタを参照してください。 |
自動補完設定 |
項目間の自動補完を設定します。 詳細は自動補完設定を参照してください。 |
入力チェック |
入力チェック方法を設定します。 詳細は入力チェックを参照してください。 |
検索実行時に検索条件に対する入力チェックを行います。 未指定の場合は入力チェックは行われません。 なお、現時点では複数項目のいずれかが必須かチェックする機能のみが実装されています。
設定項目 | 設定内容 |
---|---|
メッセージ |
入力チェックエラー時に表示するメッセージを設定します。 |
通常検索で入力チェックを行う |
通常検索実行時に入力チェックを行う場合はチェックします。 |
詳細検索で入力チェックを行う |
詳細検索実行時に入力チェックを行う場合はチェックします。 |
対象プロパティ |
このプロパティと組み合わせて必須チェックを行うプロパティの名前を設定します。
参照プロパティのネストされた項目を指定する場合は |
検索結果プロパティの設定
検索結果に配置されたプロパティに対する設定を行います。
設定項目 | 設定内容 | ||
---|---|---|---|
表示 |
プロパティを画面に表示しない場合はチェックします。 |
||
表示判定スクリプト |
表示可否を判定するスクリプトを設定します。 詳細は表示判定スクリプトを参照してください。 |
||
表示ラベル |
画面に表示するラベルを設定します。 |
||
クラス名 |
スタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
||
列幅 |
検索一覧(結果部)に表示する際の列幅(単位はピクセル)を設定します。 単位は不要です。 |
||
テキストの配置 |
検索一覧(結果部)に表示する際のテキスト(データ)の配置を設定します。
|
||
プロパティエディタ |
プロパティエディタを設定します。 プロパティエディタの詳細については、プロパティエディタを参照してください。 |
||
ソートを許可 |
ソートを許可する場合はチェックします。
|
||
null項目のソート順 |
null項目のソート順を設定します。
|
||
ダウンロードファイルに出力する |
ダウンロードファイルに出力するかを設定します。
検索条件設定で |
||
一括更新プロパティエディタ |
一括更新プロパティエディタを設定します。 未設定の場合、当該プロパティを一括更新画面に表示しません。 プロパティエディタの詳細については、プロパティエディタを参照してください。 |
||
一括更新で必須マークを表示 |
一括更新画面で必須マークを表示するかを設定します。
|
通条検索、詳細検索には、標準で リセット
ボタンが表示されます。
リセットを実行すると、検索条件がリセットされます。
リセットされる値は画面初期表示時と同じです。
SeachConditionSectionの デフォルトプロパティ条件設定スクリプト
で設定された条件や、EntityMenuItemのパラメータで指定された条件が設定された状態になります。
-
カスタマイズされたInput要素に対するリセット処理
TemplateSectionやTemplateElement、ScriptSectionなどを利用して独自にInput要素を追加している場合は、リセット処理に対してHandlerを追加することで対応してください。追加例<script type="text/javascript"> $(function() { //common.jsの `addNormalConditionItemCustomResetHandler` を利用してfunctionをセット。 //リセットボタン押下時に標準のEditorに対するリセット処理が全て実行された後に呼び出されます。 addNormalConditionItemCustomResetHandler(function(){ //(例)独自のテキストInputをクリア $(":text[name='xxxx']").val(""); //(例)独自のSelectInputの初期値をリセット $("select[name='xxxx']").val("val1"); }); }); </script>
-
リセットボタンの非表示
既存の処理などを考慮して、リセットボタンを表示したくない場合、mtp-service-config.xmlにて以下の値をfalseに設定してください。(service-config単位でのみ設定可能です)<!-- gem Settings --> <service> <interface>org.iplass.gem.GemConfigService</interface> ・・・・ <!-- 検索一覧でリセットボタンを表示するか デフォルトで表示するに設定されています。非表示にしたい場合はfalseを設定してください。 --> <!-- <property name="showSeachCondResetButton" value="false"/> --> </service>
エレメント
入力項目以外の画面要素を標準セクション内にドラッグ&ドロップすることで、画面に配置できます。
スペース
スペースを設定します。検索条件の複数列表示のセクションで空白のセルを作りたい場合等に利用します。
設定可能な項目はありません。
仮想プロパティ
プロパティと同様の表示が出来る仮想プロパティを設定します。多重度は1のみサポートします。
検索結果として値を出力するには、 カスタム検索処理 の afterSearch
などで、明示的に値を設定します。
設定項目 |
利用箇所 |
設定内容 |
プロパティ名 |
検索条件、検索結果 |
仮想プロパティの名前を設定します。 既に設定されている仮想プロパティの名前や、エンティティに定義されているプロパティと同じ名前は設定できません。 |
表示ラベル |
検索条件、検索結果 |
画面に表示するラベルを設定します。 |
クラス名 |
検索条件、検索結果 |
スタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
説明 |
検索条件 |
入力欄下部表示する説明を設定します。 |
ツールチップ |
検索条件 |
ツールチップに表示する説明を設定します。 |
列幅 |
検索結果 |
検索一覧(結果部)に表示する際の列幅(単位はピクセル)を設定します。 単位は不要です。 |
テキストの配置 |
検索結果 |
検索一覧(結果部)に表示する際のテキスト(データ)の配置を設定します。
|
ダウンロードファイルに出力する |
検索結果 |
ダウンロードファイルに出力するかを設定します。
検索条件設定で |
プロパティエディタ |
検索条件、検索結果 |
以下の型を選択します。表示したい内容に合わせて変更してください。 詳細はプロパティエディタを参照してください。 BooleanPropertyEditor |
自動補完設定
画面内の項目が変更された際に、連動して他の項目の値を補完する仕組みです。 連動元の値を元に、連動先に値を補完する仕組みをJavascriptで記述する方法と、WebApiでサーバへアクセスし、EQLやGroovyScriptで動的に連動先の値を取得し、表示形式にあわせて値を設定する方法があります。
開発者がJavascriptを定義し、自動補完の処理を自由に設定できます。 処理はクライアント側で完結します。
設定項目 | 設定内容 |
---|---|
連動元のプロパティ |
自動補完のトリガーとなるプロパティ、複数設定可能。 連動元のプロパティを参照してください。 |
Javascript |
上記項目をトリガーとして発生したイベントで実行するJavascript。 変数sourceValueに上記項目の値を保持しています。 変数の形式
|
WebApiでサーバ側から自動補完の値を取得します。 EQLの実行結果、もしくはGroovyScriptの実行結果をクライアントに返却し、型に合わせた形で自動的に値を設定します。
設定項目 | 設定内容 |
---|---|
自動補完タイプ |
自動補完の値を取得する方式。
|
連動元のプロパティ |
自動補完のトリガーとなるプロパティ、複数設定可能。 連動元のプロパティを参照してください。 |
EQL |
自動補完タイプでEQLを選択した際に実行する処理です。 GroovyTemplate形式で記述してください。 対象の項目がReference型の場合、エンティティの配列を返却します。 EQLにはoidとnameを必ず指定してください。 Reference型以外の場合、最初のSelect項目を補完の値として利用します。 利用可能な変数
自動補完が可能な型と返却値の型
|
GroovyScript |
自動補完タイプでGROOVYSCRIPTを選択した際に実行する処理です。 GroovyScript形式で記述してください。
|
自動補完のトリガーとなる連動元のプロパティを指定します。
設定項目 | 設定内容 |
---|---|
プロパティ名 |
プロパティ名。 詳細はプロパティ名の指定方法を参照してください。 |
ネストプロパティ同士の自動補完 |
NestTable、ReferenceSection内で自動補完する場合はチェックします。 |
参照プロパティのインデックス |
NestTable、ReferenceSectionの項目をトリガーに大本のエンティティの項目を更新する際に、 NestTableの特定の行や特定のReferenceSectionのみを対象にする場合にそのインデックス指定します。 未指定の場合、全ての行やセクションの変更イベントがトリガーとなります。 |
プロパティ名は連動元と連動先の関係によって指定方法が変わります。
以下の構造を例にします。
Entity -prop1 -prop2 -propRef -refProp1 -refProp2
検索一覧では参照プロパティの項目を直接ドラッグ&ドロップで配置する方法と、ReferencePropertyEditorの表示プロパティ(NestProperty)を設定する方法があります。
連動元 | 連動先 | プロパティ名の設定値 | 配置の方法 | ネスト同士の補完 | 備考 |
---|---|---|---|---|---|
prop1 |
prop2 |
prop1 |
|||
prop1 |
refProp1 |
prop1 |
直接D&D |
||
prop1 |
refProp1 |
prop1 |
NestProperty |
||
refProp1 |
prop1 |
propRef.refProp1 |
直接D&D |
||
refProp1 |
prop1 |
propRef.refProp1 |
NestProperty |
||
refProp1 |
refProp2 |
propRef.refProp1 |
直接D&D |
||
refProp1 |
refProp2 |
refProp1 |
NestProperty |
○ |
詳細編集画面ではReferencePropertyEditorのNestTableと、参照セクション(ReferenceSection)で参照プロパティの項目を設定できます。
連動元 | 連動先 | プロパティ名の設定値 | 配置の方法 | ネスト同士の補完 | 参照プロパティのインデックス | 備考 |
---|---|---|---|---|---|---|
prop1 |
prop2 |
prop1 |
||||
prop1 |
refProp1 |
prop1 |
NestTable |
全行を補完 |
||
prop1 |
refProp1 |
prop1 |
ReferenceSection |
|||
refProp1 |
prop1 |
propRef.refProp1 |
NestTable |
|||
refProp1 |
prop1 |
propRef.refProp1 |
NestTable |
○ |
特定行を補完 |
|
refProp1 |
prop1 |
propRef.refProp1 |
ReferenceSection |
|||
refProp1 |
prop1 |
propRef.refProp1 |
ReferenceSection |
○ |
特定セクションを補完 |
|
refProp1 |
refProp2 |
propRef.refProp1 |
NestTable |
○ |
単一行を補完 |
|
refProp1 |
refProp2 |
refProp1 |
ReferenceSection |
○ |
3.3. 詳細・編集画面
詳細・編集画面のレイアウトをカスタマイズできます。 レイアウト設定を行わない場合、画面には基本項目及び、エンティティに登録されたプロパティが エンティティ定義上での定義順で表示されます。
DetailLayoutの表示
レイアウト設定を行いたいエンティティ名を右クリックし、 Detail_Layoutを開く
を選択します。
DetailLayoutの構成
DetailLayoutは以下の構成になっています。
ツールバー
紫枠の部分はDetailLayoutの各viewに対する操作を行うためのボタン群です。 詳細はSearchLayoutを参照してください。
配置エリア
緑枠の部分は各種要素を配置する領域です。
画面右側の Property
、 Section
、 Element
内の部品をドラッグ&ドロップで配置できます。
DetailLayoutが作成されてない状態だと、詳細画面表示時にはエンティティのプロパティが自動で配置されます。
配置エリアに直接配置できるのは Section
のみとなります。
Property
と Element
については、配置エリアに置かれた 標準セクション
に対してのみとなります。
詳細画面の設定
図の①部分をクリックすると詳細画面全体に対する設定を行うダイアログが表示されます。
設定項目 | 設定内容 | 適用画面 | ||
---|---|---|---|---|
画面タイトル |
画面に表示するタイトルを入力します。
未入力の場合、エンティティの |
|||
イメージカラー |
ビューのイメージカラー(画面タイトルの左に表示されるアイコンの色)を選択します。次から選択できます。
フラットデザインでは表示されません。 |
詳細画面 |
||
アイコンタグ |
タイトルの前に表示するiタグなどを利用した独自のアイコンを設定できます。 |
詳細画面 |
||
ダイアログ表示時に最大化 |
チェックした場合、参照ダイアログ、編集ダイアログ表示時に最大化します。 |
参照ダイアログ |
||
編集ボタンを非表示 |
チェックした場合、 |
詳細画面 |
||
ロックボタンを非表示 |
チェックした場合、 |
詳細画面 |
||
コピーボタンを非表示 |
チェックした場合、 |
詳細画面 |
||
削除ボタンを非表示 |
チェックした場合、 |
編集画面 |
||
バージョン削除ボタンを表示 |
チェックした場合、Entityがバージョン管理されている場合に
|
編集画面 |
||
Entity権限の可能範囲条件でボタン表示を制御 |
通常はEntity権限の更新権限、削除権限がある場合は編集ボタン、削除ボタンを表示しますが、 対象Entityに対して更新権限、削除権限の可能範囲条件をチェックしてボタンの表示を制御します。 |
編集画面 |
||
編集ボタン表示ラベル |
編集ボタンに表示されるラベルを設定します。 |
詳細画面 |
||
コピーボタン表示ラベル |
コピーボタンに表示されるラベルを設定します。 |
詳細画面 |
||
新しいバージョンとして更新ボタン表示ラベル |
新しいバージョンとして更新ボタンに表示されるラベルを設定します。 新しいバージョンとして更新ボタンは、エンティティのVersioning項目でNONE以外を選択すると有効になります。 |
詳細画面 |
||
登録ボタン表示ラベル |
登録ボタンに表示されるラベルを設定します。 |
編集画面 |
||
保存ボタン表示ラベル |
保存ボタンに表示されるラベルを設定します。 |
編集画面 |
||
削除ボタン表示ラベル |
削除ボタンに表示されるラベルを設定します。 |
編集画面 |
||
編集アクション |
編集ボタンクリック時に実行されるアクションを設定します。 |
詳細画面 |
||
編集アクション(参照) |
編集ボタンクリック時に実行されるアクションを設定します。 |
編集ダイアログ |
||
登録アクション |
登録ボタンクリック時に実行されるアクションを設定します。 |
編集画面 |
||
登録アクション(参照) |
登録ボタンクリック時に実行されるアクションを設定します。 |
編集ダイアログ |
||
保存アクション |
保存ボタンクリック時に実行されるアクションを設定します。 |
編集画面 |
||
保存アクション(参照) |
保存ボタンクリック時に実行されるアクションを設定します。 |
編集ダイアログ |
||
削除アクション |
削除ボタンクリック時に実行されるアクションを設定します。 |
編集画面 |
||
キャンセルアクション |
キャンセルリンククリック時に実行されるアクションを設定します。 |
CSVアップロード画面 |
||
ボタン |
カスタムで表示したいボタンを追加します。 詳細はボタン設定を参照してください。 |
詳細画面 |
||
Javascriptコード |
画面に埋め込むカスタムJavascriptコードを設定します。
|
詳細画面 |
||
編集画面でJavascriptを有効化 |
チェックした場合、 |
編集画面 |
||
詳細画面でJavascriptを有効化 |
チェックした場合、 |
詳細画面 |
||
データの多言語化 |
データ操作時に多言語化するかを設定します。
有効にした場合、エンティティ定義の |
|||
ロード時にSearchLayoutのデフォルト検索条件を適用する |
エンティティのロード時に、SearchLayoutのデフォルト検索条件を適用して参照が可能をチェックします。 |
詳細画面 |
||
物理削除 |
チェックした場合、編集画面の |
編集画面 |
||
親子関係の参照を物理削除 |
チェックした場合、削除時に親子関係の参照します。 編集画面での保存時に削除したデータも物理削除されます。 |
|||
定義されている参照プロパティのみを取得 |
チェックした場合、エンティティ定義のうち参照プロパティについて、画面に表示しているプロパティのみを取得対象とします。 未チェックの場合には不要な参照を取得するためのEQLが実行される場合があります。 |
|||
更新時に強制的に更新処理を行う |
チェックした場合、更新項目が1つもない場合にも強制的に更新を行います。 更新日、更新者が更新されます。 |
編集画面 |
||
UserPropertyEditor利用時に特権実行でユーザー名を表示する |
UserPropertyEditorが設定されているプロパティに対し、ユーザー情報のEntity、またはユーザー名のプロパティに参照権限が無いユーザーでも、特権実行をしてユーザー名を表示することができます。 |
詳細画面 |
||
コピー対象 |
コピー実行時の対象データを以下から選択します。 未設定(デフォルト)の場合はShallowとして動作します。
|
詳細画面 |
||
カスタムコピースクリプト |
|
|||
初期化スクリプト |
エンティティを新規作成する際に実行されるGroovyScriptを設定します。 詳細は初期化スクリプトを参照してください。 |
編集画面 |
||
カスタム登録処理クラス名 |
登録・更新時にカスタマイズ処理を行いたい場合は |
|||
カスタムロード処理クラス名 |
エンティティのロード時にオプション等のカスタマイズを行いたい場合は |
|||
詳細編集画面Handlerクラス名 |
設定により対応できない動作をカスタマイズするためのフック用Handlerを指定します。
指定できるのは |
編集画面 |
||
ワークフロー設定 |
詳細画面からWorkflowを起動できます。 |
ボタン設定
詳細画面に追加するカスタムボタンに対する設定を行います。
設定項目 | 設定内容 |
---|---|
表示 |
チェックした場合、オリジナルボタンを表示します。 |
表示判定スクリプト |
表示可否を判定するスクリプトを設定します。 詳細は表示判定スクリプトを参照してください。 |
新規/編集時の表示可否 |
新規登録または編集時に項目を表示するかを設定します。
|
表示タイプ |
編集画面、詳細画面のどちらに表示するかを設定できます。 表示タイプが指定されていない場合は、Detailとなります(デフォルト値)。 検索画面では設定できません。
|
タイトル |
未使用項目です。 |
表示ラベル |
ボタンに表示するラベルを設定します。 |
プライマリー |
設定するとボタンを強調表示します。クラス名が指定されている場合は「クラス名」を優先します。 |
クラス名 |
ボタンに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切ってください。 |
クリックイベント |
ボタンクリック時に実行されるJavascriptコードを設定します。 |
入力カスタムスタイル |
表示されるボタンに対して直接style属性を指定できます。 詳細は入力カスタムスタイルを参照してください。 |
ボタン表示判定用スクリプト |
表示タイプがCustomの場合に、表示可否を判定するスクリプトを設定します。 詳細はボタン表示判定用スクリプトを参照してください。 検索画面では設定できません。 |
表示されるボタンに対して直接style属性を指定できます。 GroovyTemplate書式で設定します。
詳細、編集画面については、対象となるエンティティデータがバインドされます。 (検索画面ではバインドされません)
その他のバインド変数についてはScript編集画面のNoteを参照してください。
<%
//エンティティのnameが"test001"の場合にボタンを赤くする
if (entity != null && entity.name == "test001") {
%>
color: #ffffff;
border:1px solid #976161;
background:#831f1f;
background:-webkit-linear-gradient(top, #d6363a 0%, #831f1f 100%);
background:-moz-linear-gradient(top, #d6363a 0%, #831f1f 100%);
<%
}
%>
以下のオブジェクトがバインドされています。
- request
-
リクエスト
- session
-
セッション
- user
-
ユーザー
- outputType
-
表示タイプ。以下の値によって画面毎の制御が可能です。
SEARCHCONDITION : 検索条件
SEARCHRESULT : 検索結果
EDIT : 編集画面
VIEW : 詳細画面
BULK : 一括更新 - entity
-
表示対象のエンティティ
カスタムコピースクリプト
コピー対象
で Custom
を選択した際に実行されるGroovyScriptを設定できます。
コピー対象
で Custom
を選択した場合は、必ず設定してください。
下記がバインドされています。
- request
-
リクエスト
- session
-
セッション
- user
-
ユーザー
- entity
-
コピー元のエンティティ
- entityDefinition
-
エンティティ定義
- entityManager
-
EntityManager
entity.setValue("item1", "テスト");
return entity;
entityをreturnする必要があるので注意してください。
初期化スクリプト
エンティティを新規作成する際に実行されるGroovyScriptを設定できます。 編集画面表示前(新規作成時)に呼び出され、空のエンティティに対して初期設定等を行います。
下記がバインドされています。
- request
-
リクエスト
- session
-
セッション
- user
-
ユーザー
- entity
-
空のエンティティ
import java.sql.Date;
import java.sql.Time;
import java.sql.Timestamp;
import org.iplass.mtp.entity.SelectValue;
import org.iplass.mtp.entity.Entity;
import org.iplass.mtp.ManagerLocator;
import org.iplass.mtp.entity.EntityManager;
// String、Boolean、Integer、Float、Decimal
entity.setValue("string", "abcdefg"); // String
entity.setValue("boolean", false); // Boolean
entity.setValue("integer", 100); //Integer
entity.setValue("float", 100.5); //Float
entity.setValue("decimal", 100.123); //Decimal
// Date、Time、DateTime
entity.setValue("date", Date.valueOf("2024-02-16")); //Date
entity.setValue("time", Time.valueOf("09:10:23")); //Time
entity.setValue("datetime", Timestamp.valueOf("2024-02-16 09:10:23")); //DateTime
// 多重度あり (String)
String[] mstringValue = ["string001", "string002"];
entity.setValue("mstring", mstringValue); //多重度ありString
// Select
SelectValue select = new SelectValue("value02");
entity.setValue("select", select); //Select
// Reference
Entity referenceEntity = ManagerLocator.manager(EntityManager.class).load("1", "RefEntity");
entity.setValue("reference", referenceEntity); //Reference
ワークフロー設定
詳細画面からメタデータとして登録されたWorkflowを起動できます (Workflowについてはワークフローを参照してください)。 設定されると詳細画面にボタン(表示名は設定)が追加されます。
設定項目 | 設定内容 |
---|---|
ワークフロー定義名 |
メタデータとして登録したWorkflowを選択します。 |
ワークフロー変数名 |
Workflowに定義した変数名を設定します。 Workflowを開始する際、対象のエンティティをこの変数に格納します。 |
ボタン表示名 |
Workflowを起動するボタンに表示するラベルを設定します。 |
プライマリー |
設定するとボタンを強調表示します。 |
クラス名 |
スタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
入力カスタムスタイル |
表示されるボタンに対して直接style属性を指定できます。 詳細は入力カスタムスタイルを参照してください。 |
プロセス実行中にボタンを表示 |
チェックした場合、Workflowが既に実行中の状態でもボタンを表示します。 表示する場合、実行中に再度クリックすることで、別のWorkflowとして処理が開始されます(startProccessが実行されます)。 |
プロセス実行中のメッセージ |
Workflow実行中のメッセージを設定します。 |
ワークフロー開始パラメータ設定スクリプト |
ワークフロー開始時のパラメータをGroovyScriptで設定します。 |
ワークフローボタン表示判定用スクリプト |
ワークフロー起動用ボタンの表示可否を判定するスクリプトを設定します。 詳細はワークフローボタン表示判定用スクリプトを参照してください。 |
ワークフロー起動用ボタンの表示可否を判定するスクリプトを設定します。 スクリプトが未指定か、スクリプトの実行結果がtrueの場合、ボタンが表示されます。
以下のオブジェクトがバインドされています。
- request
-
リクエスト
- session
-
セッション
- user
-
ユーザー
- entity
-
表示対象のエンティティ
詳細画面のレイアウト設定
セクションの設定
画面右側のSectionの項目を画面中央の 詳細画面部分
にドラッグ&ドロップする事でセクションを配置できます。
プロパティは標準セクションにのみ配置可能です。
共通設定項目
各セクションで共通の設定項目です。
設定項目 | 設定内容 |
---|---|
表示 |
チェックした場合、画面に表示します。 |
表示判定スクリプト |
表示可否を判定するスクリプトを設定します。 詳細は表示判定スクリプトを参照してください。 |
新規/編集時の表示可否 |
新規登録または編集時に項目を表示するかを設定します。
|
タイトル |
セクションのタイトルを設定します。 |
クラス名 |
セクションに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
id |
画面上で一意となるidを設定します。 |
初期表示時に展開 |
チェックした場合、セクションを初期展開します。 |
ジャンプリンクを表示 |
チェックした場合、編集画面、詳細画面の上部に、各セクションに移動するためのリンクを表示します。 |
編集画面で非表示 |
チェックした場合、編集画面で当該セクションを非表示にします。 |
詳細画面で非表示 |
チェックした場合、詳細画面で当該セクションを非表示にします。 |
標準セクション
エンティティの各プロパティに対して、表示名を変えたり、表示・非表示制御など入れたい場合に設定します。
設定項目 | 設定内容 |
---|---|
列数 |
セクションの列数を指定します。 |
上部のコンテンツ |
当該セクションの上部にテキスト、HTMLタグを設定します。 |
下部のコンテンツ |
当該セクションの下部にテキスト、HTMLタグを設定します。 |
セクション内に配置した場合に枠線を表示 |
セクション内に配置した場合に枠線を表示するかを指定します。 |
スクリプトセクション
詳細画面や編集画面の出力内容を独自に組み込む場合に設定します。 GroovyTemplate形式で定義します。
設定項目 | 設定内容 |
---|---|
スクリプト |
HTMLコードを含むスクリプトを設定します。
|
セクション内に配置した場合に枠線を表示 |
セクション内に配置した場合に枠線を表示するかを指定します。 |
テンプレートセクション
詳細画面や編集画面の出力内容を独自に組み込む場合に設定します。 出力内容は別途テンプレートとして定義されているものを指定します。 スクリプトとの違いは、スクリプトは対象のView定義でのみ利用できますが、 テンプレートとして定義することで、GroovyTemplate形式以外のJSP形式での実装や、 他のEntityやView定義でも利用することが可能になります。
設定項目 | 設定内容 |
---|---|
テンプレート名 |
登録済テンプレート名を設定します。 |
セクション内に配置した場合に枠線を表示 |
セクション内に配置した場合に枠線を表示するかを指定します。 |
バージョンセクション
バージョン管理されたエンティティに対して制御を入れたい場合に設定します。
固有の設定項目はありません。
参照セクション
参照、被参照プロパティの内容を表示する場合に設定します。
ドラッグ&ドロップ時に対象の参照プロパティを指定するダイアログが表示されます。
設定項目 | 設定内容 |
---|---|
プロパティ名 |
参照先プロパティ名を設定します。 |
初期表示時に展開 |
チェックした場合、セクションを初期展開します。 |
配置済みの参照セクションの設定ボタンをクリックした際に表示されるダイアログで設定可能な項目です。
設定項目 | 設定内容 |
---|---|
列数 |
1行に表示するセクションの列数を指定します。 3列以上指定する場合は、レイアウトが崩れる可能性があるので注意して下さい。 |
表示順プロパティ |
データ参照のインデックスとして利用するプロパティを指定します。 多重度が1の場合には使用しません。 |
データのインデックス |
当該参照セクションに表示する参照データのインデックス値を指定します。
多重度が1の場合には使用しません。 |
上部のコンテンツ |
当該セクションの上部にテキスト、HTMLタグを設定します。 |
下部のコンテンツ |
当該セクションの下部にテキスト、HTMLタグを設定します。 |
セクション内に配置した場合に枠線を表示 |
セクション内に配置した場合に枠線を表示するかを指定します。 |
参照先の表示プロパティ |
参照先エンティティの表示対象プロパティを設定します。 詳細は参照先の表示プロパティを参照してください。 |
参照先の表示プロパティ
参照セクション内に表示する、参照先のエンティティのプロパティに対する設定です。
設定項目 | 設定内容 |
---|---|
プロパティ名 |
プロパティ名を設定します。 参照先プロパティ名を設定します。 |
表示名 |
表示名を設定します。 |
説明 |
説明を設定します。 |
ツールチップ |
ツールチップを設定します。 表示名の右のアイコン(?マーク)をマウスオーバーすると、ツールチップが表示されます。 |
列幅 |
検索画面(結果部)に表示する際の列幅(単位はピクセル)を設定します。 単位は不要です。 詳細画面、編集画面には適用されません。 |
詳細編集で非表示 |
チェックした場合、編集画面でこの項目を非表示にします。 この項目は参照テーブル、参照セクション、大量データ用参照セクションで有効になります。 |
詳細表示で非表示 |
チェックした場合、詳細画面でこの項目を非表示にします。 この項目は参照テーブル、参照セクション、大量データ用参照セクションで有効になります。 |
必須マークを表示 |
必須マークを表示するかを設定します。
|
プロパティエディタ |
参照先プロパティの型に合わせたPropertyEditorを選択して下さい。
|
自動補完設定 |
項目間の自動補完を設定します。 詳細は自動補完設定を参照してください。 |
大量データ用参照セクション
被参照プロパティの内容を非同期で検索、表示する場合に設定します。
ドラッグ&ドロップ時に対象の参照プロパティを指定するダイアログが表示されます。
設定項目 | 設定内容 |
---|---|
プロパティ名 |
被参照プロパティ名を設定します。 |
初期表示時に展開 |
チェックした場合、セクションを初期展開します。 |
配置済みの大量データ用参照セクションの設定ボタンをクリックした際に表示されるダイアログで設定可能な項目です。
設定項目 | 設定内容 |
---|---|
上限値 |
一度に表示する件数の上限を設定します。 デフォルト(0を指定した場合)、10件表示。 |
ダイアログ表示アクション |
詳細画面の詳細リンククリック時のアクションを設定します。 |
ダイアログ編集アクション |
編集画面の編集リンク、追加ボタンクリック時のアクションを設定します。 |
別タブ表示アクション |
詳細画面の詳細リンクをCtrl+クリックした時のアクションを設定します。 |
別タブ編集アクション |
編集画面の編集リンクをCtrl+クリックした時のアクションを設定します。 |
ビュー定義名 |
編集画面の編集リンク、詳細画面の詳細リンククリック時に表示するView定義名を設定します。 |
Entity権限における限定条件の除外設定 |
Entity権限における限定条件を適用せずに検索を実行する参照先のプロパティ名を設定します。特権実行する場合、または |
編集リンクを詳細リンクに変更 |
チェックした場合、編集画面の編集リンクを詳細リンクに変更します。 リンクをクリックすると詳細画面を表示します。 |
削除ボタンを非表示 |
チェックした場合、編集画面の削除ボタンを非表示にします。 |
追加ボタンを非表示 |
チェックした場合、編集画面の追加ボタンを非表示にします。 |
ページングを非表示 |
チェックした場合、ページング部品全体を非表示にします。 非表示にした際は、上限値を利用せず、全データを取得します。 (データ件数が多い場合、処理に時間がかかる場合があります) |
件数を非表示 |
チェックした場合、ページ件数、ページジャンプ、ページリンクを非表示にします。 |
ページジャンプを非表示 |
チェックした場合、ページジャンプを非表示にします。 |
ページリンクを非表示 |
チェックした場合、ページリンクを非表示にします。 |
検索アイコンを常に表示 |
チェックした場合、検索アイコンを常に表示します。 |
ページング表示位置 |
ページング部品の表示位置を設定します。
|
編集タイプ |
参照型の編集方法を設定します。
|
上部のコンテンツ |
当該セクションの上部にテキスト、HTMLタグを設定します。 |
下部のコンテンツ |
当該セクションの下部にテキスト、HTMLタグを設定します。 |
参照型の表示プロパティ |
参照セクションの表に表示するプロパティを設定します。 詳細は参照先の表示プロパティを参照してください。 |
ソート設定 |
検索時にデフォルトで設定されるソート条件を設定します。 詳細はソート設定を参照してください |
デフォルト検索条件 |
参照データ検索時に自動で絞り込みをする条件をPreparedQuery形式で指定します。 WHERE句に指定する条件を指定してください。 詳細は「検索条件の設定」のデフォルト検索条件を参照してください。 |
操作ログセクション
操作ログを表示したい場合に設定します。
設定項目 | 設定内容 |
---|---|
表示 |
チェックした場合、画面に表示します。
エンティティ定義の |
参照の名前を表示 |
|
表示プロパティ |
操作ログの表内の 表示プロパティを設定した場合、操作ログからプロパティ名で絞込みを行いますが、プロパティ名が設定されるのは更新時のみのため、更新時のログしか表示されません。 |
新規作成レコードを併せて表示 |
チェックした場合、表示プロパティを設定した際に、新規作成レコードも併せて表示します。 |
参照型の操作ログ表示設定 |
参照プロパティの操作ログの表示方法を指定します。 参照エンティティの操作ログが出力される場合に有効になります。 詳細は参照プロパティ操作ログ設定を参照してください。 |
参照先のエンティティが操作ログを保存する設定の場合、操作ログセクションに参照エンティティの操作ログを表示するリンクを表示します。
参照プロパティの操作ログを表示する際は、参照先のエンティティのビュー定義に設定された AuditLogSection の設定を利用します。 参照先のエンティティビューは、本設定のビュー定義名に一致するビュー定義を利用します。ビュー定義名が未設定の場合は、デフォルトのビュー定義を利用します。
設定項目 | 設定内容 |
---|---|
プロパティ名 |
参照型のプロパティ名を設定します。 |
ビュー定義名 |
リンク押下で表示する参照先エンティティのビュー定義名を設定します。 |
データの参照可能範囲条件をチェックしない |
ワークフロー履歴セクション
ワークフローの変数として割り当てられた際のワークフローの履歴を表示します。
設定項目 | 設定内容 |
---|---|
タスクを処理したユーザーのみ表示 |
同時に複数人にアサインされ、その内の誰かがタスクを処理し、その他がキャンセル扱いになった場合等で、タスクを処理したユーザーのみを表示します。 |
ワークフロー履歴設定 |
表示対象とするワークフローを設定します。 |
ソート設定 |
ワークフロー履歴のソート条件を設定します。 詳細はソート設定を参照してください。 |
ワークフロー履歴のソート条件を設定します。
設定項目 | 設定内容 |
---|---|
ソート項目 |
ソート対象とする項目を設定します。
指定可能な項目は |
ソート種別 |
検索時にデフォルトで指定するソート種別を設定します。 |
プロパティの設定
Property項目については、 標準セクション
にドラッグ&ドロップする事で配置できます。
設定項目 | 設定内容 |
---|---|
表示 |
チェックした場合、画面に表示します。 |
表示判定スクリプト |
表示可否を判定するスクリプトを設定します。 詳細は表示判定スクリプトを参照してください。 |
新規/編集時の表示可否 |
新規登録または編集時に項目を表示するかを設定します。
|
編集画面で非表示 |
チェックした場合、編集画面で項目を非表示にします。 |
詳細画面で非表示 |
チェックした場合、詳細画面で項目を非表示にします。 |
表示ラベル |
画面に表示するラベルを設定します。 |
クラス名 |
プロパティのヘッダとコンテンツに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
説明 |
入力欄下部表示する説明を設定します。 |
ツールチップ |
ツールチップに表示する説明を設定します。 |
必須マークを表示 |
編集画面で必須マークを表示するかを設定します。
|
プロパティエディタ |
対象のプロパティ型に合わせたエディタを選択します。 詳細はプロパティエディタを参照してください。 型は基本的に変更しないで下さい。紐づいてるJSPでエラーになる可能性があります。 ただしTemplatePropertyEditorについてはカスタマイズ用なので変更しても問題ありません。 |
自動補完設定 |
項目間の自動補完を設定します。詳細は自動補完設定を参照してください。 |
エレメント
入力項目以外の画面要素を標準セクション内にドラッグ&ドロップすることで、画面に配置できます。
共通設定項目
各エレメントで共通の設定項目です。
設定項目 | 設定内容 |
---|---|
表示 |
チェックした場合、画面に表示します。 |
表示判定スクリプト |
表示可否を判定するスクリプトを設定します。 詳細は表示判定スクリプトを参照してください。 |
新規/編集時の表示可否 |
新規登録または編集時に項目を表示するかを設定します。
|
編集画面で非表示 |
チェックした場合、編集画面で項目を非表示にします。 |
詳細画面で非表示 |
チェックした場合、詳細画面で項目を非表示にします。 |
タイトル |
ヘッダに表示するタイトルを設定します。 |
表示可否を判定するGroovyScriptを設定します。 スクリプトが未指定か、スクリプトの実行結果がtrueの場合、表示されます。
以下のオブジェクトがバインドされています。
- request
-
リクエスト
- session
-
セッション
- user
-
ユーザー
- outputType
-
表示タイプ。以下の値によって画面毎の制御が可能です。
SEARCHCONDITION : 検索条件
SEARCHRESULT : 検索結果
EDIT : 編集画面
VIEW : 詳細画面
BULK : 一括更新 - entity
-
表示対象のエンティティ。Entityにはoidとversionがバインドされます。新規作成の場合は、nullでバインドされます。
ボタン
標準のボタン以外に独自で画面に表示するボタンを設定します。
設定項目 | 設定内容 |
---|---|
表示タイプ |
編集画面、詳細画面のどちらに表示するかを設定します。 設定されていない場合は、Detailとなります。
|
表示ラベル |
ボタンに表示するラベルを設定します。 |
プライマリー |
設定するとボタンを強調表示します。 |
クラス名 |
ボタンに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
クリックイベント |
クリック時に実行されるJavascriptコードを設定します。 ダブルクォートは利用できません。 |
入力カスタムスタイル |
表示されるボタンに対して直接style属性を指定できます。 詳細は入力カスタムスタイルを参照してください。 |
ボタン表示判定用スクリプト |
表示タイプがCustomの場合に、表示可否を判定するスクリプトを設定します。 詳細はボタン表示判定用スクリプトを参照してください。 |
スクリプト
詳細画面や編集画面の出力内容を独自に組み込む場合に設定します。 GroovyTemplate形式で定義します。
設定項目 | 設定内容 |
---|---|
クラス名 |
エレメントのヘッダとコンテンツに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
ツールチップ |
ツールチップに表示する説明を設定します。 |
必須マークを表示 |
編集画面で必須マークを表示するかを設定します。
|
スクリプト |
スクリプト編集ダイアログを表示してHTMLコードを含むスクリプトを設定します。 設定例
|
テンプレート
詳細画面や編集画面の出力内容を独自に組み込む場合に設定します。 出力内容は別途テンプレートとして定義されているものを指定します。 スクリプトとの違いは、スクリプトは対象のView定義でのみ利用できますが、 テンプレートとして定義することで、GroovyTemplate形式以外のJSP形式での実装や、 他のEntityやView定義でも利用することが可能になります。
設定項目 | 設定内容 |
---|---|
クラス名 |
エレメントのヘッダとコンテンツに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
ツールチップ |
ツールチップに表示する説明を設定します。 |
必須マークを表示 |
編集画面で必須マークを表示するかを設定します。
|
テンプレート名 |
登録済テンプレート名を設定します。 |
リンク
リンクを設定します。
設定項目 | 設定内容 |
---|---|
表示ラベル |
リンクに表示するラベルを設定します。 |
URL |
リンクのURLを設定します。
外部サイトへのリンクの場合は |
別ウィンドウで表示 |
チェックした場合、リンククリックで別ウィンドウ表示します。 |
入力カスタムスタイル |
表示されるリンクに対して直接style属性を指定できます。 GroovyTemplate書式で設定します。バインド変数などはボタンと同様です。 |
スペース
スペースを設定します。複数列表示のセクションで空白のセルを作りたい場合等に利用します。
設定可能な項目はありません。
仮想プロパティ
プロパティと同様の表示が出来る仮想プロパティを設定します。
設定項目 | 設定内容 |
---|---|
プロパティ名 |
仮想プロパティの名前を設定します。 既に設定されている仮想プロパティの名前や、エンティティに定義されているプロパティと同じ名前は設定できません。 |
表示ラベル |
画面に表示するラベルを設定します。 |
クラス名 |
プロパティのヘッダとコンテンツに設定するスタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
説明 |
入力欄下部表示する説明を設定します。 |
ツールチップ |
ツールチップに表示する説明を設定します。 |
プロパティエディタ |
以下の型を選択します。表示したい内容に合わせて変更してください。 詳細はプロパティエディタを参照してください。 BooleanPropertyEditor |
自動補完設定 |
項目間の自動補完を設定します。 詳細は自動補完設定を参照してください。 |
3.4. 一括更新画面
一括更新画面のレイアウトをカスタマイズできます。 レイアウト設定を行わない場合、画面には基本項目及び、エンティティに登録されたプロパティが エンティティ定義上での定義順で表示されます。
BulkLayoutの表示
レイアウト設定を行いたいエンティティ名を右クリックし、 Bulk_Layoutを開く
を選択します。
BulkLayoutの構成
BulkLayoutは以下の構成になっています。
ツールバー
紫枠の部分はBulkLayoutの各viewに対する操作を行うためのボタン群です。 詳細はSearchLayoutを参照してください。
配置エリア
緑枠の部分は各種要素を配置する領域です。
画面右側の Property
、 Section
内の部品をドラッグ&ドロップで配置できます。
BulkLayoutが作成されてない状態だと、一括更新画面表示時にはエンティティのプロパティが自動で配置されます。
配置エリアに直接配置できるのは Section
のみとなります。
Property
については、配置エリアに置かれた 標準セクション
に対してのみとなります。
一括更新画面の設定
図の①部分をクリックすると詳細画面全体に対する設定を行うダイアログが表示されます。
設定項目 | 設定内容 |
---|---|
画面タイトル |
画面に表示するタイトルを入力します。
未入力の場合、エンティティの |
ダイアログ表示時に最大化 |
チェックした場合、一括更新ダイアログ表示時に最大化します。 |
イメージカラー |
ビューのイメージカラー(画面タイトルの左に表示されるアイコンの色)を選択します。次から選択できます。 フラットデザインでは表示されません |
アイコンタグ |
タイトルの前に表示するiタグなどを利用した独自のアイコンを設定できます。 |
更新ボタン表示ラベル |
更新ボタンに表示されるラベルを設定します。 |
更新アクション |
更新ボタンクリック時に実行されるアクションを設定します。 |
検索条件で更新アクション |
(検索条件で更新)更新ボタンクリック時に実行されるアクションを設定します。 |
Javascriptコード |
画面に埋め込むカスタムJavascriptコードを設定します。 |
一括更新画面でJavascriptを有効化 |
チェックした場合、 |
ボタン |
カスタムで表示したいボタンを追加します。 詳細はボタン設定を参照してください。 |
データの多言語化 |
データ操作時に多言語化するかを設定します。
有効にした場合、エンティティ定義の |
親子関係の参照を物理削除 |
チェックした場合、削除時に親子関係の参照します。 一括更新画面での保存時に削除したデータも物理削除されます。 |
更新時に強制的に更新処理を行う |
変更項目が一つもなくとも、強制的に更新処理(更新日時、更新者が更新される)を行います。 |
カスタム登録処理クラス名 |
登録・更新時にカスタマイズ処理を行いたい場合は |
カスタムロード処理クラス名 |
エンティティのロード時にオプション等のカスタマイズを行いたい場合は |
一括更新画面のレイアウト設定
プロパティ
プロパティの設定 を参照してください。
スクリプトセクション
スクリプトセクション を参照してください。
テンプレートセクション
テンプレートセクションを参照してください。
テンプレートで Request
から利用可能な変数、関数は以下の通りです。
- value
-
一括更新する項目の値が格納されたエンティティ
- searchCond
-
検索画面での検索条件
3.5. プロパティエディタ
プロパティエディタは各プロパティの入力表示設定になります。 検索一覧、詳細・編集画面に配置した各プロパティの設定を変更をすることができます。 基本的にはプロパティの型に対応する型を選択してください。
共通設定項目
各プロパティエディタで共通の設定項目です。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
Label形式の場合に表示値を登録する |
編集画面 |
Label |
Label形式をサポートするエディタで、表示タイプがLabel形式の場合に表示値をそのまま登録するかを指定します。 |
Label形式の場合に表示値で更新する |
編集画面 |
Label |
Label形式をサポートするエディタで、表示タイプがLabel形式の場合に表示値で更新するかを指定します。 |
表示カスタムスタイル |
検索条件(LABEL)、検索結果、詳細画面 |
検索画面の検索条件で |
|
入力カスタムスタイル |
検索条件(LABEL以外)、編集画面 |
検索画面の検索条件のinput要素、編集画面の各プロパティのinput要素に対して、直接style属性を指定することが可能です。 例えば入力用のinputの幅を調整したい場合などに利用します。 詳細は入力カスタムスタイルを参照してください。 |
GroovyTemplate書式で設定します。 対象となるエンティティデータやプロパティ値がバインドされます。 その他のバインド変数についてはScript編集画面のNoteを参照してください。
<%
//高、緊急の場合、赤色で表示(01:低、02:中、03:高、04:緊急)
if (value.value == "03" \|\| value.value == "04") { //SelectValue.valueでチェック
%>
color:red;
<%
}
%>
<%
//緊急の場合、フォントを大きくする
if (value.value == "04") {
%>
font-size:20px;
<%
}
%>
<% //期限まで5日以下の場合は赤くする
if (entity.limitDate != null) {
long limit = entity.limitDate.getTime() + ((1000 * 60 * 60 * 24) - 1); //limitDateはDate型なのでMAX時を追加
long current = today.getTime();
long diffDays = (limit - current) / (1000 * 60 * 60 * 24);
if (limit - current < 0) {
diffDays--; //逆転している場合はマイナス1日
}
if (diffDays <= 5) {
%>
color:red;
font-size:20px;
<%
}
}
%>
GroovyTemplate書式で設定します。 編集画面では、対象となるエンティティデータやプロパティ値がバインドされます。 その他のバインド変数についてはScript編集画面のNoteを参照してください。
<% //入力テキストの幅を100pxに、背景色を赤に変更
%>
background-color:#FFCCCC; width:100px;
<% //ラジオボタンを1行に1つずつ表示させる(通常はdisplay:inline)
%>
display:block;
Editorの表示タイプが選択可能な場合、タイプによって適用されるinputが異なります。
- Select
-
selectに対して指定したスタイルを適用します。
- Radio
-
radioを囲むlabelに対して指定したスタイルを適用します。
- Checkbox
-
checkboxを囲むlabelに対して指定したスタイルを適用します。
AutoNumberPropertyEditor
AutoNumber型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
完全一致で検索 |
検索条件 |
検索一覧での検索処理時に完全一致検索とする場合はチェックを入れます。 |
|
入力カスタムスタイル |
共通設定項目を参照してください。 編集画面では読取専用のため、spanタグに設定されます。 |
BinaryPropertyEditor
Binary型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を設定します。
|
||
画像の高さ(px) |
検索結果 |
表示タイプがBinaryまたは、Previewの場合に表示する画像や動画の高さを設定します。 |
|
画像の幅(px) |
検索結果 |
表示タイプがBinaryまたは、Previewの場合に表示する画像や動画の幅を設定します。 |
|
アップロードアクション |
詳細・編集画面 |
アップロード時に実行されるアクションを設定します。 |
|
ダウンロードアクション |
検索結果 |
ダウンロード時に実行されるアクションを設定します。 |
|
新しいタブで開く |
検索結果 |
チェックした場合、アップロードファイルへのリンククリック時に別タブで表示します。 |
|
画像表示時に回転ボタンを表示 |
詳細・編集画面 |
画像リンクの横に回転ボタンを表示します。表示している画像を回転させることが可能になります。保存されるデータは変更されません。 |
|
画像またはリンククリック時にイメージViewerを利用 |
検索結果 |
画像リンクまたは画像をクリックした際に、ImageViewerを表示します。ImageViewerでは画像の拡大・縮小、回転、反転が可能です。 変更した設定は、検索画面、詳細画面、編集画面それぞれを表示している間のみ保持します。 画像リンクについては、 |
|
PDF表示時にPDF.jsを利用 |
検索結果 |
PDF.jsを利用してPDFを表示します。 細工されたPDFによる情報詐取(JVNTA#94087669)の対策が必要な場合に利用してください。 |
|
ファイル選択ボタン非表示 |
詳細・編集画面 |
詳細・編集画面にてファイル選択ボタンを非表示にします。これでアップロード権限制御なとに利用してください。 |
|
削除ボタン非表示 |
詳細・編集画面 |
編集画面にて当バイナリファイルデータを削除するボタンを非表示にします。これで削除権限制御なとに利用してください。 |
|
アップロード受け入れ可能な MIME Type パターン |
詳細・編集画面 |
ファイルをアップロード時に、受け入れ可能な MIME Type パターンを設定します。設定値は正規表現パターンを指定します。 検証対象となる MIME Type の決定方法については、WebFrontendService の |
swfファイルをアップロードする場合は、高さ、幅の両方の設定が必須となります。
BooleanPropertyEditor
Boolean型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 | ||
---|---|---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||||
RADIO、CHECKBOX形式の場合、アイテムを縦に並べる |
検索条件 |
RADIO、CHECKBOX形式の場合、アイテムを縦に並べるかを指定します。 |
|||
「値なし」を検索条件の選択肢に追加するか |
検索条件 |
「値なし」を検索条件の選択肢に追加するかを指定します。値なしが選択された場合、IS NULLを検索条件として指定します。
|
|||
真の表示ラベル |
検索条件 |
真の選択肢に表示するラベルを設定します。 |
|||
偽の表示ラベル |
検索条件 |
偽の選択肢に表示するラベルを設定します。 |
|||
初期値 |
詳細・編集画面 |
新規作成時の初期値を設定します。ture/false または、1/0 を設定して下さい。 |
|||
入力カスタムスタイル |
共通設定項目を参照してください。 表示タイプがCheckboxの場合、設定は適用されません。 |
DatePropertyEditor
Date型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 | ||||
---|---|---|---|---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||||||
日付/時刻のフォーマット設定 |
検索結果、詳細画面 |
日付/時刻型を表示する際のフォーマットとロケールを設定します。 |
|||||
日付/時刻のフォーマッの多言語設定 |
検索結果、詳細画面 |
言語別の日付/時刻型を表示する際のフォーマットとロケールを設定します。 |
|||||
単一日で指定 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件を単一日を指定する形で表示します。 OFFの場合は、FromToの入力フィールドを表示し、範囲検索を行います。 単一日で指定がONの場合
単一日で指定がOFFの場合
From、To入力時 → |
|||||
検索条件Fromを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、From日付を非表示にします。 単一日で指定がOFFの場合に有効になります。 |
|||||
検索条件Toを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、To日付を非表示にします。 単一日で指定がOFFの場合に有効になります。 |
|||||
検索条件範囲記号を非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、範囲記号 |
|||||
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 yyyyMMdd形式か、予約語を指定して下さい。(予約語は以下の通り)
|
|||||
最小日付 |
詳細・編集画面 |
DatePickerで選択可能な最小日付を設定します。以下の設定値を指定可能です。
|
|||||
最小日付の設定値をファンクション実行する |
詳細・編集画面 |
チェックをすると、最小日付の設定値をファンクションとして実行します。
ユーザー定義ファンクションの仕様は次の通りです。
ユーザー定義ファンクション例
最小日付は以下の通り設定します。
|
|||||
最大日付 |
詳細・編集画面 |
DatePickerで選択可能な最大日付を設定します。以下の設定値を指定可能です。
|
|||||
最大日付の設定値をファンクション実行する |
詳細・編集画面 |
チェックをすると、最大日付の設定値をファンクションとして実行します。 詳細については、"最小日付の設定値をファンクション実行する" を参照ください。 |
|||||
テキストフィールドへの直接入力を制限する |
詳細・編集画面 |
チェックをすると、直接入力ができなくなり DatePicker の入力のみ受け付けるようになります。 |
|||||
現在日付設定ボタンを非表示 |
検索条件 |
チェックした場合、DatePickerの現在日付設定ボタンを非表示にします。 |
|||||
曜日を表示 |
チェックした場合、日付にあわせて曜日を表示します。 曜日の入力はできません。 |
||||||
入力カスタムスタイル |
共通設定項目を参照してください。 ロケールによる日付入力形式によりinputの長さを制御しているため、width設定は適用されません。 |
日付/時刻のフォーマット設定
フォーマットが反映される優先度は プロパティエディタの多言語設定に指定されたフォーマットとロケール
> プロパティエディタで設定されたフォーマットとロケール
> デフォルトの表示
となります。
設定項目 | 設定内容 |
---|---|
日付/時刻のフォーマット設定 |
日付、時刻のフォーマットを文字列で設定します。 |
日付/時刻のロケール設定 |
日付、時刻のフォーマットの表示を決定するロケールを文字列で設定します。 |
日付/時刻のフォーマットの多言語設定
フォーマットが反映される優先度は プロパティエディタの多言語設定に指定されたフォーマットとロケール
> プロパティエディタで設定されたフォーマットとロケール
> デフォルトの表示
となります。
設定項目 | 設定内容 |
---|---|
日付/時刻の言語設定 |
日付、時刻のフォーマットを設定する言語を設定をします。 |
日付/時刻のフォーマット設定 |
日付、時刻のフォーマットを文字列で設定します。 |
日付/時刻のロケール設定 |
日付、時刻のフォーマットの表示を決定するロケールを文字列で設定します。 |
DecimalPropertyEditor
Decimal型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
数値のフォーマット |
表示時のフォーマットを指定します。 java.text.DecimalFormatのパターンを設定してください。 |
||
カンマ表示 |
チェックした場合、テキストフィールドからフォーカスアウトした際にカンマ区切りの表示を行います。 |
||
範囲で検索 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件でFromToの入力フィールドを表示し、範囲検索を行います。 範囲検索がONの場合
From、To入力時 → 範囲検索がOFFの場合
|
|
検索条件Fromを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、From部分を非表示にします。 範囲で検索がONの場合に有効になります。 |
|
検索条件Toを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、To部分を非表示にします。 範囲で検索がONの場合に有効になります。 |
|
検索条件範囲記号を非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、範囲記号 |
|
最大文字数 |
詳細・編集画面 |
テキストフィールドに入力可能な最大文字数を設定します。 1以上の値を設定してください。 なお、0以下の値を設定した場合は適用されません。 |
|
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 |
ExpressionPropertyEditor
Expression型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
プロパティエディタを指定している場合は、指定されたプロパティエディタの設定が優先されます。 |
||
数値のフォーマット |
検索結果 |
表示時のフォーマットを指定します。 java.text.DecimalFormatのパターンを設定してください。 プロパティエディタを指定した場合は、プロパティエディタの型に合わせて画面表示を行います。 |
|
表示カスタムスタイル |
共通設定項目を参照してください。 プロパティエディタが設定されている場合は、そのプロパティエディタの表示カスタムスタイルが適用されます。 |
||
入力カスタムスタイル |
共通設定項目を参照してください。 プロパティエディタが設定されている場合は、そのプロパティエディタの表示カスタムスタイルが適用されます。(読取専用のため表示スタイルです) プロパティエディタが未設定の場合、編集画面では読取専用のため、多重度複数の場合はulタグに、単数の場合はspanタグに設定されます。 |
||
プロパティエディタ |
検索条件 |
プロパティエディタを設定します。 ExpressionプロパティのResultTypeに設定されている内容に合わせて設定してください。 設定した場合、そのEditor設定にあわせて画面表示を行います。 未設定の場合は、値を文字列として表示します。 |
FloatPropertyEditor
Float型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
数値のフォーマット |
表示時のフォーマットを指定します。 java.text.DecimalFormatのパターンを設定してください。 |
||
カンマ表示 |
チェックした場合、テキストフィールドからフォーカスアウトした際にカンマ区切りの表示を行います。 |
||
範囲で検索 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件でFromToの入力フィールドを表示し、範囲検索を行います。 範囲検索がONの場合
From、To入力時 → 範囲検索がOFFの場合
|
|
検索条件Fromを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、From部分を非表示にします。 範囲で検索がONの場合に有効になります。 |
|
検索条件Toを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、To部分を非表示にします。 範囲で検索がONの場合に有効になります。 |
|
検索条件範囲記号を非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、範囲記号 |
|
最大文字数 |
詳細・編集画面 |
テキストフィールドに入力可能な最大文字数を設定します。 1以上の値を設定してください。 なお、0以下の値を設定した場合は適用されません。 |
|
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 |
IntegerPropertyEditor
Integer型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
数値のフォーマット |
表示時のフォーマットを指定します。 java.text.DecimalFormatのパターンを設定してください。 |
||
カンマ表示 |
チェックした場合、テキストフィールドからフォーカスアウトした際にカンマ区切りの表示を行います。 |
||
範囲で検索 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件でFromToの入力フィールドを表示し、範囲検索を行います。 範囲検索がONの場合
From、To入力時 → 範囲検索がOFFの場合
|
|
検索条件Fromを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、From部分を非表示にします。 範囲で検索がONの場合に有効になります。 |
|
検索条件Toを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、To部分を非表示にします。 範囲で検索がONの場合に有効になります。 |
|
検索条件範囲記号を非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、範囲記号 |
|
最大文字数 |
詳細・編集画面 |
テキストフィールドに入力可能な最大文字数を設定します。 1以上の値を設定してください。 なお、0以下の値を設定した場合は適用されません。 |
|
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 |
JoinPropertyEditor
複数のプロパティをまとめて表示するためのプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
フォーマット |
検索結果 |
複数のプロパティを組み合わせて表示するための表示フォーマットを設定します。
プロパティを指定する際は、 例) ${name}_${item1} |
|
表示カスタムスタイル |
共通設定項目を参照してください。 JoinPropertyEditorに対する設定は、フォーマットされた全体を囲むspanタグに対して設定されます。 |
||
入力カスタムスタイル |
共通設定項目を参照してください。 JoinPropertyEditorに対する設定は、フォーマットされた全体を囲むspanタグに対して設定されます。(読取専用) |
||
プロパティエディタ |
検索条件 |
このプロパティ(JoinPropertyとして定義したプロパティ)のプロパティエディタを設定します。 プロパティの型にあわせたプロパティエディタを選択してください。 |
|
プロパティ |
検索条件 |
このプロパティ(JoinPropertyとして定義したプロパティ)と組み合わせて表示する他のプロパティを指定します。 |
|
ネストプロパティの検証エラーメッセージをまとめて表示 |
詳細・編集画面 |
チェックの時はネストプロパティの検証エラーメッセージをまとめて表示します。 未チェックの時はネストプロパティの検証エラーメッセージをまとめて表示しません。 |
LongTextPropertyEditor
LongText型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
最大文字数 |
詳細・編集画面 |
Text |
テキストフィールドに入力可能な最大文字数を設定します。 1以上の値を設定してください。 なお、0以下の値を設定した場合は適用されません。 |
選択値 |
検索条件 |
Select |
選択値を追加設定できます。 詳細は選択値設定を参照してください。 |
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 |
|
完全一致で検索 |
LongTextPropertyEditorでは、適用されません。 |
||
RichText表示時にタグを許可 |
詳細・編集画面 |
RichText |
リッチテキストエディタで許可されていない文字を利用できるようにします。 本文内にJavascriptやcssを埋め込む場合、ソースボタンを押してから直接記述してください。 |
RichText表示時にリンク動作を許可 |
詳細画面 |
RichText |
リッチテキストエディタで許可されていないリンク動作を利用できるようにします。 |
RickText表示時にツールバーなどを表示しない |
詳細画面 |
RichText |
リッチテキストエディタで表示する際に、ツールバーなどを表示しないかを設定します。 |
RickText Editor Option |
詳細・編集画面 |
RichText |
リッチテキストエディタを生成する際のオプションをJavascriptのオブジェクトリテラルで指定します。 指定可能なオプションについてはCKEDITOR configを参照してください。 |
入力カスタムスタイル |
共通設定項目を参照してください。 RichTextタイプの場合、設定は適用されません。 |
選択値設定
設定項目 | 設定内容 |
---|---|
表示名 |
選択肢のラベルを設定します。 |
値 |
選択肢の値を設定します。 |
クラス名 |
スタイルシートのクラス名を指定します。 複数指定する場合は半角スペースで区切って下さい。 |
ReferencePropertyEditor
Reference型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 | ||
---|---|---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||||
CHECKBOX形式の場合、アイテムを縦に並べる |
検索条件 |
CHECKBOX形式の場合、アイテムを縦に並べるかを指定します。 |
|||
「値なし」を検索条件の選択肢に追加するか |
検索条件 |
「値なし」を検索条件の選択肢に追加するかを指定します。値なしが選択された場合、IS NULLを検索条件として指定します。
|
|||
表示ラベルとして扱うプロパティ |
検索条件 |
Link |
表示ラベルとして扱うプロパティを設定します。
本項目が設定された、かつ GemConfigService の
|
||
参照型の表示プロパティ |
検索条件 |
NestTable |
参照先エンティティの表示対象プロパティを指定します。詳細画面と検索一覧で使用方法が異なります。
プロパティの設定については、参照先の表示プロパティを参照してください。 |
||
ネストテーブルの表示順プロパティ |
詳細・編集画面 |
NestTable |
ネストテーブルで表示する際の表示順を示すプロパティを設定します。
|
||
検索条件 |
チェックした場合、参照先の表示プロパティにネスト項目が設定されていれば、ネスト項目を検索条件とします。 |
||||
選択ダイアログを利用 |
検索条件 |
Link |
チェックした場合、検索一覧での条件指定方法をテキストから、選択ダイアログ(レコード選択)にします。 |
||
検索条件で単一選択 |
検索条件 |
Link |
チェックした場合、検索一覧での条件指定時に、選択ダイアログでのレコード選択方法を複数選択から単一選択に変更します。 |
||
検索条件での全選択を許可 |
検索条件 |
Link |
参照先の選択画面で複数選択が可能な場合、全選択時の範囲を変更します。 ただし多重度以上の選択はできず、先頭から順に選択されます。
|
||
選択画面でバージョン検索を許可 |
詳細・編集画面 |
Link |
バージョン管理している参照先Entityの選択画面でバージョン検索を許可します。 |
||
参照リンクで編集を許可 |
検索結果 |
Link |
チェックした場合、参照リンク押下時のリンク先詳細画面で編集が可能となります。
参照先エンティティに更新権限がない場合は、編集リンクの代わりに詳細リンクが表示されます。 |
||
編集ページ |
詳細・編集画面 |
Link |
参照画面で編集を行うか、編集画面で編集を行うかを設定します。
|
||
新規ボタン非表示 |
詳細・編集画面 |
Link |
チェックした場合、追加ボタンを非表示にします。 |
||
選択ボタン非表示 |
詳細・編集画面 |
Link |
チェックした場合、選択ボタンを非表示にします。 |
||
削除ボタン非表示 |
詳細・編集画面 |
Link |
チェックした場合、削除ボタンを非表示にします。 |
||
行追加方法 |
詳細・編集画面 |
NestTable |
詳細編集画面での行の追加ボタンの表示位置を下記から選択します。
当該項目が設定されていない場合は、 |
||
ダイアログ表示アクション |
検索条件 |
Link |
参照リンク押下時のダイアログ表示時のアクションを設定します。
|
||
ダイアログ編集アクション |
詳細・編集画面 |
NestTable |
|
||
追加アクション |
詳細・編集画面 |
Link |
追加ボタン押下で実行されるアクションを設定します。
|
||
選択アクション |
検索条件 |
Link |
選択ボタン押下で実行されるアクションを設定します。
|
||
更新時に強制的に更新処理を行う |
詳細・編集画面 |
NestTable |
更新項目が1つもない場合でも強制的に更新処理を行います。更新者、更新日時を更新します。 |
||
ビュー定義名 |
検索条件 |
Link |
各アクション実行時に表示する画面のView定義名を設定します。
未指定の場合は |
||
URLパラメータ |
検索条件 |
Link |
選択ボタン、新規ボタン、詳細/編集リンク押下で表示する画面に渡すパラメータを設定します。 詳細はURLパラメータを参照してください。 |
||
URLパラメータAction |
検索条件 |
Link |
URLパラメータを適用するActionを指定します。未指定の場合、 |
||
動的URLパラメータ |
検索条件 |
Link |
選択ボタン、新規ボタン押下で表示する画面に渡すパラメータを作成するためのJavascriptを設定します。NestTableの場合、編集ページがViewの場合に有効になります。URLパラメータに設定した値が変数のurlParamに格納されます。urlParamを含めてURLパラメータの文字列をreturnしてください。 詳細は動的URLパラメータを参照してください。 |
||
動的URLパラメータAction |
検索条件 |
Link |
動的URLパラメータを適用するActionを指定します。未指定の場合、 |
||
新規アクションコールバックスクリプト |
詳細・編集画面 |
Link |
新規ボタン押下で表示される追加画面で追加完了時に実行されるコールバック用のJavascriptを設定します。 コールバック関数の引数として以下の変数が渡されます。
|
||
選択アクションコールバックスクリプト |
詳細・編集画面 |
Link |
選択ボタン押下で表示される選択画面上で選択完了時に実行されるコールバック用のJavascriptを設定します。 詳細は選択アクションコールバックスクリプトを参照してください。 |
||
行追加コールバックスクリプト |
詳細・編集画面 |
NestTable |
|
||
特定バージョンの基準となるプロパティ |
詳細・編集画面 |
Link |
参照先のプロパティのバージョン管理に合わせて、画面内のプロパティ名を指定します。
(NUMBER_BASE:Integer型 / TIME_BASE:Datetime型)
指定したプロパティの値を利用して、選択ダイアログでの検索時にバージョンを指定して検索します。
(プロパティ定義の |
||
検索条件 |
検索条件 |
Select |
選択可能項目を検索する際の条件に依存しない検索条件を設定します。 |
||
ソートアイテム |
検索条件 |
Select |
選択項目をソートする項目を設定します。 |
||
ソート種別 |
検索条件 |
Select |
選択項目をソートする種別を設定します。 |
||
参照コンボ設定 |
検索条件 |
RefCombo |
選択値を階層的に指定することができます。 詳細は参照コンボの設定を参照してください。 |
||
参照コンボの検索方法 |
検索条件 |
RefCombo |
通常検索(検索一覧の検索タブ)の検索条件に参照コンボを利用する場合に、参照コンボの検索方法を設定します。
|
||
詳細画面で参照コンボの親階層を表示 |
詳細画面 |
RefCombo |
チェックした場合、参照コンボの設定により、親階層のデータを表示します。 |
||
参照ツリー設定 |
検索条件 |
Tree |
再帰構造のエンティティ(同一エンティティの参照をプロパティに持つエンティティ)をツリーから選択することが出来ます。 詳細は参照ツリーの設定を参照してください。 |
||
連動プロパティ設定 |
検索条件 |
Select |
エンティティの他のプロパティと連動して選択可能項目をフィルターすることができます。 詳細は連動プロパティの設定を参照してください。 |
||
ユニークキープロパティ |
検索条件 |
Unique |
参照エンティティを検索するためのユニークキープロパティを指定します。 |
||
操作ログリンクを表示 |
詳細画面 |
NestTable |
参照エンティティが操作ログを管理している場合に、ネストテーブル列に対象データの操作ログを表示するリンクを出力します。 |
||
表示カスタムスタイル |
共通設定項目を参照してください。 |
||||
入力カスタムスタイル |
共通設定項目を参照してください。 表示タイプ= 表示タイプ= 表示タイプ= 表示タイプ= 表示タイプ= |
選択ボタン、新規ボタン、詳細/編集リンク押下で表示する画面に渡すパラメータを設定します。
詳細・編集リンクは、編集ページ設定が View
の場合にのみ、指定されたパラメータを適用します。
以下の変数がバインドされています。
- request
-
リクエスト
- session
-
セッション
- parent
-
参照元のエンティティ(編集画面のみ)
- actionType
-
実行されるAction(
org.iplass.mtp.view.generic.editor.ReferencePropertyEditor.UrlParameterActionType
)
新規ボタン押下時にはこの項目で定義したパラメータと一緒に以下のパラメータが渡されます
- parentOid
-
親エンティティの
oid
(新規登録時はnull
) - parentVersion
-
親エンティティの
version
(新規登録時はnull
) - parentDefName
-
親エンティティのエンティティ定義名
GroovyTemplate書式で設定します。改行やスペースは無視されます。
<%@page import="org.iplass.mtp.view.generic.editor.ReferencePropertyEditor.UrlParameterActionType"%>
<%
//actionTypeによってパラメータを切り分ける例
if (actionType == UrlParameterActionType.SELECT) {
//選択ボタン処理
//初期表示時に検索(es=t)
%>
es=t
<%
if (parent != null) {
//親の値を条件に追加
%>
&sc_parentName=<%=parent.getName()%>
<%
}
} else if (actionType == UrlParameterActionType.ADD) {
//追加ボタン処理
%>
custom_param1=aaa&custom_param2=bbb
<%
} else if (actionType == UrlParameterActionType.VIEW) {
//データ参照処理
%>
custom_param1=aaa&custom_param2=bbb&custom_param3=ccc
<%
}
%>
選択ボタン、新規ボタン、詳細/編集リンク押下で表示する画面に渡すパラメータを作成するためのJavascriptを設定します。
詳細・編集リンクは、編集ページ設定が View
の場合にのみ、指定されたパラメータを適用します。
以下の変数がバインドされています。
- urlParam
-
URLパラメータで設定した固定パラメータ
Javascript書式で設定します。画面内の項目の値を取得し、URLパラメータ形式の文字列をreturnします。 URLパラメータの項目でパラメータを設定している場合、それを含めた形でreturnしてください。
var name = $("input[name='name']").val()
var str = $("input[name='str']").val()
return "sc_name="+name+"&sc_str="+str+"&"+urlParam;
選択ボタン押下で表示される選択画面上で選択完了時に実行されるコールバック用のJavascriptを設定します。 コールバック関数の引数として以下の変数が渡されます。
- entityList
-
選択されたEntity(
oid
、name
、version
を持ったJavascriptオブジェクト)の配列 - deleteList
-
選択解除されたEntityの配列
- propName
-
対象の参照プロパティ名
if (entityList.length > 0) {
for (var i = 0; i < entityList.length; i++) {
alert(entityList[i].oid + "-" + entityList[i].version + "-" + entityList[i].name);
}
}
参照先の表示プロパティ
NestTable等に表示する、参照先のエンティティのプロパティに対する設定です。
設定項目 | 利用箇所 | 設定内容 | ||
---|---|---|---|---|
プロパティ名 |
検索条件 |
参照先のプロパティ名を設定します。 |
||
プロパティエディタ |
検索条件 |
参照先プロパティの型に合わせたPropertyEditorを選択して下さい。
選択後、 |
||
編集画面で非表示 |
詳細・編集画面 |
チェックした場合、編集画面で項目を非表示にします。 この項目は参照テーブル、参照セクション、大量データ用参照セクションで有効になります。 |
||
詳細画面で非表示 |
詳細・編集画面 |
チェックした場合、詳細画面で項目を非表示にします。 この項目は参照テーブル、参照セクション、大量データ用参照セクションで有効になります。 |
||
表示ラベル |
検索条件 |
表示ラベルを設定します。 |
||
説明 |
詳細・編集画面 |
説明を設定します。 |
||
ツールチップ |
検索条件 |
ツールチップを設定します。 |
||
列幅 |
検索結果 |
画面に表示する際の列幅(単位はピクセル)を設定します。単位は不要です。 |
||
テキストの配置 |
検索結果 |
画面に表示する際のテキスト(データ)の配置を設定します。
|
||
必須マークを表示 |
詳細・編集画面 |
必須マークを表示するかを設定します。
|
||
通常検索で必須条件にする |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)で必須条件になります。 |
||
詳細検索で必須条件にする |
検索条件 |
チェックした場合、詳細検索(検索一覧の詳細検索タブ)で必須条件になります。 |
||
ソートを許可 |
検索結果 |
ソートを許可する場合はチェックします。
|
||
ダウンロードファイルに出力する |
検索結果 |
ダウンロードファイルに出力するかを設定します。
検索条件設定で |
||
自動補完設定 |
検索条件 |
項目間の自動補完を設定します。詳細は自動補完設定を参照してください。 |
参照コンボの設定
表示タイプを RefCombo
に設定することで、階層的な構造をもつ参照プロパティを絞り込みながら選択することが可能になります。
上位の選択値(連動元)に合わせて選択可能な項目を絞り込みます。
参照コンボの親階層を表示するか
がONになっている場合、詳細画面でも上位階層を表示します。
検索一覧と同様に、上位に合わせて絞込みが行われます。
設定項目 | 設定内容 |
---|---|
プロパティ名 |
上位のコンボとして表示する参照のプロパティ名を設定します。 |
検索条件 |
上位コンボの選択肢を取得する際に自動的に付与される検索条件をPreparedQuery形式で指定します。 WHERE句に指定する条件を指定してください。 |
参照コンボ設定 |
複数階層化させる場合に、さらに上位のコンボに関する設定をします。 |
ソートアイテム |
選択可能項目をソートする項目を設定します。 |
ソート種別 |
選択可能項目をソートする種別を設定します。 |
表示ラベルとして扱うプロパティ |
表示ラベルとして扱うプロパティを設定します。
|
(例)メインとなるエンティティで3階層の構造をもったカテゴリエンティティ3を定義した場合の設定方法
-
メインエンティティ
3階層のカテゴリ構造となっている最下位層のCategory3エンティティを保持している。 -
参照している各カテゴリエンティティ
Category1 > Category2 > Category3
-
Category3エンティティを配置
-
Category3の設定
Category3エンティティから上位のCategory2エンティティ、さらに上位のCategory1エンティティの設定を行う
設定内容は検索条件と同様。
ただし 参照コンボの親階層を表示するか
がチェックされている場合は、階層で表示される。
参照ツリーの設定
表示タイプを Tree
に設定することで、再帰構造をもつエンティティをツリー表示し、任意の階層から選択することが出来ます。
同一エンティティを対象にしているため、どの階層からでもデータを選択できます。
参照コンボの親階層を表示するか
がONになっている場合、選択したデータから取得可能な全ての親階層を表示します。
検索一覧と同様に、どの階層のデータでも選択できます。
設定項目 | 設定内容 |
---|---|
最上位階層の検索条件 |
ツリーに表示する最上位階層の検索条件を設定します。 |
子階層のプロパティ名 |
選択可能項目をソートする項目を設定します。 |
(例)メインとなるエンティティで再帰構造をもったCategoryエンティティを定義した場合の設定方法
-
メインエンティティ
再帰構造となっているCategoryエンティティを保持している。 -
Categoryエンティティ
親と子(被参照)を持ち、再帰構造となっている。
-
Categoryエンティティを配置
-
Categoryの設定
設定内容は検索条件と同様。
ただし 参照コンボの親階層を表示するか
がチェックされている場合は、階層で表示される。
連動プロパティの設定
連動プロパティを設定することで、エンティティの他のプロパティ選択値と連動して選択可能な項目をフィルターすることができます。
Editorの表示タイプが Select
のみ動作します。
上位の選択値(連動元)に合わせて選択可能な項目を絞り込みます。
Editorの表示タイプが Select
または CheckBox
(多重度1のためRadioになる)のみ動作します。
検索一覧と同様に、上位に合わせて絞込みが行われます。
設定項目 | 設定内容 |
---|---|
連動元プロパティ名(From) |
連動元になるプロパティを指定します。 参照元のエンティティのプロパティを指定します。 連動元プロパティに指定可能なものは以下のものです。
NestTable内のプロパティ同士で連動させる場合は、直接プロパティ名を入力してください。 |
ネストプロパティ同士の連動 |
NestTable内のプロパティ同士で連動させる場合はチェックします。 |
連動側絞込対象プロパティ名(To) |
連動元プロパティに対応する参照エンティティ側(自身)のプロパティ名を指定します。
連動元の選択値を、 |
(例)メインとなるエンティティで3階層の構造をもったカテゴリエンティティを定義した場合の連動方法
-
メインエンティティ
各カテゴリエンティティとCategory1エンティティで保持する区分を保持している。全て多重度は1。 -
参照している各カテゴリエンティティ
Category1 > Category2 > Category3
-
各Categoryを配置
-
Category1の設定
Category1エンティティをセレクトアイテムの選択値に連動させる -
Category2の設定
Category2エンティティをCategory1の選択値に連動させる -
Category3の設定
Category3エンティティをCategory2の選択値に連動させる
設定内容は検索条件と同様。
以下のように上位階層を選択することで、下位階層の選択肢が表示されます。
初期表示時点では連動元の一番Topである セレクトアイテム
が未選択のため、カテゴリは全て未選択かつ選択可能項目もない状態。
セレクトアイテム
を選択することで、連動先の カテゴリ1
の選択可能項目が設定される。
カテゴリ1
を選択することで、連動先の カテゴリ2
の選択可能項目が設定される。
カテゴリ2
を選択することで、連動先の カテゴリ3
の選択可能項目が設定される。
より上位の連動元が未選択になると、 連動先は未選択状態になり、選択可能項目もクリアされる。
編集画面についても、同様の動作となります。
ただし編集画面については、 ReferencePropertyEditor
の表示タイプを Checkbox
にすることも可能です。
この場合多重度1限定のためRadio表示されます。
なお、検索条件については、多重度1の場合でもCheckbox表示され、In条件となるため非対象としています。
SelectPropertyEditor
Select
型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 | ||
---|---|---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||||
RADIO、CHECKBOX形式の場合、アイテムを縦に並べる |
検索条件 |
RADIO、CHECKBOX形式の場合、アイテムを縦に並べるかを指定します。 |
|||
「値なし」を検索条件の選択肢に追加するか |
検索条件 |
「値なし」を検索条件の選択肢に追加するかを指定します。値なしが選択された場合、IS NULLを検索条件として指定します。
|
|||
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 |
|||
CSV出力時に選択肢の順番でソート |
検索結果 |
多重度が複数の場合に、検索一覧のCSVダウンロードにて値の出力を選択肢の順番でソートします。
|
|||
選択値 |
検索条件 |
選択値を指定できます。 詳細は選択値設定を参照してください。 未指定の場合、エンティティ定義から選択値を取得します。 画面個別にカスタマイズしたい場合に設定して下さい。 |
StringPropertyEditor
String
型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 | ||
---|---|---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||||
入力タイプ |
編集画面 |
Text |
inputの |
||
入力パターン |
編集画面 |
Text |
inputの |
||
HTML入力エラーメッセージ |
編集画面 |
Text |
inputの
|
||
最大文字数 |
詳細・編集画面 |
Text |
テキストフィールドに入力可能な最大文字数を設定します。 1以上の値を設定してください。 なお、0以下の値を設定した場合は適用されません。 |
||
選択値 |
検索条件 |
Select |
選択値を追加設定できます。 詳細は選択値設定を参照してください。 PropertyとしてはStringで保持するが、入力値を固定させたい場合に利用します。 |
||
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 |
|||
完全一致で検索 |
検索条件 |
チェックした場合、検索一覧で条件を設定した時に完全一致で検索します。
表示タイプが |
|||
「値なし」を検索条件の選択肢に追加するか |
検索条件 |
「値なし」を検索条件の選択肢に追加するかを指定します。値なしが選択された場合、IS NULLを検索条件として指定します。
|
|||
RichTextライブラリ |
詳細・編集画面 |
RichText |
リッチテキストエディタとして利用するライブラリを指定します。
未指定の場合は、 GemConfigService の
|
||
詳細画面でRickTextエディタのツールバーを表示しない |
詳細画面 |
RichText |
詳細画面でリッチテキストエディタのツールバーを表示しないかを設定します。 |
||
RickText Editor Option |
詳細・編集画面 |
RichText |
リッチテキストエディタを生成する際のオプションをJavascriptのオブジェクトリテラルで指定します。 指定可能なオプションについては、利用するリッチテキストライブラリの説明を参照してください。 |
||
RichTextで標準以外のタグ入力を許可 (CKEditor) |
詳細・編集画面 |
RichText |
CKEditorの標準で許可されていないHTMLタグ利用できるようにします ( |
||
詳細画面でRichTextのリンク動作を許可 (CKEditor) |
詳細画面 |
RichText |
CKEditorの標準で許可されていないリンク動作を利用できるようにします。 |
||
入力カスタムスタイル |
共通設定項目を参照してください。
|
TimePropertyEditor
Time
型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
日付/時刻のフォーマッの多言語設定 |
検索結果、詳細画面 |
言語別の日付/時刻型を表示する際のフォーマットとロケールを設定します。 |
|
日付/時刻のフォーマット設定 |
検索結果、詳細画面 |
日付/時刻型を表示する際のフォーマットとロケールを設定します。 |
|
単一日で指定 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件を単一日を指定する形で表示します。 |
|
検索条件Fromを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、From日付を非表示にします。 単一日で指定がOFFの場合に有効になります。 |
|
検索条件Toを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、To日付を非表示にします。 単一日で指定がOFFの場合に有効になります。 |
|
検索条件範囲記号を非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、範囲記号 |
|
時間の表示範囲 |
検索条件 |
時間の各リストをどこまで表示するか下記から選択します。
|
|
分の間隔 |
検索条件 |
分のリストの表示間隔を下記から選択します。
|
|
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 yyyyMMdd形式か、予約語を指定して下さい。(予約語は以下の通り)
|
|
TimePickerを利用 |
検索条件 |
チェックした場合、入力フィールドでTimePickerを利用できます。 |
TimestampPropertyEditor
Timestamp
型用のプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 | ||||
---|---|---|---|---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||||||
日付/時刻のフォーマット設定 |
検索結果、詳細画面 |
日付/時刻型を表示する際のフォーマットとロケールを設定します。 |
|||||
日付/時刻のフォーマッの多言語設定 |
検索結果、詳細画面 |
言語別の日付/時刻型を表示する際のフォーマットとロケールを設定します。 |
|||||
単一日で指定 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件を単一日を指定する形で表示します。 |
|||||
検索条件Fromを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、From日付を非表示にします。 単一日で指定がOFFの場合に有効になります。 |
|||||
検索条件Toを非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、To日付を非表示にします。 単一日で指定がOFFの場合に有効になります。 |
|||||
検索条件範囲記号を非表示 |
検索条件 |
チェックした場合、通常検索(検索一覧の検索タブ)の検索条件のうち、範囲記号 |
|||||
時間の表示範囲 |
検索条件 |
時間の各リストをどこまで表示するか下記から選択します。
|
|||||
分の間隔 |
検索条件 |
分のリストの表示間隔を下記から選択します。
|
|||||
初期値 |
詳細・編集画面 |
新規作成時(詳細編集画面)の初期値を設定します。 yyyyMMdd形式か、予約語を指定して下さい。(予約語は以下の通り)
|
|||||
最小日付 |
詳細・編集画面 |
DatetimePickerで選択可能な最小日付を設定します。以下の設定値を指定可能です。
|
|||||
最小日付の設定値をファンクション実行する |
詳細・編集画面 |
チェックをすると、最小日付の設定値をファンクションとして実行します。
ユーザー定義ファンクションの仕様は次の通りです。
ユーザー定義ファンクション例
最小日付は以下の通り設定します。
|
|||||
最大日付 |
詳細・編集画面 |
DatetimePickerで選択可能な最大日付を設定します。以下の設定値を指定可能です。
|
|||||
最大日付の設定値をファンクション実行する |
詳細・編集画面 |
チェックをすると、最大日付の設定値をファンクションとして実行します。 詳細については、"最小日付の設定値をファンクション実行する" を参照ください。 |
|||||
テキストフィールドへの直接入力を制限する |
詳細・編集画面 |
チェックをすると、直接入力ができなくなり DatetimePicker の入力のみ受け付けるようになります。 |
|||||
現在日付設定ボタンを非表示 |
検索条件 |
チェックした場合、DatetimePickerの現在日付設定ボタンを非表示にします。 DatetimePickerを利用するのチェックが無い場合に有効になります。 |
|||||
時間のデフォルト値を設定しない |
検索条件 |
チェックした場合、日付入力時に時間のプルダウンにデフォルト値を設定しないようにします。 |
|||||
DatetimePickerを利用 |
検索条件 |
チェックした場合、入力フィールドでDatetimePickerを利用できます。 |
|||||
曜日を表示 |
チェックした場合、日付にあわせて曜日を表示します。 曜日の入力はできません。 |
||||||
入力カスタムスタイル |
共通設定項目を参照してください。 ロケールによる日付入力形式によりinputの長さを制御しているため、width設定は適用されません。 |
DateRangePropertyEditor
日付型のプロパティを二つ組合せ、範囲を入力・表示するプロパティエディタです。
検索条件エリアで利用する場合、条件を入力するフィールドを1つ表示します。条件を入力した場合、FromとToに対して範囲検索を行います。
編集画面で利用する場合、設定した2つのプロパティの入力欄が表示され、登録時に期間の前後関係のチェックを行います。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
プロパティエディタ |
このプロパティ(From)のプロパティエディタを設定します。 プロパティの型にあわせたプロパティエディタを選択してください。 |
||
Fromの未入力を許容 |
検索条件、詳細・編集画面 |
|
|
Fromプロパティに対して値を含めて検索する |
検索条件 |
Fromに対しての範囲条件を指定します。 |
|
Toプロパティ名 |
このプロパティと組み合わせて表示する他のプロパティを指定します。
指定するプロパティはこのプロパティの型と合わせてください。 |
||
詳細検索でのToプロパティ表示名 |
検索条件 |
詳細検索時に検索項目のセレクトボックス内に表示するToプロパティの表示名を設定します。
Toプロパティの表示名が未設定の場合は、エンティティの |
|
Toプロパティエディタ |
検索結果、詳細・編集画面 |
Toプロパティのプロパティエディタを設定します。 プロパティの型にあわせたプロパティエディタを選択してください。 未指定の場合、Fromのプロパティエディタの設定が有効になります。 |
|
Toの未入力を許容 |
検索条件、詳細・編集画面 |
|
|
Toプロパティに対して値を含めて検索する |
検索条件 |
Toに対しての範囲条件を指定します。 |
|
同値を許容 |
検索条件、詳細・編集画面 |
|
|
エラーメッセージ |
詳細・編集画面 |
FromとToの大小関係が不正な場合に表示するエラーメッセージを設定します。 |
検索時の条件
Editorの設定により、検索時の条件は以下のようになります。
// From、Toそれぞれの範囲条件の決定 ( Fromプロパティ名 <= または < 入力値 AND 入力値 <= または < Toプロパティ名 ) // Fromの未入力を許容がチェックされている場合 OR ( Fromプロパティ is null AND Toプロパティの範囲条件 ) // Toの未入力を許容がチェックされている場合 OR ( Fromプロパティの範囲条件 AND Toプロパティ is null ) // 同値を許容がチェックされている場合 OR ( Fromプロパティ = 入力値 AND Toプロパティ = 入力値 )
NumericRangePropertyEditor
数値型のプロパティを二つ組合せ、範囲を入力・表示するプロパティエディタです。
検索条件エリアで利用する場合、条件を入力するフィールドを1つ表示します。条件を入力した場合、FromとToに対して範囲検索を行います。
編集画面で利用する場合、設定した2つのプロパティの入力欄が表示され、登録時に大小関係のチェックを行います。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
プロパティエディタ |
このプロパティ(From)のプロパティエディタを設定します。 プロパティの型にあわせたプロパティエディタを選択してください。 |
||
Fromの未入力を許容 |
検索条件、詳細・編集画面 |
|
|
Fromプロパティに対して値を含めて検索する |
検索条件 |
Fromに対しての範囲条件を指定します。 |
|
Toプロパティ名 |
このプロパティと組み合わせて表示する他のプロパティを指定します。
指定するプロパティはこのプロパティの型と合わせてください。 |
||
詳細検索でのToプロパティ表示名 |
検索条件 |
詳細検索時に検索項目のセレクトボックス内に表示するToプロパティの表示名を設定します。
Toプロパティの表示名が未設定の場合は、エンティティの |
|
Toプロパティエディタ |
検索結果、詳細・編集画面 |
Toプロパティのプロパティエディタを設定します。 プロパティの型にあわせたプロパティエディタを選択してください。 未指定の場合、Fromのプロパティエディタの設定が有効になります。 |
|
Toの未入力を許容 |
検索条件、詳細・編集画面 |
|
|
Toプロパティに対して値を含めて検索する |
検索条件 |
Toに対しての範囲条件を指定します。 |
|
同値を許容 |
検索条件、詳細・編集画面 |
|
|
エラーメッセージ |
詳細・編集画面 |
FromとToの大小関係が不正な場合に表示するエラーメッセージを設定します。 |
検索時の条件
DateRangePropertyEditorの検索時の条件と同等になります。
TemplatePropertyEditor
独自のテンプレートを入力部品として利用するためのプロパティエディタです。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
テンプレート名 |
表示時に読み込むテンプレートの名前を設定します。 |
UserPropertyEditor
createBy
や updateBy
等、Userエンティティの oid
(String)を持つプロパティに対して、
oid
に一致するユーザー名を表示させるためのプロパティエディタです。
検索条件ではユーザー名の部分検索条件として動作します。 検索結果、詳細画面、編集画面では、ユーザー名を表示します(読み取り専用)。
設定項目 | 利用箇所 | 表示タイプ | 設定内容 |
---|---|---|---|
表示タイプ |
画面に表示する方法を下記から選択します。
|
||
入力カスタムスタイル |
共通設定項目を参照してください。 編集画面では読取専用のため、spanタグに設定されます。 |
3.6. Viewの管理設定
Viewの管理設定は、検索一覧、詳細画面両方に関わる設定を行う画面です。
Viewの管理設定の表示
Viewの管理設定を行いたいエンティティを右クリックし、 Viewの管理設定を開く
を選択します。
Viewの管理設定の構成
Viewの管理設定は以下の構成になっています。
エンティティの検索一覧、詳細画面はレイアウトが未設定の場合、自動で生成し画面を表示します。 しかし、ロール毎に構成を変えたりする場合、複数のレイアウトを設定する必要があります。 そうした場合は自動生成が行えず、例えば標準的なレイアウトをそのまま使用するロールがあった場合、エンティティ定義のプロパティ設定に変更が加わると、合わせてレイアウトの修正が必要になります。
上記のような場合、この自動生成の管理機能を利用することで、特定のViewに対してのみ自動生成を行うように設定でき、標準的なレイアウトであれば個別に設定する手間を省くことができます。
Viewに対して AutoGenerate
をチェックすることで、標準的なレイアウトを自動生成するようになります。
Defined
にチェックがついてるViewは既にレイアウトの定義が保存されていますが、 AutoGenerate
をチェックした場合は定義を利用せず、自動生成を行います。
自動生成では name description と個別の定義プロパティを対象にします。
自動生成画面の対象プロパティとして oid や createDate などのシステム項目を対象としたい場合は、
GemConfigService の autoGenerateXXX で設定を行います。
|
Viewに対して許可ロールを指定すると、許可されたロール以外は画面表示時にエラーが発生します。 これを利用することで、特定のロールに見せたくない項目があるViewを意図せずに見られてしまう、というようなことを防止できます。
許可ロールを利用した権限制御を行いたい場合は、Action権限、WebApi権限に対して設定が必要になります。 詳細については GEM権限制御 を参照してください。 |
一覧にView(の名前)を追加します。 一覧に追加することで、存在しないViewに対しても自動生成の設定が行えるようになります。
選択中のViewを一覧から削除します。
削除が可能なのは Add
で追加した、レイアウトが未定義のViewのみです。
4. フィルタの管理
フィルタを設定する事でエンティティの検索補助を実現できます。
検索画面(条件部)のタブに 定型検索
タブが追加されます。
4.1. フィルタの表示
フィルタ設定を行いたいエンティティを右クリックし、 Filterを開く
を選択します。
4.2. フィルタの構成
フィルタは以下の構成になっています。
- フィルタアイテム一覧
-
青い枠の部分は検索画面に表示されるアイテムの一覧になります。
- フィルタアイテム設定
-
緑の枠の部分は各フィルタアイテムの設定になります。
- 実行結果
-
紫の部分はフィルタアイテム設定を元にEQLを実行した結果を表示します。 設定した内容が正しく動くか等の確認に利用できます。
4.3. フィルタアイテム設定
アイテムの追加
図の赤枠部分をクリックするとフィルタアイテム設定画面が表示されます。
項目 | 設定値 |
---|---|
名前 |
フィルタアイテムの名前 |
表示名 |
フィルタアイテムの表示名、検索画面の定型検索に表示される |
入力後、追加ボタンを押すことでフィルタアイテム一覧に追加されます。
アイテムの編集
フィルタアイテムの鉛筆マークをクリックすると、右側のエリアに設定内容が表示されます。
検索時に適用する条件を設定します。
項目 | 設定値 |
---|---|
WHERE |
フィルタ条件、WHERE句以降を設定 |
ORDER BY |
ソート条件 |
条件で設定された内容でEQLを実行します。 実行結果は画面下部の実行結果に表示されます。
フィルタアイテムの設定の変更内容を保存します。 保存せずに他のフィルタアイテムを編集すると、変更内容は失われますので注意してください。
全設定内容を保存します。 保存はフィルタアイテムの変更を確定させているだけなので、フィルタアイテムを保存した後は忘れずにSaveしてください。
5. カスタム処理の組み込み
5.1. カスタム検索処理
検索一覧や選択画面で、検索処理、ダウンロード処理の実行前後に独自の処理を組み込むことができます。
以下のインターフェースを実装したJavaクラスまたはUtilityClassを作成してください。 作成したクラスを検索一覧のEQLカスタム処理クラスに指定します。
org.iplass.mtp.view.generic.SearchQueryInterrupter
メソッド | 引数 | 戻り値 | 処理内容 |
---|---|---|---|
beforeSearch |
RequestContext |
SearchQueryContext |
検索前処理を行います。 |
SearchFormView |
|||
Query |
|||
SearchQueryType |
|||
afterSearch |
RequestContext |
List<ValidateError> |
検索後処理を行います。 afterSearchではEntity1レコード毎に処理が呼ばれます。 |
SearchFormView |
|||
Query |
|||
Entity |
|||
SearchQueryType |
SearchQueryInterrupter
上、beforeSearch
afterSearch
はデフォルト実装されています。
必要に応じてオーバーライドします。
例えば beforeSearch
では、クエリのカスタマイズ結果や検索時のオプションを設定したSearchQueryContextを返すように実装します。
import org.iplass.gem.command.Constants;
import org.iplass.mtp.command.RequestContext;
import org.iplass.mtp.entity.query.Query;
import org.iplass.mtp.view.generic.SearchFormView;
import org.iplass.mtp.view.generic.SearchQueryContext;
import org.iplass.mtp.view.generic.SearchQueryInterrupter;
public class SampleSearchQueryInterrupter implements SearchQueryInterrupter {
@Override
public SearchQueryContext beforeSearch(RequestContext request, SearchFormView view, Query query, SearchQueryType type) {
//Queryに対するカスタマイズ処理
query.getWhere().・・・・・
if (type == SearchQueryType.SEACH) {
//検索時のカスタマイズ
} else if (type == SearchQueryType.CSV) {
//CSVダウンロード時のカスタマイズ
if (Boolean.valueOf(request.getParam(Constants.FILE_IS_FOR_UPLOAD)) {
// Upload形式
} else {
// Upload形式以外
}
}
//SearchQueryContextを生成
SearchQueryContext context = new SearchQueryContext(query);
//特権実行する場合
context.setDoPrivileged(true);
//Entity権限における限定条件を適用せずに検索を実行する参照先名
//特権実行する場合は無視されます
context.setWithoutConditionReferenceName("ref1", "ref2");
return context;
}
}
beforeSearch内ではクエリをカスタマイズし、Selectの対象を追加やWhere句に条件を追加といったことができ、検索結果に反映することができます。
また、 org.iplass.mtp.entity.query.ASTTransformer
インターフェースを利用することで、クエリに設定されている式自体をカスタマイズすることも可能になります。
ASTTransformerはデザインパターンのVisitorパターンを利用してクエリを解析します。
以下は検索条件を取り出し、特定の項目に対する条件が指定されていた場合に値を書き換えるサンプルになります。 下記サンプルでは、ASTTransformerの実装クラスのASTTransformerSupportを継承した独自の無名クラスを作成し、特定のEQLの条件クラスが来た場合にクエリをカスタマイズしています。
Condition condition = query.getWhere().getCondition();
if (condition != null) {
condition.accept(new ASTTransformerSupport() {
@Override
public ASTNode visit(Equals equals) {
encriptName(equals);
return super.visit(equals);
}
@Override
public ASTNode visit(NotEquals notEquals) {
encriptName(notEquals);
return super.visit(notEquals);
}
@Override
public ASTNode visit(Greater greater) {
encriptName(greater);
return super.visit(greater);
}
@Override
public ASTNode visit(GreaterEqual greaterEqual) {
encriptName(greaterEqual);
return super.visit(greaterEqual);
}
@Override
public ASTNode visit(Lesser lesser) {
encriptName(lesser);
return super.visit(lesser);
}
@Override
public ASTNode visit(LesserEqual lesserEqual) {
encriptName(lesserEqual);
return super.visit(lesserEqual);
}
});
}
private void encriptName(ComparisonPredicate predicate) {
if (predicate.getPropertyName().equals("name")
&& predicate.getValue() != null
&& predicate.getValue() instanceof Literal) {
Literal literal = (Literal) predicate.getValue();
if (literal.getValue() instanceof String) {
String value = (String) literal.getValue();
predicate.setValue(new Literal(CipherUtil.encrypt(value)));
}
}
}
5.2. カスタムアップロード処理
検索画面でのアップロード時に独自の処理を組み込むことができます。
以下のインターフェースを実装したJavaクラスまたはUtilityClassを作成してください。
作成したクラスを検索条件設定の カスタムアップロード処理クラス名
に指定します。
org.iplass.mtp.view.generic.SearchFormCsvUploadInterrupter
メソッド | 引数 | 戻り値 | 処理内容 |
---|---|---|---|
dataMapping |
row(int) |
なし |
アップロードファイルから登録用のデータをマッピングします。 CsvRegistrationType で登録の種類を判断できます。
|
Entity |
|||
EntityDefinition |
|||
CsvRegistrationType |
|||
beforeRegister |
row(int) |
List<ValidateError> |
当該メソッド内に設定した処理内容が、Entityの登録・更新・削除前に実施されます。 |
Entity |
|||
EntityDefinition |
|||
CsvRegistrationType |
|||
afterRegister |
row(int) |
List<ValidateError> |
当該メソッド内に設定した処理内容が、Entityの登録・更新・削除後に実施されます。 |
Entity |
|||
EntityDefinition |
|||
CsvRegistrationType |
|||
insertOption |
InsertOption |
InsertOption |
新規登録時のInsertOptionを制御します。 標準の登録対象プロパティの判定は、アップロードファイルのヘッダ情報または検索条件設定の |
updateOption |
UpdateOption |
UpdateOption |
更新時のUpdateOptionを制御します。
標準の更新対象プロパティの判定は、アップロードファイルのヘッダ情報または検索条件設定の |
deleteOption |
DeleteOption |
DeleteOption |
削除時のDeleteOptionを制御します。 |
columnNameMap |
EntityDefinition |
Map<String, String> |
ヘッダ名をカスタマイズしたい場合に指定します。keyをプロパティ名、valueを出力列名としてマッピングを定義します。 nullを返す場合、またはMapに該当がない場合は、標準の形式で出力します。 |
sampleCsvData |
EntityDefinition |
List<Entity> |
サンプルファイルとして出力したいEntityデータを返します。引数で出力対象のプロパティが渡されます。nullを返す場合、プロパティ型に応じてランダムな値を出力します。 |
List<PropertyDefinition> |
カスタムアップロード処理の各メソッドは以下のように呼ばれます。
-
ファイルデータの1行分を読み込みます。
-
_useCtrl
フラグの有無、ユニークキー値と既存データの有無により、新規、更新、削除を判断します。 -
dataMapping
が実行され、処理対象のEntityが作成されます。 -
beforeRegister
が実行されます。 -
Entityを登録します。
- 新規の場合
-
insertOption
が実行されます。 - 更新の場合
-
updateOption
が実行されます。 - 削除の場合
-
deleteOption
が実行されます。
-
afterRegister
が実行されます。
beforeRegister
afterRegister
でValidateErrorを返した場合、
またはいずれかでエラーが発生した場合、ロールバックされます。
beforeRegister
でValidateErrorを返した場合にも登録処理は実行しませんが、
afterRegister
処理は呼び出します。
columnNameMap
を実装することで、ヘッダを変更することが可能です。
Upload形式のダウンロード、サンプルダウンロード、アップロード処理時に参照します。
import java.util.Map;
import java.util.stream.Collectors;
import org.iplass.mtp.entity.definition.EntityDefinition;
import org.iplass.mtp.view.generic.SearchFormCsvUploadInterrupter;
public class SampleSearchFormCsvUploadInterrupter implements SearchFormCsvUploadInterrupter {
@Override
public Map<String, String> columnNameMap(EntityDefinition definition) {
// 列名を表示名だけで出力する
return definition.getPropertyList().stream()
.collect(Collectors.toMap(
property -> property.getName(),
property -> property.getDisplayName()));
}
}
ヘッダをカスタマイズする場合は、検索条件の設定 の ダウンロード時表示名を出力しない をONにすることを検討してください。
|
5.3. カスタム登録処理
編集画面での登録・更新時に独自の処理を組み込むことができます。
以下のインターフェースを実装したJavaクラスまたはUtilityClassを作成してください。 作成したクラスを詳細画面のカスタム登録処理クラスに指定します。
org.iplass.mtp.view.generic.RegistrationInterrupter
メソッド | 引数 | 戻り値 | 処理内容 |
---|---|---|---|
dataMapping |
Entity |
なし |
新規登録用のデータにリクエストのデータをマッピングします。 |
RequestContext |
|||
EntityDefinition |
|||
FormView |
|||
isSpecifyAllProperties |
- |
boolean |
更新対象の範囲を制御します。
|
getAdditionalProperties |
- |
String[] |
更新対象のプロパティを指定します。
|
beforeRegister |
Entity |
List<ValidateError> |
当該メソッド内に設定した処理内容が、Entityの登録・更新前に実施されます。 |
RequestContext |
|||
EntityDefinition |
|||
FormView |
|||
RegistrationType |
|||
afterRegister |
Entity |
List<ValidateError> |
当該メソッド内に設定した処理内容が、Entityの登録・更新後に実施されます。 |
RequestContext |
|||
EntityDefinition |
|||
FormView |
|||
RegistrationType |
カスタム登録処理の各メソッドは以下のように呼ばれます。
-
カスタム登録処理のdataMappingが実行され、新規登録用のEntityが作成されます。
-
参照型のデータを登録します。
-
カスタム登録処理のbeforeRegisterが実行されます。
-
Entity(本データ)を登録します。
-
被参照の参照型のデータを登録します。
-
カスタム登録処理のafterRegisterが実行されます。
いずれかでエラーが発生した場合、ロールバックされます。
-
カスタム登録処理のdataMappingが実行され、更新用のEntityが作成されます。
-
参照型のデータを登録します。
-
カスタム登録処理のbeforeRegisterが実行されます。
-
Entity(本データ)を更新します。
- isSpecifyAllPropertiesがtrue
-
カスタム登録処理のgetAdditionalPropertiesで設定した戻り値のみを更新対象にする
- isSpecifyAllPropertiesがfalse
-
汎用登録処理が自動で設定した更新対象に、カスタム登録処理のgetAdditionalPropertiesの戻り値を追加する
-
被参照の参照型のデータを登録します。
-
カスタム登録処理のafterRegisterが実行されます。
いずれかでエラーが発生した場合、ロールバックされます。
5.4. カスタムロード処理
詳細表示、編集画面でEntityのロード時に独自の処理を組み込むことができます。
以下のインターフェースを実装したJavaクラスまたはUtilityClassを作成してください。 作成したクラスを詳細画面のカスタムロード処理クラスに指定します。
org.iplass.mtp.view.generic.LoadEntityInterrupter
メソッド | 引数 | 戻り値 | 処理内容 |
---|---|---|---|
beforeLoadEntity |
RequestContext |
LoadEntityContext |
ロード前処理を行います。 Entityの表示時(詳細画面、編集画面)、登録/更新後のデータ取得、登録/更新時の比較用元データ取得時に呼ばれます。 |
FormView |
|||
String |
|||
LoadOption |
|||
LoadType |
|||
afterLoadEntity |
RequestContext |
なし |
ロード後処理を行います。 |
FormView |
|||
Entity |
|||
LoadOption |
|||
LoadType |
|||
beforeLoadReference |
RequestContext |
LoadEntityContext |
参照プロパティに対するロード前処理を行います。 画面表示時(ネストテーブル、参照セクション)、多重度が1ではない被参照データの更新時(ネストテーブルのみ)に呼ばれます。 |
FormView |
|||
String |
|||
LoadOption |
|||
ReferenceProperty |
|||
Element |
|||
LoadType |
|||
afterLoadReference |
RequestContext |
なし |
参照プロパティに対するロード後処理を行います。 |
FormView |
|||
Entity |
|||
LoadOption |
|||
ReferenceProperty |
|||
Element |
|||
LoadType |
|||
beforeSearchMassReference |
RequestContext |
SearchQueryContext |
大量データ用参照セクションの検索前処理を行います。 大量データセクションはロードではなくQueryでの検索を行うため、SearchQueryContextを返します。 |
FormView |
|||
Query |
|||
ReferenceProperty |
|||
MassReferenceSection |
|||
OutputType |
|||
afterSearchMassReference |
RequestContext |
なし |
大量データ用参照セクションの検索後処理を行います。 検索されたEntity1レコード毎に処理が呼ばれます。 |
FormView |
|||
Query |
|||
ReferenceProperty |
|||
MassReferenceSection |
|||
Entity |
|||
OutputType |
5.5. カスタム一括処理
一括削除処理、一括更新画面で複数のEntityに対する一括操作時に独自の処理を組み込むことができます。
以下のインターフェースを実装したJavaクラスまたはUtilityClassを作成してください。 作成したクラスをカスタム一括削除処理クラス、またはカスタム一括更新処理クラスに指定します。
org.iplass.mtp.view.generic.BulkOperationInterrupter
メソッド | 引数 | 戻り値 | 処理内容 |
---|---|---|---|
beforeOperation |
List<Entity> |
BulkOperationContext |
複数のEntityに対する一括操作前の処理を行います。
戻り値
|
RequestContext |
|||
EntityDefinition |
|||
FormView |
|||
BulkOperationType |
|||
afterOperation |
List<Entity> |
なし |
複数のEntityに対する一括操作後の処理を行います。 |
RequestContext |
|||
EntityDefinition |
|||
FormView |
|||
BulkOperationType |