ルックアップ

最終更新日: 2022年6月24日

動作例

「顧客モデル」と「サポートモデル」を例に説明します。サポートモデルで「顧客名」を参照すると、それに関連する最新の「顧客会社名」が同時に表示されます。これをルックアップと呼びます。ルックアップより常に関連する最新のデータを表示することができます。

関連項目を自動的に表示する

標準UI

図2にルックアップを設定したサポートモデルの新規登録画面を紹介します。
「検索画面を開く」ボタンから、顧客名を確定させます。(この詳細は「他モデルの参照>検索画面」をお読みください。

サポート新規登録画面

顧客を選択します。

顧客を選択する。

顧客を確定させると顧客会社名が自動設定されます。顧客会社名はルックアップ型として設定しています。

顧客を確定させると顧客会社名が自動設定される(ルックアップ)

詳細表示画面では自動的にルックアップが適用されます。

詳細表示画面でルックアップが適用される

一覧表示項目にもルックアップを適用できます。

一覧表示項目にルックアップを適用する

複数の項目を一度にルックアップする

一つの連動元項目(この例では「顧客名」項目)から紐づく、複数の項目をルックアップさせることができます。

複数項目をルックアップする

参照元項目の変更はリアルタイムで反映される

登録・更新画面では、連動元項目を変更すると、リアルタイムでルックアップされる内容も書き換わります。

ルックアップ項目はリアルタイムで書き換わる

設定方法

連動元の設定

サポートモデルの「顧客名」項目を連動元とします。連動元は「他モデルの項目参照 - 検索画面」としてください。

サポートモデルの顧客名

「顧客名」の参照先は顧客モデルです。

参照先モデルを指定する

入力タイプを「検索画面」とします。参照先モデル項目を「顧客名称」とします。

入力タイプ、参照先モデル項目の指定

ルックアップ項目の設定

「顧客会社名」項目を用意します。型は「他モデルの項目参照」です。参照先モデルは、連動元項目と同じ「顧客」とします。

顧客会社名を用意する

ワンポイント

参照先モデルは、連動元項目と同じである必要があります。

入力タイプを「ルックアップ」とします。

入力タイプを「ルックアップ」とする

連動する項目名「顧客名」が決まると、参照先モデル項目名「会社名称」が定まる、とします。

連動する項目名を指定する

項目一覧の設定では、マウスをあてると設定内容が表示されます。

ルックアップ設定の確認

このように複数の項目をルックアップとして設定することができます。

複数の項目をルックアップする

ワンポイント

このようにモデルには「データベースに保持される情報」だけでなく「画面に表示される情報」も含めることができます。

ルックアップ項目で検索する

ルックアップ項目を検索条件とすることができます。ここでは顧客会社名で検索した例を示します。

標準UI

ルックアップ項目で検索する(標準UI)

出力フォーマットの指定

ルックアップ項目の出力フォーマットは、個別に指定します。参照先項目の出力フォーマットの設定は反映されません。

例えば数値型項目をルックアップしたとき、参照先項目に出力フォーマット "###,###,###" が設定されていた場合、ルックアップ項目でも同じように設定してください。

ワンポイント

参照先項目の出力ルールとは独立して、ルックアップ項目の出力ルールを定めることができます。

仕様

設計上の留意点

  • 参照元項目(上記例ではサポートモデルの顧客名)が "DB保存なし" の場合、ルックアップは機能しません。
  • ルックアップ型項目に、次の設定を行うことはできません。
    • 参照元項目(上記例ではサポートモデルの顧客名)が対応している型は次の通りです。
      • 項目の型が「参照先モデルの項目参照(リストボックス)」
      • 項目の型が「参照先モデルの項目参照(ラジオボタン)」
      • 項目の型が「参照先モデルの項目参照(検索画面)」
      • 外部キー項目
      ※ 項目の型が「参照先モデルの項目参照(チェックボックス)」を参照元にすることはできません。

データベースに保存されない

標準では、ルックアップ項目はデータベースに保存されません。

ルックアップを設定すると、データベース保存設定は自動的に解除されます。表示のタイミングで、データベースから最新の値を取得します。

※ データベース保存設定を有効にすることもできます。この場合は「自モデル」に(ルックアップされた値が)保存されます。[後述]

自動的に読み込み専用になる

ルックアップ項目は自動的に「読み込み専用」となります。

ルックアップの数珠つなぎ

リストボックスの参照先がリストボックスというのは動作しませんが、ルックアップは例外です。次の設定は動作します。

他モデルの参照(リストボックス) > ルックアップ > 通常項目
※ リストボックス以外にも、ラジオボタン、チェックボックス、検索画面いずれも動作します。
※ ルックアップの参照先がルックアップのケースでも動作します。例) 他モデルの参照(リストボックス) > ルックアップ > ルックアップ > ルックアップ > 通常項目 ルックアップは何回繰り返しても動作するようになっています。

検索時の動作

ルックアップが数珠つなぎになっている場合でも、検索することができます。例を示します。

ルックアップ > ルックアップ > ルックアップ > 文字列型項目
ルックアップ > ルックアップ > モデル参照(検索画面)

自モデルに保存する

ルックアップ項目をデータベースに保存する設定を行うこともできます。
ルックアップ項目「顧客会社名」をサポートモデルで保存可能とした例です。ルックアップされた値を修正して保存することができます。

サポートモデルの顧客名
修正して保存する

ワンポイント

入力可能となった「顧客会社名」を修正後、再び別の顧客を参照すると、顧客会社名は再びルックアップされます。上の例では、別の顧客 "佐藤" を選択し直すと、顧客会社名は "佐藤" 氏の会社名へ変更されます。

設定方法

サポートモデルの「顧客会社名」項目の詳細定義ダイアログを開きます。「詳細>データベースの詳細」で、「値をデータベースに保存する」を有効とします。

ルックアップ項目の設定
ルックアップ項目の値をデータベースに保存する

また、入力できるようにするため、読み込み専用の設定を解除します。

読み込み専用設定を解除する

データベースとの関係

保存後の値は、顧客モデルの顧客会社名と切り離されて管理されます。その後、顧客モデルの変更が発生した場合でも、サポートモデル側に反映されることはありません。

自モデル格納のイメージ