PowerTools ActiveReports for .NET 11.0J
アンバウンドフィールド

データの流れで解説したFieldオブジェクトを経由したデータ連結の仕組みは、バウンドフィールドについては冗長なものに思えます。しかし、これはバウンドフィールドには存在しないデータを扱う場合に非常に便利です。ActiveReportsでは、プログラマがバウンドフィールドに存在しないFieldオブジェクトを追加することができます。

たとえば、データソース(DataTable)の中に「単価」と「数量」のデータしかない(「商品名」は説明の都合上省きます。)ものとし、レポート上には「金額」を表示する必要があるとします。この場合、Fieldsプロパティの中にも「単価」と「数量」のFieldオブジェクトしかありません。したがって、このままではレポート上のTextBoxコントロールに「金額」のデータを出力できません。しかし、ここでFieldsプロパティに「金額」という名前のFieldオブジェクトを追加すれば、この「金額」データを出力することができます。

ただし、単に「金額」というFieldオブジェクトを追加しただけでは、値の設定は行われません。これは、「単価」や「数量」などのバウンドフィールドには、データソース内のデータが自動設定されますが、プログラマが作成した「金額」には値が設定されないからです。値を表示するためには、FetchDataイベントの中で「単価」×「数量」を計算した結果を「金額」のFieldオブジェクトに設定する必要があります。このようにプログラマ自身が作成、管理するFieldオブジェクトをアンバウンドフィールドと呼びます。

アンバウンドフィールドの追加方法

レポートのDataInitializeイベント内にコードで記述します。アンバウンドフィールドは、バウンドフィールド同様に、各レポートコントロールのDataFieldプロパティにセットし、値をレポート上に出力することができます。

Visual Basic

C#

アンバウンドフィールドに値を設定する方法

アンバウンドフィールドには、FetchDataイベントを使用してデータを供給します。

Visual Basic

C#

 

 


©2003-2017 GrapeCity inc. All rights reserved.