重複値チェック- フラット・セクション項目

2セクション・フォームのフラット・セクションにある特定のアイテムについて、複数のフォーム・インスタンスに同じ値が含まれているかどうかを確認します。

ルールの説明:すべてのフォーム・インスタンスには一意のレシオンIDが含まれます。レシオンIDが重複している場合は、問合せを発行します。

ルール式

if(findDuplicate2SForm(null,lesid))
{
    return false;               //System sends query when return false condition is met
}
else
{
    return true;
}

問合せメッセージ:レシオンIDに記録された番号がすでに使用されています。確認して訂正してください。

定義

lesid

ルール説明の2セクション フォームのフラット セクションにある [レシオンID]に対応します。

findDuplicate2SForm( )

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

戻り値

ブール値

trueまたはfalseのいずれかを返します。return false条件が満たされると、システムによって問合せが呼び出されます。

使用上のヒント

これは、品目が選択管理でない場合に使用します。

検証ステップ

  1. テスト用のサブジェクトを使用して、チェックするiemsを含む特定のビジットおよびフォームに移動します。この例では、指定された2セクション・フォーム・インスタンスのレシオンID <lesid>です。
  2. 次の表のようにフォーム・アイテムlesidを更新し、結果がリストどおりであることを確認します。
    ステップ 注意 結果

    a. 最初の2セクション・フォーム・インスタンス(Form1)で、lesidアイテムを'1'として入力します。

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

    問合せなし。

    b. 2番目の2セクション・フォーム・インスタンス(Form2)を作成し、lesidアイテムに1と入力します。

    Form1Form2の値の一致:
    • Form1 - 1
    • Form2 - 1

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

    c. Form2lesid項目を2として更新します。

    Form1Form2の異なる値:
    • Form1 - 1
    • Form2 -2

    問合せがありません。

    d. Form1lesid項目を2として更新します。

    Form1Form2の値の一致:
    • Form1 - 2
    • Form2 -2

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

    e. Form2lesidアイテムをクリアします。

    Form1Form2の異なる値:
    • Form1 - 2
    • Form2 -Null

    問合せがありません。

    f. Form2lesid項目を3として更新します。

    Form1Form2の異なる値:
    • Form1 - 2
    • Form2 -3

    問合せがありません。

    たとえば、 3番目の2セクション・フォーム・インスタンス(Form3)を作成し、lesid項目に2と入力します。

    Form1Form3の値の一致:
    • Form1 - 2
    • Form2 -3
    • Form3 - 2

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

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

    h. Form3lesid項目を1に更新します。

    Form1Form2およびForm3内の異なる値:
    • Form1 - 2
    • Form2 -3
    • Form3 - 1

    クエリーがありません。

    i. Form3lesid項目を3として更新します。

    Form2Form3の値の一致:
    • Form1 - 2
    • Form2 -3
    • Form3 - 3

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

    Form1に問合せがありません。

    j. Form2を削除します。

    Form1Form3に異なる値があり、Form2は存在しません。
    • Form1 - 2
    • Form3 - 3

    問合せがありません。

ノート:

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

その他の例

例4-30評価方法はすべてのレコードで同じである必要がある

if(findDuplicate2SForm(null,assmethod))
{
    return true;
}
else
{
    return false;
}

クエリーメッセージ:評価方法が、以前に記録された値と異なります。確認してください。