サーバー ファイルへのバインド(Visual Studio 2005 以降)
オブジェクト モデル
このレポートをバインドするシナリオでは、CrystalReportViewer を使用しています(「CrystalReportViewer オブジェクト モデルによるレポートのバインド」を参照)。
レポートの場所
レポートはローカル ファイル ディレクトリのレポート フォルダにあります(「サンプル レポートのディレクトリ」を参照)。この場所からのレポートは、レポート Web サービスとして公開されます。
サーバー ファイルの概要
このレポートをバインドするシナリオは、Web サービスを介してサーバー ファイルとしてアクセスされるレポートに適用されます。
![]() |
---|
Crystal サービスの概要については、「Crystal サービスの使用」を参照してください。 |
説明
サーバー ファイル Web サービスは、ローカル ファイル ディレクトリからレポート Web サービスとして公開されているレポートにアクセスして表示します。Visual Studio 2005 以降では、プログラムによってサーバー ファイルにアクセスします。
Crystal サービスの機能を比較する表については、「Crystal サービスを使用して CrystalReportViewer をバインドするシナリオ」と「Crystal サービスを使用して ReportDocument をバインドするシナリオ(VS .NET 2002 および 2003)」を参照してください。
長所
- レポートへの中央集中型アクセス:サンプル レポート ディレクトリ(「サンプル レポートのディレクトリ」を参照)にあるすべてのレポートに 1 つのアクセス ポイントからアクセスできます。これにより、ユーザーのハード ディスク ドライブに効率的なレポート リポジトリが作成されます。
短所
- 制限されたオブジェクト モデル:このシナリオは、CrystalReportViewerに含まれる、制限されたオブジェクト モデルだけを提供します。詳細については、「適切なオブジェクト モデルの選択」を参照してください。
サーバー ファイルを設定する
Crystal Reports for Visual Studio では、プログラムによってサーバー ファイルにアクセスします。「Crystal Reports for Visual Studio について」 の各エディションは、引き続き SDK のサーバー ファイルをプログラム的にサポートします。
サーバー ファイルの設定手順の詳細については、「Visual Studio 2005 でのサーバー ファイルの設定」を参照してください。
サーバー ファイルを手動でコード化する
- サーバー ファイルへのプログラム的なアクセスを許可するレポート Web サービスが設定済みで、正しく動作する。
- または、「Crystal Reports for Visual Studio について」がインストールされ、正しく動作する。
![]() |
---|
この手順は、「プロジェクトの設定」で作成されたプロジェクトにのみ有効です。「プロジェクトの設定」では、この手順で必要な特定の名前空間の参照とコード設定が説明されており、この設定は、この手順を完了するために必須です。したがって、この手順を始める前にまず、「プロジェクトの設定」の手順を実行しておく必要があります。 |
「プロジェクトの設定」で作成した ConfigureCrystalReports() メソッドで、ServerFileReport のインスタンスを宣言します。
Dim myServerFileReport As CrystalDecisions.Shared.ServerFileReport = _New CrystalDecisions.Shared.ServerFileReport()
CrystalDecisions.Shared.ServerFileReport serverFileReport = new CrystalDecisions.Shared.ServerFileReport();
ServerFileReport の ObjectType プロパティを REPORT に設定します。
myServerFileReport.ObjectType = CrystalDecisions.[Shared].EnumServerFileType.REPORT
serverFileReport.ObjectType = CrystalDecisions.Shared.EnumServerFileType.REPORT;
ServerFileReport の ReportPath プロパティをレポートとそのサブディレクトリに設定します。
サンプル レポートについては、「サンプル レポートのディレクトリ」を参照してください。
myServerFileReport.ReportPath = "\General Business\World Sales Report.rpt"
serverFileReport.ReportPath = "\\General Business\\World Sales Report.rpt";
ServerFileReport の WebServiceURL プロパティをレポート Web サービスの場所に設定します。
Crystal Reports Developer がインストールされている場合、この場所はインストールしたバージョンの Crystal レポートに対するビューアの仮想ディレクトリになります。「ビューアの仮想ディレクトリ」を参照してください。Crystal Reports Developer がインストールされていない場合、この場所は「Visual Studio 2005 でのサーバー ファイルの設定」で作成されたレポート Web サービスの URL になります。
注
以下のコードでは、ビューアの仮想ディレクトリを Crystal Reports 2005 用に設定します。
myServerFileReport.WebServiceUrl = "https://localhost/CrystalReportsWebServices2005/ServerFileReportService.asmx"
serverFileReport.WebServiceUrl = "https://localhost/CrystalReportsWebServices2005/ServerFileReportService.asmx";
CrystalReportViewer コントロールの ReportSource プロパティを ServerFileReport インスタンスに設定します。
myCrystalReportViewer.ReportSource = myServerFileReport
crystalReportViewer.ReportSource = serverFileReport1;