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

Interview クラス

Flow.Interview クラスは、フローへの高度な Visualforce コントローラアクセスとフローを起動する機能を提供します。

名前空間

Flow

使用方法

Flow.Interview クラスは、Visual Workflow とともに使用されます。このクラスでメソッドを使用して、自動起動フローを呼び出したり、Visualforce コントローラを有効にしてフロー変数にアクセスしたりします。

次のサンプルでは、getVariableValue メソッドを使用して Visualforce ページに埋め込まれたフローからブレッドクラム (ナビゲーション) 情報を取得します。そのフローにサブフロー要素が含まれ、参照される各フローにも vaBreadCrumb 変数が含まれる場合、どのフローでインタビューが実行されているかに関わらず、すべてのフローのブレッドクラムを Visualforce ページから取得できます。
1swfobject.registerObject("clippy.flow_getVariableValue_codesample", "9");public class SampleController {
2
3   //Instance of the flow
4   public Flow.Interview.Flow_Template_Gallery myFlow {get; set;}
5
6   public String getBreadCrumb() {
7      String aBreadCrumb;
8      if (myFlow==null) { return 'Home';}
9      else aBreadCrumb = (String) myFlow.getVariableValue('vaBreadCrumb');
10
11      return(aBreadCrumb==null ? 'Home': aBreadCrumb);
12
13   }
14}
15

次のサンプルコントローラでは、フローと対応する Visualforce ページを開始します。Visualforce ページには、入力ボックスと開始ボタンが含まれます。ユーザが入力ボックスに数値を入力し、[開始] をクリックすると、コントローラの start メソッドがコールされます。このコールにより、ユーザが入力した値がフローの input 変数に保存され、start メソッドを使用してフローが起動されます。フローでは input の値を 2 倍にして output 変数に割り当てます。getVariableValue メソッドを使用して出力ラベルには output の値が表示されます。

1swfobject.registerObject("clippy.codeblock-1", "9");public class FlowController {
2
3   //Instance of the Flow
4   public Flow.Interview.doubler myFlow {get; set;}
5   public Double value {get; set;}
6
7   public Double getOutput() {
8      if (myFlow == null) return null;
9      return (Double)(myFlow.getVariableValue('v1'));
10   }
11
12   public void start() {
13      Map<String, Object> myMap = new Map<String, Object>();
14      myMap.put('v1', input);
15      myFlow = new Flow.Interview.doubler(myMap);
16      myFlow.start();
17   }
18}

次は、サンプルのフローコントローラを使用するVisualforce ページです。

1swfobject.registerObject("clippy.codeblock-2", "9");<apex:page controller="FlowController">
2    <apex:outputLabel id="text">v1 = {!output}</apex:outputLabel>
3
4    <apex:form >
5        value : <apex:inputText value="{!output}"/>
6        <apex:commandButton action="{!start}" value="Start" reRender="text"/>
7    </apex:form>
8</apex:page>

Interview メソッド

Interview のインスタンスメソッドを次に示します。

getVariableValue(String)

指定されたフロー変数の値を返します。フロー変数は、Visualforce ページに埋め込まれたフロー内、またはサブフロー要素によってコールされる個別のフロー内にあります。

署名

public Object getVariableValue(String variableName)

パラメータ

variableName
型: String
フロー変数の一意の名前を指定します。

戻り値

型: Object

使用方法

変数値は、これらのうちインタビューが現在実行されているフローから返されます。指定された変数がフロー内に見つからない場合、メソッドは null を返します。

このメソッドは、コンパイル時ではなく実行時にのみ変数の存在を確認します。

start()

自動起動フローを呼び出します。

署名

public Void start()

戻り値

型: Void

使用方法

このメソッドは、自動起動フローでのみ使用できます。自動起動フローは、プロセス、フロートリ��ワークフローアクション、Apex interview.start メソッドなどからユーザの操作なしで起動できるフローです。自動起動フローは、一括かつユーザ操作なしで実行できなければならないため、有効なフローバージョン (有効なバージョンがない場合は最新のフローバージョン) に、ステップ、画面、選択肢、動的選択肢を含めることができません。