(9)-b. ルックアップ

通常ルックアップは、参照オブジェクトからデータを取得した結果、オブジェクトのID(Name)項目を画面に表示されます。

カスタムルックアップではID(Name)だけではなく、他の項目値を取得することができる機能です。
ルックアップにて値を取得した直後に、設定した項目を自動で取得・設定します。値の取得先は入力項目、表示項目どちらも設定可能です。
また値を取得処理中は、「保存」ボタン等の処理が実行できないようにボタンを押下できないような状態になります。

   【取得前(Visualforce)画面】       【取得後(Visualforce)画面】
 


【ルックアップ設定(Studio)画面】
 

ルックアップ取得のルックアップにて値の引き込みを設定している参照項目が画面内に一つでもある場合、
Salesforce標準の「ルックアップオートコンプリート」による「最近使ったデータ」の候補リストが表示されなくなります。
 

項目

説明

テストID

Salesforce組織に当ページをデプロイする際に実行されるApexクラスのテスト実行時には
テスト用データを一時的に自動生成しますが、入力規則等によりテスト用データが生成できない場合に当IDを使用します。
特別な理由がない限りテストIDへの指定は不要です。
デプロイ時のApexクラステスト動作内容を以下に示します。

【テストID設定時動作】
 設定されたテストIDのレコードでテストを実行。
【テストID未設定時動作】
  レコードを自動生成し、生成したレコードでテスト実行。
 入力規則等によりレコード生成が出来ない場合、存在するレコードを1件取得し、その取得したレコードでテストを実行。

参照先項目 - 画面表示項目

参照先項目(ルックアップ対象オブジェクト)と画面に表示する入力項目をマウスのドラッグ&ドロップで紐づけます。
項目の型が同じもののみ紐づけ可能。


【読取専用ルックアップ項目】

ルックアップ機能は、ルックアップ項目に値が入力、又は設定される自動的にマスターデータを取得する仕組みなため、
誤ったデータをルックアップ項目に入力しても処理自体は実行されてしまいます。
不要な処理を実行させない方法として、ルックアップ項目のプロパティ「読取専用」にチェックをすることでルックアップ項目を読取専用にすることができます。

読取専用になったルックアップ項目には アイコンが表示されます。

【Visualforce画面】

ルックアップ項目に対して編集が不可となります。値を削除す場合は アイコンをクリックすることでセットされた値を削除することができます。
アイコンをクリックによって値を削除すると、該当のルックアップ項目値だけでなくルックアップ機能で取得した項目の値も同時に削除されます。