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

Visualforce ページからのフロー変数値の設定

フローを Visualforce ページに埋め込むと、<apex:param> コンポーネントを使用して、変数、sObject 変数、コレクション変数、および sObject コレクション変数の初期値を設定できます。

インタビューの開始では変数の設定のみを行うことができます。<apex:param> タグはフローが起動されるときに一度のみ評価されます。

入力アクセスを許可する変数のみを設定できます。それぞれのフロー変数では、入力アクセスは次の項目によって制御されます。 入力アクセスを許可しない変数では、変数の設定の試行は無視され、Visualforce ページ、その <apex:page> コンポーネント、または Apex クラスのコンパイルが失敗する可能性があります。
  • Cloud Flow Designer の [入力/出力種別] 変数項目
  • Metadata API の FlowVariable の isInput 項目

メモ

次の表に、Visualforce を使用して、フローの変数、sObject 変数、および sObject コレクション変数値を設定できる方法を示します。

コントローラを使用しない変数値の設定

この例では、インタビューの開始時に myVariable を値 01010101 に設定します。

標準コントローラを使用した変数値の設定

標準 Visualforce コントローラでレコードのデータを渡して変数または sObject 変数を設定できます。この例では、インタビューの開始時に myVariable の初期値を Visualforce 式 {!account} に設定します。

標準リストコントローラを使用した sObject コレクション変数値の設定

sObject コレクション変数は値の配列を表すため、標準リストコントローラまたはカスタム Apex コントローラを使用する必要があります。この例では、インタビューの開始時に myCollection を {!accounts} の値に設定します。

カスタム Apex コントローラを使用した変数値の設定

標準コントローラよりも詳細に Visualforce ページを制御する必要がある場合、変数値を設定するカスタム Apex コントローラを作成し、Visualforce ページでそのコントローラを参照します。この例では、インタビューの開始時に Apex を使用して myVariable を特定の取引先の ID に設定します。

この例では、Apex を使用して、sObject コレクション変数 myAccount を Name が Acme のすべてのレコードの Id および Name 項目値に設定します。

インタビューマップを使用した変数値の設定

この例では、インタビューの開始時にインタビューマップを使用して accVar の値を特定の取引先の ID に設定します。

インタビューの開始時に accVar の値を新規取引先に設定する同様の例を次に示します。

次の例では、対応付けを使用して文字列コレクション変数 (stringCollVar) と数値コレクション変数 (numberCollVar) にそれぞれ 2 つの値を追加します。