FindDuplicateRepeatingFormWithinRange( )
特定のアイテムおよび同じ日付範囲内の繰返しフォーム・インスタンス間で重複データを検出します。データは、指定された検索キーに対して重複したアイテム値を持つフォームIDで識別されます。ルール・ターゲットは、対応する繰返しセクション項目にある必要があります。
最初の2つのパラメータは、常に日付範囲である必要があります。追加の検索キーを指定できます。
- ドロップダウン、ラジオ・ボタンまたはチェック・ボックス値を関数パラメータまたはターゲットとして使用することはできません。
- 変数が日付の一部を保持するように設計されている場合は、同じ部分的な日付書式でそのパラメータの値を指定する必要があります。
- レコードに必要な日付のデータが入力されていない場合、レコードは比較のためにスキップされます。
これは集計関数です。ターゲットが繰返しフォーム上にある場合、ルールは各フォーム・インスタンスに対して実行されます。
構文
FindDuplicateRepeatingFormWithinRange('startDateVariable', 'endDateVariable', 'variable1',...)
パラメータ
ノート:
ルール式の他の場所でこの関数に渡された変数を再利用できますが、一重引用符を使用して変数をパラメータとして追加する必要があります。パラメータ | 必須/オプション | 説明 |
---|---|---|
startDateVariable |
必須 | 評価する日付範囲の開始日として使用される、繰返しフォームの日付アイテム。 |
endDateVariable |
必須 | 評価する日付範囲の終了日として使用される、繰返しフォームの日付アイテム。 |
variable(s) |
オプション | チェックする項目変数。一重引用符を使用して渡されます。 |
戻り値
ブール(trueまたはfalse)値:
- 重複する値が見つかった場合は [真]。
- False (重複する値が見つからない場合)。
例)
例3-44同じ開始日付範囲および症状値内に繰返しフォーム・インスタンスが存在するかどうかの確認
// Given 5 repeating form instances with items "onsetStartDate", "onsetEndDate and "Symptom"
if (FindDuplicateRepeatingFormWithinRange('itmOnsetDateStart', 'itmOnsetDateEnd', 'itmSymptom') === true) {
return false;
} else {
return true;
}
// Fires a query if more than 1 repeating form instance is found within the same symptom value within the same date range.
//
// Note: If any repeating form instance has a null start or end date then the system assumes a date in order to successfully
// perform the date range overlap check. If the start date is null then the system assumes it to be 01 Jan 0001 and if the
// end date is null then it is assumed to be 01 Dec 3099.
親トピック: 繰返しフォーム関数