findDuplicate2SForm( )

在平面部分或重复部分中检测给定项的双部分表单实例中的重复数据。数据由表单 ID 标识,该表单 ID 具有提供的搜索关键字的重复项值。规则目标应位于相应的重复部分项上。

根据需要使用任意数量的参数来完全定义重复键。

对于此函数:

  • 不能使用下拉列表、单选按钮或复选框值作为函数参数或目标。
  • 对于日期比较,接受部分日期。

    注意:

    实例之间是否存在任何部分日期将使其他完整日期采用相同的格式进行比较。例如,如果存在部分日期实例 'UNK-JAN-2022',则仅对其他日期中的月份和年份值进行比较,即使它们是完整日期也是如此。同样,如果存在部分日期实例 'UNK-UNK-2022',则在所有日期中仅使用年份值进行比较。

这是一个聚集函数。如果目标采用两节形式,则将为每个表单实例运行规则。

语法

findDuplicate2SForm(formInstance, 'variable1', 'variable2',...)

参数

变量
要评估的项目变量。这些是使用引用路径 eventId.formId.itemId 声明的规则变量。

注:

允许在规则表达式的其他位置重复使用传递给此函数的变量,但是必须使用单引号将变量添加为参数。
formInstance

如果为 null,则对双部分形式的所有实例执行检查。如果提供了值,则对该两个区段表单实例上的表行进行检查。

返回值

如果找到重复值,则返回 true;如果找不到重复值,则返回 false

示例 3-60 检查实验室和测试名称是否存在具有相同值的重复双节表单实例

// Given 5 two-section form instances with items "Lab" and "Test Name"
if (findDuplicate2sForm(null,'itmLab', 'itmTestName')) {
  return false;
} else {
  return true;
}

示例 3-61 要查看的检查是表单实例与其他表单实例的重复项

// Raise a query if 2 section form instance is duplicate of any other form instance

return findDuplicate2SForm(null, 'txt'); 

// Raise a query if 2 section table instance #2 is duplicate of any other table instance

var arrAE = list2SInstances(2, "txt");
return (arrAE.length <= 1)?false:true;