值检查重复 - 表部分项

检查多个表实例是否在各自的两部分表单中为给定项包含相同的值。

规则说明:如果在“医疗历史记录表”部分中输入了重复的异常/条件,则发出查询。

规则表达式

var instval=getCurrent2SFormInstance();
if(findDuplicate2SForm(instval,MHCondition))
{
   return false;               //System sends query when return false condition is met
}
else
{
    return true;
}

查询消息:异常/条件已记录为重复项,请验证并更正。

定义

MHCondition

与规则说明中两部分表单的表部分中提供的异常/条件相对应。

getCurrent2SFormInstance( )

获取当前两部分表单的表单实例编号。

findDuplicate2SForm( )

将重复数据标识为作为参数提供的变量的项值,在本例中为 lesid

返回值

布尔值

返回 truefalse。当满足返回 false 条件时,系统会引发查询。

使用提示

如果项不是选项控件,请使用此项。

验证步骤

  1. 使用受试者进行测试,转至包含要检查的 iem 的给定访视和表单,在本例中为医疗历史记录两部分表单的指定表实例中的异常/条件 <MHCondition>。
  2. 如下表所示更新表单项 MHCondition,并验证结果如下所示:
    步骤 附注 结果

    a. 在前两部分表单实例 (Form1 ) 中,创建第一个表实例 (Row1) 并将 MHCondition 项输入为 ' value 1 '。

    仅一个两部分表单实例。

    没有查询。

    b. Form1 中,创建另一个表实例 (Row2) 并将 MHCondition 项输入为 ' value 1 '。

    Form1Row1Row2 中的匹配值:
    • Form1:
      • Row1 - 值 1
      • Row2 - 值 1

    查询。

    c. Form1Row2 中的 MHcondition 项更新为 ' value 2 '。

    Form1Row1Row2 中的不同值:
    • Form1:
      • Row1 - 值 1
      • Row2 - 值 2

    没有查询。

    d. Form1Row1 中的 MHcondition 项更新为 ' value 2 '。

    Form1Row1Row2 中的匹配值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 2

    查询。

    e. 清除 Form1Row2 中的 MHCondition 项。

    Form1Row1Row2 中的不同值:
    • Form1:
      • Row1 - 值 2
      • Row2 - Null

    无查询。

    f. Form1Row2 中的 MHcondition 项更新为 ' value 3 '。

    Form1Row1Row2 中的不同值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 3

    无查询。

    g. Form1 中,创建第三个表实例 (Row3) 并将 MHCondition 项输入为 ' value 2 '。

    Form1Row1Row3 中的匹配值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 3
      • Row3 - 值 2

    查询。

    h. Form1Row3 中的 MHcondition 项更新为 ' value 1 '。

    Form1Row1Row2Row3 中的不同值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 3
      • Row3 - 值 1

    无查询。

    一。 Form1Row3 中的 MHcondition 项更新为 ' value 3 '。

    Form1Row2Row3 中的匹配值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 3
      • Row3 - 值 3

    查询。

    j. 创建另一个两部分表单实例 (Form2 ) 并创建第一个表实例 (Row1) ,然后将 MHCondition 项输入为 ' value 3 '。

    Row2Form1Row3 中的匹配值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 3
      • Row3 - 值 3
    • Form2:
      • Row1 - 值 3

    查询 Form1

    Form2 中没有查询。

    k. Form2 中,创建另一个表实例 (Row2) ,并将 MHCondition 项输入为 ' value 3 '。

    Form1Row2Row3 以及 Form2Row1Row2 中的匹配值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 3
      • Row3 - 值 3
    • Form2:
      • Row1 - 值 3
      • Row2 - 值 3

    查询 Form1Form2

    l. 删除 Form2 中的 Row2

    Row2Form1Row3 中的匹配值:
    • Form1:
      • Row1 - 值 2
      • Row2 - 值 3
      • Row3 - 值 3
    • Form2:
      • Row1 - 值 3

    查询 Form1

    Form2 中没有查询

注:

如果表单存在于多个访视中,则重复上述步骤。

其他实例

示例 4-31 如果选择了“时间点”(或“访问”)并且上一个记录已使用时间点,则触发查询

var frminst=getCurrent2SFormInstance();
if(findDuplicate2SForm(frminst,Visit))
{
return false;
}
else
{
return true;
}

查询消息:选定的时间点已在上一个记录上报告。请复查并调节。

示例 4-32 评估日期不能重复。例如,如果已为上一个时间点记录 01/01/2021,则无法再次记录该时间点

var frminst=getCurrent2SFormInstance();
if(findDuplicate2SForm(frminst,assdt))
{
return false;
}
else
{
return true;
}

查询消息:已记录评估日期。请检查并更正。