ストアドプロシージャをデータセットとして使用してレポートを作成することができます。DataSetにストアドプロシージャの結果セットを格納し、ストアドプロシージャで取得したデータを元に、レポートを作成できます。このチュートリアルではストアドプロシージャをデータセットとして使用するレポートの作成方法を紹介します。
このトピックでは、以下のタスクを行います。
- Visual StudioプロジェクトにActiveReportを追加する
- レポートをデータソースに接続する
- パラメータのあるデータセット(ストアドプロシージャ)を追加する
- レポートのレイアウトを作成する
- レポートを表示する
|
メモ:
- このチュートリアルでは、Reelsデータベース(Reels.mdb)のテーブルを使用しています。Reelsデータベース(..\ActiveReportsNET12\Data\Reels.mdb)へのアクセス権限が必要です。
- このチュートリアルではページレポートを使用していますが、RDLレポートを使用した場合も同様の手順で作成することが可能です。
|
チュートリアルを完了すると、次のようなレポートが作成されます。
デザイン時のレイアウト
実行時のレイアウト
Visual StudioプロジェクトにActiveReportを追加する
- Visual Studioで新規プロジェクトを開きます([ファイル]メニューから[新規作成]、[プロジェクト]を選択)。
- [新しいプロジェクト]ダイアログで[ActiveReports 12.0J ページレポート アプリケーション]を選択し、ファイル名を「StoredProcedure」に変更します。
- [OK]ボタンをクリックすると、ActiveReports 12 ページレポートアプリケーションが新規作成されます。デフォルトでページレポートがプロジェクトに追加されています。
プロジェクトの追加については、「プロジェクトにレポートを追加する」を参照してください。
レポートをデータソースに接続する
- レポートエクスプローラから、[データソース]ノードを右クリックして、[データソースの追加]のオプションを選択するか、[追加](+)ボタンから[データソース]を選択します。
- [レポートデータソース]ダイアログ から、[全般]ページを選択し、名前を「Reels」に変更します。
- このチュートリアルでは、Reelsデータベースに接続します。詳細については、「データソースとの接続」を参照してください。
パラメータのあるデータセットを追加する
- レポートエクスプローラで、追加したデータソースのノードを右クリックして、[データセットの追加]のオプションを選択するか、[追加](+)ボタンから[データセット]を選択します。
- [データセット]ダイアログで[全般]のページを選択し、[名前]フィールドに「SalesDataForStore」と入力します。この名前が[レポートエクスプローラ]で、追加したデータソースの子ノードとして表示されます。
- [データセット]ダイアログの[クエリ]ページの[指定方法]を[Stored Procedure]にします。
-
[データセット]ダイアログの[クエリ]ページの[クエリ]フィールドにストアドプロシージャの名前(この例ではSalesDataForStore)を入力します。
|
メモ: Oracleデータソースの場合は、[指定方法]には[Stored Procedure]ではなく、テキストSQLクエリを使用する必要があります。 |
- [データセットの検証]アイコンをクリックし、クエリを検証してフィールドを読み込みます。必要なパラメータがまだ追加されていないので、この時にエラーが発生する可能性があります。
- [パラメータ]ページから、[追加]ボタンをクリックし、パラメータを追加します。
- 同ページで、[名前]を「StoreID」、[値]を「1002」に設定します。
- [データセット]ダイアログの[クエリ]ページを再度選択し、[データセットの検証]アイコンをクリックし、クエリを検証してフィールドを読み込みます。
- [OK]をクリックしてダイアログを閉じます。データセットとクエリフィールドは、[レポートエクスプローラ]にノードとして表示されます。
レポートのレイアウトを作成する
- Visual Studioのツールボックスから、レポートの上にTableデータ領域を配置します。
- Tableデータ領域でテーブルの詳細行のセルの上をマウスオーバーし、フィールド選択の装飾を表示します。
- Tableデータ領域を選択し、[プロパティ]ウィンドウから以下のプロパティを設定します。
プロパティ名 |
プロパティの値 |
Location |
0in, 0.5in |
Size |
6.5in, 0.75in |
FixedSize |
6.5in, 7in |
- 装飾をクリックし、[SalesDataForStore]データセットにあるフィールドのリストを表示します。Tableデータ領域の詳細行のセルに、以下のフィールドを追加します。
セル |
フィールド |
左 |
StoreID |
中央 |
UnitsSold |
右 |
NetSales |
これにより、自動的に詳細行に式が設定され、同じ列のヘッダ行に静的なラベルが設定されます。
- ヘッダ行の左端にある行ハンドルをクリックし、行全体を選択し、[プロパティ]ウィンドウから以下のプロパティを設定します。
プロパティ名 |
プロパティの値 |
FontWeight |
Bold |
RepeatOnNewPage |
True |
- 各列の上端の列ハンドルをクリックして列全体を選択し、[プロパティ]ウィンドウからWidthプロパティを以下のように設定します。
列 |
幅 |
1番目 |
3.5in |
2番目 |
2in |
3番目 |
1in |
- 各列の上端の列ハンドルをクリックして列全体を選択し、すべての列のTextAlignプロパティを「Left」に設定します。
- ツールボックスからレポートの上にTextboxをドラッグし、[プロパティ]ウィンドウから以下のプロパティを設定します。
プロパティ名 |
プロパティの値 |
TextAlign |
Center |
Size |
6.5in, 0.35in |
Location |
0in, 0.125in |
FontSize |
14pt |
Value |
商店別の売上 |
FontWeight |
Bold |
|
ヒント:RDLレポートの場合は、ページヘッダ上にTextBoxコントロールを配置することが可能です。 |
レポートを表示する
- デザイン時にレポートを表示するには、プレビュータブをクリックします。
または
関連トピック