FindDuplicateRepeatingFormWithinRange( )

同じ日付範囲内の特定のアイテムの繰返しフォーム・インスタンス間で重複データを検出します。データは、指定された検索キーのアイテム値が重複するフォームIDによって識別されます。ルール・ターゲットは、対応する繰返しセクション項目にある必要があります。

この関数の場合:

  • ドロップダウン、ラジオ・ボタンまたはチェックボックス値は、ファンクション・パラメータまたはターゲットとして使用できません。
  • 変数が部分的な日付を保持するように設計されている場合は、そのパラメータの値を同じ部分的な日付書式で指定する必要があります。
  • レコードに必要な日付のデータ入力がない場合、レコードは比較のためにスキップされます。

最初の2つのパラメータは常に日付範囲である必要があります。追加の検索キーを指定できます。

注意:

これは集計関数です。ターゲットが繰返しフォームにある場合、ルールはフォーム・インスタンスごとに実行されます。

構文

FindDuplicateRepeatingFormWithinRange('startDateVariable', 'endDateVariable', 'variable1',...)

パラメータ

ノート:

この関数に渡された変数は、ルール式内の他の場所でも再使用できますが、一重引用符を使用して変数をパラメータとして追加する必要があります。
startDateVariable

必須。繰返しフォームの日付項目。

endDateVariable

必須。繰返しフォームの日付項目。

変数

オプション:検索する追加品目変数です。

戻り値

重複値が見つかった場合は trueを返し、重複値が見つからない場合は falseを返します。

例3-43同じ開始日付範囲および症状値の間に繰返しフォーム・インスタンスが存在するかどうかの確認

// 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.