重複値チェック- 表セクション項目

2つのセクション・フォームで、指定されたアイテムに対して複数のテーブル・インスタンスに同じ値が含まれているかどうかを確認します。

ルールの説明:医療履歴表のセクションに重複する異常/条件が入力されている場合は、クエリーを発行します。

ルール式

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

問合せメッセージ:異常/条件が重複して記録されました。確認して修正してください。

定義

MHCondition

ルールの説明から、2セクション フォームのテーブル セクションにある [異常/条件]に対応します。

getCurrent2SFormInstance( )

現在の2セクション フォームのフォーム インスタンス番号を取得します。

findDuplicate2SForm( )

パラメータとして指定された変数の項目値(この場合はlesid)として重複データを識別します。

戻り値

ブール

trueまたはfalseのいずれかを返します。return false条件が満たされると、問合せが呼び出されます。

使用方法のヒント

これは、アイテムが選択コントロールでない場合に使用します。

検証ステップ

  1. テスト用のサブジェクトを使用して、確認する項目を含む特定のビジットおよびフォームに移動します。この例では、「医療履歴」の2セクション・フォームの指定の表インスタンスで「異常/条件」<MHCondition>です。
  2. 次の表のようにフォーム・アイテムMHConditionを更新し、結果がリストどおりであることを確認します。
    ステップ ノート 結果

    a。 最初の2セクション・フォーム・インスタンス(Form1)で、最初の表インスタンス(Row1)を作成し、MHConditionアイテムを値1として入力します。

    2セクション・フォーム・インスタンスは1つのみです。

    問合せがありません。

    b。 Form1で、2番目の表インスタンス(Row2)を作成し、MHConditionアイテムを値1として入力します。

    Form1Row1Row2の値の照合:
    • Form1:
      • Row1 - 値1
      • Row2 - 値1

    問合せ。

    c。 Form1Row2MHconditionアイテムを値2として更新します。

    Form1Row1Row2の異なる値:
    • Form1:
      • Row1 - 値1
      • Row2 - 値2

    問合せがありません。

    d。 Form1Row1MHconditionアイテムを値2として更新します。

    Form1Row1Row2の値の照合:
    • Form1:
      • Row1 - 値2
      • Row2 - 値2

    問合せ。

    e。 Form1Row2MHCondition項目をクリアします。

    Form1Row1Row2の異なる値:
    • Form1:
      • Row1 - 値2
      • Row2 - Null

    問合せなし。

    f。 Form1Row2MHconditionアイテムを値3として更新します。

    Form1Row1Row2の異なる値:
    • Form1:
      • Row1 - 値2
      • Row2 - 値3

    問合せなし。

    g。 Form1で、3番目の表インスタンス(Row3)を作成し、MHConditionアイテムを値2として入力します。

    Form1Row1Row3の値の照合:
    • Form1:
      • Row1 - 値2
      • Row2 - 値3
      • Row3 - 値2

    問合せ。

    h。 Form1Row3MHconditionアイテムを値1として更新します。

    Form1Row1Row2、および Row3内の異なる値:
    • Form1:
      • Row1 - 値2
      • Row2 - 値3
      • Row3 - 値1

    問合せなし。

    i。 Form1Row3MHconditionアイテムを値3として更新します。

    Form1Row2Row3の値の照合:
    • Form1:
      • Row1 - 値2
      • Row2 - 値3
      • Row3 - 値3

    問合せ。

    j。 2番目の2セクション・フォーム・インスタンス(Form2)を作成し、最初の表インスタンス(Row1)を作成し、MHConditionアイテムを値3として入力します。

    Form1Row2および Row3内の一致する値の一致する値:
    • Form1:
      • Row1 - 値2
      • Row2 - 値3
      • Row3 - 値3
    • Form2:
      • Row1 - 値3

    Form1で問い合せます。

    Form2に問合せはありません。

    k。 Form2で、2番目の表インスタンス(Row2)を作成し、MHConditionアイテムを値3として入力します。

    Form1Row2Row3、および Form2Row1Row2の一致値の一致:
    • Form1:
      • Row1 - 値2
      • Row2 - 値3
      • Row3 - 値3
    • Form2:
      • Row1 - 値3
      • Row2 - 値3

    Form1およびForm2で問い合せます。

    l。 Form2Row2を削除します。

    Form1Row2および Row3内の一致する値の一致する値:
    • Form1:
      • Row1 - 値2
      • Row2 - 値3
      • Row3 - 値3
    • Form2:
      • Row1 - 値3

    Form1で問い合せます。

    Form2に問合せなし

注意:

フォームが複数の訪問に存在する場合は、前述のステップを繰り返します。

その他の例

例4-31「Timepoint」(または「Visit」)を選択し、前のレコードですでにタイムポイントが使用されている場合、問合せを起動します。

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;
}

問合せメッセージ:アセスメント日はすでに記録されています。確認して修正してください。