getRFValues( )

繰返しフォーム・インスタンス上の指定されたアイテムの現在の値を取得します。

構文

繰返しフォーム・インスタンスから単一の値のみをフェッチする場合は、getQuestionValue( )も考慮してください。

注意:

これは集計関数であり、ターゲットが繰返しフォームにある場合に、各フォーム・インスタンスに対してルールが実行されます。

getRFValues(formInstance, ['var1', 'var2', 'varN'] )

パラメータ

formInstance

値を取得するフォームのインスタンス番号です。このパラメータは、JavaScript変数にすることも、数値にすることもできます。

var1, var2, varN
取得する品目変数値。

ノート:

この関数に渡された変数は、ルール式内の他の場所でも再使用できますが、一重引用符を使用して変数をパラメータとして追加する必要があります。

戻り値

次の値を使用して、(param2で渡されたものと同じ名前の)変数を含むJSONオブジェクトを返します:

  • 返される変数値は、変数が部分日付の場合にC1Dateオブジェクトになり、変数値が完全日付の場合に日付オブジェクトになります。これは、次に示すように、isPartialDate( )関数を使用して確認できます。
  • 変数が選択コントロール(チェックボックス、ラジオ・ボタンまたはドロップダウン)である場合、返される変数はJSON形式("[{\"value":\"3\",\"label\":\"TestLabel\"}]")になります。これは、JSON.parseまたはparseChoice( )を使用して解析できます。
    • parseChoice(rfData.v4_chk4))
    • JSON.parse(rfDate.v4_chk4))
  • 戻りオブジェクトのプロパティ名は'exists'で、渡された変数のいずれかが繰返しフォーム・インスタンス番号で渡された値を持つ場合、trueを返します。

例3-59 AEフォーム・インスタンス#1の3つの項目変数の値を取得し、それらをテキスト項目に配置する

varrfData = getRFValues(1, ['aeTerm','aeDate','aeSerious'] );
if(rfData.exists){
    returnrfData.aeTerm + "  | "  + rfData.aeDate.getFullYear() + " | "+ JSON.parse(rfData.aeSerious)[0].label;
} else{
    return;
}   


// It is best practice to check if the variable has value before using it
varrfData = getRFValues(1, ["aeTerm","aeDate"] );
if(rfData.exists && rfData.aeTerm && rfData.aeDate){
    returnrfData.aeTerm + "  | "  + rfData.aeDate.getFullYear() ;
} else{
    return;
}