getRFValues( )

检索重复表单实例上指定项的当前值。

语法

这是一个聚合函数,如果目标在重复表单上,则将为每个表单实例运行规则。

如果您希望仅从重复表单实例中提取单个值,还可以考虑 getQuestionValue( )

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

参数

注意:

允许在规则表达式的其他位置重复使用传递给此函数的变量,但是必须使用单引号将变量添加为参数。
参数 必选/可选 说明
formInstance 必需 您从中检索值的表单的实例编号。此参数可以是 JavaScript 变量,也可以是数字。
isNullConsidered 可选 使用单引号传入的项变量名称,用于检索值。

返回值

返回包含变量(与第二个参数中传递的变量同名)的 JSON 对象,其值如下:

  • 如果变量为部分日期,则返回的变量值将是 C1Date 对象;如果变量为完整日期,则变量值将是日期对象。可以使用 isPartialDate( ) 函数进行检查,如下所示。
  • 如果变量是选项控件(复选框、单选按钮或下拉列表),则返回的变量将采用 JSON 格式:("[{\"value":\"3\",\"label\":\"TestLabel\"}]")。这可以使用 JSON.parseparseChoice( ) 进行解析。
    • parseChoice(rfData.v4_chk4))
    • JSON.parse(rfDate.v4_chk4))
  • 如果传入的变量中的任何一个具有传入重复表单实例编号的值,则返回对象的属性名称 'exists' 将返回 true

示例

示例 3-60 获取 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;
}