SharpShooter Reports.Web
ReportingEngine の設定
Last modified on: November 15, 2012
※本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP(日本語版)では日本語で表示されます。

PERPETUUM
softwarewww.perpetuumsoft.com

目次
はじめに .............................................................................................................................. 3
手順 1. プロジェクトを作成する ............................................................................................. 3
手順 2. アセンブリ参照の追加 ................................................................................................ 4
手順 3. ReportingEngine クラスの追加 ................................................................................... 6
手順 4. データソースの追加 .................................................................................................. 7
手順 5. データソースにデータを追加する ................................................................................ 10
手順 6. レポートスロットを追加する ..................................................................................... 11
手順 7. ウィザードを使ったレポート作成 ................................................................................ 15
手順 8. レポート設定 ......................................................................................................... 18
手順 9. ナビゲーションの追加 .............................................................................................. 202

PERPETUUM
softwarewww.perpetuumsoft.com

はじめに
このマニュアルは、サーバーの部分を実装するクラスの基本的な作成手順について説明します。このサーバーの部分は SharpShooter Reports.Web の使用に必要で、本コンポーネントを使用するために必要な最低限のスキル（以下）を提供します。
·

プロジェクトにクラスを追加·

クラスの設定·Dataset の追加·“ReportManager” の追加·

データソースの追加·

レポート作成ASP.NET 空の Web アプリケーションのプロジェクトを基にしてクラスの作成を行っていきます。このアプリケーションの手順は、以下のプロジェクトの手順と似ています。
·

ASP.NET Web アプリケーション·

ASP.NET MVC Web アプリケーション

手順 1. プロジェクトを作成する
Visual Studio の [ファイル|新規作成|プロジェクト] メニューを選択して、ASP.NET 空の Web アプリケーションを作成します。

プロジェクトの一覧から「ASP.NET 空の Web アプリケーション」を選択し、「名前」フィールドに「ReportingEngine」と入力します。

3

PERPETUUM
softwarewww.perpetuumsoft.com

手順 2. アセンブリ参照の追加
プロジェクトに次のアセンブリ参照を追加します。
·

PerpetuumSoft.Reporting.WebViewer.Model.dll·

PerpetuumSoft.Reporting.WebViewer.Server.dll·System.ServiceModel.dll

ソリューション エクスプローラの ReportingEngine プロジェクトを選択し、コンテキストメニューから[参照の追加]を選択します。

4

PERPETUUM
softwarewww.perpetuumsoft.com

次の dll ファイルを選択します。
PerpetuumSoft.Reporting.WebViewer.Model.dll
PerpetuumSoft.Reporting.WebViewer.Server.dll
System.ServiceModel.dll

5

PERPETUUM
softwarewww.perpetuumsoft.com

手順 3. ReportingEngine クラスの追加
プロジェクトにレポートサービスを追加します。ReportingEngine プロジェクトのコンテキストメニューを起動し、[追加 \ 新しい項目…] を選択します。

6

PERPETUUM
softwarewww.perpetuumsoft.com

Report Service Over HTTP (Web) を選択し、「名前」フィールドに「ReportService」というサービス名を設定します。

手順 4. データソースの追加
ソリューションエクスプローラの ReportServiceImpClass.cs のコンテキストメニューから [デザイナーの表示] を選択して ReportServiceImpClass のデザイナを開きます。

7

PERPETUUM
softwarewww.perpetuumsoft.com

まず、データソースの構造を作成します。（ツールボックスの DataSet をダブルクリックして）ツールボックスから「DataSet」を追加します。

「型指定のないデータセット」を選択します。

そうすると、デザイナにデータセットのノード（dataSet1）が表示されます。

（Tables プロパティのボタンをクリックして）テーブルコレクション エディタを開きます。

8

PERPETUUM
softwarewww.perpetuumsoft.com

dataSet1 に「Customers」テーブルを追加します。（「追加」ボタンをクリックして、TableName プロパティを「Customers」にし、Name プロパティを「customers」にします。）
次に、列コレクションエディタを開きます。（テーブル コレクション エディタのプロパティグリッドの Columns プロパティのボタンをクリックします。）「追加」ボタンをクリックして列を 2 つ追加し、ColumnName プロパティを「Name」と「Phone」にします。

9

PERPETUUMsoftware

www.perpetuumsoft.com

手順 5. データソースにデータを追加する
データ構造の定義が済んだので、Customers テーブルにデータを代入していきます。ソースコードを表示するには、デザイナ領域を右クリックし、コンテキストメニューの[コードの表示]をクリックします。

