ルールのデバッグ

ルール設計者は、logMsg()文を使用してルール・ロジックに関する情報を取得し、必要に応じて動作することを確認することで、ルールをデバッグできます。

デバッグ機能は、テスト・モードでのみ使用できます。テスト・コンテナには、必須要素を含む試験バージョンが必要です。Rulesインタフェースには、「ルール・インタフェースへのアクセス」の説明に従って、特定の試験バージョンおよびサイトからアクセスします。

注意:

ルールをデバッグする前に、ルールのテスト・データが入力されている必要があります。「デバッグ」ボタンは、ルールがアクセスされたサブジェクトに入力されたデータに対してルールを実行します。これには、他の訪問で入力された関連データが含まれます。
  1. テスト・モードで目的の試験に移動し、施設を選択します。
  2. 表で、編集するビジット・カードを見つけてクリックします。
  3. 訪問ウィンドウの左側で、操作するルールを含むフォームをクリックします。
  4. 質問を選択し、右側の「ルール」ペインを展開して、そこに含まれるルールを表示します。

    ヒント:

    質問をクリックすると、「このフォームのすべてのルールを表示」オプションを有効にして、そのフォームの質問に追加されたすべてのルールのリストを取得できます
  5. ルール・エディタを開きます。
  6. 必要に応じてログ文を追加します。
    ログ・ヘルパー関数を正しく使用する方法の詳細は、logMsg()を参照してください。

    ヒント:

    予測テキスト機能は、入力時に使用でき、これおよび他のすべてのルール・ヘルパー関数について説明します。これにより、リストから既存の関数を選択し、入力するプレースホルダとしてパラメータを含め、式に追加できます。

    予測テキストは、変数名といくつかの標準JavaScript構文も提示します。

  7. 「デバッグ」をクリックします。
    「デバッグ」をクリックすると、変更がJavaScript式に自動的に保存されます。すべてのルール保存要件を満たす必要があります。

    注意:

    コンパイル・エラーまたは要件がないと、デバッグ・プロセスを完了できません。

ルール・エディタの右側にログ・ウィンドウが表示されます。

ログ・ウィンドウがルール・エディタの右側に表示されます。

ルールは、選択したサブジェクトのデータに対して実行され、ルール内のlogMsg()ヘルパー・ファンクションおよびすべてのインスタンスに対して行われたコールを出力します。つまり、ルールが複数のビジットのフォームまたは繰返しセクションの質問に属している場合、影響を受けるすべてのビジットおよび繰返しセクションのルールが分析されます。各ルール・インスタンスからの出力がログ・ウィンドウにリストされます。

例外が発生した場合は、スタック・トレースの詳細およびエラー・メッセージがログ・ウィンドウに表示されます。

ログ・メッセージを確認し、ルール式に必要な変更を加えます。必要に応じてログ文を追加し、ルールの実行パスが想定どおりになるまでこのプロセスを繰り返します。次に、変更を保存し、ルール・エディタを終了します。

ヒント:

logMsg()ヘルパー・ファンクションはデバッグ・モードでのみ実行されるため、ルールを公開する前にコールを削除する必要はありません。

保存後、ルール・パフォーマンスを想定どおりにテストする必要があります。ルールを本番で使用できるようにするには、ルールをテスト、承認および公開する必要があります。

カスタム・ルールの開発例および詳細は、次を参照してください。