ActiveReports for .NET 18.0J
カスタムプレビュー サンプル
ActiveReportsユーザーガイド > サンプルとチュートリアル > サンプル > Samples > Webのサンプル > カスタムプレビュー サンプル

本サンプルでは、Webアプリケーションにおいて、レポートをHTMLまたはPDF形式でクライアントに配信する方法を紹介します。なお、このサンプルで紹介する手法は、Standard、Professionalのどちらでも利用可能です。

メモ:サンプル実行前に、ソリューションエクスプローラにてLicenses.licxファイルをクリックし、メニューから[ビルド][ランタイムライセンスのビルド]を実施しておく必要があります。 詳細は、「アプリケーションのライセンスの組み込み」を参照してください。

フォルダ

Visual Basic.NET

<User Folder>\ActiveReportsNET18\Samples\Web\CustomPreview\VB.NET

C#

<User Folder>\ActiveReportsNET18\Samples\Web\CustomPreview\C#

実行時の機能

サンプルを実行すると、Default.aspxページが表示されます。[PDFカスタムエクスポート]、および[HTMLカスタムエクスポート]の各リンクをクリックすると、それぞれの形式でレポートを出力しブラウザ上に表示します。

メモ:サンプルを実行するには、NorthWindデータベース(..\Samples\Data\Nwind.mdb)へのアクセス権限が必要です。サンプルでデータファイルにアクセスできない場合は、上記フォルダを作成して各データファイルをその中に配置するか、またはお客様の環境に合わせてフォルダ内のデータファイルへの参照パスを変更してください。

プロジェクトの構造

Reportsフォルダ

Reportsフォルダには、2つのrpxファイル(Invoice.rpxおよびNwindLabels.rpx)が含まれています。

Invoiceレポート

Invoiceレポートは、GroupHeaderセクション、Detailセクション、GroupFooterセクション、およびPageFooterセクションを使用しています。

メモ:Detailセクション以外のセクションは、すべてヘッダとフッタのセットで構成されています。使用しないセクションについては、Heightプロパティを0、またはVisibleプロパティをFalseに設定しています。

ghOrderHeaderセクション

セクションのDataFieldプロパティにOrderIDを設定しています。また、データをOrderIDで並び替えることによりOrderID毎にグループ化し、Detailセクションおよびグループフッタセクションに一連の情報を表示します。なお、グループ化の詳細については、「データのグループ化」を参照してください。

ghOrderIDセクション

セクションのDataField プロパティにOrderIDを設定しています。この設定により、対となるGFOrderIDセクションでの集計が可能となります。

ghTableHeaderセクション

詳細データ用の項目名を表示します。

Detailセクション

データにバインドしたTextBoxコントロールを配置しています。各OrderIDに含まれる明細データを表示します。

GFOrderIDセクション

セクションのNewPageプロパティをAfterに設定しています。この設定により、グループ(OrderID)が変わると改ページされます。

「小計」および「送料」では、SummaryFuncSummaryGroupおよびSummaryTypeプロパティを使用して詳細データを集計しています。集計の詳細については、「集計レポートの作成」を参照してください。

一方、「合計」では、DataFieldプロパティやSummaryプロパティを使用せずに、スクリプトで計算しています。詳細については、レポートの下部にあるスクリプトタブをクリックしてください。

PageFooterセクション

ページの最後にメッセージを表示します。

NwindLabelsレポート

Detailセクション

1ページに複数の宛名ラベルを作成します。

宛名ラベルのサイズを固定にするため、DetailセクションのCanGrowプロパティをFalseに設定しています。また、カラム形式で作成するために、ColumnCountColumnDirection、およびColumnSpacingプロパティを設定しています。

CustomExportHtml.aspx

Default.aspxページで、[HTMLカスタムエクスポート]オプションをクリックした場合に表示されるWebフォームです。

CustomExportHtml.aspxでは、CustomHtmlOutputクラスを使用してレポートをReportOutputフォルダへエクスポートし、エクスポートしたHTMLをブラウザで表示します。CustomHtmlOutputクラスがHTMLエクスポートに必要なIOutputHtmlインタフェースを実装し、ユニークな名前のファイルに出力結果を保存します。NwindLabelsレポートを使用してレポートを作成します。

メモ:実行するには、ReportOutputフォルダへの書き込み権限が必要です。

CustomExportPdf.aspx

Default.aspxページで、[PDFカスタムエクスポート]オプションをクリックした場合に表示されるWebフォームです。

CustomExportPdf.aspxでは、レポートをメモリストリームへエクスポートし、その後ブラウザに出力しています。Invoiceレポートを使用してレポートを作成します。

メモ:実行するには、ReportOutputフォルダへの書き込み権限が必要です。

Default.aspx

サンプルのメインとなるWebフォームです。リンクをクリックすると、各フォームを表示します。

  • [PDFカスタムエクスポート]: InvoiceレポートPDF形式にエクスポートし、ブラウザに表示します。
  • [HTMLカスタムエクスポート]: NWindLabelsレポートをHTML形式にエクスポートし、ブラウザに表示します。

Web.config

HTTPハンドラの設定を追加しています。

ActiveReportsのバージョンを更新する際に、ここでは手動でバージョン情報を更新する必要があります。

関連トピック