using ディレクティブを使用して、“ReportServiceImpClass” に “System.Collections.Generic” 名前空間と“System.Data” 名前空間を追加します。
using System.Collections.Generic;using System.Data;

ServiceClass クラスの OnLoadData メソッドをオーバーライドして、データソースに値を代入してください。
protected override void OnLoadData(IDictionary<string, object> parameters, string reportName,
PerpetuumSoft.Reporting.Components.ReportSlot reportSlot){base.OnLoadData(parameters, reportName, reportSlot);

10PERPETUUM
softwarewww.perpetuumsoft.com

DataRow row = customers.NewRow();
row["Name"] = "Johnson Leslie";row["Phone"] = "613-442-7654";
customers.Rows.Add(row);
row = customers.NewRow();
row["Name"] = "Fisher Pete";row["Phone"] = "401-609-7623";
customers.Rows.Add(row);
row = customers.NewRow();
row["Name"] = "Brown Kelly";
row["Phone"] = "803-438-2771";
customers.Rows.Add(row);}

手順 6. レポートスロットを追加する
では、（ツールボックスの “ReportManager” をダブルクリックして）ReportManager コンポーネントを追加します。このコンポーネントがレポート生成を行います。

11

PERPETUUM
softwarewww.perpetuumsoft.com

そうすると、デザイナに ReportManager のノード（reportManager1）が表示されます。

ReportServiceImpClass クラスの ReportManager プロパティを設定します。それには、[プロパティ]ウィ
ンドウの ReportServiceImpClass のプロパティを開いて、ReportManager プロパティの一覧から「reportManager1」を選択します。

12

PERPETUUM
softwarewww.perpetuumsoft.com「reportManager1」を右クリックして「エディタの起動」を選択して、Report Manager のエディタを開きます。

レポートテンプレートを作成する前に、レポートを生成するデータソースを追加します。
「データソース」タブのデータバインドリストに「Customers」テーブルを追加します。（「追加」ボ
タンをクリックすると表示される「オブジェクト名の編集」ダイアログの「名称」を「Customers」に、「値」コンボボックスから「dataSet1.Customers」を選択します。）

13

PERPETUUM
softwarewww.perpetuumsoft.com「レポート」タブの「追加」ボタンをクリックして、新しいオブジェクト「InlineReportSlot」を追加します。

ReportName プロパティを「CustomersReport」に設定します。後でレポートマネージャからその名前でドキュメントを取得します。では、「デザイナの起動」ボタンをクリックしてレポートデザイナを起動します。

14

PERPETUUM
softwarewww.perpetuumsoft.com

手順 7. ウィザードを使ったレポート作成[ファイル \ 新規] メニューを選択すると、画面に次のようなフォームが表示されます。

「新規」タブの一覧から「標準のレポート」を選択し、「OK」ボタンを押します。

15

PERPETUUM
softwarewww.perpetuumsoft.com

画面に「スタンダードウィザード」が表示されます。
下図のようにドキュメントのパラメータを設定します。

追加（）ボタンを使用してデータソースを追加します。

16

PERPETUUM
softwarewww.perpetuumsoft.comボタンをクリックすると表示されるツリービューから、「Customers」をダブルクリックして選択します。

レポートに表示するフィールド（「Name」フィールドと「Phone」フィールド）を選択し、「表示フィールド」タブに移動します。

17

PERPETUUM
softwarewww.perpetuumsoft.com「OK」ボタンをクリックします。

手順 8. レポート設定
テンプレートが作成されました。

18

PERPETUUM
softwarewww.perpetuumsoft.com[プロパティ]ウィンドウで header1 の「RepeatEveryPage」プロパティを True に設定します。

[プロパティ]ウィンドウで detail1 の「NewPageAfter」プロパティを True に設定します。

19

PERPETUUM
softwarewww.perpetuumsoft.com

手順 9. ナビゲーションの追加
レポートにナビゲーションを追加します。レポート間の移動にブックマークのツリーを使用します。
[プロパティ]ウィンドウで、detail1_Customers_Name のバインドを選択します。

「Bookmark」プロパティのスクリプトエディタ（ボタン）を開きます。

スクリプトエディタに「“#”」を入力し、「データソース」タブのデータソース「Customers」を展開し、顧客名を取得するスクリプトコードを追加するために「Name」をダブルクリックします。

20

PERPETUUM
softwarewww.perpetuumsoft.com

テンプレートを保存し、デザイナを閉じます。

21