サポート > チュートリアル > 「顧客管理データベース」の事例 (II) > 参照連動

参照連動の定義

ここまで、あるストアモデルをコンボボックスやチェックボックス、検索画面で参照を行う方式を紹介しました。
Wagbyではさらに、あるストアモデル参照項目を軸に、関連するその他の項目を自動的に参照させるという設定を行うことができます。

前節と同様、「顧客」モデルと「営業日報」モデルを例に取ります。
図23で示すように、営業日報モデルで顧客会社名を参照すると、それに関連する最新の「顧客名称」が自動的にセットされます。


図23 参照連動の動作イメージ

では、Wagby定義ファイルを見てみましょう。 前節までの説明を参考に「営業日報」モデルで定義した「顧客会社名」の後に1行挿入し、項目「顧客担当者」を追加します。

「顧客担当者(name)」の項目の型には、顧客モデルの「顧客名称(customername)」を表示するように 「他のストアモデルの参照連動」を選択します。 「参照モデル」欄には「customer」を記述します。


図24 他のストアモデルの参照連動を設定する

さらに、顧客担当者のモデル項目定義シートで表示する項目を指定します。 顧客担当者のセルを選択し、「詳細表示」ボタンをクリックし、モデル項目定義シートを開きます。


図25 モデル項目定義シートを開く

「詳細表示」ボタンをクリックすると、次のようなダイアログが表示されます。


図26 確認ダイアログ

「別モデル参照の詳細」の項目で「参照連動の条件と項目名」で「連動する項目名」を選択し、「company」を入力します。 この設定は、「顧客会社名(company)」変更時に連動して変更される、ということになります。

「参照モデルの内容」には顧客モデルの顧客名称を表示させたいので「customername」を入力します。


図27 顧客担当者の詳細定義

指定が終わりましたら、モデル定義シートに戻ります。

ビルドと実行

モデル定義ファイルを保存する前に、忘れず「チェック」を行ってください。 エラーがなければ次のようなダイアログが表示されます。


図28 チェック後のメッセージ

モデル定義ファイルを保存後、Wagby ビルダでビルドを行います。 「定義ファイルの変換」「ビルド処理」の順に実行してください。


図29 Wagby ビルダでビルドを行う

ビルドが終了したら「アプリケーションの起動」を実行します。 カスタマイズされた画面を確認してみましょう。

先に顧客データを登録しておきます。ここでは2件登録しておきました。


図30 顧客データの登録を行う

その後、営業日報モデルの新規登録画面において、コンボボックスで顧客会社名を選択することができます。
コンボボックス変更時、選択した顧客会社名に関連する最新の顧客担当者(顧客名称)が自動的にセットされるようになりました。


図31 コンボボックスを変更すると、関連する顧客担当者がセットされる

参照連動は、Ajax と呼ばれる技術を用いて実現されています。そのため、画面全体の再描画を行うことなく、スムーズな値の変更を実現しています。

項目の型が「他のストアモデルの参照連動」のとき、検索条件には指定できません。

参照連動を行う項目は、参照したいモデルの項目名と同じでなくとも設定できます。