VBScript は、計算フィールドで式を評価する場合にだけ使用できるわけではありません。レポートの出力時に実行されるスクリプトを指定することもできます。このようなスクリプトを使用して、レポートの書式設定を変更できます。
これらのスクリプトはイベントプロパティに格納されます。イベントプロパティは Visual Basic のイベントハンドラに似ていますが、スクリプトはレポートを表示するアプリケーションの適用範囲ではなく、レポートの適用範囲内で実行される点が異なります。たとえば、イベントプロパティを使用すると、フィールドのFont プロパティやForeColor プロパティをフィールドの値に基づいて設定できます。この動作は、レポート自身の一部になり、出力に使用されるアプリケーションに関係なく保持されます。
もちろん、従来のイベントも使用できます。従来のイベントは、レポートではなくアプリケーションに影響を及ぼす動作を実装するために使用します。たとえば、StartPage イベントのハンドラを記述して、出力されているレポートに関係なく、アプリケーションでページ数を更新できます。
次の表に、使用できるイベントプロパティと、その一般的な使用方法を示します。
次に、これらのプロパティの一般的な使用例を示します。
オブジェクト | イベントプロパティ | 説明 |
---|---|---|
Report | OnOpen | レポートの出力が開始されると発生します。ConnectionString プロパティやRecordSource プロパティを変更したり、VBScript の変数を初期化するために使用できます。 |
OnClose | レポートの出力が終了すると発生します。クリーンアップ作業を実行するために使用できます。 | |
OnNoData | レポートの出力を開始する際、ソースレコードセットが空の場合に発生します。Cancel プロパティを True に設定して、レポートの生成を中止できます。また、ダイアログボックスを表示して、レポートが表示されない理由をユーザーに知らせることもできます。 | |
OnPage | 新しいページが開始されると発生します。さまざまなフィールドのセクションのVisible プロパティを状況に応じて設定するために使用できます。コントロールは、新しいページが開始されるたびに自動的に1ずつ増える Page 変数を保持しています。 | |
OnError | エラーが発生すると発生します。 | |
Section | OnFormat | セクション内のフィールドが評価される前に発生します。この時点では、ソースレコードセット内のフィールドは、これから出力される値を反映しているが、レポートフィールドは値を反映していない。 |
OnPrint | セクション内のフィールドが印刷される前に発生します。この時点では、フィールドの評価は終了しており、条件付き書式設定を実行できます。 |