次の方法で共有


Crystal Enterprise へのバインド(Crystal Reports 9)

Note

このページでは、Crystal Reports for Visual Studio では使用できなかったが、アップグレード バージョンで使用可能になった機能について説明します。Crystal Reports for Visual Studio の詳細については、「Crystal Reports for Visual Studio について」を参照してください。アップグレード バージョンについての詳細情報は、「アップグレード オプション」を参照してください。このシナリオは、Crystal Reports 9 でのみ有効です。

このシナリオでは、既存の Crystal Enterprise がインストールされているユーザーを対象として、従来のバインド テクノロジについて説明します。Crystal Enterprise は、新たに Crystal Reports Server および BusinessObjects Enterprise に置き換えられました。Crystal Reports Server および BusinessObjects Enterprise の詳細については、「アップグレード オプション」を参照してください。

オブジェクト モデル

このレポートをバインドするシナリオは、「CrystalReportViewer オブジェクト モデルによるレポートのバインド」を使用します。

レポートの場所

レポートはマネージド RAS サーバー(「Report Application Server(RAS)」を参照)に置かれます。レポートは、EnterpriseReportDocument クラスにラップされます。

Crystal サービス 概要

このレポートをバインドするシナリオは、サーバー エクスプローラの Crystal サービス サーバー ノードからアクセスするレポートに適用されます。

Note

Crystal サービスの概要については、「Crystal サービスの使用」を参照してください。

このセクションでは、Crystal Reports 9 に含まれる Crystal サービスの Crystal Enterprise サブ ノードについて説明します。

[SERVERNAME]

  • Crystal サービス
    • Crystal Enterprise

説明

Crystal Enterprise サブ ノードは、Crystal Enterprise 内でマネージド RAS サーバーによって公開されているレポートにアクセスしてこれを表示します。

[Crystal サービス]の下の[Crystal Enterprise]ノードから、レポートを Web フォームまたは Windows フォームにドラッグ アンド ドロップすると、EnterpriseReportDocument のインスタンスが生成されます。EnterpriseReportDocument クラスは、ラッパー クラスとして機能します。クラスの目的は、マネージド RAS サーバーから渡されるレポートをラップ(表示)することです。

Crystal Reports 10 ではこのシナリオは置き換えられ、レポートのバインドには次のシナリオを使用します。

Crystal サービスの機能を比較する表については、下記を参照してください。

長所

  • 複雑でないアクセス:Web アプリケーションや Windows アプリケーションからマネージド RAS レポートへ簡単にアクセスできます。

短所

このモデルは、オブジェクト モデルの対話には特に有効ではありません。

  • ラッパー クラスの EnterpriseReportDocument は、マネージド RAS サーバーとのレポートのやりとりにのみ使用され、オブジェクト モデルを備えていません。
  • したがって、このバインドするシナリオは、CrystalReportViewer に含まれる制限されたオブジェクト モデルのみを提供します。詳細については、「適切なオブジェクト モデルの選択」を参照してください。

RAS レポートをバインドする最適な方法については、「ReportDocument.Load() メソッドを使ったアンマネージド RAS へのバインド」を参照してください。

Crystal サービスの Crystal Enterprise を使用する

  • Crystal Reports 9 がインストールされ、正しく動作する。
  • Crystal Enterprise がインストールされ、正しく動作する。
  • Crystal Enterprise SDK(.NET アセンブリを含む)がインストールされ、正しく動作する。
    Note

    Crystal Enterprise を開発用のマシンにインストールしている場合、SDK はそのインストールに含まれます。

この手順は、「プロジェクトの設定」で作成されたプロジェクトにのみ有効です。「プロジェクトの設定」では、この手順で必要な特定の名前空間の参照とコード設定が説明されており、この設定は、この手順を完了するために必須です。したがって、この手順を始める前にまず、「プロジェクトの設定」の手順を実行しておく必要があります。

  1. Visual Studio でサーバー エクスプローラを開きます。

  2. [Crystal サービス]、[Crystal Enterprise]の順に展開します。

    Note

    [Crystal Enterprise]ノードは、Crystal Enterprise がインストールされている場合にのみ機能します。

  3. [Crystal Enterprise]ツリーからレポートを選択し、Web フォームまたは Windows フォームにドラッグします。

    デザイン ビューでフォームの下部に、enterpriseReportDocument1 オブジェクトが表示されます。

    System.ComponentModel.Componentを継承するクラス(EnterpriseReportDocument など)が、デザイナで生成されたコード領域でインスタンス化および設定されると、インスタンス化されたクラスのアイコンがフォーム デザイン ビューの下部に表示されます。

    Note

    Crystal Enterprise レポートがフォーム上に置かれると、EnterpriseReportDocument クラスのインスタンスが、デザイナで生成されたコード領域に追加されます。

  4. コード ビューに切り替え、Web フォームまたは Windows フォーム デザイナの生成コードの箇所を開きます。

<table>
<colgroup>
<col style="width: 100%" />
</colgroup>
<thead>
<tr class="header">
<th><img src="images/w5dk7atd.alert_note(ja-jp,VS.90).gif" title="Note" alt="Note" class="note" />注</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><p>EnterpriseReportDocument クラスは、この領域でインスタンス化と設定が行われます。</p></td>
</tr>
</tbody>
</table>
  1. 「プロジェクトの設定」で作成した ConfigureCrystalReports() メソッドでは、EnterpriseReportDocument インスタンスを CrystalReportViewer コントロールの ReportSource プロパティに割り当てます。

    myCrystalReportViewer.ReportSource = enterpriseReportDocument1
    
    crystalReportViewer.ReportSource = enterpriseReportDocument1;
    
  2. レポートを表示するには、プロジェクトをビルドおよび実行してください。