この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Visualforce による項目値の表示

Visualforce ページでは、数式と同じ式の言語を使用します。つまり、{! } 内のすべてが、現在コンテキストにあるレコードから得られる値にアクセスできる式として評価されます。たとえば、{!$User.FirstName} 式をページに追加すると、現在のユーザの「名」を表示できます。

$User は、現在のユーザレコードを常に表すグローバル変数です。すべてのグローバル変数は、$ 記号で参照されます。Visualforce で使用できるグローバル変数のリストについては、「グローバル変数」を参照してください。

特定の取引先、取引先責任者、またはカスタムオブジェクトレコードなど、グローバルに使用できるようになっていないレコードの項目にアクセスするには、ページをコントローラに関連付ける必要があります。コントローラを使用すると、特定のオブジェクトのレコードにアクセスする方法を指定するロジックなど、アプリケーションを実行するためのデータやビジネスロジックをページで使用できます。ページのカスタムコントローラは Apex を使用して定義できますが、Salesforce には、すべての標準およびカスタムオブジェクトに使用できる標準コントローラが含まれています。

たとえば、取引先に対して標準コントローラを使用するには、<apex:page> タグに standardController 属性を追加し、取引先オブジェクトの名前を割り当てます。

ページを保存したら、ページの [取引先] タブが強調表示され、ページのコンポーネントのデザインが [取引先] タブに適用されます。さらに、{!account.<fieldName>} 式の構文を使用して、現在コンテキストにある取引先レコードの項目にアクセスできるようになります。

たとえば、取引先の名前をページに表示するには、ページのマークアップで {!account.name} を使用します。

{!account.name} 式は、標準取引先コントローラの getAccount() メソッドにコールし、現在コンテキストにある取引先のレコード ID を返します。その後、ドット表記を使用してそのレコードの name 項目にアクセスします。

ページを保存すると、<apex:inputField><apex:inputText> など、すべての入力コンポーネントの value 属性について、文字テキストや空白を含まない単一式であり、単一のコントローラメソッドまたはオブジェクトプロパティへの有効な参照であるかどうかが検証されます。エラーが発生するとページを保存できません。

メモ

取引先レコードを現在のコンテキストに取り込むには、レコードの ID を指定するページ URL にクエリパラメータを追加する必要があります。手順は、次のとおりです。
  1. 任意の方法で、取引先の ID を検索します。そのための簡単な方法として、取引先レコードの詳細ページを表示し、URL の最後にある文字コードをコピーするやり方があります。たとえば、次の URL で取引先詳細ページに移動するとします。

    この場合、001D000000IRt53 が取引先の ID になります。

  2. ページに戻り、ブラウザのアドレスバーの URL にクエリ文字列パラメータとして取引先 ID を追加します。たとえば、ページが次の場所にあったとします。

    URL の最後に ?id=001D000000IRt53 を追加します。

URL に id パラメータを使用する場合、そのパラメータは、標準コントローラで参照されるエンティティと同じエンティティを参照する必要があります。

メモ

取引先 ID を URL に指定したら、次の図のようにページに適切な取引先名が表示されます。

Visualforce ページの取引先データの表示 コードウィンドウに「standardController=&#34;Account&#34;」が表示された Apex ページエディタ。ページビューには、取引先 Global Media の値が表示されます。