表インスタンス数

2セクション・フォームに対してルールが現在実行されている表の行インスタンスを検索します。

ルールの説明: 「サブジェクトに関連する医療履歴がありますか。」「はい」を選択した場合、削除されていない表インスタンスが少なくとも1つ記録されているか、問合せが発行されている必要があります。

ルール式

If(MHSTDT!==null || MHONG!==null || MHENDT!==null){…..}
var instval=getCurrent2SFormInstance();
if(getStringFromChoice(MHYes)==='Yes' )  
{
var instcnt=list2SInstances(MHTERM,instval,0);
if(instcnt.length > 0)
{
return true;
}
else
{
return false;               //System sends query when return false condition is met
}
}
else
{
return true;
}

クエリーメッセージ:「サブジェクトに関連する医療履歴はありますか?」という回答が「はい」であるため、テーブルにデータが必要です。確認して入力してください。

定義

MHSTDTMHONGMHENDT

2セクション・フォームの表セクション項目。

MHYes

ターゲット品目であるフラット・セクションの品目。

短期

"list2SInstances()"ヘルパー関数のパラメータとして使用される2セクション形式の表セクション項目。

getCurrent2SFormInstance( )

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

getStringFromChoice( )

選択要素の選択されたラベル(ドロップダウン、ラジオ・ボタンまたはチェックボックス)を文字列またはカンマ区切りの値に変換します。選択要素をパラメータとして取り込みます。

list2SInstances( )

渡された変数のすべての表インスタンスを2セクション形式でリストします。フォーム内の表セクションの項目変数をパラメータとして取得します。

戻り値

ブール

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

使用方法のヒント

2セクション・フォームのテーブル・セクションのいずれかのアイテムが完了または更新されるたびにルールが実行されるようにするには、それぞれにグローバル変数を作成し、これらのいずれかがnullでないかどうかを評価するために変数を使用する必要があります。これは、ルール式の最初の行で行われます。

注意:

この評価では、ルール式ロジックでListRFInstances( )ヘルパー関数にパラメータとして渡される項目を含めないでください。

検証ステップ

  1. テスト用のサブジェクトを使用して、確認する項目を含む特定の訪問およびフォームに移動します。この例では、「サブジェクトには関連する医療履歴がありますか。」という質問<MHYes>があります。
  2. 次の表のようにフォーム・アイテムMHYesを更新し、結果がリストどおりであることを確認します。
    ステップ 結果

    a。 2セクション・フォームの最初のインスタンスのフラット・セクション(Form1)で、MHYesアイテムを「はい」として入力します。

    問合せ

    b。 Form1で、最初の表インスタンスを作成し、すべての項目を完了します。

    問合せなし

    c。 Form1で、最初の表インスタンスのすべての項目をクリアします。

    問合せなし

    d。 Form1で、最初の表インスタンスを削除します。

    問合せ

    e。 Form1のフラット・セクションで、MHYesアイテムを「いいえ」として更新します。

    問合せなし

    f。 Form1のフラット・セクションで、MHYesアイテムを「はい」に更新します。

    問合せ

    g。 Form1で、新しい最初の表インスタンスを作成し、いくつかの項目を完了します。

    問合せなし

    h。 2番目の2セクション・フォーム・インスタンス(Form2)を作成し、フラット・セクションにMHYesアイテムを「はい」として入力します。

    Form2での問合せ

    i。 Form2で、最初の表インスタンスを作成し、いくつかの項目を完了します。

    問合せなし

    j。 Form2を削除します。

    問合せなし

注意:

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

その他の例

例4-29読取り専用「Was PE Date populate?」に「Yes」が移入され、繰返しセクションに完了した日付がない場合に問合せをトリガーします。

var instval=getCurrent2SFormInstance();
if(getStringFromChoice(PEDT)==='Yes')  
{
var instcnt=list2SInstances(RES,instval,0);
if(instcnt.length > 0)
{
return true;
}
else
{
return false;
}
}
else
{
return true;
}

問合せメッセージ:物理試験の日付が入力されました。ただし、表にエントリはありません。