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

Visualforce ページへのフローの埋め込み

フローのデザインをカスタマイズするか、機能を強化するには、Visualforce ページにコンポーネントとして埋め込むことができます。組織のサイトとポータルでフローが有効になっている場合、Force.com サイト、カスタマーポータル、またはパートナーポータルのユーザにフローを提供できます。

ユーザは、アクティブなバージョンを含むフローしか実行できません。埋め込んだフローにアクティブなバージョンが含まれていない場合は、エラーメッセージが表示されます。埋め込んだフローにサブフロー要素がある場合、サブフロー要素から参照およびコールされるフローは有効バージョンである必要があります。

メモ

フローを Visualforce ページに追加するには、次のように <flow:interview> コンポーネントを使用してフローを埋め込みます。
  1. フローの一意の名前を検索します。
    1. フローリストのページに移動します。[設定] で、[作成] | [ワークフローと承認申請] | [フロー] をクリックします。
    2. 埋め込むフローの名前をクリックします。
  2. 新しい Visualforce ページを定義するか、編集するページを開きます。
  3. <apex:page> タグ間の任意の場所に <flow:interview> コンポーネントを追加します。
  4. name 属性をフローの一意の名前に設定します。次に例を示します。
    1<apex:page>
    2<flow:interview name="MyUniqueFlowName"/>
    3</apex:page>

    管理パッケージのフローである場合、name 属性は namespace.flowuniquename の形式で指定する必要があります。

    メモ

  5. フローを含む Visualforce ページのページセキュリティを設定することで、フローを実行できるユーザを制限します。

    フローを含む Visualforce ページがサイトまたはポータルに外部的に配信される場合、Visualforce ページへのアクセスを持つユーザは埋め込まれているフローを実行できます。

    カスタム Web タブ、リンク、またはボタンを使用して、フローを含む Visualforce ページを組織内のユーザに提供する場合は、ユーザにそのページへのアクセス権がある必要があります。また、「フローを実行」権限、またはユーザ詳細ページで [Force.com Flow ユーザ] 項目が有効化されている必要があります。

  6. フローの完了動作を設定することにより、フロー画面の [完了] をユーザがクリックすると実行される処理を指定します。

フローの変数値の設定

この例では、カスタマーサポートエージェントがケースを作成してモデムの問題をトラブルシューティングできるようにする、単純なフローを作成します。<apex:param> コンポーネントを使用してフローを開始するときに変数の値を設定できます。この例では、フローの読み込み時に vaCaseNumber というケース番号変数を初期値の 01212212 に設定するために、次のマークアップを使用します。
1<apex:page>
2    <flow:interview name="ModemTroubleShooting">
3        <apex:param name="vaCaseNumber" value="01212212"/>
4    </flow:interview>
5</apex:page>
また、標準 Visualforce コントローラを活用して変数を設定することもできます。たとえば、Visualforce ページが standardCase コントローラを使用している場合、標準コントローラからデータを渡すようにページの機能を強化できます。
1<apex:page standardController="Case" tabStyle="Case" >
2    <flow:interview name="ModemTroubleShooting">
3        <apex:param name="vaCaseNumber" value="{!Case.CaseNumber}"/>
4    </flow:interview>
5</apex:page>

変数値のその他の設定例については、Visualforce ページからのフロー変数値の設定を参照してください。Visualforce ページで表示するフローの変数値の取得については、Visualforce ページへのフロー変数値の取得を参照してください。

finishLocation 属性の設定

モデムのトラブルシューティングの例に基づいて、ユーザがフローの終わりにある [完了] ボタンをクリックしたときに Salesforce ホームページにリダイレクトされるように finishLocation 属性を設定することもできます。
1<apex:page standardController="Case" tabStyle="Case" >
2    <flow:interview name="ModemTroubleShooting" finishLocation="{!URLFOR('/home/home.jsp')}">
3        <apex:param name="vaCaseNumber" value="{!case.CaseNumber}"/>
4    </flow:interview>
5</apex:page>

finishLocation のその他の設定例については、フローの finishLocation 属性の設定を参照してください。