演算とスクリプトのデバッグ

Designer には、選択したスクリプト言語に応じて演算とスクリプトをデバッグするための様々な機能と方法が用意されています。

JavaScript 言語のスクリプトをデバッグする場合は、alert メソッドまたは messageBox メソッドを使用してデバッグのフィードバックを提供できます。この方法のデメリットの 1 つは、多数のメッセージボックスを閉じなければならない点です。別の問題として、メッセージボックスを表示すると、フォームの動作に違いが生じる可能性があります。特に、フォーム上のオブジェクトにフォーカスを設定しているスクリプトをデバッグしようとすると、この問題が発生する可能性が高くなります。Acrobat の JavaScript コンソールにテキストを出力してフォームをデバッグするには、console.println を使用する方法が最適です。

Designer のレポートパレットの警告メッセージおよび検証メッセージ

レポートパレットには、フォームのデザイン時におけるフォームのデバッグに役立つ警告メッセージと検証メッセージが表示されます。「警告」タブを使用すると、フォームのデザイン時に Designer が生成したエラーまたはメッセージを表示できます。「ログ」タブを使用すると、次のエラーおよびメッセージを表示できます。

  • 検証メッセージ

  • JavaScript または FormCalc のスクリプト実行エラー

  • フォームの読み込みまたは保存時、あるいは「PDF プレビュー」タブからのフォームのプレビュー時に生成されるデザイン時のフォームレンダリングエラー

レポートパレットの使用について詳しくは、ワークスペースを使用した演算とスクリプトのデバッグを参照してください。

messageBox メソッドを使用したデバッグのフィードバックの提供

XML フォームオブジェクトモデルの messageBox メソッドを使用すると、実行時にインタラクティブフォームからダイアログボックスに情報を出力できます。実行時にメッセージまたはフィールドの値を表示するには、この messageBox メソッドを利用できます。messageBox メソッドを開始すると、クライアントアプリケーションの新しいダイアログボックスに文字列値が表示されます。この文字列値には、デバッグ用に作成するテキストメッセージまたはフィールドや式の文字列値を指定できます。

例えば、1 つの数値フィールド(NumericField1)とボタン(Button1)を含むシンプルなフォームデザインを使用するシナリオについて考えてみましょう。この場合、次の FormCalc の計算と JavaScript のスクリプトは、テキストと数値フィールドに現在表示されている値をメッセージとして出力します。ボタンオブジェクトの click イベントに演算またはスクリプトを追加することにより、ボタンをクリックして、新しいダイアログボックスに数値フィールドの値をインタラクティブに表示できます。

FormCalc

    xfa.host.messageBox(Concat("The value of NumericField1 is: ", 
        NumericField1), "Debugging", 3)

JavaScript

    xfa.host.messageBox("The value of NumericField1 is: " + 
        NumericField1.rawValue, "Debugging", 3);
重要: messageBox メソッドは、フォームの入力者がメッセージボックスのダイアログで選択するボタンを表す整数値を返します。フィールドオブジェクトの calculate イベントに messageBox メソッドを追加し、messagebox メソッドがスクリプトの最終行である場合、実行時には messageBox メソッドの戻り値がフィールドに表示されます。

messageBox の使用方法について詳しくは、「messageBox」を参照してください。

テキストフィールドへの情報の出力

フィールドの値やメッセージなどの情報をフォームデザイン上のテキストフィールドに出力できます。例えば、テキストフィールドの値に新しいメッセージや値を追加して、以降の参照用のログを作成できます。