連携に関する設定
最終更新日: 2022年5月24日
R8 | R9
親モデル詳細画面での子モデルは標準ではタブに格納されます。子モデルをタブではなく、縦に並べて表示させることもできます。
詳細は「一つの親に複数の子を紐づける > 子モデル表示レイアウトの変更(タブ表示と一覧表示)」をお読みください。
「顧客」モデルに外部キーで連携するモデル、「サポート」の一覧表示部分のタイトルをリンクにすることができます。
リンクをクリックすると、「サポート」の検索・一覧表示画面に遷移します。
本設定は、下記の条件をすべて満たしている必要があります。
子モデルの一覧表示名を「顧客別サポート履歴一覧」に変更した例です。
サポートモデルの「検索・一覧表示 > 外部キー連携 > 一覧名」を設定します。
子モデルの一覧表示件数を最大1件と設定した例を示します。
表示されなかったデータは、サポートモデルの検索画面で確認することができます。
サポートモデルの「検索・一覧表示 > 外部キー連携 > 最大表示件数」を設定します。この例では1としています。
この設定は表示数を減らしますが、データベースアクセス数を削減するものではありません。例えば1つの親に1000件の子が紐づく場合、最大表示件数を10としてもデータベースからは1000件取得します。親の方で、子モデルのデータ全体を使った計算式を使う場合には子モデル全データの取得が必要なためです。
図8に対して、説明文を加えた例です。
サポートモデルの「検索・一覧表示>外部キー連携>説明文」を設定します。同時に、スタイルを指定することもできます。
外部キー連携における子モデルの作成は、親モデルの詳細表示画面に表示される「新規作成」ボタンを用いることができます。このボタンを表示しない方法を説明します。
サポートモデルの「新規登録>外部キー連携>親モデルの詳細表示画面に表示する新規登録ボタン」を無効にします。(標準では有効になっています。)
ボタン名や表示条件を設定することもできます。詳細は「画面機能 > ボタン名と表示条件のカスタマイズ」をお読みください。
子モデルの詳細画面に用意される、親モデルへの一覧表示・詳細画面へ遷移するボタンを表示しないようにすることができます。
サポートモデルの「詳細表示 > 外部キー連携 > 親モデルの一覧表示ボタン」および「詳細表示 > 外部キー連携 > 親モデルの詳細表示ボタン」を無効にします。(標準では有効になっています)
ボタン名や表示条件を設定することもできます。詳細は「画面機能>ボタン名と表示条件のカスタマイズ」をお読みください。
図14の設定(「新規作成」ボタンの非表示)に加え、子モデル一覧表示も行わないように設定することもできます。図17のように、親子モデル関係の存在が画面上からは認識できません。
サポートモデルの「検索・一覧表示>外部キー連携>親モデルの詳細表示画面に表示するデータ一覧」の「表示する」設定を解除します。
ボタン名や表示条件を設定することもできます。詳細は「画面機能>ボタン名と表示条件のカスタマイズ」をお読みください。
親モデルの値によって、子モデルの表示を制御することができます。例えば、親モデルの項目 item1 の値が 1 のときのみ子モデルを表示する場合は、子モデルの "検索・一覧表示 > 外部キー連携 > 表示条件" を次のように設定します。
この設定を応用することで、子モデルのデータが未登録(データ数が0件)の場合に、親画面の詳細画面に子モデルのタイトルを表示しないように設定することができます。
例えば、子モデルのモデルIDが「support」のとき、子モデルの "検索・一覧表示 > 外部キー連携 > 表示条件" を次のように設定します。
外部キー関係では、親モデルのデータを削除したとき、子のモデルも同時に削除されます。
ここでサポートモデルの確認を行います。 子モデル(サポート)も削除されていることがわかります。
「画面 > その他 > モデルの関連性 > 親モデルの削除時に自動的に削除する」を確認します。標準では有効になっています。
親-子-孫という関係では、親を削除したときにそれに紐付くすべての子孫が削除されます。
子モデルの登録・更新・削除のタイミングで、親モデル側の項目値の再計算と再保存処理を行わせることができます。
子モデルとなるサポートの件数を、親モデルである顧客で管理した例です。
サポートを追加すると、「サポート件数」の値も増加します。
この設定は、親がさらに数珠つなぎとなっている場合、先祖まで遡って再計算します。
子モデル単体での登録・更新時は、本処理は行われません。例えば子モデルをメール受信により登録するような場合、親モデルの再計算は行われません。
親モデルの登録・更新・削除のタイミングで、子モデル側の項目値の再計算と再保存処理を行わせることができます。
次の条件が成立した場合に、子の再計算機能が有効になります。
子モデル表示のレイアウト
一覧のタイトルをリンクにする
例
「顧客ID」が自動的にセットされており、「顧客」の詳細表示画面で確認していたデータと紐づく子モデルデータ一覧を確認できます。
定義方法
「データベースの詳細 > 登録時に値をデータベースに保存する」を有効にします。
(タブレイアウトの場合、動作しません)
設定上の注意
(外部キーが文字列型の場合、標準で「条件式」設定が「文字列の部分一致」となります。この場合も「等しい」に変更してください)
子モデル一覧名を変更する
例
定義方法
一覧データの表示件数を制限する
例
定義方法
仕様
説明文を表示する
例
定義方法
ボタンの表示を制御する
子モデル新規作成ボタン
例
定義方法
親モデル一覧表示・詳細表示ボタン
例
定義方法
親モデルの画面に子モデルのデータ一覧を表示しない
例
定義方法
条件によって子モデルを表示する
${item1}==1
[応用] 子モデルのデータが存在しないとき、タイトルを表示しない
COUNT(${support_lp})!=0
削除レベルの指定
例
親モデル「顧客」を削除する例を示します。
定義方法
この設定を解除すると、親モデルのデータを削除しても子モデルは残ります。ただし、このときは紐づく親のデータは存在しない状態になります。
ワンポイント
再計算の指定(親)
例
この登録・更新・削除のタイミングで、親モデル側の項目値の再計算と再保存処理が行われます。
定義方法
「値をデータベースに保存する」を有効とし、自動計算式はCOUNT関数を用います。
COUNT(${support_lp})
ワンポイント
なお、親に紐づく当該子データの「兄弟」データは再計算の対象となりません。
注意
再計算の指定(子)