動的問合せテキストとの部分日付比較

少なくとも1つの日付が部分的である2つの日付の質問を比較し、日付が想定どおりではない場合に動的テキストを含む問合せを発行します。

ルール摘要: AE停止日は、通知同意日以降にする必要があります。

ノート:

AE停止日の部分が不明(UNK)の場合は、使用可能な日付部分を比較します。

ルール式

if(getDatesCompareResult(aeenddt,true,infconsdt,false,'>=')) {
  return true;
 }
 else
 {
 setQueryMessage("AE Stop date "+getDateDMYFormat(aeenddt,true)+" is prior to Informed Consent date "+getDateDMYFormat(infconsdt,false)+". Please correct or confirm.");
  return false;               //Query message set dynamically. System sends query when return false condition is met.
 }

問合せメッセージ: AE停止日が通知同意日より前です。修正または確認してください。

定義

aeenddt

AE停止日が部分的な日付であるため、ルールの説明(部分日付)のAE停止日に続いてTrueに対応します。

infconsdt

「通知同意日」は完全な日付であるため、ルールの説明(完全な日付)から「通知同意日」に続いてFalseが処理されます。

>=

「以上」演算子。ルール摘要に基づいて演算子を更新します。

getDatesCompareResult( )

渡された演算子(>= )を使用して、2つの日付(aeenddtinfconsdt)を比較します。この場合: aeenddt >= infconsdt

getDateDMYFormat( )

getDateDMYFormatヘルパー・ファンクションを使用して、DD-MON-YYYY形式で日付(日付の一部を含む)を返します。

戻り値

ブール

trueまたはfalseを返します。返されたfalse条件が満たされると、問合せが生成されます。

使用上のヒント

  • 日付の質問に対して比較を実行し、少なくとも1つの日付が部分的な場合に使用します。
  • 問合せテキストには、動的に入力された日付の質問値が含まれている必要があります。

検証ステップ

  1. テストの件名を使用して、比較する日付項目を含む特定の訪問およびフォームに移動します。この例では、AE停止日 <aeenddt>および通知同意日 <infconsdt>です。
  2. 次の表に示すようにフォーム・アイテムaeenddtおよびinfconsdtを更新し、結果が表示されていることを確認します。
    aeenddt infconsdt 結果
    Null 02-Dec-2021 問合せなし
    02-Dec-2021 02-Dec-2021 問合せなし
    01-Dec-2021 02-Dec-2021 クエリー。
    ロック解除Dec-2021 02-Dec-2021 問合せなし
    ロック解除Nov-2021 02-Dec-2021 クエリー。
    03-Dec-2021 02-Dec-2021 問合せなし
    03-Dec-2021 05-Dec-2021 クエリー
    03-Dec-2021 02-Dec-2021 問合せなし
    03-Dec-2021 01-Jan-2022 クエリー
    03-Dec-2021 04-Dec-2021 クエリー
    03-Dec-2021 Null 問合せなし
    03-Dec-2021 02-Dec-2021 問合せなし
    01-Dec-2021 02-Dec-2021 クエリー

ノート:

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

その他の例

例4-24試験完了日は、試験薬の最終日以降である必要があります

ノート:研究薬の最終日の一部がUNKの場合、使用可能な日付部分を比較します。

if(getDatesCompareResult(compdt,false,drugdt,true,'>='))
{
  return true;
}
else
{
setQueryMessage("Date of Study Completion "+getDateDMYFormat(compdt,false)+" is prior to Last Date of Study Drug "+getDateDMYFormat(drugdt,true)+" .Please correct or confirm.");
  return false;
}

問合せメッセージ:研究完了日が研究薬の最終日より前です。修正または確認してください。

例4-25 CM停止日はCM開始日以降にする必要があります

ノート: CM開始/停止日の部分が不明な場合は、使用可能な日付部分を比較します。

if(getDatesCompareResult(cmenddt,true,cmstdt,true,'>='))
{
  return true;
}
else
{
setQueryMessage("Date of Study Completion "+getDateDMYFormat(cmenddt,true)+" is prior to Last Date of Study Drug "+getDateDMYFormat(cmstdt,true)+" .Please correct or confirm.");
  return false;
}

問合せメッセージ: CM停止日がCM開始日より前です。修正して明確にしてください。