ReportViewer for ASP.NET Web Forms
グラフフィールドの追加
C1Report デザイナの使い方 > フィールドによるレポートの強化 > グラフフィールドの追加

グラフフィールドは、C1Chart コントロールを使用して実装します。

メモ:グラフを使用する場合は、アプリケーションと共に C1Chart アセンブリを配置する必要があります。

レポートにグラフフィールドを追加するには、以下の手順を実行します。

  1. C1Report デザイナアプリケーションでレポートを開きます。
  2. ツールバーの〈グラフフィールドの追加〉ボタンをクリックして、グラフを表示するレポート内の領域をマークします。
  3. その後、通常どおり、フィールドプロパティを設定します。

グラフフィールドの通常と異なる唯一の側面は、大部分のバインドされたフィールドと異なり、複数の値を表示することです。表示するデータを選択するには、グラフフィールドの Chart.DataXChart.DataY プロパティを設定します。X 軸と Y 軸に沿った値を書式設定するには、Chart.FormatXChart.FormatY プロパティを設定します。Chart.ChartTypeChart.Palette などの他のプロパティを設定して、グラフの外観をカスタマイズすることもできます。

埋め込みグラフを含む新しいレポートを作成するには、C1Report ウィザードを使用します。以下の手順を実行します。

  1. 新しいレポートのデータソースを選択します。

    1. 接続文字列のビルドの省略記号ボタン(〈…〉)をクリックします。[データ リンク プロパティ]ダイアログボックスが表示されます。
    2. プロバイダ」タブを選択し、リストから「Microsoft Jet 4.0 OLE DB Provider」を選択します。
    3. 次へ〉をクリックします。
    4. 接続ページで、〈…〉ボタンをクリックして、Nwind.mdb データベースを参照します。 これは、標準 Visual Studio Northwind データベースです。デフォルトで、データベースは C:\Users\Documents\ComponentOne Samples\Common ディレクトリにインストールされます。
    5. 〈テーブル〉ラジオボタンを選択し、区分別売上高ビューを選択します。この手順は、次の画像に示されています。
  2. 表示するフィールドを選択します。

    この例では、区分別にデータをグループ化し、レポートの[詳細]セクションに ProductName と ProductSales を表示します。グループ詳細フィールドを追加するには、マウスポインタを使って、これらを左側の「使用可能」なリストから右側の「グループ」または「詳細」リストにドラッグします。

    ウィザードが完了するまで、〈次へ〉をクリックして操作を続行します。ウィザードにより、レポートの初期バージョンが作成されます。

    レポートの[グループヘッダー]セクションにグラフを追加します。

    グラフは、グループの詳細を要約して示すために、レポートの[グループヘッダー]セクションに表示します。[グループヘッダー]セクションにグラフを追加するには、以下の手順を実行します。

    1. プレビューを閉じる」グループの〈印刷プレビューを閉じる〉ボタンをクリックし、デザインモードに切り替えて、レポートの編集を開始します。
    2. セクションの境界でドラッグ&ドロップ操作を実行して、[グループヘッダー]セクションを拡大します。
    3. 次に、「デザイン」タブの「フィールド」グループにある〈グラフフィールドの追加〉ボタンをクリックして、[グループヘッダー]セクションのレポートにフィールドを配置します。
    4. グラフフィールドをクリックし、ドラッグして、グラフのサイズを変更します。 .
    5. Chart.DataY プロパティは、複数のグラフ系列を指定できることに注意してください。フィールドまたは集計式を必要な数だけ追加し、セミコロンで区切ります。 
    6. また、各データポイントのラベル(この場合、ProductName)を含むフィールドの名前に Chart.DataX プロパティを設定します。
    7. プロパティウィンドウから、Chart.FormatY プロパティを「#,###」に設定し、軸に沿った値を 1000 単位で区切られた値に設定します。

    ここで、グラフコントロールにいくつかのサンプルデータが表示され、現在の設定によるプロパティの効果を確認できます(デザイン時に、実際のデータは使用できません)。Chart.ChartTypeChart.DataColorChart.GridLines など、いくつかのプロパティの値を変更し、試してみることができます。FontForeColor など、通常のフィールドプロパティを使用することもできます。

    レポートは次のように表示されます。

    プレビュー〉ボタンをクリックしてレポートを確認し、〈次のページ〉ボタンをクリックしてレポートをスクロールし、各グループのグラフフィールドを表示します。サンプルレポートは、次のような表示になります。

    レポートフィールドは、そのレポート内の位置によって表示が異なることに注意してください。レポートフィールドは[グループヘッダー]セクション内にあるため、そのグループ内のデータのみが表示されます。グラフフィールドを[詳細]セクションに配置すると、レポート全体のすべてのデータが表示されます。各[詳細]セクションには1つのグラフが存在し、それらは同じように見えるので、この処理は有用ではありません。グラフ内に表示するデータを詳細に制御する必要がある場合は、グラフフィールドそのものに DataSource プロパティを使用できます。

    これで、レポートを保存し、それを Windows Forms と ASP.NET アプリケーションで使用できるようになりました。